日々常々

ふつうのプログラマがあたりまえにしたいこと。

仕事を早く終える小手先芸

元々Qiitaに投稿していたものです。 関連書籍としてプロダクティブ・プログラマ。 プロダクティブ・プログラマ -プログラマのための生産性向上術 (THEORY/IN/PRACTICE)作者:Neal Ford発売日: 2009/04/27メディア: 単行本(ソフトカバー) このブログに最近書…

Javaのいまを知る「みんなのJava」を読みました #minjava

本日 2020-03-13 発売です! みんなのJava OpenJDKから始まる大変革期!作者:きしだ なおき,吉田 真也,山田 貴裕,蓮沼 賢志,阪田 浩一,前多 賢太郎発売日: 2020/03/13メディア: 単行本(ソフトカバー) 著者の一人である @jyukutyo さんから献本いただきまし…

ドメイン駆動設計に関する何か

2020-03-13追記: 「ドメイン駆動設計」のハードルを上げる意図はありません。そもそもそんな特殊技能でもないと思っています。「ドメイン駆動設計が合っているか」を測る材料になるかも?くらいの気持ちで読んでいただけると幸いです。 何度目か知りませんが…

変わった本棚買ってみた

本棚は本棚で別にあるんだけれど(写真の本棚を置いているのも本棚の上)、部屋に本が散らばってたりするんで追加で買おうかなと思いまして。 技術書ってサイズまちまちなので本棚に収めにくく、サイズに縛られない本棚がいいなーって思ったんです。 Smilema…

あしもとを温めたい

最近はほとんど家で仕事してるんですが、その上で問題になってくるのが、寒さ暑さにどう対するかです。 オフィスでも問題にはなるんですけど、そもそもの選択肢が狭く、問題の性質が違います。 また日常生活を送る上での対策とも、仕事机周辺に閉じると言う…

Springアプリケーションのテスト道具 使いどころ、使わないどころ

2019-12-18の Spring Fest '19 で登壇させてもらいました。みなさまありがとうございました。 資料 Springアプリケーションのテスト道具 使いどころ、使わないどころ です。タイトルの「使わないどころ」って日本語的に不自由な感じなんですが、「使うべきで…

DockerでTAGだけ<none>になってるのを消したかった

<none>:<none> を消すのは docker image prune とか、 docker rmi {IMAGE ID} でいいんですが、 hoge:<none> をどうしたもんかと。 見た目こんな感じです。 % docker images REPOSITORY TAG IMAGE ID hoge test 1c909cfb0b00 hoge <none> e7d92cdc71fe alpine latest e7d92cdc71fe 何</none></none></none></none>…

簡易的な技術記事の取捨選択法

見るべきポイント 3点です。 バージョン ソースと実行結果 プロダクトのソースコードや公式ドキュメントへのリンク これらが記載されていない技術記事は、参照する優先順位を下げるのがいいです。 説明 増え続ける一方の技術情報ですが、あまりにあふれすぎ…

「自分がやった方が早い」の取り扱い

当たり前なんだけど、なんで当たり前なんだろうって。 ものすごく雑に項目を出してみて。 対応: 純粋に対応にかかる時間 伝達: やりたいことを伝えたり確認したりする時間 忖度: 「この人はこれを言いたかったんじゃないか?」とか推し量る時間 過剰対応: や…

量に量で対抗しない方法を身につける

ビッグデータとかそういう話ではないです。 チキンカウント ……って言葉があるはずなんだけど、検索しても出てこない。誰に聞いたんだっけ。 「鶏は三歩歩くと忘れる」ってことわざに由来するのだけど、これ自体日本のことわざっぽいし、何かの勘違い……? と…

Gradleのタスクは順番ちゃんとしよう

私が雰囲気でGradleを使ってる感がよくわかる。 Gradle 6.0.1 と 5.6.4 前置き とあるタスクを実行するときに clean してコンパイルしてから実行したくて、こんなこと書いてました。 myTask.dependsOn(clean, compileJava, processResources) opengl-8080さ…

モデリングのきほん

関西Javaエンジニアの会10周年イベント、 KanJava 10th Anniversary Party でモデリングの話をしました。 話したこと モデリングをモデリングしたモデルでモデリングを説明してみました。図の書き方とか言葉の抽出とかそう言う話ではありません。「なんちゃ…

MacBook Pro 16インチが届いたのでセットアップのメモ

手が滑って購入ボタン押してしまったので仕方がない。 やったこと 起動 Apple IDのログイン macOSの設定 キーボードショートカットの切り替え OSのデフォルトのショートカットはほとんどOFFにする 入力ソースの切り替えを ⌘+スペース に変更する 日本語変換…

SpringBoot2.2でJUnit5がデフォルトになったのでbuild.gradleを書き換える

SpringBoot2.2でJUnit5がデフォルトになったー。 他の更新はリリースノート見てくださいまし。 ちなみに私に関係ありそうなのはツイートした。触れてないのは単に使ってないってだけで、重要じゃないってわけじゃないです。 - Spring 5.1 -> 5.2- Jakarta EE…

脱ブランチファースト

