$shibayu36->blog;

株式会社はてなでエンジニアをしています。プログラミングや読書のことなどについて書いています。

sbtが依存管理に使っているivyのローカルレポジトリやキャッシュについて調べた

自作のScalaライブラリをpublishLocalしながら手元でリリース前に最終確認する - $shibayu36->blog; で、手元で自作ライブラリの最終確認をするにはpublishLocalすれば良いことを書いた。この時にsbtが依存管理に使っているivyについてもついでに調べたので…

「エンジニアリング組織論への招待」はいろんな立場の人に読んで欲しい

最近メンタリング制度のことや、技術組織のことについて興味がある。最近「エンジニアリング組織論への招待」という本が出版されて話題になっていたので読んでみた。エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング作者: …

自作ScalaライブラリをMaven Centralにリリースする手順メモ

最近Scalaの勉強も兼ねてjoda-time-fakeというScalaライブラリをMaven Central Repositoryにリリースしてみた。今回はその手順を忘れないようにメモとして残しておく。 今回の手順でできたこと com.github.shibayu36 organizationにjoda-time-fakeとしてライ…

自作のScalaライブラリをpublishLocalしながら手元でリリース前に最終確認する

joda-time-fakeを作りながら、リリースする前に手元で最終確認したいと思い、やり方を調べていた。調べてみると、publishLocalというものを使えば、ローカルのivy repositoryに成果物をpublishすることができ、そうすることで他のプロジェクトから参照できる…

良かったことは良かったとはっきりフィードバックする

最近心がけていることとして、「良かったことは良かったとはっきりフィードバックする」ということがある。自分がリーダーやマネージャのポジションになった時に、方針やメッセージを打ち出す、チームの開発フローを改善するなどを行うことがあった。この時…

【Scala】テスト時にjoda-timeの現在時刻を変更できるjoda-time-fakeを作りました

テストをしようとすると、現在時刻を変更したくなることがよくある。現在のプロジェクトではjoda-timeを使っているので、joda-timeのDateTime.nowが返す時刻を変更したい。ということで、それを簡単にできるjoda-time-fakeというライブラリを作りました。 ht…

sbtで複数のScalaのバージョンでビルドする

ライブラリを作っていて、2.11と2.12両方共でビルドしたかったので、sbtでどうやるか調べた。 方法は非常に簡単で、https://www.scala-sbt.org/1.0/docs/Cross-Build.html#Cross-Building+a+Project を参考にすれば良い。まずbuild.sbtにcrossScalaVersions…

マスタリングTCP/IP 入門編を読んだ

最近ホームネットワークで調子が悪いことがあったのだけど、その理由の調査が一切できずに困っていた。また、これまでネットワークが一切分からない状態で、インフラ周りを触る時に完全に他人におまかせだったり、そもそも共通言語で話せなかったりして、そ…

project/build.propertiesのsbt.versionでプロジェクトのsbtのバージョンを決められる

Scalaでビルドツールであるsbtを使っていて、そういえばsbtコマンドはグローバルのものを使っているけど、プロジェクトごとにバージョンを変えたかったらどうすればいいんだろうと疑問に思っていた。よくよく調べてみると、そもそもsbtの標準機能としてプロ…

HTTP GETしたときのTCPパケットの様子を理解する

どうやってIPからMACアドレスを解決するか - ARPの挙動を調べた - $shibayu36->blog;はデータリンク層、tracerouteの仕組みをtcpdumpとwiresharkで理解する - $shibayu36->blog;はネットワーク層について実践してみたので、続いてトランスポート層について実…

tracerouteの仕組みをtcpdumpとwiresharkで理解する

どうやってIPからMACアドレスを解決するか - ARPの挙動を調べた - $shibayu36->blog; に続き、マスタリングTCP/IPで気になったことの実践。tracerouteではIPヘッダのttlの値とICMPをうまく利用して、経路を教えてくれるというのを見たので、今回はそのパケッ…

どうやってIPからMACアドレスを解決するか - ARPの挙動を調べた

自分はアプリケーションエンジニアでネットワークを触ることは少ないのだけど、ネットワークも関わるタスクや障害が現れた時に話についていけないのは良くないと思い、マスタリングTCP/IP 入門編を今読んでいる。データリンク層の章まで読み、この章ではデー…

Mackerelの思想や出来ることを知る - Mackerelサーバ監視実践入門を読んだ

最近Mackerelを触ることが多く、Mackerelで何が出来るのかを知りたいと思い、Mackerelサーバ監視実践入門を読んだ。Mackerel サーバ監視[実践]入門作者: 井上大輔,粕谷大輔,杉山広通,田中慎司,坪内佑樹,松木雅幸出版社/メーカー: 技術評論社発売日: 2017/08/…

Scalaのテスト中にJoda-Timeのnowの時刻を固定する

今回はScalaのテストの話。時刻まわりが関わる実装をテストしたい時、テスト中だけ現在時刻を固定したり、現在時刻を過去にしたりなどといったことをやりたいことはよくある。Joda-TimeのDateTime.nowを使って現在時刻を取得している場合、時刻をfakeして固…

gitのcommit日時順にファイル一覧を表示する

レポジトリ内でドキュメントを探している時に、特定ディレクトリの中のファイルをgitのcommit日の順に並べて新しめのファイルを見つけたいなーと思ったことがあったのでやってみた。例えば https://github.com/golang/go のdoc/以下にある全てのファイルをco…

