タグ

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

  • NextDNSというサービスは子持ち家庭のインターネットを安心安全にする - kuenishi's blog

    tl:dr; 子供にも安全にインターネットさせたいが、なるべく親がコントロールしたい いままで /etc/hosts を工夫して狭い範囲でブラックリスト管理していたが運用が辛かった NextDNS.io というサービスがやりたいことを全部実現していたので課金した 我が家には小学生と幼稚園の男児がいて、どちらもラップトップを持ってネットサーフィンをする。分からないことは自分で調べさせたりScratchでプログラミングさせたりして遊ばせれば、これが結構な時間潰しになる。わたしの古いMacBook Airを使わせたりしていたが、予算に余裕が出たタイミングで上の子にはMacBook Proを買い与えた。いちどそのMacMinecraftをインストールしてやったらすぐに廃人になったので、さすがにそれはアンインストールして禁止した。おおよそ自由にネットサーフィンはさせているのだが、インターネット上で

    NextDNSというサービスは子持ち家庭のインターネットを安心安全にする - kuenishi's blog
    ryshinoz
    ryshinoz 2020/06/07
  • コードを書いて金を稼ぐ - kuenishi's blog

    初めてまともに携わったシステムはNTT研究所で作られていたCBoCといわれるものであった。内容について詳しくは述べないが、国内では割と先進的でありながらとにかくNTTの事業会社(割と稼いでいる)で使えるものを作ろうというものであった。この時期は研究所は研究だけしていればよいというものではなく事業貢献が求められており、論文になるような研究を生み出すだけでなくそれをどうやってビジネスにするかが重要視されていたのだと思う。このとき作ったものは実際に事業会社で使われ、退職の前後には年間数万円が口座に振り込まれるようになっていた。なお収入なので税金の扱いを間違えないように。しかし特許といえばガッポガポ…というイメージだがそんなに当たることはない。わたしが携わったそのソフトウェアは確かに使われていたが、事業会社のビジネスの中核を支えていくようなものにはならなかった。ならなかったのでメンテナンスフェーズ

    コードを書いて金を稼ぐ - kuenishi's blog
    ryshinoz
    ryshinoz 2019/12/10
  • トップレベルのコンピュータエンジニアなら普段からチェックして当然の技術系メディアN選 - kuenishi's blog

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

    トップレベルのコンピュータエンジニアなら普段からチェックして当然の技術系メディアN選 - kuenishi's blog
    ryshinoz
    ryshinoz 2018/04/13
  • 日本が機械学習パラダイスなのは情報大航海プロジェクトのおかげ - kuenishi's blog

    人工知能じゃ〜これからはシンギュラリティじゃ〜と盛り上がっており、も杓子も深層学習で人工知能で人類皆失業などと楽しいお祭り、ぼくは嫌いじゃない。我々が生きていくためには金が必要なんだ。というわけで、ちょっと気になって調べたことがあったのでここに記録しておく。もしこれが知財や法曹方面の業界で有名な話だったらコンピュータエンジニアたち何やってんのという話ではある。 AIブームというやつが燃料になって日機械学習パラダイスだという記事が話題になっているが、これは平成21年の著作権法改正で追加された著作権法47の7のおかげである(ラッキー!) じゃあ、そもそもどうしてそんな条項ができてるの? 調べてみたら情報大航海プロジェクトが深く関わっているようだよ?ちょっとは感謝したらどう?? もともとこれが気になっていた。ので調べました。という話。 著作権法の47の7が、思いがけず今重要にって解説が散見

    日本が機械学習パラダイスなのは情報大航海プロジェクトのおかげ - kuenishi's blog
    ryshinoz
    ryshinoz 2017/10/11
  • あなたの知らない time(1) の世界 - kuenishi's blog

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

    あなたの知らない time(1) の世界 - kuenishi's blog
    ryshinoz
    ryshinoz 2016/11/02
  • 分散プログラミングモデルおよびデザインパターン - kuenishi's blog

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

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

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

    ryshinoz
    ryshinoz 2016/02/11
  • リアルタイムとバッチの違い - kuenishi's blog

    昨日、分散DB読書会のあとに品川のラーメン屋でリアルタイムとは何ぞや〜みたいな話になった。自分の思いついたポエムをここに書いておこう。現場の問題とはあまり関係がない。 Stream Data Processing: A Quality of Service Perspective (Advances in Database Systems)というによれば、DSMS (Data Steram Management System) とDBMS (Database Management System)の違いは、クエリを発行するデータ集合の性質にある。つまり、DBMSは今ある有限のデータに対して操作を行うための仕組みで、DSMSはこれからやってくる無限のデータに対して操作を行うための仕組みと定義されていた。このDSMSというやつは、古式ゆかしいストリーム処理システムのことで、まあいわゆるCEP

    リアルタイムとバッチの違い - kuenishi's blog
    ryshinoz
    ryshinoz 2015/06/16
  • 在宅勤務環境を整備した - kuenishi's blog

    2年前に一念発起して組んだマシンがあって、Core i7と32GBものRAMを節操無く積んでいたもののファンの音が気になるとか子供が邪魔をするとか、ディスプレイが小さいとか理由であまり使っていなかった。引越を機会に自分の仕事場がつくれそうなので、これを機会にデスクトップ環境をもう一度整備した。 ディスプレイ やはりこれが一番大切だろう。必須条件は解像度がいわゆる4Kあること。MacBook Proを使ってRetinaの美しさに慣れてしまった今、これまでの普通の液晶モニタでは何インチあっても意味がない。もともと液晶のサイズそのものではなく、解像度に興味があったので必然だ。当は海のむこうだと$500とかそういうレベルで変えるらしいのだが、日に住んでいるのでなんか出てるかなーと思ったらASUSからPB287QとIODATAからM4K281XBがそれぞれ出ていた。ぼくは海よりも深い理由からAS

    在宅勤務環境を整備した - kuenishi's blog
    ryshinoz
    ryshinoz 2014/08/15
  • LINE Developer Conferenceに行ってきた - kuenishi's blog

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

    LINE Developer Conferenceに行ってきた - kuenishi's blog
    ryshinoz
    ryshinoz 2014/04/17
  • メモリリークとは何か - 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
    ryshinoz
    ryshinoz 2013/04/24
  • 【緊急】 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
    ryshinoz
    ryshinoz 2013/03/21
  • ひとりでやるRiak Advent Calendar 2012 day1 - 入門 - kuenishi's blog

    Riakは、オープンソースの分散キー・バリュー・ストアでゴニョゴニョ、ライセンスはApache2.0というのはおいといて、とりあえず入れてみよう。 ソースから入れる ソースから入れるときは、準備としてErlang/OTPが必要。いろいろ方法があるのだけど、今では大抵のOSのパッケージ管理システムからインストールすることができるので、その方法に従ってください。ErlangのバージョンはR14B03以上がオススメです。R15B02は公式にはサポートされていないけど、まあぶっちゃけ僕もR15B02を使っている。 $ escript escript: Missing filename $ erl Erlang R15B02 (erts-5.9.2) [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] [kernel-poll:false] こん

    ひとりでやるRiak Advent Calendar 2012 day1 - 入門 - kuenishi's blog
    ryshinoz
    ryshinoz 2012/12/05
  • Evernoteのシステム概要 - kuenishi's blog

    ふと、Evernoteは沢山のユーザーと沢山のデータを抱えているはずでバックエンドは大丈夫なのかなあと気になった。検索してみたらA Digest of Evernote Architectureという記事が見つかった。900万のユーザーがいて、まあそれなりなんだけどノート体は90台ちょい*1で持ってるということだった。まあアプリ的には素直にユーザー分割しておけばよくてそれはmixiより簡単だよねと思うくらいで、図をみたら大体わかるし特筆すべき点もない…と思ったら! We use BGP to direct traffic through fully independent network feeds from our primary (NTT) and secondary (Level 3) providers. This is filtered through Vyatta on th

    Evernoteのシステム概要 - kuenishi's blog
    ryshinoz
    ryshinoz 2012/09/03
  • 基盤系プログラマ - kuenishi's blog

    いわゆる基盤系のエンジニアリング技術について、私の場合は、今の会社に入社して2年間で徹底的に叩き込まれました*1。C言語なんかは独習の範囲内であって、コンピュータに関する基礎的な知識が不足していると痛感しています。一方、Computer Scienceに関する基的なトピックはシンプルなものが多いので、数学の素養と、大学で詰め込まれた技術があれば何とかなる感じがしています。 飽くまでも、ですが、OSとかRDBMSとか、全ては手段です。ビル建設でいえば生コンのようなもの。砂利とか。肝心なのは、自分が欲しいビルの理想をきちんと描き、実現までの手段・手順を整理する。理想としているビルができているかを確かめる。難しいのは、「そんなビルが技術的な観点から当に建設できるのか?」を確かめながら進むこと。 あるいは、それらの技術を全て、日語にしてきちんと表現すること、設計を周囲に伝えて合意をとること、

    基盤系プログラマ - kuenishi's blog
    ryshinoz
    ryshinoz 2009/05/12
  • 1