タグ

ブックマーク / k0kubun.hatenablog.com (5)

  • フルタイムOSSコミッタを始めて2か月経った - k0kubun's blog

    Shopifyに入社してRubyのJITコンパイラを書く仕事を始めてから2か月経った。 前職の退職エントリ では今後やりたいことを書いたりしたが、実際OSS開発を仕事にしてみてどうだったかみたいなことを書いておく。 シリコンバレーでのリモート生活 3年前にアメリカ移住し、今年永住権も取得した。 Shopifyは社はカナダにあるし2020年5月からフルリモート企業なのだが、 前職の社があったシリコンバレーのあたりからそのまま引っ越さずに暮らしている。 なぜシリコンバレーに住み続けるのか フルリモートである以上はカナダ移住のためのビザのサポートを会社がする動機もないため、 現職においても住む国の選択肢は基的に日アメリカになると思っている。 飯が安くて美味いのを主な理由としても僕も住むならアメリカより日の方が好きなのだが、 住む地域ベースで多くの企業が給料に傾斜をかけてくるこ

    フルタイムOSSコミッタを始めて2か月経った - k0kubun's blog
    n314
    n314 2022/09/29
    [[読み物]‌][会社]
  • まだパソコンのOS選びで消耗してるの? - k0kubun's blog

    昨日、大学生協推奨のPCが20万のWindowsマシンなのを見てなぜMacじゃないのかという声がTLに流れていたり、それで思い出したのか、逆にMacじゃなくてLinuxを使っている人はなぜそうしてるのかみたいな話がvim-jpで盛り上がったりしていた。 Windowsを使い始めてから17年、Macを使い始めてから8年、Linuxデスクトップを使い始めてから6年経ち、今は用途に応じてその3つをどれも使っているという感じなのだが、個人的にはどれも善し悪しだと思っているので、状況に応じて何を使うべきか自分の考えを書いておく。 大学生は何を買うべきか 特にプログラミングとかやるつもりがない大学生でお金がある人は、素直に推奨されたWindowsマシンを買っておくと、大学側が使わせてくるソフトが動かない可能性も流石に低いだろうし、周りと環境が揃っていて質問とかしやすいので無難だと思う。金がなければ中古

    まだパソコンのOS選びで消耗してるの? - k0kubun's blog
    n314
    n314 2021/04/29
    “音を出すみたいな割りと基本的なところがデフォルトで動かなくてハマることがある。まあそういうのを直すのをエンジョイするのがLinuxみたいなところがある。” あるある。
  • SQLで羃等にDBスキーマ管理ができるツール「sqldef」を作った - k0kubun's blog

    sqldefのリポジトリ github.com これは何か Ridgepoleというツールをご存じでしょうか。 これはRubyのDSLでcreate_tableやadd_index等を書いてスキーマ定義をしておくとそれと実際のスキーマの差異を埋めるために必要なDDLを自動で生成・適用できる便利なツールです。一方、 で言われているように、Ridgepoleを動作させるためにはRubyやActiveRecordといった依存をインストールする必要があり、Railsアプリケーション以外で使う場合には少々面倒なことになります。*1 *2 そこで、Pure Goで書くことでワンバイナリにし、また別言語圏の人でも使いやすいよう、RubyのDSLのかわりに、誰でも知ってるSQLCREATE TABLEやALTER TABLEを書いて同じことができるようにしたのがsqldefです。 使用例 現時点ではMy

    SQLで羃等にDBスキーマ管理ができるツール「sqldef」を作った - k0kubun's blog
    n314
    n314 2018/08/25
    気になる。追加はいいとして削除とかリネームとかが自動だと取り返しつかないことになったりもしそうだが、そういうのどうするんだろう。
  • RubyのJITに生成コードのメモリ局所性対策を入れた話 - k0kubun's blog

    昨日、RubyのJITの性能改善のためのパッチを入れた。 github.com JITすればするほどRailsが遅くなる問題 Rubyの次期バージョンである2.6には、バイトコードをCのコードに変換した後、gcc/clangでコンパイルして.soファイルにしdlopenすることで生成コードのロードを行なう、MJITと呼ばれるJITコンパイラが入っているのだが、マージしたころのツイートにも書いていた通り、Railsで使うとより多くのメソッドがJITされるほど遅くなってしまうという問題があった。 結果、"MJIT slows down Rails applications"というチケットが報告されることとなり、昨日までの5か月の間閉じることができなかった。 元の構成 対策を始める前のMJITは大雑把に言うとこういう感じだった。メソッド1つごとに1つの.soファイルが作られ、ロードされる。 無制

    RubyのJITに生成コードのメモリ局所性対策を入れた話 - k0kubun's blog
  • Linux デスクトップ環境 2017 - k0kubun's blog

    Linux デスクトップ環境 2016 - eagletmt's blogの人に影響を受けて自作PCLinuxデスクトップを使い始めてから約1年半が経ち、僕の使う環境が一通り満足な状態になったので今どういう構成なのか書いておく。 僕はKeynoteを使う時とか会社のマシンでmacOSも割と使う都合、基的に操作性がmacOSに近くなるようにしているので、macOSからLinuxに移行したい人の参考になるかもしれない。 *1 そもそも何故Linuxデスクトップを使っているのか 「苦労してmacOSに近づけるくらいなら最初からmacOS使えばいいじゃん」と言われそうだが、今この瞬間は大体以下の理由でLinuxデスクトップを使っている。 趣味で作ったスペックが高めの自作PCmacOSが入れられない *2 最新のmacOSではKarabinerが使えないが、Linuxでは自作のキーリマッパーが

    Linux デスクトップ環境 2017 - k0kubun's blog
    n314
    n314 2017/01/10
    LTS使うなら更新間隔はDebianと同じで2年ごとなのか。更新時期が1年ずれているので今年の春からはDebianの方がパッケージが新しくなる。
  • 1