タグ

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

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

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

    トップレベルのコンピュータエンジニアなら普段からチェックして当然の技術系メディアN選 - kuenishi's blog
  • 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
  • 筑波大学で分散システムの話をしてきました - kuenishi's blog

    また呼んでいただいたので、筑波大学の情報システム特別講義D(1/19, 20 - 20日4限)で話してきました。これは業界で川島さんに無茶振りをされた人が聴講に来た大学生を置き去りにして講師陣に実力を試されるという素敵なイベントです。発表に使ったスライドはこちらです。自分で論文読んで証明を考えながら作ったスライドなので曖昧なところや誤りがあれば指摘いただきたいです。 前回はデータベースの話をしました。 kuenishi.hatenadiary.jp 今回は、転職もしたし、NoSQLブーム的なのも一通り終わったのでもうデータベースの話でもねーだろってことで、分散システムの理論面に入門した内容になっています。分散システムの理論面は20世紀に一通り出揃ってしまって、21世紀の最初の15年は実装と運用の時代でした。具体的には、理論と実装のギャップをどう埋めるかという研究や試行錯誤が盛んで、理論それ

    筑波大学で分散システムの話をしてきました - kuenishi's blog
  • 2017年のクラウドを占う - kuenishi's blog

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

    2017年のクラウドを占う - kuenishi's blog
  • Google翻訳でとても仕事で助かった話 - kuenishi's blog

    Google翻訳がニューラルネットワーク応用で「さらに進化」。翻訳ソフト感うすれ、流暢さを身につける - Engadget 日版にもあるように、新しいNMTのGoogle翻訳はこれまでの機械翻訳とは段違いの性能で評判だ。わたしも少しずつ使ってみたりしていたのだが実際に職務でインパクトがあったのでここに記録しておこうと思う。 ご存知の方もいると思うが、わたしはApache Mesosを使ったソフトウェアの開発を仕事にしている。これは単体のサーバーでも動作するので、開発するときはほとんど1台または2台くらいのサーバーを使っている。しかしながら、実際の環境ではもっと多くのサーバーがクラスタとなって動作する。当然、複数のサーバーで動作するときしかでない問題は多い。詳しくは省略するが、今回もその件に漏れず複数サーバーないと出ない問題に当たって、それ自体はMesosの仕様を見逃していたせいなので修正

    Google翻訳でとても仕事で助かった話 - kuenishi's blog
    muddydixon
    muddydixon 2016/11/30
    わかる“よく訓練された俺達は、同じ意味不明なら日本語よりも英語の方が理解できるのだ”、あと身長は伸びない
  • あなたの知らない time(1) の世界 - kuenishi's blog

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

    あなたの知らない time(1) の世界 - kuenishi's blog
  • 転職エージェントについて - kuenishi's blog

    さて先日いくつかの転職エージェントと接触したので、その経緯や結末をうまくボカしつつここに記しておくことにする。日曜の午後のヒマつぶしになると幸いである。 狭い業界、知り合いの方が多いのだがなぜ転職エージェントにアクセスしてみようと思ったかというと、実は世間は広くて、私の知らない面白いことをやっている会社が沢山あるのではないかとふと不安に駆られたからだ。このままでは大海を知るためには、結局アメリカや欧州へ渡るしかなくなってしまう。このままでは拙い。酔っていたせいでもある。ある日思い立って、Gmailを "Opportunities" とかそういうので検索しまくって、適当にメールをいくつかのエージェントに送った。夜中に酔った勢いで書いたものだから、短く簡潔で素晴らしいメールになった。 Thank you for reaching out to me. I'm getting more inte

    転職エージェントについて - kuenishi's blog
  • 分散プログラミングモデルおよびデザインパターン - kuenishi's blog

    同名の某記事について。僕がタイトルから想像する期待を、なんだか意外な方向に裏切ってくれた記事であった。批判するだけではよくないので、同じタイトルで僕ならどういう話になるか…という話をしよう。絵のない長文だ覚悟して読め(ΦωΦ)フフフ…。 分散プログラミングモデル プログラミングモデルとはなんであろうか。 …CもJavaもMPIも登場していない1972年の論文を持ってこられてそれがオリジナルだみたいなこと言われてもえー…って感じで、Flynnの1972年の論文は並列計算やHPCの方面へ非常に大きな影響を与えていると思う。ただしそれはCPU内の話であって、時代が進むと共にたとえば牧野先生の日記「並列計算機のプログラミングモデル」で書かれているような議論につながるといえば繋がるには繋がるが、このレベルで計算を並列化する議論にしか応用できない。せいぜい、プログラミングモデルとひとくちにいっても様々

  • クラウド時代の分散データベースを支える技術の応用と進歩 - kuenishi's blog

    teespring.com 分散データベースというのは、それ単体でもとても難しい、データベースと、分散システム双方の技術の粋を結集して実現されるアプリケーションだ。これをサービスといったり、ミドルウェアといったりする場合もあるが、今回は技術を応用してつくったものという意図でアプリケーションと位置づけることにする。まあ古くて新しい問題で、死屍累々の世界でありながら、それでいて金の鉱脈でもある世界だ。イカのようなトピックを概説していくことで、近年の流れをメモしておきたい。 Pre-cloud era: クラウド以前の時代 BigTable, DynamoとCAP定理 MegaStore 研究: Calvin Jepsen: できたら☎してよ〜 Coordination free database Spanner: 何でもできるよ!! Kudu+Impala Next? クラウド以前の時代 Sy

  • ビッグデータ基盤技術勉強会で喋ってきた - kuenishi's blog

    研究会が設立されるとか、前からそういう流れになるとは聞いていたが、今日(11日)に開催されたビッグデータ基盤技術勉強会に参加して発表してきた。招待してくれた川島先生には感謝しかない。それにしてもあれ研究会じゃないの、ビッグデータとかいまさら冠するなんて、なんというダサいネーミングセンスなんだと思ってはいけない。世間がやっと俺たちに追い付いてきたんだから、ダサいと思ってはいけない。飽きたころに慣れたものをやめてサッサと次に行っていいのは式年遷宮だけだ。 ぼくの発表もなるべく復習に徹して、研究会だからなにか新しいことを言わなくてもいい、インダストリアル枠だしわかってることを解説していこうというスタンスで解説した。詳細を省いているところも、語弊があるところもあるがお許しいただきたい。 さて丸一日盛り上がってワイワイやった後に、吉祥寺で番の会があって、そこでまた(いつもの)いろんな人と話した。そ

    ビッグデータ基盤技術勉強会で喋ってきた - kuenishi's blog
  • LINE Developer Conferenceに行ってきた - kuenishi's blog

    ふとしたことから LINE Developer Conference の存在を知り、その中の「高可用データベース」という文字列をみて高可用データベースを作っている身としては黙っていられないので行ってきた。喉がかわいたので水をもらえてよかった。 ひとつめのセッションはLINEのシステム運用。インフラは基に忠実に、無駄に安いハードウェア買って困るくらいならそこそこの値段でいいヤツ買います、ソフトウェアも同様、必要なところでは VMware vSphereやOracleを使いますといった感じだった。やはりメッセージングなのでバーストトラフィックがあるらしく、それのせいでスイッチのパケットバッファが普通に溢れてパケ落ちが発生するらしい。ふつうのTCP/IPならその後の再送はランダムに時間置いて飛ぶはずだからそんなに溢れないと思ってたんだけど、TCP周りの設定をいじったらなんとかなりそうな気もする

    LINE Developer Conferenceに行ってきた - kuenishi's blog
  • データ可視化の実践入門 - kuenishi's blog

    エンジニアのためのデータ可視化実践入門というを読んだ。なんでも「ある意味」という言葉をつけておけば大丈夫らしいのでいっておくが、正直いって、ある意味でこのに騙された感がある。ある意味で。まあ釣られたという言葉が正しいのだろう。 エンジニアのための データ可視化[実践]入門 ~D3.jsによるWebの可視化 (Software Design plus) 作者: 森藤大地,あんちべ出版社/メーカー: 技術評論社発売日: 2014/02/20メディア: 単行(ソフトカバー)この商品を含むブログ (4件) を見る このが出る前にブラウザでグラフ書くならどういうのがいいのだろうなーと思って D3.js を一度試したことがあった。たしかにグラフはカッコよく書けるのだが如何せん私はJavaScriptがさっぱり分からない。どれくらい分からないかというとJavaScriptJavaはそれぞれv8

    データ可視化の実践入門 - kuenishi's blog
  • エンジニアCROSS 2014で登壇してきた - kuenishi's blog

    リピ君に声をかけられて分散処理システムCROSSというセッションに登壇してきた。立場としてはRiakという分散システムを商用製品として開発している人間…というわけだが、その前にはJubatusという分散システムを(一応)最初に設計して*1、他にもお仕事でいくつか設計したり開発してきた身。事前に打ち合わせと称して一度メンバーで飲んだときが盛り上がりのピークと思われ「裏番組すごいしどーせ誰も来ないだろせいぜい特定の5人だな」と話していたのだけども、蓋を開けてみると席が8割型埋まってしまうという盛況ぶり。で、途端に緊張し始めたわけで… とりあえず、自分が多少ウザくても主張したいことをキーノートスライドに入れておいて「ネットワークはキレるんです」とか言っておいたのだけど、それを話したところで会場はポカーンとしてしまっていたので僕の話はそこまで。いちおうPaxosとかRaftについて知ってる範囲で話

    エンジニアCROSS 2014で登壇してきた - kuenishi's blog
    muddydixon
    muddydixon 2014/01/29
    「首都圏のITコミュニティのキーパーソンが数多く集まっていたことで、このビルが突然地盤沈下でもしようものなら日本の著名なWebサービス・スマホアプリの半数が滅びるだろう」僕も毎年そう思ってる
  • memcached API で Riak を叩けるようになりました - kuenishi's blog

    その名もダイコーン。まずはget, set, delete だけなんですが、とりあえず適当に作ってもMemcachedの速度の1/40くらい出ます。そのうちいろんなデータベースのAPI備えて、クライアント側を書き換えなくてもRiakを叩けるようにしたいなーと思っています。memslapの結果だと $ ./clients/memslap --servers=localhost:11211 --non-blocking --concurrency=10 とすると memcached dicorn/mem dicorn/riak 1.987 2.705 88.487 てな感じです(単位は秒)。 構成としては1プロセスで動くただのプロキシで、メモリもCPUもほとんど使いません。Memcachedがいたところに代わりに立ち上げて、Riakの場所を教えてあげるとそれだけでMemcachedとして動いて

    memcached API で Riak を叩けるようになりました - kuenishi's blog
    muddydixon
    muddydixon 2013/09/09
    おおー
  • Cassandra 2.0 に CAS が入るとか入らないとか - kuenishi's blog

    CASSANDRA-5062でCAS (Compare and Swap) を入れようという話になっているらしく、一体どんなすごいアトミックブロードキャストを使うのか気になっていた。どういうことなのだろうとスレッドをナナメ読みしてみたのだが…議論の流れとしては カウンターだけじゃなくてCASほしいよねAPIとして ZooKeeperのロック使うのがシンプルでいんじゃね? いやいやサーバーの種類増やすとかあり得ないし 基方針は、コーディネーターみたいなのをレプリカセット毎に決めてそこから Chain Replication ぽく コーディネーターどうやって決める やっぱPaxosじゃね? 再実装ヤダよZAB使おうよZKの実装あるよ (なんかプロトコル上の理由があって)やっぱPaxos実装するしかないか… となって、結局 Jonathan Ellis が Paxos を素で実装してしまった模

    Cassandra 2.0 に CAS が入るとか入らないとか - kuenishi's blog
    muddydixon
    muddydixon 2013/05/19
    CAS入るとか楽しみすぎる・・・ただ、パフォーマンスがどうなるかは気になる。しかしPaxosをすで実装とか・・・
  • そろそろGoについて一言いっておくか - kuenishi's blog

    昨日、GoCon(ごうこん)なるイベントに参加してきた。以下に続く話は5割以上がフィクションなので虚実織り混ざっている様を楽しみながらお読みいただけたらと思う。 最初に発表されたニュースを聞いたときは、Goはよい車輪のよい再発明で、結局GoogleC++Javaを使い続けるだろうし、世間はGoogle独自言語としてみなすのだろうなという予感はあったし、2010年だから2011年ころはそういう見方をされていたように記憶されている。私もそういうものだと思っていたし、特に関心を持つこともしなかった。いま思えば正常性バイアスだったのだろう。 実際に昨日のカンファレンスで一番興味深かったのは鵜飼さんによるGoの解説だった。比較対象がC++, Python, Javaだったことが最も印象的で、普段からErlangやOCamlといった関数型言語に接していた身として新鮮だった。話を聞くうちにGoogl

    そろそろGoについて一言いっておくか - kuenishi's blog
  • 【緊急】 Riak Cloud Storage が OSS になりました【速報】 - kuenishi's blog

    BashoのRiak CSがオープンソースになり、さらに、同時に Riak CS 1.3.0 がリリースされました。Riak CSの日語の紹介もあります。概要を知りたいというひとは第五回クラスト研の僕の発表スライドもよいかと思います。 今まではトライアル版と申しこめば無料で使えていましたが、これからはバグを見つけたりすると自分で直してPull Requestすることができるようになります。素晴らしいですね。Bashoジャパンで開発した機能もいくつか入っているらしいですよ。 ドキュメントにあまり時間をかけられなかったらしく(他人ごと)、公式のドキュメントもなかなかなので、ヒジョーにニッチなQuickStartをここに書いておきます。もう開発者向けといっていいレベル。Tarballも配布されると思うので特に心配はしていません。基的には公式のQuickStartと同じですが、ちょいと長いので

    【緊急】 Riak Cloud Storage が OSS になりました【速報】 - kuenishi's blog
  • node.js vs Erlang (ネタ) - kuenishi's blog

    ついぞ最近node.jsなんてのがでて、繁華街のあちこちでチヤホヤされてる。そんなときに、モヒカン族Erlang村(erlang-questions)に「node.jsってどうなの?」的燃料が投下されたわけですよ。これは炎上しそうだ…と追いかけてたら、ネタどころか案外真面目なハナシばっかりだったのですが。まずは真面目に問いかけをする純朴な成年(想像)。 「Erlang好きだし使ってるんだけど、Erlangとnode.jsてそれぞれどういうジャンルがすごいの?RabbitMQとかejabberdみたいなのつくろうとしたらどうなるの?簡単なチャットサーバーつくるくらうならnode.jsのが断然簡単だよね?分散システムで使うなら断然違うとか? Ulf Wigerによると、ブロックする関数の問題を簡単に解決してくれるとか書いてあるみたいだけど (link)」 おっお。素直な質問。これはみんな釣られ

    node.js vs Erlang (ネタ) - kuenishi's blog
  • 1