サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大そうじへの備え
kimh.github.io
このエントリーについて いやゆる退職ブログです。どのようにしてCircleCIに入り、どんな仕事をし、そしてなぜやめるのかについて書いています。あとちょっぴり求人要素も入っています。 アメリカのスタートアップで働くのってどう?英語はどれくらい必要?など、実体験に基づいた一般論も書きました。海外のスタートアップに挑戦しようとしている方の後押しになれば幸いです。 目次 コンパクトにするつもりが、書きたいことが沢山ありすぎて長文となってしまいました。前半は思い出の振り返りポエムなので、興味がない方は海外のスタートアップで働くことについてまでスキップしてもらって大丈夫です。 CircleCIについて CircleCIでやったこと ソフトウェア開発 日本法人の立ち上げ SRE 海外のスタートアップで働くことについて 時差について フルリモートについて ストックオプションについて CircleCIで働
モチベーション JAWS Days 2019でCircleCI Orbsを使ってAWSと連携されるネタで登壇してきました。当日の前日Twitterで公開することを約束しちゃったので、それならしっかりしたやつ作ろうということでブログ化しました。当日のスライドはここ。 https://twitter.com/inokara/status/1098529153890963458 やりたいこと CircleCIとECR、ECSを連携させて変更が自動でデプロイされるようにする。めっちゃ雑だけど以下のような感じの構成。 流れとしては リポジトリのDockerイメージをアップデート GitHubへプッシュ CircleCIでイメージをビルドしてECRへプッシュ CircleCIで新しいイメージを使ってECSのタスク定義を更新してECSへプッシュ ブラザウから変更を確認 これをするためにECR/ECS側と
イントロ デブサミ2019に登壇した時のプレゼンを今までにないくらい時間かけてしっかり作った。理由は2つあって、1つは会社が大金を払って参加した機会なのでスリルと引き換えに給料分の仕事をしてやろうと思ったこと。 もう一つは今自分の持てる限りで一度やってみることで、次回からのベースラインを作りたかったこと。 実際に発表したプレゼンはここ 注意した点 アウトラインを作り込む プレゼンのアウトラインをDropbox Paper上でしっかり時間をかけて書いた。ここで何度も書いたり消したりして最終的にスライドへそのままコピペできるくらいまで内容を磨いた。 第3者のフィードバックをもらう アウトラインがだいたいできた時点で、自分から結構絞り出したので途中からこれ以上でない、という状態になってしまった。そこで第3者のフィードバックを得て新しい視点を得ることする。たまたま友人がtwadaこと和田さんを知っ
この記事はQiita Elm Adventcalendar 2017に投稿した記事です。 最初に Functional Reactive Programmingを調べていて偶然Elmに出会いました。最新版のElm0.18ではElmはFRPの概念を完全に取り払いFRPとは関係なくなりましたが、 実際にElmを触ってみるとどんどんその面白さに引き込まれて行きました。もっとElmで何か作りたくなったので自分の子供が遊べるようなToy Appを作ることにしました。 このアプリを作る際にはまった点や大事な点をできるだけ丁寧に解説してみたいと思います。 この記事の対象者 この記事ではElmについての基本知識があることを前提としています。Elmにはすでに素晴らしいチュートリアルがあるのでまだElmに触ったことがなければ https://guide.elm-lang.org/ と https://www.
スタンディングデスクで仕事を始めてしばらく経ったのでこのあたりでレビューを書いてみようと思いました。日本ではスタンディングデスクは2016年の時点ではあまりポピュラーではないと思うので、これから始めようとしている人の参考になればと思います。 スタンディングデスク導入の動機 以前勤めていた会社を辞めてアメリカに本社がある今の会社に入ったのがきっかけです。日本の自宅から働くという仕事形態です。仕事を始めて2週間くらいで昔の会社に勤めていた時には感じなかった背中と腰の違和感を感じ始めました。考えてみると前の会社では会社が支給してくれたいいオフィスチェアを使っていたのですが、自宅で仕事をするようになってからは、食事をするテーブルについている椅子で仕事をしていたので体に結構負荷がかかっていることに気づきました。 欧米ではスタンディングデスクはかなり普及しています。自分の会社の本社でも半分以上の人がス
仕事でUnprivilegedな親LXCコンテナ上で子コンテナを動かす必要があった。つまり、コンテナの入れ子。さらにLXCのストレージバックエンドにBtrfsを使わないといけない。要件の特殊さから包括的な方法が見つからなかったので自分で書くことにした。 Unprivileged LXCコンテナとは何か まずそもそもUnprivileged LXCコンテナがいまひとつ何かわかっていなかったのでまずはその理解から。 簡単に言うとroot権限を持っていないユーザが作成・起動したLXCコンテナのことをこう呼ぶらしい。LXCを使う場合、 lxc-create でコンテナを作成して lxc-start で起動するけど普通はこれはrootユーザじゃないといけない。 しかし、rootユーザでしてしまうとコンテナ上のrootユーザがホストのuid 0を持つことになってしまい、いくらchroot環境でコンテナ
結論: 2014/6の時点ではCRIUを使ってDockerコンテナの停止/再開はできないという少し残念な結果でこの記事は終わります。しかし、記事を読んでもらえればCRIUの面白さはわかってもらえると思います。 Dockerが急速に広まったことで、LXCがVMWareやXenなどのVMに対して持つ利点はとても明確になりました。 しかし、VMにあってLXCにはない機能が一つあります。それは、コンテナの停止/再開によるコンテナの状態の保存です。 ここでCRIUの出番です。 CRIUはいわゆるCR(checkpoint/restart)ツールです。走っているプロセスを途中で止めてファイルに保存して、いつでも途中からプロセスを再開することができます。 LXCコンテナはプロセスなので、CRIUを使えばコンテナの停止/再開ができそうな気がしますが、本当にできるでしょうか? この記事では、CRIUをインス
About This Page I don't like reading thick O'Reilly books when I start learning new programming languages. Rather, I like starting by writing small and dirty code. If you take this approach, having many simple code examples are extremely helpful because I can find answers to these questions very easily. How can I define a function? What's the syntax for if and else? Does the language support strin
エンジニアの一日は問題解決の連続です。普段は当たり前すぎて意識していませんが、気にしてみるといかにそうであるかがわかります。 落ちたサーバを復旧させる 与えられた文字列を正規化するコードを書く 関係者全員のスケジュールが合うようにミーティングをセッティングする 優れた解決方法を考えだすには、まず問題を正しく定義しなければいけません。 この記事では問題発見学の名著、「ライト、ついてますか」 から重要な点を引用して、どのようにすればより良い問題定義ができるかについて書きたいと思います。 注:引用が英語なのは原本しか読んでいないからです。”訳:”とあるところは自分で翻訳しただけなので日本語版の実際の言い回しとは異なります。 また今回読んだKindle版にはページ情報がなかったので、引用元はページ番号ではなくその引用があった章を代わりに書いています。 問題とは何か? A problem is a
Dashingの紹介 Dashingというダッシュボード作成のフレームワークをご存知ですか? Dashingを使えば、上のようなダッシュボードを簡単に作ることができます。いいですよね?欲しいですよね? この記事では、自分で一からウィジェットを作成する方法を解説していきます。Dashingの基本的な使い方は、公式ページ を見ればすぐわかると思うのでここでは割愛です。 目次 サンプルダッシュボードの作成 ウィジェットに必要なファイル ジョブファイルを作成 ジョブのコードを書く ウィジェットのコードを書く ウィジェットを使う ウィジェットを公開する サンプルダッシュボードの作成 このチュートリアルで使うサンプルのダッシュボードをまず作成しましょう。サンプルダッシュボードは My Dashboard という名前にして、Fizz Buzz ウィジェットを作成しましょう。 FizzBuzzウィジェット
Posts Feb 26, 2022 7年在籍したCircleCIを退職しました Feb 26, 2019 CircleCI Orbsを使ってECR/ECSへ自動デプロイする Feb 18, 2019 デブサミ2019のプレゼン作りの振り返り Dec 31, 2018 2018 Review Feb 1, 2018 Regex Notes Dec 11, 2017 CollageとAnimationを使ってElmでアプリを作る Nov 24, 2017 My Investment Principles Apr 9, 2017 Average Doesn't Always Exist Feb 8, 2017 (Backend) Engineer Principles Jan 28, 2017 Fasting: what popular beliefs were (not) true for
注意 この記事はIBM製のコラボレーションソフトについてのページではありません。Rubyで書かれたLotusというWebフレームワークについての記事です。 内容 Lotusとは何か なぜRailsじゃなくLotusか One-fileアプリを作る Lotusとは何か Lotusは新しいRubyで書かれたWebフレームワークです。比較的少人数のlotusチームが開発しています。 2014年9月の時点ではまだ本番環境では使えませんが、簡単なアプリを作るには十分に動作します。 Lotusのプロジェクトページに書かれているスローガンを見たときに一瞬で一目惚れしました。 ページにはこう書いてあります。(かなり意訳です) Lotusは軽量で高速かつテストが容易なフレームワークです。Lotusはオブジェクト指向プログラミングのエッセンスを取り戻し、安定したAPI、最小限のDSLを提供してシンプルなオブジ
SSL/TLSの問題 なぜPFSが注目されているか PFS (Perfect Forward Secrecy)とは暗号化された通信と暗号化するための秘密鍵が両方漏洩しても複合化できません、という鍵交換に関する概念です。 PFSは概念なのでを実装する仕組みが別にあります。2014年1月現時点ではPFSはまだあまり普及していないので、主に使われてい鍵交換方式はPFSではありません。 Edward SnowdenがアメリカのNSAの諜報活動をリークしたことをきっかけにPFSは有名になりました。 NSAは 何らかの方法でWebサーバとクライアント間の通信を盗聴する(いわゆる中間者攻撃) 通信は暗号化されていてもとにかく保存 将来、何らかの方法で暗号化に使われた鍵が手に入ったら保存していた通信を解読 ということを行っていました。PFSではない仕組みを使って通信した場合、このようにして通信の時点では暗
つい最近PollyPassHashという新しいパスワード管理手法を知りました。 PolyPassHashingについては時間があれば別のポストで書きますが、要約すると、ある一定数の管理者の正しいパスワードが入力されないと暗号化されたパスワードデータベースを復号化できないようにするための仕組みです。 このポストではPolyPassHashingの中核の暗号技術である シャミアの秘密分散法 の紹介とそれを実現する数学的な仕組みを解説したいと思います。 この記事の内容 シャミアの秘密分散法とはなにか 用語 実際にやってみる: Rubyでシャミアの秘密分散 仕組み シェアの計算 シークレットの復元 シャミアの秘密分散法とはなにか 名前からわかるとおり、シャミアの秘密分散法はRSAのアルゴリズムにも貢献した有名なイスラエル人の暗号研究者アディ・シャミアによって作られました。 シャミアの秘密分散法は秘
目次 なぜDockerfileを使うのか? ADDとDockerfileにおいてのコンテキストを理解する CMDでコンテナをバイナリのように扱う CMDとENTRYPOINTの違い exec format error ビルド時のキャッシュについて: キャッシュが有効なときと無効なとき ある一行でキャッシュが使われなかったらそれ以降のすべての行でキャッシュは使われない 何もしないコマンドを追加してもキャッシュは無効になる コマンドと引数の間に意味のないスペースの入れてもキャッシュは無効となる Dockerfileの行に意味のないスペースを入れてもキャッシュは有効 冪等ではない命令でもキャッシュは効いてしまう ADD以降にある命令はキャッシュされない (ただし、0.7.3以前のバージョンを使っている場合のみ) コンテナをバックグラウンドで動かすハック なぜDockerfileを使うのか? Do
このページを最初にブックマークしてみませんか?
『Program Is Made At Night』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く