ymmt2005のブックマーク (48)

  • Coursera の Algorithms on Strings 受けました - たにしきんぐダム

    Cousera の Algorithms on Strings を受講していて、平日にお昼ご飯べながらビデオを見たり休日とかに課題をやったりしていたのですが先日完走しました!(講義は4週分なのですが忙しかったり難しかったりで2ヶ月くらいかかってしまった) お金を払うと課題提出システムみたいなのが使えて提出したプログラムの時間/空間計算量を教えてくれるらしいけど無料でも授業ビデオと資料にはアクセスできた めちゃくちゃ良かったのでみんなも受講しましょう www.coursera.org きっかけはアルバイト先で開催されていたのに参加させてもらったのと、 ISUCON6予選で高速な文字列マッチングアルゴリズムが全く分からず悔しい思いをしたから(正規表現の更新・キャッシュをうまく頑張れば十分な点数は獲得できたみたいですが...)でした。 学んで終わりじゃ多分忘れるから何とか応用とかできたら良い

    Coursera の Algorithms on Strings 受けました - たにしきんぐダム
    ymmt2005
    ymmt2005 2017/01/05
  • ディープラーニングについて学ぶならこの2冊を読むしかない|加藤貞顕

    年末年始はこの2冊を読んでいた。 『はじめての深層学習プログラミング』清水亮 『ゼロからつくるDeep Learning』斎藤康毅 結論から言うと、いま、人工知能やディープラーニングに興味があるひとは、2冊とも必読ではないかと思った。 アプローチが完全に対称的なので、両方読んだら、理論と雰囲気について、見通しがつくようになったのがとてもよかった。 『ゼロからつくるDeep Learning』は、ていねいに書かれたオーソドックスな入門書だ。人工知能開発によく使われる言語・Pythonの基や数値計算ライブラリの使い方からはじまり、ニューラルネットワーク、ディープラーニング、畳み込みときて、最後に画像認識を解説する。随所に適切な例題やサンプルコードを交えて、理論と実践をバランスよく説明している。 対して、『はじめての深層学習プログラミング』は、まったく真逆のアプローチだ。なんと、理論の解説など

    ディープラーニングについて学ぶならこの2冊を読むしかない|加藤貞顕
    ymmt2005
    ymmt2005 2017/01/04
  • サイボウズではミドルウェアエンジニアも活躍しています - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリケーション基盤チームの青木(@a_o_k_i_n_g)です。 先日、エンタープライズジン様の記事で、弊社の名前が挙がっていました。 井上 まあ、ミドルウェアに詳しい人間もいないと。ミドルウェアだけじゃないですけど、やっぱりアプリケーションベンダーも、我々もそうですし、サイボウズさんとかだって、ある程度ミドルウェアに詳しい人は一定数必要じゃないですか。そういう意味でいうとポジションはあるかなって。 神林 それはあるかなあ。研究所ですよね。サイボウズだったらサイボウズラボですよね、結局。 http://enterprisezine.jp/dbonline/detail/8770?p=6 この意見について、サイボウズではミドルウェアエンジニアも活躍しているという紹介をさせていただきます! まず初めに、サイボウズとサイボウズ・ラボの関係について紹介します。サイボウズは cyboz

    サイボウズではミドルウェアエンジニアも活躍しています - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2016/12/21
    たくさん作ってますよ。
  • 一人トランザクション技術のカレンダー | Advent Calendar 2016 - Qiita

    About reserved postingIf you register a secret article by the day before the same day, it will be automatically published around 7:00 on the same day. About posting periodOnly articles submitted after November 1 of the year can be registered. (Secret articles can be registered anytime articles are posted.)

    一人トランザクション技術のカレンダー | Advent Calendar 2016 - Qiita
    ymmt2005
    ymmt2005 2016/12/15
  • カーネギーメロンのDBに関する講義が面白いのでおすすめ - だいたいよくわからないブログ

    ここに書くことによって途中でやめられなくするメソッドです。 ハッカーニュースを眺めていたら以下のようなCS系講義動画のまとめリポジトリが流れていました。 GitHub - Developer-Y/cs-video-courses: List of Computer Science courses with video lectures. へーっと思いながら何個かポチってみたところ以下に出くわしました。 15721.courses.cs.cmu.edu 英語が(自分にとって)聞き取りやすく、動画の品質(画質やスライドがちゃんと見えるかどうかといった部分)も良いものでかつ興味のある内容で出来ればスライドもおしゃれで・・・となるとなかなか少ないですが、これはかなり見やすいです。 スライドも概念図が頻繁に登場したりして、これだけでも聞き取れなかった部分などをかなり補完できます。 スケジュールページ

    カーネギーメロンのDBに関する講義が面白いのでおすすめ - だいたいよくわからないブログ
    ymmt2005
    ymmt2005 2016/12/12
  • Python と Ruby と typing - methaneのブログ

    うーん、structural subtypingとダックタイピングは同じものなんだろうか。— Yukihiro Matsumoto (@yukihiro_matz) 2016年9月8日 https://t.co/5Rv86piThC wikipediaによると似て非なる物のようですね。 https://t.co/VwIg39h5M0— INADA Naoki (@methane) 2016年9月8日 この話題について補足しておきます。なお、僕はTAPL脱落組なのであまり正確性は期待しないでください。 背景 Ruby Kaigi で Matz が Ruby3 に向けて考え中の静的型について話されたようです。 少し前から、 Python でも Guido が Dropbox での大量のコードベースを改善していくために type hinting がほしいということで PEP 484 を始めました

    Python と Ruby と typing - methaneのブログ
    ymmt2005
    ymmt2005 2016/09/09
  • Go でいい感じのコマンドを作れるツールキットの紹介 - Cybozu Inside Out | サイボウズエンジニアのブログ

    SRE の @ymmt2005 です。最近は systemd が好物です。 今回は GitHub でサイボウズが公開している Go 言語のプロジェクト群、特にいい感じのコマンドを作れる github.com/cybozu-go/cmd について紹介します。 SRE チームでは最近 Go でツールを開発する機会が多くなっています。最初のうちは決まった作り方をしていなかったため、コマンドごとに仕様がばらばらで、以下のような問題がでてきました。 REST API サーバーのアクセスログを記録しないコマンドがある 外部コマンド実行時のログを記録しないコマンドがある SIGTERM 等シグナル処理の方法がばらばら ログファイルのリオープンができずローテートしにくい ログメッセージの形式がばらばら 大雑把にいうと、ログとシグナル処理がきちんとしてないと扱いにくいわけです。 具体的にどうなっていると「い

    Go でいい感じのコマンドを作れるツールキットの紹介 - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2016/09/02
  • Elasticsearch 5.0.0で再インデクシングの高速化を探求する - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリケーション基盤チームの渡辺です。IntelliJのコード補完はCtrl+;にバインドしています。 アプリケーション基盤チームでは、Necoプロジェクト(アーキテクチャ刷新プロジェクト)の一環として、 次世代の検索基盤を検討していて、その候補としてElasticsearchを調査しています。 先月の記事で再インデクシングと絡めてingest pluginの話をして、 びっくりするぐらい需要が低く、自分のテーマ選択のセンスのなさを痛感したのですが、 こじらせた感じで今日も再インデクシングの話をしたいと思います。 想定読者は、Elasticsearchにある程度慣れている方として、用語やAPI(インデックス, シャード, ScrollAPI, BulkAPIなど)の説明は最小限にします。 利用したElasticsearchのバージョンは5.0.0-alpha4です。2.X系だと

    Elasticsearch 5.0.0で再インデクシングの高速化を探求する - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2016/08/18
  • More Effective Go

    More Effective Go 27 July 2016 山泰宇 サイボウズ株式会社 github.com/ymmt2005 資料について 資料はサイボウズの社内トレーニング用に作成したものです。 以下については前提知識としています。 A Tour of Go How to Write Go Code Effective Go 2 Agenda リポジトリの構成 依存関係の解決 ツール類 github.com の周辺エコシステム 重要ライブラリ 排他制御 goroutine の取り扱い方 3 題材 github.com/cybozu-go/aptutil を題材とします。 go-apt-cacher / go-apt-mirror というユーティリティを含んでおり、 内部で HTTP のリバースプロキシ、多数の goroutine の排他制御、同時 実行数の制御などを行っています

  • サマーインターン2016を開催します! - Cybozu Inside Out | サイボウズエンジニアのブログ

    皆さんこんにちは!人事部の中江です。 日はサイボウズのエンジニアサマーインターンシップについてご案内させていただきます! 今年は3つのコースを用意しています。 Webアプリケーション開発コース 品質保証/セキュリティコース デザイナーコース 皆さんのエントリーお待ちしています!サイボウズでこの夏熱い5日間を過ごしましょう!! 募集要項 日時 08月01日(月) 〜 05日(金) ※ この回のみ最終日の終了時間がお昼過ぎとなります 08月22日(月) 〜 26日(金) 09月05日(月) 〜 09日(金) 就業時間 9:00 〜 18:00 ※ 初日は10時集合、最終日は懇親会を実施するため20時〜21時頃解散となります 会場 東京オフィス 大阪オフィス 松山オフィス コース Webアプリケーション開発コース (東京・大阪・松山) 品質保証/セキュリティコース (東京・大阪) デザイナーコ

    サマーインターン2016を開催します! - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2016/06/01
  • サイボウズエンジニアの職場環境 @ 2016 - Cybozu Inside Out | サイボウズエンジニアのブログ

    泰宇(@ymmt2005)です。今回はサイボウズエンジニアの働く環境を詳細にご紹介します。 働く場所 働く時間 机・椅子・PC 社内情報システム 開発用ソフトウェア 開発用共有サーバー 勉強や研修の機会 制度と風土 オープンソース活動 働く場所 サイボウズの開発拠点は現在国内外に 5 箇所あります。 東京(東京日橋タワー) 大阪(梅田阪急ビルオフィスタワー) 松山(あいおいニッセイ同和損保 松山三番町ビル) 上海 ベトナム オフィスで働くのが基ですが、サイボウズには自分の好きな時間・場所で働けるウルトラワークという制度があるので、自宅や実家で働くことも可能です。どの程度可能かというと、 Amazon から宅配便が届くから、 雨・雪が降っているから、 電車が混んでいて乗りづらいから、 急に子供が熱を出したから、 といった様々な理由で、連絡一ついれれば在宅勤務できます。後述する社内情報

    サイボウズエンジニアの職場環境 @ 2016 - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2016/05/23
    Neco ではいけてないところを晒したので、今度はいけてる職場環境を紹介することにしました。
  • NAT をやめて、透過 SOCKS プロキシを導入した - Cybozu Inside Out | サイボウズエンジニアのブログ

    以下の記事内容について、奥一穂氏(@kazuho)より、「connectのエラーコードが信頼できなくなるといった欠点もあるのに透過 SOCKS プロキシが汎用的に良いように読めてしまう」というご指摘をいただきました。確かに、下記内容は当社が抱えていた複数の課題を短期間で解消できる「ワークアラウンド」として透過 SOCKS プロキシという技法もあることを紹介したものであり、NAT と比較して常に良いという主張をしたかったわけではありません。また、記事内では解説を省きましたが、従来より HTTP(S) 通信は NAT ではなく HTTP プロキシを利用しています。謹んで補足・訂正とさせていただきます。 が好きだけどアレルギーで近寄ることができない山泰宇です。 先日アーキテクチャ刷新プロジェクトNeco」を紹介しましたが、今回はその活動の一環として実施したネットワークアドレス変換(NAT

    NAT をやめて、透過 SOCKS プロキシを導入した - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2016/03/14
    >特にルーティングの設定をする人とアプリ層の人が違う iptables ではなく transocks (ないし各SOCKS対応プログラム)がどの SOCKS サーバーを使うか選択できるという意味です。デフォルトゲートウェイからの解放。
  • アーキテクチャ刷新プロジェクト「Neco」の紹介 - Cybozu Inside Out | サイボウズエンジニアのブログ

    @ymmt2005 こと山です。 今回は開発部と運用部のメンバーが協力して進めている cybozu.com やサイボウズ Live のアーキテクチャ刷新プロジェクトNeco」について紹介します。 Neco を 3 行で説明すると、 サイボウズのクラウドインフラのいけてないところを洗い出して、 5 年程度を目安に改善するつもりだけど、 やりたいことが多すぎるので、We are hiring! で済んでしまうのですが、それだけでは面白みに欠けますので、いけてない内実を暴露しながら解説いたします。 サイボウズはクラウド 5 年生 正確に言うとサイボウズ Liveなど一部のサービスはもっと以前から取り組んでいたのですが、格的にクラウドサービスといえるインフラを構築してサービス提供を開始したのは今から 4 年前の 2011 年 11 月となります。そこでオープンしたのが cybozu.co

    アーキテクチャ刷新プロジェクト「Neco」の紹介 - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2016/03/11
    セルクマ。いけてないサイボウズというか、等身大を伝えたくて書きました。
  • BitCoinとBlockChainにまつわる誤解ーそんなことはできない - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 言いたいことを一行で BlockChainはいろいろと面倒な制約がありますので,KISSの原則を忘れないようにしましょう.権力分立の原理をどうやっても守りたいという政治的な主張がない限り,BlockChainを応用するのはナンセンスです. はじめに BitCoinの中核をなすBlockChainと呼ばれる技術が今ホットですね,いろんなところで耳にします.BlockChainとはようは皆で合意(AさんがBさんにXを渡したという取引記録)を形成していく分散型合意形成アルゴリズムです.ボランティアで参加したコンピュータ全員で協力して改ざんが困

    BitCoinとBlockChainにまつわる誤解ーそんなことはできない - Qiita
    ymmt2005
    ymmt2005 2016/01/08
  • 半年かかったバグ調査の顛末は - Cybozu Inside Out | サイボウズエンジニアのブログ

    サイボウズ・ラボの光成です。 今回は原因究明に半年以上かかったバグ調査の紹介をいたします。 弊社はクラウドサービスcybozu.comを提供しています。 クラウドサービスでは障害対策のためのデータバックアップやレプリケーションが必須です。 現在ラボの星野がメイン、私はサブとして弊社サービスでの利用を目指した次期バックアップシステムWalB(GitHub)を開発しています。 WalBは、ファイルシステムとdiskの間に入ってIOを全て記録するブロックデバイスとIOのログを管理するツールからなるシステムです。 詳細はリンク先をごらんください。 発端 去年はラボ内の開発環境でテストを進め、社でテスト運用を開始するのが目標でした。 ところがラボでテストを開始して4カ月後の2015年4月、不正なlogpackが検出されました。 logpackとはWalBで用いられるデータフォーマットの一つです。

    半年かかったバグ調査の顛末は - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2016/01/08
    星野さん超苦労してた。本番投入も間近かな。
  • Electronでアプリを書く場合は、気合いと根性でXSSを発生させないようにしなければならない。 - 葉っぱ日記

    そのうちもう少しきちんと書きますが、とりあえず時間がないので結論だけ書くと、タイトルが全てでElectronでアプリを書く場合は気合いと根性でXSSを発生させないようにしなければならない。 これまでWebアプリケーション上でXSSが存在したとしても、影響範囲はそのWebアプリケーションの中に留まるので、Webアプリケーションの提供側がそれを許容するのであればXSSの存在に目をつむることもできた。しかし、ElectronアプリでDOM-based XSSが一か所でも発生すると、(おそらく)確実に任意コード実行へとつながり、利用者のPCの(そのユーザー権限での)全機能が攻撃者によって利用できる。 そのため、Electronでアプリケーションを作成する開発者は気合いと根性でXSSを完全につぶさなければならない。 nodeIntegration:falseやContent-Security-Pol

    Electronでアプリを書く場合は、気合いと根性でXSSを発生させないようにしなければならない。 - 葉っぱ日記
    ymmt2005
    ymmt2005 2015/12/25
  • TCPとタイムアウトと私 - Cybozu Inside Out | サイボウズエンジニアのブログ

    部長や副部長もプログラミングを(たまに)することで有名なサイボウズの運用部長、山泰宇です。 有名じゃないかもしれませんが、ブログに書いたので有名になるということでご了承ください。 今回は、先日発生した yrmcds に起因する障害の原因と対策を解説します。 yrmcds というのは、サイボウズが開発している memcached 互換のキーバリューストレージです。 問題の理解のため、まず TCP 通信で、通信先の相手の障害にどう対応するか解説します。 データの送信中に相手が落ちるケース このケースはさらに二つに分かれます。 相手の OS は生きているが、通信しているプログラムが落ちるケース 相手の OS ごと(あるいはネットワークごと)落ちるケース 1 と 2 の違いは、前者の場合 RST パケットが返ってくるのに対して、後者ではなにも返ってこない点です。後者の場合、ack されない

    TCPとタイムアウトと私 - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2015/11/26
    「本部長や副本部長もプログラミングを(たまに)することで有名なサイボウズ」
  • クラウドサービスのセキュリティ対策について講演しました - Cybozu Inside Out | サイボウズエンジニアのブログ

    cybozu.com の運用や、サイボウズ社内の情報システムの運用を担当している山泰宇です。 先日開催された cybozu.com カンファレンスにて、「正しく恐れるクラウドのセキュリティ」と題して、cybozu.com をはじめとするクラウドサービスのセキュリティ対策について講演しました。その講演資料を公開していますので、ブログでも紹介いたします。 docs.com 一般に、企業が利用する情報システムは個人向けのものと比較すると、高いレベルのセキュリティを要求されます(情シスとしての立場から言えば、要求します)。ただ、セキュリティと一口に言ってもその意味するところは非常に広いため、どのようなリスクに、どの程度対応するかを決めていくプロセスが欠かせません。 講演資料では割愛しましたが、実際にセキュリティ対策を考える上では、セキュリティリスクを列挙し分析したあと、必要な対策に優先順位をつけ

    クラウドサービスのセキュリティ対策について講演しました - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2015/11/25
  • nginx の設定をレビューするときの観点をまとめてみた - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。 インフラチームの野島(@nojima)です。 チームのメンバーに nginx の設定について気をつけるべき点を共有するために、レビュー観点を書きました。 せっかくなのでここで公開します。 ほとんどの項目は自分やチームのメンバーの実体験に基いています。 レビュー観点 server server_name が他のやつと被っていないか。 listen する IP アドレスが同じ場合、server_name で区別できないといけない。 TLS を使う場合、SNI をサポートしないクライアントでは TLS 用の設定が default_server のものが使われる点にも注意。 TLS を使う場合、listen ディレクティブに ssl オプションを書いているか。 location location のマッチの順番に注意 正規表現の location は前方一致の location より

    nginx の設定をレビューするときの観点をまとめてみた - Cybozu Inside Out | サイボウズエンジニアのブログ
    ymmt2005
    ymmt2005 2015/11/20
  • 作家タニス・リー逝去

    イギリスのファンタジー、SF作家タニス・リーが2015年5月24日逝去されました。享年67。 1947年ロンドン生まれ。九歳で創作を始め、1971年に児童向けファンタジー『ドラゴン探索号の冒険』でデビュー、大人向けのファンタジーとしては1975年The Birthgraveが最初の作品となる。『死の王』で英国幻想文学大賞を受賞、ほか、1983年84年と2年連続して短編で世界幻想文学大賞を受賞しています。 代表作は5作からなる《平たい地球》、4作からなる《パラディスの秘録》。創元推理文庫からは"ダークファンタジーの女王"の真骨頂ともいえる《パラディスの秘録》『堕ちたる者の書』『幻獣の書』『死せる者の書』『狂える者の書』、『薔薇の血潮』上下が刊行されています。 やすらかにお眠りください。

    ymmt2005
    ymmt2005 2015/05/27
    R.I.P.