タグ

ブックマーク / songmu.jp (16)

  • Launchableに入社しました | おそらくはそれさえも平凡な日々

    日10月1日、LaunchableにPrincipal Software Engineerとして入社しました。最近日エンジニア界隈でも少しづつ聞かれるようになったIC(Individual Contributor)としてのキャリアです。 ご存知の方も多いとは思いますが、LaunchableはあのJenkinsを作った川口さんらが2年前に創業された、まだ若いスタートアップです。自動テストにおける、スローテストやflakyテスト等の痛みを、AIの力で解決するプロダクトを作っています。 シリーズAの調達を終え、採用にも力を入れています。現在は、サービスの肝に関わるData Scientistを一番求めているようなので、興味のある方は是非採用応募してください。 Careers: Data Scientist - US or Japan | Launchable Inc. 元々優秀なスタッフ揃

    Launchableに入社しました | おそらくはそれさえも平凡な日々
    studio3104
    studio3104 2021/10/01
    経営、マネジメントに行ってからまた Principal のレベルで IC に戻れるのかっこよすぎ
  • レコードがなかったらINSERTして返すみたいなのを確実にやる | おそらくはそれさえも平凡な日々

    find_or_create的なやつは大体どんなORMでも レコードを探す 無かったらINSERT みたいに実装することになると思う。ただこれだと、1と2の間でレースコンディションでエラー起きることがある。他のプロセスがINSERTしてしまうとかそういうやつ。 それを防ぎたい場合に、1の時点でFOR UPDATEするのはすごくダメで、空行にFOR UPDATEしたりするとMySQLだと盛大に乙るのは有名な話。 エラーを起こさないで、確実にレコードを取りたい場合にはどうすればよいかというと、以下のようにするのが良いと思っている。UNIQUEキー制約なりがちゃんと付いている前提。サンプルコードはTengの場合。 sub find_or_create_surely { my ($self, $table, $where, $opt) = @_; my $row; my $txn = $self-

    レコードがなかったらINSERTして返すみたいなのを確実にやる | おそらくはそれさえも平凡な日々
  • 株式会社はてなに入社しました | おそらくはそれさえも平凡な日々

    日は9月1日。エイプリルフールではなくて、防災の日です。 勤務地は東京の表参道ですが、今日から2週間だけ京都で働くので、新幹線の中でこのエントリを書いています。YAPCのトークでも話しましたが、東京で僕と一緒に働いてくれるエンジニアを絶賛募集中です。 長くなるのでとりあえずwishlistを置いておきますね。 http://www.amazon.co.jp/gp/registry/wishlist/3L07LJZVYI89C/ FA宣言したら20数社から連絡を頂いたんですが、その中からはてなを選ぶことにしました。はい。Perlの会社ですね。とは言えPerlは書かない予定です。とか言いつつちょいちょい書いてしまうことでしょう。 「Perlで、日語の会社じゃねーか!」というツッコミが飛んできそうですが、はてなが一番自分を必要としてくれたと感じたので、入社させてもらうことにしました。こういう

    株式会社はてなに入社しました | おそらくはそれさえも平凡な日々
    studio3104
    studio3104 2014/09/01
    わいわい
  • クソコードに対する怒りとコードレビューにおける人格攻撃について | おそらくはそれさえも平凡な日々

    デキるプログラマだけが知っているコードレビュー7つの秘訣 7つの秘訣の1〜5は当にそのとおりだと思います。 「怒り」って言葉を使っているところはなかなか画期的だと感じた。というのも僕は前から「人格攻撃に思われて」しまうような、コードで人を殴るようなことをしてしまう人が出てきてしまうのは何故かということを考えた時に、そこには「コードに対する怒り」があるからだろうなと思っていたからである。怒りがあるからこそ強く指摘しすぎてしまうことが起こりうる。 「怒り」というのはつまり「感情」である。であれば、「その『怒り』はコードに向けられたものであり、書いた人に対してのものではないので、その人に対しての攻撃ではない」というのは、理屈ではかろうじて通るかもしれないが、書いた人の「感情」的には通らないこともあることは理解したほうが良いと思う。 じゃあ怒らなければ良い、という話にはしたくなくて、どうしても怒

    クソコードに対する怒りとコードレビューにおける人格攻撃について | おそらくはそれさえも平凡な日々
    studio3104
    studio3104 2014/08/20
    「ちょっとは勉強しろよ」のレベルだったら辛辣な物言いされても仕方ない、というかありがたいだろうと思う
  • 退職とFA宣言のお知らせ | おそらくはそれさえも平凡な日々

    所属的には5月いっぱいですが、5月12日(月)が最終出社で有給消化中です。理由はいろいろありますが、結婚離婚がそうであるように、結局のところはタイミングの問題です。 一番大きな理由は家庭の都合です。家庭の都合というとネガティブに聞こえてしまうかも知れませんが、実際にはポジティブな挑戦です。 ただ、そのために会社を辞める必要は必ずしもなく、会社も引き止めの時にその事情を鑑みてバックアップしてくれる事は伝えてくれました。CTOに 「会社は社員の夢を実現する場所だと思っていて、だからといって全員が別の方向を向いているわけにもいかないので、誰かの夢に乗っかる形で事業を作っている。なので『こいつの夢に乗っかりたい』とか思わせたり、逆にそう思えるようなイイヤツを採用している。ただ、松木くんくらい会社に貢献してくれた人間だったら、自分の個人的な夢や目的のために会社を利用してくれて構わないし、むしろそう

    退職とFA宣言のお知らせ | おそらくはそれさえも平凡な日々
    studio3104
    studio3104 2014/05/13
    お疲れ様でしたー。新連載期待しております。
  • CROSS2014に参加して、ぶつかり稽古で登壇してきました | おそらくはそれさえも平凡な日々

    なんか新素材ができたので置いておきますね。提供:sorah++ CROSS 2014というイベントがありましたが、ありがたくも登壇のお声がけをいただき、コードレビューCROSS 〜ぶつかり稽古 2014初場所〜というセッションでお話をしてきました。運営の皆様、お声がけしてくださったセッションオーナーのstudio3104さんありがとうございあました。 すたじお関の決まり手「丸投げ」の威力に全員が戦慄したが、そこは名横綱、名親方あんちぽの仕切り力に救われてなんとかなった。あんちぽさん酔っ払ってウザ絡みをする芸風の面白いおじさんだと思ってたらそれだけじゃなかった。このままだとぶつかり稽古にはあんちぽさん必須になってしまうので属人化が進んでしまっていて良くない。 ぶつかり感ないとか言われたけど確かに単なるパネルディスカッションになってた。弟子たち頑張ってたけど、セッション中の成果に対してフィード

    CROSS2014に参加して、ぶつかり稽古で登壇してきました | おそらくはそれさえも平凡な日々
    studio3104
    studio3104 2014/01/19
    負担かけすぎてしまって本当にすみませんでした。。
  • おそらくはそれさえも平凡な日々: Perl製のWebアプリケーションをherokuで3分で動かすの法

    PSGIアプリなら簡単にherokuで動かせます。 Miyagawaさんのbuildpack(https://github.com/miyagawa/heroku-buildpack-perl)を 使います。使い方もREADMEに書いてあったけど、以下にも書きます。 アプリ側の準備 deployしたいアプリケーションのgitリポジトリ上で以下をやります。 cpanm --installdeps . で依存モジュールがちゃんと入るようにする(cpanfile使うのがオススメ) アプリ起動用のapp.psgiを配置する herokuにアカウントを作る https://www.heroku.com/ toolbeltを入れる https://toolbelt.heroku.com/ インストールが終わるとherokuコマンドが使えるようになります。 % heroku login と打ってコマンド

  • Ukigumo::ServerがCPANに上がっていました | おそらくはそれさえも平凡な日々

    https://metacpan.org/module/Ukigumo::Server CPANに上がっていない他の人のモジュールをあげる業をしている今日このごろ皆様如何お過ごしでしょうか。 さて、この度Ukigumo::ServerをやっとCPANに上げましたのでご報告です。 ukigumo-server起動スクリプト MySQL対応 辺りが大きなフィーチャーです。 % cpanm Ukigumo::Server % ukigumo-server --config=config.pl とかやればデフォルト2828ポートでサーバーが立ち上がります。「ふわふわ」なので2828なのですが、どう見ても「ニヤニヤ」でした。 configファイルにはDBの設定等を記載します。configファイルの指定は任意ですが、指定しない場合はdevelopment.dbというSQLiteのファイルがカレントディ

    Ukigumo::ServerがCPANに上がっていました | おそらくはそれさえも平凡な日々
    studio3104
    studio3104 2013/10/05
    Songmu++
  • YAPC::Asia 2013でTalkしてきました。それと"ジャイアンツ"の怪

    ジャイアンツじゃなくて、"这样子"(zheyangzi)です。意味的には"like this"に近いですね。 今年のトーク 今年もYAPC::Asiaでスピーカーを勤めさせていただきました。 今時のカジュアルなデータベース関連開発 発表資料 中級者くらいを意識した内容にするつもりでしたが、普段やってることの紹介と羅列に終始してしまい、パーティションとかちょっと前提知識も必要なトークになってしまって、脱初心者を目指す人とかにとっては難しいトークになってしまったかもなーと感じています。ちょっとトークの対象者がぶれてた感じなので反省しております。去年よりかは大分リラックスして話せたのは良かったですね。 LTもしてきました 2013年代のBlogツールRijiの紹介 発表資料 Riji便利なのでお使いください。チュートリアルもあるので簡単にお試しいただけます。 LTは初日にアサインされてなかったの

    YAPC::Asia 2013でTalkしてきました。それと"ジャイアンツ"の怪
  • 対話型IRCボットフレームワークUnazuSanのご紹介 | おそらくはそれさえも平凡な日々

    https://metacpan.org/module/UnazuSan ひとつ捗るircbotができたのでUnazuSan便利 https://t.co/oBrQaqpYtW — fujiwara (@fujiwara) September 6, 2013 プロジェクト立ち上げると色々やってくれる対話型のIRC botが欲しくなるのでAnySanとか使って適当にコピペで作るわけですが、それもタルくなってきたので、対話系のbotフレームワークを簡単に作れるUnazuSanていうのを作りました。 SYNOPSISとかexampleとか見ればなんとなく分かるかと思いますが、発言全体を正規表現で引っ掛けるon_messageとnickname: command_nameみたいな発言に反応するon_commandっていうメソッドがあってcallbackを呼び出せるようになっています。 callba

    対話型IRCボットフレームワークUnazuSanのご紹介 | おそらくはそれさえも平凡な日々
  • おそらくはそれさえも平凡な日々: ジンバブエドルとギャンブルに関するお役立ち情報です

    紙くず同然に思われがちなジンバブエドルですが、2009年に 12桁のデノミ(旧1兆ジンバブエドル=1ジンバブエドル)を行った 発行自体も止めた(=ハイパーインフレが止まった) という感じなので、今は実はレートはそんなに低くありません。 発行が止まり、ジンバブエの公式通貨でもなくなっていて、死にゆくことが約束されている通貨ではありますが、通貨価値が消滅したわけではなく、一部の地域で使えはするようです。 具体的には、2013年5月現在1ジンバブエドル=0.3円程度のレートとなっています。これは多くの人に取って意外な数字なのではないでしょうか。ついうっかり1億ジンバブエドルを賭けて負けてしまうと3000万円の損失です。 入手も困難ですし、使える地域も限られているという意味ではやはり紙くず同然なので、安易に多額のジンバブエドルを賭けるのは危険ですし、賭けに勝った方もやはり嬉しくないので、皆様注意し

  • おそらくはそれさえも平凡な日々: 「仕事に対する愛と情熱とプライド」若しくは新卒に向けたスピリチュアルな話

    そろそろ新卒研修とかどうしようかとかで、エンジニア陣でわたわたしたりしています。「Songmu先生にはスピリチュアルな話をしてもらわないといけませんね」みたいなことを言われてなんかスピリチュアルキャラとして定着しているのもどうかと思います。 去年も「『仕事に対する愛と情熱とプライド』ってお題でソーシャルゲームチームの新卒向けに話してください」とか研修担当の人に言われて、なんでそんな熱いキャラとして認知されてるか謎だったんだけど、それで30分くらい話しました。 それが結構評判良かったみたいで、直接はあまり言われなかったんだけど「研修の時の先輩の話の中で一番印象に残っている」って言ってくれている人が多いって話を2年目の人から又聞きで知って嬉しく思っていました。 とか思っていたら、hisaichi5518の人は「なんかすごくいい話してた覚えはあるんですけど内容全く覚えてません」とかsoh335の

    studio3104
    studio3104 2013/03/24
    感謝の気持ちを伝えるという話、仕事だけではなくて家庭とか友人関係においても重要なファクターだな、と思いました。
  • おそらくはそれさえも平凡な日々: App::Xaicron構想

    タスクの定期実行としてcronが使われ続けていることに問題意識を抱えている人は数多く居れども、多くは惰性で使い続けている。何を隠そう私もその1人である。 そんな中、近年ではcronの代替としてjenkinsを使うという斜め上の発想が蔓延りつつあるが、 そんなことをすると「cronに500Mもメモリ使ってられるかー」と椅子が飛ぶこと請け合いなので非常に難儀するものである。 斯くの如く問題意識を抱えていたものの、やはり惰性でcronを使い続けていたのだが、 昨日、代替cronのネーミングとして “xaicron” という非常に格好良い名前を思いついてしまったので、 この際代替cronについて考えてみることにする。 懸念事項としては、将来RPMパッケージ化などされた時に、実行ユーザーとしてxaicronが作られてしまって、 万が一xaicronというユーザー名を使っている人がいた場合に困るという

  • おそらくはそれさえも平凡な日々: もにかじでオレオレ監視ツールについて話してきました

    オレ自身を監視するツールって話なんだけどな!発表資料は以下。 オレオレ監視ツール 自分が触っているアプリケーションでのタイプ数を可視化するツールです。 なんか手元のMacにGrowthforecastが簡単に入らなかったのでカッとなって VPS上に構築しました。これで僕の行動が世界中からまるわかりです! 3/11追記 手元にHRForecast立ててそれで代用したのでURL消しました 適当に設定したら偶然にも調度良く赤系(iTerm,Macvim)が仕事、緑系(Chrome, Limechat) がサボり系になりました。Limechatがちゃんとライム色になっているのが素晴らしいですね。 仕組みとしてはごく単純で以下のような感じ。 KeyRemap4MacBookをdebugをONにしてキーイベントをログ出力 Slateでアプリの切り替えを検知してそれをログ出力 それらのログをtailで読

    studio3104
    studio3104 2013/03/10
    マネしたいw
  • おそらくはそれさえも平凡な日々: 運用におけるcrontabのテストとParse::Crontab

    Vixie cron形式のcrontabをparseするモジュールをリリースしました。 Vixie cronと言えば、けんじおじさんに「カビ臭い」とかdisられそうな代物ですが、なんだかんだで利用している人は多いでしょうし、僕も使っています。 https://metacpan.org/release/Parse-Crontab 最近携わるプロジェクトではcrontabはリポジトリ管理しているのですが、それをあまりちゃんとテストをしてなかったので、それを解消すべく書きました。 以下の様に、crontabのテストを書くことが可能です。 use strict; use Test::More; use Parse::Crontab; my $crontab = Parse::Crontab->new(file => 'data/crontab.txt'); ok $crontab->is_vali

  • おそらくはそれさえも平凡な日々: #isucon2 で連覇させてもらってきました

    主催の皆様素晴らしいイベントの提供当にありがとうございました。 まさかの2連覇ですが、@fujiwaraの恐ろしさを再認識するとともに、@typesterのチート性能を見せつけられた感があります。 まずは個人的な反省点から 去年よりかは大分成長しているつもりだったのに、@fujiwaraとの力関係が何もかわっていなかったことに衝撃 @typester(Redis期)がRedis使ってくることはわかっていたのに、競技中に brew install redisとかやってるのはダサすぎ ということで、isucon2を振り返ります。 事前準備 事前にIRCチャンネルを作っておいてnopate botを呼んでおいたくらい。カヤックから別チームも出ていたので、お互いのチャンネルには入らないという紳士協定。 去年の経験から、revサーバーに直接gitリポジトリを作れれば捗ることは分かっていたので、その

  • 1