タグ

ブックマーク / kuenishi.hatenadiary.jp (11)

  • トップレベルのコンピュータエンジニアなら普段からチェックして当然の技術系メディアN選 - kuenishi's blog

    〜〜が知っておくべきサイト20選とか、エンジニアなら今すぐフォローすべき有名人とか、いつも釣られてみにいくと全く興味なかったり拍子抜けしたりするわけだが、こういうのが並んでいたらあまりの格の違いに絶望してしまうだろうというものを適当に並べてみた。私が見ているわけではなくて、こうありたいと思っている私の願望である。どちらかというとインフラ系とか基盤系のものに偏っているが、あくまで私が興味ある一連の例だと思ってください。「これが入ってない!」というクレームは受け付けますので、是非教えてください。一緒に成層圏まで意識を高めましょう。 情報サイト、有名ブログ Software Engineering Radio : IEEEが主催しているソフトウェアエンジニア向けのPodCast。データベースからフロントエンド、暗号、ハードウェア、マイクロサービス、などなどとにかく多様なジャンルの最新のトピックの

    トップレベルのコンピュータエンジニアなら普段からチェックして当然の技術系メディアN選 - kuenishi's blog
    labunix
    labunix 2018/04/13
  • 消すだけなのに rm -rf がいっつも長くて待ちきれない問題 - kuenishi's blog

    rmコマンドで大量のファイルを削除しようとするとjournaldがめっちゃリソース持っていく件— bokko (@cubicdaiya) 2017年8月3日 今時のファイルシステムはみんなジャーナルもってて何かあったときにそこからリカバリする仕組みになってるので、当たり前といえばそうなんだけども。 (TODO: ここにファイルシステムのツリー+ジャーナルのポンチ絵を手描きでも何でも描く) ご尊のデータのツリーと何らかのWALを1セットで持っておくのはRDBだろうがファイルシステムだろうがそうは変わらない、で、削除についても並行制御をうまくやるために削除フラグをログに入れておいてあとで尊のデータを整理するというのが基的な設計になる。そこで私は立ち上がった(TL;DR: 特にオチとかはないです)。 rm -rf が遅いのは人類にとって損失ではないか。もっと速く完了するようにすれば、 rm

    消すだけなのに rm -rf がいっつも長くて待ちきれない問題 - kuenishi's blog
    labunix
    labunix 2017/10/07
  • P言語の素晴らしさについて - kuenishi's blog

    先週Microsoft社がP言語に関するブログ記事を公開し一部界隈で話題となった。 P言語くん pic.twitter.com/uULzxIO4ct— Kuntaro Ishiyama (@_iamkuntao) 2017年3月26日 「いまさら一文字言語かよ…」「何個目だ?」といった批判的諦念的なものから、「RustGoとErlangの間の子みたいなのだなあ」「なんか読みにくい」といった反応が多くこの言語の重要性やインパクトに対して正しく理解しているものがあまりなかった。尊敬しているTD勢ですらあまり重要性が伝わってないようだ 1 2 。上記のブログ記事を読んだり、マニュアルを読んだらすぐ分かるようなことではあるが、日語で解説しておこうと思う。なおいわゆる言語入門とかそういった類のものではないことをご理解いただきたい。 TL;DR 並行処理や分散システムの形式証明や形式検証はそれ自体

    P言語の素晴らしさについて - kuenishi's blog
    labunix
    labunix 2017/05/26
  • 俺専用パスワード管理ツールを作った - kuenishi's blog

    github.com 恥ずかしながらわたし、つい最近まで類似のパスワードを適当に記憶に頼って数種類使い分けるという運用をしていた。しかしながら、次のようなメールが期間をおいていくつか届き、類似のパスワードを使っている他のサービスに被害が及ぶのを恐れて、ランダムにパスワードを生成して保存するツールを作った。 いくつかのECサイト、特に小規模ECサイトは2要素認証が設定できないものが多く*1、あのアマゾンでさえ…と思ったら、いつのまにか2要素認証できるようになっていた。そうはいっても一部のサイトではクレジットカード情報を保存しておきながら2要素認証しないとか不安しかないので、自分でパスワード管理できるプログラムを練習がてら作って運用をまるごと変えることにした。既存のパスワード管理のソフトウェアやサービスがいくつもあるが、以下の理由でやめた 無料サービスは信用できない 有料サービスはちょっと躊躇

    俺専用パスワード管理ツールを作った - kuenishi's blog
    labunix
    labunix 2017/01/27
  • 2017年のクラウドを占う - kuenishi's blog

    どうもあけましておめでとうございます、分散システム界の負け犬こと李徴・ザ・グレートタイガーです。どちらかというといきなり吠えつくよりも山に篭ってこじらせていくタイプです。新春からAWS,サーバレス,コンテナ,マシンラーニング …2017年のクラウドを占う:新春特別企画|gihyo.jp … 技術評論社という記事を目にし、「ウソはいけません」とコメントしたところ何が当で何がウソか分からなくなってきたので、わたしも2017年のクラウドを占いつつ、件の記事の批評をしてささやかながら新年の書き初めとしたいと思います。 🔥🔥🔥🔥🔥 件の記事ではまず、 そしてこのデジタライゼーションの基盤にあるもっとも重要なテクノロジがクラウドコンピューティングです。 という言葉から理解できないのだが、デジタル化とは何を指すのか?一昔前には「OA化」という言葉が一斉を風靡した。どの企業でも小売なら会計はP

    2017年のクラウドを占う - kuenishi's blog
    labunix
    labunix 2017/01/03
  • あなたの知らない time(1) の世界 - kuenishi's blog

    自分が書いたプログラムのメモリ使用量を測定したいことがある。プログラムがOOM Killerによってお亡くなりになった場合や、ページフォルトをなくして高速化したい場合などだ。定常的に起動するサーバーのプログラムなら、sarや meminfo など(今なら Datadog とかだろうか)を使ってじーっと見つめるわけだ。もっとモダンにやるなら perf や DTrace を使ってもよいかもしれない。しかしこれらのツールは基的にプロセスIDを渡してサンプリングして外から覗く方法だ。 わたしのユースケースはデーモンプロセスではなく、 main から入って必要な計算をして、それが終わったら main を抜けるバッチジョブ(単にコンソールから実行して終わるまで待つ、いわゆる "Hello world!" 的なやつ)だ。これだと、プログラムが起動して終わるまでそこそこの時間で終わってしまって、外部プロ

    あなたの知らない time(1) の世界 - kuenishi's blog
    labunix
    labunix 2016/11/03
  • 筑波大学でデータベースの話をしてきました - kuenishi's blog

    筑波大学の川島先生に呼ばれて木、金と情報システム特別講義Dというやつに参加してきた。こんなことになるとは思っていなかったが、あろうことか講師側で呼ばれてしまい、思えば遠くへ来たものだと感慨深い。フリは「RiakとNoSQLの話をしてもらえたら」という非常に自由度の高い内容なので、せっかくなので僕の知っていることを全部詰め込んで話してやろうと思ったら10分延長してさらにスライド10枚分くらいを消化不良で終了という、みっともない感じになってしまった。かなり端折ってポイントだけ説明したので流れが分からず苦労した方も多いと思うが、まあ僕の性格なので許してほしい。データベースの講義をひと通り終えた院生レベルを想定してスライドを作ったので、もしかすると、わりと難しかったり分かりにくかったりするかもしれないので、わからないことがあったら適当に質問してください。 言いたかったことの流れを僕なりにまとめると

    筑波大学でデータベースの話をしてきました - kuenishi's blog
    labunix
    labunix 2014/02/02
  • メモリリークとは何か - kuenishi's blog

    メモリリークに悩まされている技術者は多いだろう。メモリリークが嫌でGCという技術が開発されたといっても過言ではないし、歴史的にはC++からJavaへシフトが起きた大きな理由のひとつといっていい。Unix系の簡単な定義でいえば、ヒープ領域を指すポインタ(アドレス)をロストしてしまえばそのメモリはもう漏れたといってよい。たとえばこういったコードだ。 struct { int i; char c; } spam; int main(){ void* p; int i; for(i=0; i<1024; ++i){ p = malloc(sizeof(struct spam)); } pause(); } このコードではpause(3)の時点で約5KBのメモリが漏れている。free(3)を使えばメモリをOSに返却できるが、アドレスが分からないので返却できない。 ところが、ここでいいたいのは、メモリ

    メモリリークとは何か - kuenishi's blog
    labunix
    labunix 2013/04/24
  • ひとりでやるRiak Advent Calendar 2012 day4 - OSS(というかRiak)に参加しよう! - kuenishi's blog

    まあよくあるオープンソースソフトウェアと同じです。 Photo by Nia 0. 心構え Q. Riakなどというガチンコ分散システムのOSSなんてどこぞの黄色い象の日語コミュニティのようにモヒカンどもがうようよしていてうっかりつまらない質問でも投げようものならマサカリが全方向から飛んでくるんじゃないの?と心配しています (東京都 30歳 男性) A. RiakはErlangで書かれています。Erlangコミュニティは紳士が多いことで有名で、erlang-questionsをみればわかるのですが些細な質問やFAQでも比較的みんな優しく答えてくれます。だから心配しないで! Q. Erlang書けないんだけど?!(神奈川県 23歳 女性) A. RiakはErlangで書かれていますが、できることは沢山あります!外からHTTPを叩いてテストしてもらうのにErlangは必要ありませんし、多く

    ひとりでやるRiak Advent Calendar 2012 day4 - OSS(というかRiak)に参加しよう! - kuenishi's blog
    labunix
    labunix 2012/12/05
  • ./configure地獄に陥っている君へ - kuenishi's blog

    C++やCでプログラムを開発しているときに、依存ライブラリやら何やらの環境を沢山用意したくなりますよね?富豪ならここでVMware ESXiやKVMを使うところでしょうか。LLerなら、たとえばRubyPythonにはrbenvやvirtualenvがあります。FreeBSDを使っている人ならjailを使う場面ですね。ちょっと器用な人ならchroot(8)を使いこなしているかもしれません。しかしjailは私には窮屈だし、情弱な私はまさに今pficommonやらで困っていました。つまり、 ユーザ空間で 大して苦労もせずに いろんなUnix系OSで どんなものが入っていてもとりあえず 環境をコロコロ切り替えたいのです。これを手作業でやろうとすると沢山の環境変数をシェル毎に毎回exportする羽目になります。ld_configとか( ゚Д゚)ハァ?という感じですよね。rvmなんかよくできている

    ./configure地獄に陥っている君へ - kuenishi's blog
    labunix
    labunix 2012/06/14
  • カーネル、libc、gccのビルドで気持ちを軽くする - kuenishi's blog

    MySQLのビルドが30秒を切るという話を聞いて一度ためしてみたものの、UbuntuでやるとカーネルやGCCのアップデートがある度に手順が最初からやり直しになってめんどくさかったんだけど、さすがにDebian開発者の人だってこんな面倒な手順踏んでないで何か自動化してるだろ、というのを効果を調べながらやってみたので結果報告です。 $ git clone git://github.com/jubatus/jubatus.git $ ./waf configure $ time ./waf Waf: Leaving directory `/tmp/jubatus/build' 'build' finished successfully (2m26.716s) real 2m27.113s user 3m12.364s sys 0m53.899s うん、これは遅い。C++ってのもあるけど、もうちょ

    カーネル、libc、gccのビルドで気持ちを軽くする - kuenishi's blog
    labunix
    labunix 2011/12/23
  • 1