golangでAPIなど外部にアクセスするロジックのテストをする

golangで、例えばGithubのAPIを叩くような、特定のAPIにアクセスするロジックを書いた時、何も考えずにテストを書くと、テストを実行する際にもそのまま外部のAPIにアクセスしてしまう。この場合、色んなパターンのテストを書きづらい、依存している外部サー…

構造が人間の行動を決定する - 「学習する組織」を読んだ

組織関連の興味の一貫として、「学習する組織」を読んだ。学習する組織――システム思考で未来を創造する作者: ピーター M センゲ,Peter M. Senge,枝廣淳子,小田理一郎,中小路佳代子出版社/メーカー: 英治出版発売日: 2011/06/22メディア: 単行本購入: 3人 ク…

マネジメントの要素を知る - 「マネジメント入門」を読んだ

マネジメントの技術全体に興味があるので、その要素にはどういうものがあるかを知っておくために「マネジメント入門」を読んだ。マネジメント入門---グローバル経営のための理論と実践作者: スティーブン P.ロビンス,デービッド A.ディチェンゾ,メアリー・コ…

組織設計を体系的に学ぶ - 「組織デザイン」を読んだ

自分は組織での行動やマネジメントの分野に興味があるのだけど、その一貫でそもそも組織とはどう設計していくのかの基礎的な知識を学びたいと思ったので、評価の高い「組織デザイン」を読んだ。とにかく面白く、読んで非常に良かった。学ぶことが多すぎて、…

育休で得られるのは育児のサポートだけではない

最近子どもが産まれて、しかもありがたいことに2ヶ月間育休を取れることになった。育休を取り始めて今2週間くらいなのだけど、育休で得られるのは育児のサポート(サポートという表現は適切じゃないかもしれないけど...)を行うことだけじゃないなと思ったので…

「ウェブオペレーション」読んだ

オペレーションエンジニアがどのように考えて行動しているのかを知りたくて、ウェブオペレーションを読んだ。ウェブオペレーション ―サイト運用管理の実践テクニック (THEORY/IN/PRACTICE)作者: John Allspaw,Jesse Robbins,角征典出版社/メーカー: オライリ…

育児記録を夫婦で共有できるぴよログが便利

育児をしていると、どのくらいミルクを飲んだかとか、いつおしっこをしたかとかを記録しておきたいことがある。育児アプリでそういうのが出来るのだけど、なぜか夫婦で記録を共有できるアプリがなかなか見つからなかった。そんななか、ぴよログというアプリ…

育児で大切なことを学ぶため「子どもへのまなざし」を読んだ

以前 年間120冊読書する『スゴ本』中の人が選ぶ「10年前の自分に読ませたい」珠玉の6冊 - それどこ で見かけて、「子どもへのまなざし」が気になっていたのだが、最近子どもが産まれてついに育児が始まったので読んでみた。子どもへのまなざし (福音館の単行…

「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ

最近golangでCLIツールを作っていたのだけど、Linuxのお作法とかいまいち分かっていなかった。そこでそのあたりのことが学べそうな「ふつうのLinuxプログラミング」を読んだ。ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの…

英語リーディング教本再再読した

基本からわかる英語リーディング教本作者: 薬袋善郎出版社/メーカー: 研究社発売日: 2000/04/01メディア: 単行本購入: 82人 クリック: 1,077回この商品を含むブログ (66件) を見るblog.shibayu36.org最近英語のドキュメントとか読んでいて、また英語読めなく…

育児にバランスボールが便利

育児にバランスボールがまじで便利。Active Winner バランスボール 65cm シルバー ポンプ付き! ヨガボール ダイエット アンチバースト仕様出版社/メーカー: ACTIVE WINNERメディア: その他この商品を含むブログを見る最近息子は布団に寝かせると寝なくて、と…

息子が産まれました。一ヶ月経ちました。

最近息子が産まれました。今日でちょうど一ヶ月経ちました。僕は昔から子供が好きだったので、今はとにかく自分の息子がかわいく、毎日ぼーっと眺めたり、ほっぺたを突いたりしています。この一ヶ月間はなんだかんだで大変で、 座って抱いていても泣かないの…

gotest.elを使って、Emacs上でgolangのテストを実行する

【Scala】Emacsで現在編集している部分のテストを実行する - $shibayu36->blog; と同じようなことをgolangでもやりたいと思って調べたら、gotest.el というのを使えば同様のことを簡単にできることが分かったので使ってみた。 今回できること 現在編集中のフ…

flycheck-gometalinterを利用して、EmacsでGoのシンタックスチェックや型チェックを行う

今までgolangでシンタックスや型のエラーがあった時にEmacsに表示するために、flycheck標準のgo用のcheckerを利用していた。しかし、これがだんだん遅くなってきて、結構いらつく感じになってきた。そこで、flycheck-gometalinterを使ったら解決したのでメモ…

Kindleまとめ買いセールでHUNTERxHUNTER買った

Amazon.co.jp: 【まとめ買い20%OFF】Kindleマンガ 2017年売り上げ上位タイトル: KindleストアKindleまとめ買いで、20%オフになるセールがやっていた。10/11まで。僕は久しぶりにHUNTERxHUNTERを読みたいと思って、そういえばKindleで持っていないと思い出し…