Folioscope

Archive for 2018

  • 2018-10-02

    ソースコード検索ツール「Livegrep」を構築する

    DigitalOcean TIDE NYC 2018のセッションをなんとなく眺めていたら、「Livegrep」というソースコード検索ツールが紹介されました。 面白そうだったので、手元にも構築してみました。 Livegrepとは Livegrepとはソースコード検索ツールです。 Livegrepの使用感は公式ページにアクセスすればわかります。 以下のリンクから、Linuxのカーネルを対象に検索できます。 livegrep.com/search/linux Livegrepはリアルタイ...

  • 2018-09-08

    Builderscon Tokyo 2018 に行ってきた (2/2)

    builderscon2日目レポートです。 今日も豪華なスピーカーが勢揃いで、最高の1日でした。 ※ 画像はaphyrさんのスライドからです Security, privacy, performance of the upcoming transport protocols 1本目は、kazuho氏による次世代のインターネットプロトコルのお話でした。 スライド インターネット・プロトコルは変革期で、次々と新しいプロトコルが生まれています。 セキュリティという観点では、パブリックWi...

  • 2018-09-07

    Builderscon Tokyo 2018 に行ってきた (1/2)

    builderscon1日目に行ってきたので、忘れる前に参加レポートです。 buildersconは弊社からもスポンサーをしており、その招待チケットを頂いたのでbuildersconに行くことにしました。 buildersconは「知らなかった、を聞く」をテーマとした技術を愛する全てのギーク達のお祭りです。 builderscon tokyo 2018 buildersconの発表は最大5並列で行われ、ジャンルは組み込み系からWebフロントエンドまで様々です。 今年は(今年も?)ゲストス...

  • 2018-07-28

    オライリー・ジャパンから「Kafka」が発売されます

    2018年8月3日に、オライリー・ジャパンから「Kafka: The Definitive Guide」の日本語訳が発売されます。 自分はこの本で、監訳という形で出版に携わらせてもらいました。 この本について 原書「Kafka: The Definitive Guide」は、Apache Kafkaの開発者たちによって執筆されてます。 本書はその和訳版です。 本書は、リアルタイムのストリーム処理基盤であるKafkaを使ったシステムの構築方法や、本番環境で運用するための手続きについて紹介し...

  • 2018-06-25

    シェルスクリプトでIPアドレスの計算

    IPAMやDHCPサーバーを実装するとき、IPアドレスを機械的に生成するために、IPアドレスの計算をする事があります。 例えばIPAMがラックやデータセンターから機械的にIPアドレスを割り当てたり、DHCPサーバーが連番のIPアドレスを割り当てたりします。 この記事ではシェルスクリプトでIPアドレスを計算する方法を紹介します。 IPアドレスと数値の変換 IPアドレスを計算する上で欠かせない操作が、IPアドレスと数値の相互変換です。 IPv4アドレスは長さ4のバイト列に過ぎませんが、通常は192...

  • 2018-06-20

    オープンソース活動はドキュメントの修正から始められる

    先日、Vim VixenでREADME修正のPull Req.をいただきました。 #418 Update README.md あまりにも嬉しくて勢いで記事を書きました。 ドキュメントのメンテナンスは面倒くさい、なのでドキュメントの修正は嬉しい ドキュメントのメンテナンスはソースコード以上に面倒です。 個人プロジェクトなんかは、作ってる本人は仕様が頭に入ってるので、文章が無くなったら引き継ぎができないなんてことはありません。 READMEが無くとも自分は全く困ってなかったので、これまでも...

  • 2018-06-03

    Linuxのユーザー管理をetcd上でする

    週末の自由研究で、Linuxのユーザー管理をetcd上でするサービスを書いてみました。 複数のマシン間でユーザー情報を管理するサービスといえば、LDAPが有名所です。 しかしLDAPは重装備すぎるので、もっとlightweightなサービスができないかと考えてみました。 そこでPoCですが、etcdをバックエンドにユーザー管理をしてみました。 ueokande/etcd-passwd Linux user manage...

  • 2018-05-21

    Vim Vixen 0.13をリリースしました

    お待たせしました。先日Vim Vixen0.13をリリースしました。 Vim Vixen – Add-ons for Firefox このバージョンでは多くの機能が追加されました。 主な機能を簡単に紹介したいと思います。 ページソースの表示 現在のタブの、ページソースを表示できるようになりました。 デフォルトはgfに設定されます。 古いバージョンから更新したユーザーは、以下の設定を設定画面の"keymaps"以下に追加してください。 { "keymaps": { "gf":...

  • 2018-02-25

    WebExtensionsでE2Eテストを自動化した

    Vim Vixenの開発では、開発スピードではなく品質を重視しており、毎リリース直前にフルリグレッションテストを行ってます。 それらの試験を手動で行っており、各リリース前にQA Pull Req.に試験結果を記録してます。 現在の試験項目は100を超えてます。 品質は大事にするとはいえ、各リリース毎に手動で試験を行うのは、地道で退屈な作業です。 今後機能追加などで更に試験項目数や複雑な試験が増えることは予想されます。 このままでは将来、同様の品質を保つのは難しいと思い、Vim VixenでもE2...

  • 2018-01-26

    etcdでleader electionしようと思ったら難しかった話

    あるクラスタ内に複数ノードがあり、そのうち高々1ノードのみがサービスを提供する仕組みを作りたいと思いました。 これはetcdを使うとかんたんに実装できるんじゃないかとおもい試してみました。 etcdにはcompare and swapのAPIがあり、キーの前の値や無い時のみにキーを更新できます。 それを使ってノード間でleader electionして、leaderになった後にサービスを起動する仕組みを考えました。 他の場所でもよくみる方法だったので、これを使えば実現できるんじゃないかと思い実装...

Page 1 of 2 >