タグ

ブックマーク / gihyo.jp (147)

  • 第823回 軽量で期待どおりに動作するMarkdownエディター、ghostwriterを使用する | gihyo.jp

    Ubuntu Weekly Recipe 第823回軽量で期待どおりに動作するMarkdownエディター⁠⁠、ghostwriterを使用する 今回はKDE Gearに属するMarkdownエディター、ghostwriterを紹介します。 ghostwriterとは ghostwriter、ライターにはちょっとドキッとしてしまう名称ですが、なかなかに歴史のあるMarkdownエディターです。 CHANGELOGによると、最初のリリースは2015年、パッケージのchangelogによると、Ubuntuのリポジトリに入ったのは19.04の頃です(図1⁠)⁠。 図1 Ubuntu 19.04でインストールできるghostwriter。バージョンは1.7.4 実は過去にも紹介しようと思ったことはあったのですが、日語で使う上での致命的な問題がありました。候補ウィンドウが変なところに表示されるのです

    第823回 軽量で期待どおりに動作するMarkdownエディター、ghostwriterを使用する | gihyo.jp
  • 第76回 コーディングを楽にする Perl Navigator ~便利機能をエディタに簡単導入!(2) | gihyo.jp

    Perl Hackers Hub 第76回コーディングを楽にする Perl Navigator ~便利機能をエディタに簡単導入!(2) 連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーは岡林大さんで、テーマは「コーディングを楽にするPerl Navigator」です。 <前回(1)はこちら。> Perlモジュールと連携した便利機能 さて、ここまではPerl Navigatorをインストールするだけで有効になる機能を紹介してきましたが、ここからは追加のPerlモジュールをインストールして利用できる便利な機能を紹介します。 Perl::Criticで品質検査 Perlには、伝統的なソースコードの静的解析モジュールとしてPerl::Criticがあります。Perl::Criticの導入によって、さまざまなコーディング規約に守られたコードを書けます。一般的には、Per

    第76回 コーディングを楽にする Perl Navigator ~便利機能をエディタに簡単導入!(2) | gihyo.jp
  • 第76回 コーディングを楽にする Perl Navigator ~便利機能をエディタに簡単導入!(1) | gihyo.jp

    Perl Hackers Hub 第76回コーディングを楽にする Perl Navigator ~便利機能をエディタに簡単導入!(1) 連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーは岡林大さんで、テーマは「コーディングを楽にするPerl Navigator」です。 簡単で便利なPerl Navigator みなさんがPerlを書くときに利用するエディタは何でしょうか。Perlのユースケースとしてサーバサイドで動く場面が多いことから、EmacsやVimを使っている人が多いのではないでしょうか。 いずれのエディタを利用するにしても、コードを書く際に文法を自動的にチェックしてくれたり、変数名や関数名を補完してくれたり、変数や関数の定義元にジャンプしてくれたりする機能があると便利です。そうした日々のコーディングを楽にしてくれる便利機能をまとめて提供してくれるのがP

    第76回 コーディングを楽にする Perl Navigator ~便利機能をエディタに簡単導入!(1) | gihyo.jp
  • Rust製のPythonパッケージ管理ツール「uv」を使ってみよう | gihyo.jp

    それぞれのツールに関する詳しい説明は記事では行いません。詳しく知りたい方は、ツール名のリンクから公式ドキュメント等を参照してみてください。 上記の表に挙げたツール群にはそれぞれに特徴があります。pyenv、venv、pipのように単一機能に特化したものから、Condaのようにデータサイエンスや機械学習プロジェクトで使用される複雑なパッケージの依存関係や環境管理をサポートするツール、PoetryのようにPythonパッケージインデックス(PyPI)への公開をサポートするツールなど、開発シーンに合わせて選択することができます。 uvとは uvは2024年の2月中旬に発表されたばかりの新しいパッケージ管理ツールです。Rustで書かれており、ここ最近で飛躍的に使用されるようになったRust製のPythonリンター&フォーマッター「Ruff」を開発しているAstral社によって提供されています[1

    Rust製のPythonパッケージ管理ツール「uv」を使ってみよう | gihyo.jp
  • 最近気になるツール「Hatch」でPythonプロジェクトを管理する | gihyo.jp

    そのほかのオプションは、以下の公式サイトを参照してください。 hatch test Reference - Hatch Hatchではカバレッジの計測もデフォルトでサポートされています。coverageが利用されています。 $ hatch test -py 3.11 -c ───────────────────────────── hatch-test.py3.11 ───────────────────────────── ============================ test session starts ============================ platform darwin -- Python 3.11.2, pytest-8.2.0, pluggy-1.5.0 rootdir: /Users/gihyo/dev/gihyo-python-monthly

    最近気になるツール「Hatch」でPythonプロジェクトを管理する | gihyo.jp
  • 軽量RustフレームワークTauriでデスクトップアプリ開発をはじめよう | gihyo.jp

    TauriはRustで書かれた軽量なGUIフレームワークで、WindowsmacOSLinux向けのデスクトップアプリを開発できます。2022年6月に最初の安定版であるバージョン1.0がリリースされました。 Tauriでは、メインプロセスはRustで記述しますが、UI(User Interface)にはWeb技術を利用します。ReactVue.jsのようなJavaScriptフレームワークがそのまま使えるので、インタラクティブで見栄えの良いUIを簡単に構築できます。同種のフレームワークにElectronがありますが、後発であるTauriにはインストーラのサイズを小さくできるなどの強みがあります。 Tauriのロゴは、おうし座の二重星であるシータタウリ(θ Tauri)をモチーフ[1]にしており、Webとネイティブアプリの相互作用を意味しています。 図1 Tauriロゴ 稿では、Ta

    軽量RustフレームワークTauriでデスクトップアプリ開発をはじめよう | gihyo.jp
  • RustのGUIライブラリ「gtk-rs」 ~gtk-rsでデスクトップアプリ開発をはじめよう[前編] | gihyo.jp

    RustGUIライブラリとその中でのgtk-rsの位置付け 今現在、RustGUIアプリケーションを開発するためのライブラリ/フレームワークは多種多様です。 突出して優れたものがあるわけでもなく、これを使えば間違いないと言えるものはありません。このような状況では、何を使えばいいか見当がつきませんが、それでもやりたいことから多少の取捨選択はできます。 百家争鳴のライブラリ群から類型をみると、大きく分けて自前スタックのタイプと既存のライブラリのバインディングになっているものがあります。 自前スタックのタイプはウィンドウ内のボタンといったウィジェットなども含めてすべて自前で実装しているものです。icedやeguiなどがあります。これらを基礎づけているのがwinitというライブラリで、ウィンドウを作る部分を担当しています。winitRustの対応プラットフォームの多さを活かして、デスクトップ

    RustのGUIライブラリ「gtk-rs」 ~gtk-rsでデスクトップアプリ開発をはじめよう[前編] | gihyo.jp
  • 第808回 Ubuntuフレーバー10種類総ざらい | gihyo.jp

    今回は、今まで意外となかったUbuntuフレーバー全10種類を紹介します。 フレーバーとは みなさんもご存知のとおり、Ubuntuはデスクトップ環境としてGNOMEを採用したLinuxディストリビューションです。 UbuntuのリポジトリにはDebian由来の多くのデスクトップ環境のパッケージがあります。また、デスクトップ環境だけではなく用途によっても分類できるでしょう。そう、ちょうどUbuntuとUbuntu Serverのように。 「フレーバー」とUbuntuの関係も似たようなもので、Ubuntuの公式派生版といったものです。Ubuntuのリポジトリを使用して、各種デスクトップ環境や用途によってインストールするパッケージを分けています。 フレーバーにもLTSはあり、現在は3年サポートで延長はありません。次のLTSは特に、23.10との違いはあまりなさそうです。もちろんバージョンアップす

    第808回 Ubuntuフレーバー10種類総ざらい | gihyo.jp
  • xzパッケージに仕込まれた3年がかりのバックドア、スケール直前に見つけたのはMicrosoftの開発者 | gihyo.jp

    Linux Daily Topics xzパッケージに仕込まれた3年がかりのバックドア⁠⁠、スケール直前に見つけたのはMicrosoftの開発者 “アップストリームのxzリポジトリとxz tarballsはバックドア化されている(The upstream xz repository and the xz tarballs have been backdoored)⁠”―2024年3月29日、Microsoftに所属する開発者 Andres Freundが「Openwall.com」メーリングリストに投稿したポストは世界中のオープンソース関係者に衝撃を与えた。 backdoor in upstream xz/liblzma leading to ssh server compromise -oss-security 主要なLinuxディストリビューションにはほぼ含まれているデータ圧縮プログラ

    xzパッケージに仕込まれた3年がかりのバックドア、スケール直前に見つけたのはMicrosoftの開発者 | gihyo.jp
  • 第371回 無線LANの電波環境を視覚化・改善しよう | gihyo.jp

    今月発売されたSoftware Design 2015年5月号のUbuntu Monthly Reportでは、あわしろいくやさんが「Ubuntu 14.04で使用できるUSB無線LANアダプター7選」を書いてくれています。そこで今回はより快適な無線LAN環境を構築する上では避けては通れない電波環境の調査(サイトサーベイ)の方法について説明します。 この世はすべて波だらけ 無線LANは無線通信で構築したローカルエリアネットワークです。使用する無線通信はBluetoothや赤外線などいろいろな種類が存在しますが、そのうちWi-FiロゴのついたIEEE 802.11規格対応の機器を使用する無線通信が一般的でしょう。今回の記事も、IEEE 802.11に限定して説明します。 IEEE 802.11は主に2.4GHz帯と5GHz帯の電波を利用した通信方式であり、使用する周波数や通信方式、それに伴う

    第371回 無線LANの電波環境を視覚化・改善しよう | gihyo.jp
  • 第801回 続・USBメモリ型SSD選手権!長時間の書き込みにも強いデバイスはどれだ | gihyo.jp

    第三種目 限界突破8GB走(書き込み部門) 第一種目の8GB走(シーケンシャル書き込み部門)では、NVMe SSDUSBメモリSSDの間であまり差がつかず、360MB/sあたりに限界があるように見受けられました(図2、図3⁠)⁠。 図2 USBメモリSSDは、従来型USBメモリ(茶色の線)に比べて8GBの書き込みに必要な時間(横軸)が格段に短かかった 図3 しかし、NVMe SSDUSBメモリSSDの間では最高速度(縦軸)の面であまり差はつかず、360MB/s付近に天井があるように見受けられた そこで第三種目では限界の突破を試みます。速度の壁はSSD自体の性能に起因するものではなく、テストに使用していたUSBポートが5Gbpsまでにしか対応していないことが原因と考えられます。 特にノートPCにおいては、USB Type-CポートとType-Aポートの両方が搭載されている場合に、T

    第801回 続・USBメモリ型SSD選手権!長時間の書き込みにも強いデバイスはどれだ | gihyo.jp
    mieki256
    mieki256 2024/03/28
  • 第800回 USBメモリ型SSD選手権! 速くてお得なインストールメディアを探す | gihyo.jp

    従来型USBメモリの例として筆者が使っている2015年購入のものを、そしてサイズが最小となるmicroSDカードもカードリーダー(BUFFALO BSCR27U3BK)を使うことでUSB接続ストレージということにして特別招待選手として追加しています。さらにKIOXIAの「メインストリーム向け」とされるNVMe SSDをUSB変換ケース(Realtek RTL9210B-CG搭載)に入れたものも特別招待選手枠で追加し、USB 3.2 Gen 1 (5Gbps)の帯域をしっかり使い切ってくれるペースメーカーとしての役割を期待します。 計測ツールの選択 参加資格の決定と選手の選考が終わったら、次は計測方法を決めなければなりません。ストレージのベンチマークといえば図3のようなスクリーンショットをよく見かけることでしょう。いくつかのシナリオ(シーケンシャルリード・ライト、ランダムリード・ライト)のパ

    第800回 USBメモリ型SSD選手権! 速くてお得なインストールメディアを探す | gihyo.jp
    mieki256
    mieki256 2024/03/28
  • 第802回 USB外付けポータブルSSDとの付き合い方 | gihyo.jp

    第800回、第801回では「⁠USBメモリSSD」もしくは「スティック型SSD」と呼ばれる製品の中から、最安価格帯のものを検証しました。その中で参考データとして、USBメモリサイズとは関係がない一般的なM.2 2280サイズのSSD(図1)を比較対象として使ったところ、良好なパフォーマンスが観測されました。 図1 USB変換ケース入りM.2 NVMe SSDこそがポータブルSSDとして最強なのだろうか 買って使ってみるまで詳細なスペックがわかりづらいUSBメモリSSDと比べると、ベンチマークや詳細なデータが公開されている有名どころのM.2 NVMe SSDのほうがパフォーマンスの面で確実性が高いです。そうすると自分なりの組み合わせでNVMe SSDとUSB変換ケースを選んだ方が結果的にお得なのでは、と考えたくなります。これはある程度は正しいのですが、持ち運び用のコンパクトな外付けSSD

    第802回 USB外付けポータブルSSDとの付き合い方 | gihyo.jp
    mieki256
    mieki256 2024/03/28
  • Debian、32ビットの「2038年問題」に対応へ | gihyo.jp

    Debianプロジェクトプロジェクトリーダー Steve Langasekは2月2日、Debian開発者向けメーリングリストに「64-bit time_t transition in progress」というタイトルで投稿し、2038年問題(Y2038)に対応するための作業の進捗について報告を行った。Debianは現在、2025年以降のリリースが予定されている「Debian 13 "Trixie"」の32ビットアーキテクチャが2038年以降も動作できるように取り組んでおり、とくに32ビットarmアーキテクチャへの対応にフォーカスすることを明らかにしている。 64-bit time_t transition in progress -lists.debian.org C言語で時間を表現するための型として使われている「time_t」は、世界標準時で1970年1月1日午前0時0分0秒からの経過

    Debian、32ビットの「2038年問題」に対応へ | gihyo.jp
  • Debian、近い将来i386サポートを終了へ | gihyo.jp

    ここ数年、多くのLinuxディストリビューションが32ビットアーキテクチャ(i386)をサポート対象から外す動きを加速しており、カーネルのメインラインでも起動時に32ビットの有効/無効を選択できるようになるなど、32ビットサポートは確実に縮小化に向かっている。数あるディストリビューションの中で最も幅広いハードウェアサポートを誇るDebianも例外ではなく、格的にi386サポート終焉に向けてカウントダウンが始まったようだ。 Bits from the Release Team: Cambridge sprint update -lists.debian.org DebianリリースチームのPaul Geversは2023年11月下旬に英ケンブリッジで開催された「Mini DebConf Cambridge」において「カーネルチーム、インストーラ(d-i)チーム、イメージチームは近い将来、i

    Debian、近い将来i386サポートを終了へ | gihyo.jp
  • 追悼 Bram Moolenaar ~Vimへの情熱と貢献を振り返る | gihyo.jp

    Bram Moolenaar the Creator of Vim 2023年8月5日、悲しい知らせが入ってきました。長年、多くのエンジニアに愛され今もなお使われ続けているテキストエディタVimの作者Bram Moolenaar氏が同月3日に亡くなったという知らせです。ショックでしばらく信じることができませんでした。 筆者は長年Vimを使い、Vimに多くのコントリビュートを行ったり、その都度Bram氏と対話したり議論したりしてきました。そのBram氏が突然、この世界からいなくなってしまったことをしばらく受け入れられなかったからです。 記事では追悼の意味を込め、Bram氏がどのようにVimの開発を始め、Vimがどのように広まっていったのか、また長年Vimを追い続けてきた筆者から見たBram氏の人物像を筆者の思いを交えて解説していきます。 Vim歴史 Bram氏についてお話しする前に、まず

    追悼 Bram Moolenaar ~Vimへの情熱と貢献を振り返る | gihyo.jp
  • 第661回 リモートデスクトップビューアー、Remminaを使用する | gihyo.jp

    今回はリモートデスクトップビューアーでありながら多機能なRemminaを、第638回よりも詳細に紹介します。 Remminaとは RemminaはあらかじめUbuntuにインストールされているリモートデスクトップビューアーです。Ubuntuにインストールされるようになったのは12.04 LTSからで、長く安定して開発が進められていることがわかります[1]⁠。 ここではRemminaを便宜上「リモートデスクトップビューアー」と呼んでいますが、SSHやSFTPクライアントとしても使用できます。すなわちサーバー(ヘッドレス)で運用している場合でもクライアントとして使用できます。 このようにRemminaは多機能ですが、今となっては使いどころがなくなった機能、使い方がよくわからない機能が残っていたりします。充分なドキュメントもないため、どういった機能なのかを追跡するのが困難です。記事も可能な限り

    第661回 リモートデスクトップビューアー、Remminaを使用する | gihyo.jp
  • バグは“数千パターンのテスト”をすり抜けた ―NTTデータ「2023/10/10 全銀ネット障害」について説明 | gihyo.jp

    バグは“数千パターンのテスト”をすり抜けた ―NTTデータ「2023/10/10 全銀ネット障害」について説明 NTTデータグループは2023年11月6日、10月10日に発生した全国銀行データ通信システムの障害に関する記者説明会を実施、現時点で判明している障害の概要について説明を行うとともに、再発防止策に向けたタスクフォースの設立などについて明らかにしました。会見の冒頭、NTTデータグループ 代表取締役社長 間洋氏は、今回の障害により全国の預金者や金融機関をはじめとする社会全体に大きな混乱をもたらしたことを謝罪し、今後の原因究明と再発防止に向け、全国銀行試験決済ネットワーク(以下、全銀ネット)とともに全力をかけて取り組むことを明言していました。 記事では会見の内容をもとに、現時点で判明している10月10日の事故の原因についてレポートします。 2023年10月10日 ―なにが起こったのか

    バグは“数千パターンのテスト”をすり抜けた ―NTTデータ「2023/10/10 全銀ネット障害」について説明 | gihyo.jp
  • 「Obsidian」でノートを作るときの考え方とは? ~デイリーノートの活用と、PKMとしてのノート術 | gihyo.jp

    ノートアプリ「Obsidian」を使いこなす 「Obsidian」でノートを作るときの考え方とは? ~デイリーノートの活用と、PKMとしてのノート術 前回までの記事で、Obsidianの基的な設定は完了しています。あとは、ノートを自分の好きなようにMarkdownで書いていけばよいのです。 しかし、ノートを書くといっても、何から手をつければよいのかわからない人が多いでしょう。 ノートの書き方は人によって違ってよいのですが、先人が残してくれた知恵がいくつか公開されています。その方法と合わせて、私がノートを作るときの考え方を紹介します。 デイリーノートを使う Obsidianではじめてノートを作成する人に対して、私がおすすめしているのは前回の記事で紹介したコアプラグインの「デイリーノート」を使う方法です。 デイリーノートとは、名前の通り毎日のノートのことです。初期設定のままで設定を変更してい

    「Obsidian」でノートを作るときの考え方とは? ~デイリーノートの活用と、PKMとしてのノート術 | gihyo.jp
  • 第508回 Ubuntuでコマンドラインからワンタイムパスワードを扱う | gihyo.jp

    ワンタイムパスワードとは? 様々なWebサービスを利用するのが当たり前となった現在、パスワードの管理は頭を悩ます問題だと思います。連載でも、第412回ではWebベースのパスワードストアアプリとしてRatticWebを紹介しました。 そもそも固定パスワードには、試行に十分な時間をかけることが可能であればいつかは突破できてしまうという、質的な問題があります。そこで有効期限が極端に短い、一度きりのパスワードを使い捨てにする方法が考えられました。こういったパスワードをワンタイムパスワードと呼びます。 昨今のWebサービスでは通常のIDとパスワードにくわえ、追加でワンタイムパスワードを入力して認証する「二要素認証」の利用が一般的になってきています。ワンタイムパスワードには様々な方式がありますが、一般的なのはTime-Based One-Time Password Algorithm(TOTP)を

    第508回 Ubuntuでコマンドラインからワンタイムパスワードを扱う | gihyo.jp