あるいは「プルリクエストをやめてみた」 チーム構成とかにもよるんだろうけど。Gitかつフォークされないプロダクトでの話です。OSSとかは全然話は変わります。 問題とアプローチ (2019-10-25T15:20 追加) 表出している問題と、ここでのアプローチを書いてお…

「レガシーコードからの脱却」を読みました

レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス作者:David Scott Bernstein出版社/メーカー: オライリージャパン発売日: 2019/09/19メディア: 単行本(ソフトカバー) 頂きまして、ようやく一通り目を通したので書きま…

プルリクエストとマージリクエストと。

short answer プルリクエストとマージリクエストに違いはありません。 同等の機能が別の呼び方をされているだけです。 名前の由来を考えてみる 名前の由来を考えてみるのも面白いと思うんです。 ここに書いているのは私の予想ですが、大外しはしていないはず…

finalを付けるのをやめてみた

Javaの話ね。バージョンは8以降の実質的final(effectively final)があるものとします。7以前は匿名クラス(この呼び方は 匿名クラスとかローカルクラスとか参照)でローカル変数を使うにはfinalが必要なので文脈変わります。 前提の整理 final は色々なと…

JUnit 5の拡張機能を完全にマスターしたぃ

本日9/19の関ジャバ'19 9月度でJUnit 5のExtensionの話をしました。 スライド JUnit 5.5.2 のUser Guide を合わせてご参照ください。なお5.3ならoohiraさんの日本語訳もあります。とても助かってる。 ちなみに表紙で言及してるBtoWは ゼルダの伝説 ブレス オ…

配列引数と可変長引数のクラスファイルでの違い

明日の関ジャバの資料作ってたら気になったので。(全く関係ない) javac 11.0.4 可変長引数のメソッドを持つVaragsクラスとそれを呼び出すInvokerクラスがあってさ。 class Varargs { static void methodX(Object... args) {} static void methodY(Object[]…

SQLアンチパターンを読んだ

SQLアンチパターン作者: Bill Karwin,和田卓人,和田省二,児島修出版社/メーカー: オライリージャパン発売日: 2013/01/26メディア: 大型本購入: 9人 クリック: 698回この商品を含むブログ (46件) を見る 積読--; 1冊減ったところで誤差でしかない……。ちなみ…

SpringBootでのRestTemplateのタイムアウト設定

spring-boot:2.1.7.RELEASE spring-web:5.1.9.RELEASE Short Answer RestTemplateBuilder restTemplateBuilder = ... RestTemplate restTemplate = restTemplateBuilder .setConnectTimeout(Duration.ofSeconds(3)) .setReadTimeout(Duration.ofSeconds(3)) …

nullが嫌い

消したつももりだった下書きが残ってたっぽいので公開しちゃう。なお2015-05-10に書いたもののようです。当時のブログを見ると、Optionalでなんか盛り上がった頃みたい。 ということで以下は編集せずそのまま投稿ー。 前置き nullを安易に使わない 派生のポ…

ArrayListじゃなくListを使うという話

具象型ではなく抽象型で扱え、インタフェースを使え、みたいなお話に対して。 前置き Javaの話。他の言語だと話は変わります。 「こうするのが絶対的に正解」と言うものではありません。私の現在の選択の説明です。明日になったら違うこと言ってるかも。 主…

JavaBeansって言葉に煩わされない

JavaBeansって言葉を目にして、ふと検索してみたらあまりに酷かったので書いておこうかと。対象は「JavaBeansってなんだろ?」と思ってしまった初学者さん。でもそんな人って私のブログ読むんだろうか…… 今後は「このエントリ参照」にするつもりで書いてみる…

レイヤーとレイヤーじゃないのと

レイヤーってあるよね。 下方向に依存するやつね。 中をみたら な感じだと思ってるんだけども。 あ、レイヤー間の依存がどうこうとか、直下以外への依存がどうこう、って話は他でしてください。 で、なぜかよく見るのがこんなのだけど これは違うと思うわけ…

どこでモックを使おうか

モッククラスを使うべきか否か から一歩踏み出してみましょう。 モックを使う選択をした。そこはゴールではありません。 お題 RestTemplate を使用して外部サービスを呼び出す場合を考えてください。 ここでの「外部サービス」はネットワーク越しにアクセス…

モッククラスを使うべきか否か

元ネタ: モッククラス、下から見るか?横から見るか? モッククラスを使うべきか否か、というネタを拾ったので書いてみます。これまでにモックについて殆ど書いてないことに気づいて驚きつつ。 Short Answer 「モックに何をさせたいの?」 質問に質問で返す…

いい名前が思いつかないときは変な名前をつける

プログラミングは名付けの連続です。しかし、いつも「いい名前」が見つかるわけではありません。付けたときはいい名前と思っていても、時間が経って知識が増え、ブレイクスルーが起こると、それまでいいと思っていた名前も途端に微妙に感じたりします。 この…

年末感とか全くないのだけど

2018年が終わろうとしてるのでブログでも書こう。 おしごとがたごと 一昨年の年末に勢いで会社を辞めて、去年の年始から個人事業主という無職になって、2年目が終わりになります。まだ2年か。 良し悪しで言うのも難しいのですが、色々と得られるものが多くあ…