銀行員からのRailsエンジニア

銀行員からのRailsエンジニア

銀行員から転身したサービス作りが大好きなRailsエンジニアのブログです。個人で開発したサービスをいくつか運営しており、今も新しいサービスを開発しています。転職して日々感じていること、個人開発サービス運営のことなどを等身大で書いていきます。

これまで作ってきた個人開発のまとめ 〜19個のサービスの紹介と個人開発をしてきて思ったこと〜

個人開発が趣味で、営業からエンジニアに転身した 2018 年から4年で 19個サービスをリリースしていました。

Heroku の無料枠がなくなることが決まり、作ってきたサービスの多くを終了することにしました。今まで Heroku の無料枠にめちゃくちゃお世話になっていました。

サービス終了前に、スクリーンショットと共にどんなサービスを作ってきたかをまとめておきます。

それぞれのサービス紹介の後に、個人開発を続けてきて思ったことなどを書いています。

時系列で紹介していきます。

少し長い記事ですが、だんだんとサービスのクオリティが上がっていっているはずなので、最後まで見ていただけると嬉しいです。

タイトルがリンクになっていないものは、サービス終了予定です。

1. Jobmiru

2018/3頃リリース

記念すべき処女作です。

「何のスキルが身につくのか」「具体的に何をするのか」に特化した、転職口コミサイトです。

自分の就職・転職活動時にどんなスキルが身につくかで会社を選びたいと思っていたものの、そのような情報を扱うサイトがなかったので作りました。

このサービスを作ったことで、当時通っていたプログラミングスクールのイベントで登壇できたり、運営者ギルド という個人開発のコミュニティにも出会えたりして、とても思い出深いサービスです。

トップページ

トップページのサービス紹介

投稿一覧ページ

投稿詳細ページ

こちらのブログにサービスについてより詳しく書いています。

ysk-pro.hatenablog.com

2. Powertweet

2018/4 リリース

Twitter の OGP(URL をツイートしたときに表示される画像)に力強いメッセージを簡単に表示できるサービスです。

当時 Twitter をよく使っていて、OGP で何か遊べないかな〜と考えていて思いつきました。

投稿には Twitter ログインが必要で、そこでユーザーの離脱が多いことが課題でした。

OGP で遊ぶのが面白くて、ここからいくつか似たサービスを作っていくことになります。

トップページ

サービス説明ページ

3. BigTweet

2018/5 リリース

Powertweet のログインが不要バージョンです。

ログインが不要で気軽に使えることもあり、たくさんの方に使っていただき嬉しかったです。

こんなツイートが簡単にできます

トップページ

画像作成ページ①

画像作成ページ②

4・5. アイデアtweet & アイデアtweet LINE bot

2018/6 リリース

ツイート内のの説明と GIF がわかりやすいです。

ぼーっと使ってるとアイデアが浮かんできて面白いので自分で結構使ってました。

LINE でも同じことができたら面白いと考え、LINE bot を初めて作りました。LINE bot は画面を自分で作る必要がなくてサクッと作れるので、ここからたくさん作っていくことになります。

LINE bot の動作はツイート内の GIF がわかりやすいです。

6. 今日雨降るよちゃん(LINE bot

2018/6 リリース

東京で雨が降りそうな日の朝7時にLINEでメッセージが届くサービスです。

毎朝傘を持っていくかどうかを天気のアプリでチェックするの面倒で、自分が欲しくて作りました。

降水確率が 30% 以上の日だけメッセージを送ってくれて、それ以外の日はメッセージを送ってこないのでうっとうしくならないのがポイントです。

サービス公開から半日で、お友達登録 50人(LINE API 無料枠の上限)となり、その後もあまりブロックされずに使っていただけ、僕が作ったサービスで初めて継続的に使ってもらえるサービスになりました。

こんなメッセージが届きます

サービスについての詳細はこのブログにまとめています。

ysk-pro.hatenablog.com

このブログを久しぶりに読むと、割といいことを言っていました。

当然と言えば当然なのですが、どれだけサービスを作り込んだかよりも、小さなことであってもユーザーの課題を解決することが一番大事なんだなー、ということが実感できたのでこのサービスを作ってよかったです。

7. お買い物メモ君(LINE bot

2018/8 リリース

LINE でお買い物メモが取れて、お買い物メモの一覧を表示する際に Amazon or 楽天でランキング1位の商品を一緒に表示してくれるサービスです。

お買い物メモを LINE で取れたら便利だなーというのと、僕は Amazon楽天でランキング1位のものを買うことが多いので、それを一緒に見れたら便利だなーと思って作りました。

動作はツイートの GIF がわかりやすいです。

Amazon API楽天 API を初めて使いました。簡単に使えてサービスの幅も広がり、とても良かったです。

サービスの詳細はこちらのブログにまとめています。

ysk-pro.hatenablog.com

8. Tweet Searcher(LINE bot

2018/9 リリース

自分のブログや note の URL を登録すれば、登録した URL を含むツイートを毎朝7時に1日分通知してくれる LINE bot です。該当するツイートがなければ LINE を送ってこないのでうっとうしさもありません。

自分のブログや note、web サービスが Twitter でシェアされたことを気軽に確認したくて作りました。

便利でいまだに使っています。

こんなメッセージを送ってくれます

9. BigTweet 2

2018/9 リリース

タイトルの通り、BigTweet の進化系です。Powertweet を合わせると3代目になります。

BigTweet で課題であった、文字を入力しながら仕上がりの画像が確認できないことを克服しました。

あまり得意ではなかった JavaScript を頑張った記憶があります。 

動作はツイートの GIF がわかりやすいです。

10. Blog Reader(LINE bot

2018/11 リリース

毎晩 22時に僕のブログの読書メモをランダムで1つ送ってくれるだけの LINE bot です。

ブログは書いてるものの、見返す機会が作れずに知識が定着してない課題を解決するために作りました。

一応リリースしましたが、完全に自分用のサービスですねw

11. いちにちをシェア

2018/12 リリース

自分の1日を簡単に Twitter でシェアできるサービスです。

自分の1日をシェアできたら面白そうだし、他人の1日を見てみたいなーという気持ちで作りました。

これまでに 68個画像が作られており、少しは使ってもらえたので良かったです。

トップページ(タイトルの下の兄弟サービス紹介の色が強くてチカチカするw)

12. いちねんをシェア

2018/12 リリース

「いちにちをシェア」の年間バージョンです。

12月だったので、1年を振り返るサービスがあるといいなと思って作りました。

トップページ(いちにちをシェアとほぼ同じ)

13. いちねんのさいてん / レーダーチャートメーカー

2018/12 リリース

レーダーチャートで表現した1年間の採点を Twitter で簡単にシェアできるサービスです。

前述のサービスの棒グラフをレーダーチャートにして1年を振り返ったら面白いのでは、と思って作りました。

動作はツイートの GIF がわかりやすいです。

ローディング中に謎の名言が出てくるの面白いw

年が明けて1年の振り返りをするシーズンが終わった後は、汎用的なレーダーチャートメーカーにサービス名を変えました。

トップページ

直近作られたレーダーチャートがひどいww

グラフを Twitter にシェアできるサービスを3つ連続で作った話をブログにまとめました。

ysk-pro.hatenablog.com

14. Web本棚

2019/1 リリース

自分の本棚が↓のツイートのように簡単にシェアできます。

ツイート例

人におすすめの本を聞いたり、人の本棚を見るのが好きなので、Web 上で本棚を紹介できるサービスがあったら面白いな〜と思って作りました。

これまでに577個の本棚を作っていただき、そこそこ使われるサービスになりました。

今でもたまに使われており嬉しいです。

トップページ

本のタイトルの一部を入力すると候補が出てくる

最近作られた本棚

本棚に多く入れられた本ランキング

15. 映画シェア

2019/2 リリース

Web 本棚の映画版です。

映画も同じように人のおすすめを聞く機会が多いなーと思って作りました。

トップページ

最近シェアされた映画

16. 楽々ゴルフ

2020/1 リリース

車での移動時間でゴルフ場が絞り込めるサービスです。

既存のサービスは、都道府県による絞り込みが大半でした。同じ都道府県のゴルフ場でも家からの所要時間は全然違うため家から近いゴルフ場が検索しづらく、その課題を解決したくて作りました。

エンジニアの妻と正月休みに一気に作りました。妻とワイワイサービスを作るのは楽しかったです。

これまでのサービスは使っている技術が RailsJavaScript 少し、サーバーは全て Heroku でした。このサービスでは フロントエンドに React を使って AWS Amplify にホスティングし、バックエンドは AWS Lambda でサーバレスの構成にしました。新しい技術を使えるのも個人開発の醍醐味ですよね。

トップページ

検索中画面(かわいい GIF が動きます)

検索結果一覧画面

サービスについてや使っている技術の詳細はこちらのブログにまとめています。

ysk-pro.hatenablog.com

17. ゴルフメドレー

2020/8 頃リリース

ゴルフ練習場の口コミサイトとしてスタートし、今はゴルフ場・ゴルフ練習場・ゴルフレッスンの口コミサイトとなっています。

僕の個人開発史上、最も時間をかけていて愛着があるサービスです。

前述の「楽々ゴルフ」を見てくれた方から Twitter DM で新しいサービスを一緒にやりませんかとお話をいただき、営業のその方とエンジニアの妻と3人で育ててきたサービスです。リリースから2年以上経つ今も 3人の slack は毎日動いており、毎日楽しく改善を繰り返しています。

技術面では、Next.js・TailwindCSS・Auth0 など使ったことのなかった技術も採用しています。

PV はずっと右肩上がりで、収益もそれなりに出ており、今後もどんどん成長させていきます。

トップページ①

トップページ(新着口コミ)

検索結果一覧画面

施設詳細画面①

施設詳細画面②

施設詳細画面③

オウンドメディアもあります

キャンペーンを開催しました

ゴルフ場にPOPを置いてもらっています

18. 技術書えらび

2021/1 リリース

Amazon楽天のレビューを同時に見ながら技術書が選べるサービスです。

自分が Amazon楽天のレビューを見ながら技術書を選ぶので、それが楽にできたら嬉しいなーと思って作りました。

フロントエンドに Vue を初めて使いました。

トップページ

検索結果一覧ページ

19. HOKATOOL

2021/10頃リリース

家の近くの保育園を探したり、保育園の口コミができる保活支援サービスです。

自分たちが実際に保活をして、こんなサービスがあったらいいよねというものを、妻と一緒に作りました

自分たちの保活は、区役所からもらってきた紙の保育園一覧から、家から近そうな保育園を Google マップで調べて、保育園の公式HPや口コミを探して、それらをスプレッドシートにまとめて...ととても面倒で、それを楽にしたいと思って作りました。

HOKATOOL を使えば、HOKATOOL 上で現在地から近い順に保育園を探せて、HOKATOOL 上で保育園の情報や口コミが見られて、HOKATOOL のマイページで情報を管理し、パートナーに共有することもできます。

最近、近々引っ越しの予定があり再び保活する必要があったので HOKATOOL を使って保活をしたのですが、ほぼ HOKATOOL だけで完結してとても便利でした。

保育園情報を誰でも編集できる機能も実装し、毎日 保育園情報の編集や保育園の口コミをいただけています。使ってもらえるサービスになり嬉しいです。

トップページ

トップページの条件絞り込み

検索結果一覧ページ

施設詳細ページ

施設情報編集ページ

オウンドメディアもあります

妻が書いてくれたサービスの紹介記事です。

note.com

個人開発をやってきて思ったこと

技術力よりも作りたい気持ちが大事

僕が営業からエンジニアになったのが 2018/2 です。

2018 年は技術力が低かった時期ですが、サービスを 13 個リリースしていました。

個人開発に大事なのは作りたいという気持ちだなあ、と改めて思いました。

こんなサービスを作りたい → それにはこんな技術が必要だから勉強しながら使ってみよう、みたいな感じで少しずつ技術力もついていったと思います。

フィードバックがモチベーションになった

自分がいいと思ったものが使ってもらえてフィードバックがもらえる、というのがとてもモチベーションになっていました。

Twitter で反応をくれていた皆さんや、オフライン会などで個人開発について話せる運営者ギルドの存在がありがたかったです。

リリース後にサービスを維持するのが難しい

モチベーションの意味でも、集客の意味でも、収益化してサーバー代をまかなえるようにする意味でも難しかったです。

収益化については、SNS でバズって広告収入で、と思っていましたが、これまでの経験で地道に営業をしていくのが一番の近道だと思うようになりました。

無料枠がある神サービス Heroku がなくなってしまったので、サービスを維持していくハードルは更に上がってしまった気がします。

数人のチームでやれると強い

同じくらいモチベーションを持った人と組んでやると、1人でやるよりも楽しく、いいものができるし、続けられるなーと思いました。

現に今も開発を続けているサービス(Golf Medley と HOKATOOL)はチームでやっているものです。

おわりに

プログラミングと個人開発をやり始めて、完全にハマっていた 2018 年の勢いが凄まじいですね〜。

こうしてスクリーンショットを並べてみると、だんだんとデザインがまともになってきてる感じがして面白いです。

単機能のサービスを量産していた 2018 年頃と比べ、最近はこれを伸ばすんだと決めたサービスの改善・新機能開発をコツコツ頑張っています。

一番注力しているサービス「ゴルフメドレー」をぜひ見て行ってください。

golf-medley.com

ログイン不要で口コミできるので、ゴルフをする方は口コミをしていただけるととっても嬉しいです。

注文住宅を契約した話(一条工務店・グランスマート)

一条工務店で注文住宅を契約しましたーーー!

家が欲しいなと思ってから、注文住宅を契約するまでを、時系列で記録に残しておきます。

イメージ画像(一条工務店の公式HPから引用)

2021/8~11  実家近くに引っ越したくなる・家が欲しくなる

  • 第1子の誕生がきっかけで実家近くに引っ越したくなる
    • 夫婦ともにフルタイム勤務、双方の両親はどちらも遠方という状況で、子供が熱を出してどちらかにうつってしまった時などに近くに頼れる人がいないのがキツい...
    • 地元に帰省した際に、両親がサポートしてくれて身体的にも精神的にも楽で実家近くに引っ越すことを真剣に考えるようになる
      • 子供を預かってくれて2人でリフレッシュする時間をくれたのは本当にありがたかった
    • 夫婦ともエンジニアでフルリモート勤務可能なので地方移住も実現可能
  • 実家近くに引っ越すのであれば、家を買うのもアリだと思った 🏠
    • 現在住んでいる3LDKの賃貸マンションが手狭だったのと、子供の泣き声が迷惑になっていないか気になるため、戸建が欲しくなってくる
    • 妻の実家が戸建で、冬がとにかく寒かったと話していたので、買うなら冬でも暖かい家がいいよね〜と話していた
    • ちなみに、子供が生まれるまでは、妻と一生 賃貸住宅でいいよねと話していたので、子供の誕生で価値観が一気に変わった(車も要らない派だったが子供の誕生で価値観が変わって買った 🚙)

2021/11  住宅展示場行ってみる

まだ家を買うと決めたわけではなかったが、軽い気持ちで住宅展示場に行ってみた

セキスイハイム

  • 外はかなり寒かったが、入った瞬間本当に暖かくて驚いた

一条工務店

  • 全館床暖房だけで暖かくて快適。エアコンの風が当たるのがあまり好きじゃないのですごくいいなーと思った
  • 気密性・断熱性など、家のスペックが数値で説明してありわかりやすい(大手ハウスメーカーの中で一条工務店が圧倒的に気密性・断熱性が高いらしい)。実際に家を建てる中でも計測のフローがあって一定の品質が担保される安心感もある
  • 1〜3mの洪水に耐えられる 耐水害住宅 がすごい。今の家の性能はそんなに高いんだと驚いた(リンクを貼っている公式HPに実験の動画等あり)

積水ハウス

  • デカい窓、柱が少なくてリビングが広々でおしゃれ
  • ただめっちゃ高い。。(だいたい一条工務店 +1000万 という感じ)

ミサワホーム

  • あまり惹かれなかった

タマホーム

  • 比較的安価なハウスメーカーだと思っていたが、話を聞いてみると思ったより他メーカーと金額帯がそこまで変わらないようだった

住宅展示場巡りをした結果、どんどん家が欲しくなってきていた 🔥

2021/12  注文住宅を建てることを決める

  • 実家に家を買うことを検討してると相談したところ、亡くなった祖母の家の土地を使っていいと言われ、注文住宅を建てる場合に必要な土地探しが不要になった
  • 建売物件も見ていたが、コレだというものが見つからなかった

→ 注文住宅を建てることに決めた

2021/12  仮契約!

  • 展示場巡りで一番気に入った一条工務店、引き渡し前の物件見学や工場見学を経て仮契約に至った(仮契約をして手付金100万円を払うと、設計などの具体的な家づくりのフェーズに進める)
    • 決め手
      • 全館床暖房で暖かくて快適な家にできそうだったこと
      • 建築予定の土地が水害のハザードエリアで、耐水害住宅が魅力的だったこと
      • そこまで高すぎない価格帯だったこと
  • 一条工務店でちょうど新しく発表された グランスマート というタイプを選んだ
    • 簡単に言うと、性能が高い i-smart と、デザイン性の高い グランスマート のハイブリッドタイプ
  • 補助金を勘案して今後のスケジュールを決める
    • 年度初めの4月頃から補助金の発表や補助金の申請が始まるので、補助金が出揃う4月下旬くらいに契約するのがベストというアドバイスを受けて、その通りのスケジュールにした(契約前に補助金の申請が必要なケースが多い)
    • まだ受け取ってはいないが、国・新しく住む自治体の補助金でびっくりするくらいもらえる予定なのでこのアドバイスはとてもとてもありがたかった(家は高いのでその分補助金の額もデカイ

2022/1  一条工務店の宿泊体験

  • 実際に一条工務店で建てた宿泊体験用の家に1泊した
  • 外はかなり寒い日だったが、室内はとても快適で今すぐ住みたくなった

2022/1~2022/4  色々決める

  • 決めることが山盛り
  • 2週間に1回、3時間の打ち合わせを8回くらいやって決めていった
    • 打ち合わせで要望を伝える → 1週間後に設計案が送られてきて、打ち合わせでそれに対するフィードバック、みたいなサイクルで進めた
  • 最新の設計案が専用のアプリで送られてきて便利
  • 打ち合わせは基本オンラインで、ベビーシッターをお願いして夫婦2人とも打ち合わせに集中できるようにした(○千万円の買い物で後から聞いてなかった...はヤバい)

間取り

  • 大体10回くらいの小さな変更と、1回の丸々変わるレベルの大きな変更をした
  • こだわったポイント
    • 1F にリビング、水回り、家族全員の衣類が収納できるファミリークローゼットを作って1階で家事が完結すること
    • リビングに畳スペースを作って、寝転がってくつろげるようにした
    • 子供が大きくなった時、玄関から直接2Fの自室に行って顔を合わさなくなるのは寂しいなと思ってリビング階段を採用
    • リモートワークにおいてネット回線は生命線なので、1F・2Fそれぞれにルーターを置く場所を確保した(メッシュ wi-fi 構成にする予定)
    • 子供が何人になるかわからないので、2Fは寝室 + 3部屋(内2部屋はつなげられる仕様で)作って柔軟に対応できるようにした(子供が部屋を使うまでは仕事部屋になる!)
    • 2Fのホールに2~3人並んで座れるカウンターを作って、仕事をしたり子供と一緒に勉強したりできるようにした
    • 子供のものが増えそうなので屋根裏収納を作った
    • 猫の自動トイレが玄関にうまく収まること
  • 設計士さんの間取りをベースに自分たちで間取りを作ってみたりしたが、設計士さんに要望を伝えて間取りを変えてもらう方がはるかにいいものができて、プロのすごみを感じた
  • どうしても平面だとイメージしづらかったので、妻が別の業者に3Dのパースを依頼し、3Dで見てイメージを掴んだ

照明・コンセント

  • 照明は設計書を見てもイメージが湧かずに苦労した
  • リビングは、調光できるダウンライト・ダクトレールで細かく調整できるようにして、Panasonic のリビングライコンでボタン1つでシーンを切り替えられるようにした
  • 玄関・トイレ・廊下などでいちいちスイッチをつけて消すのが面倒なのでセンサー照明を多用した

オプション

  • 欲しいものを全部入れていったらすごい金額になってビビった...けど後悔思想だったので全部入れた
  • 海外製の食洗機を導入することにした

壁紙

  • せっかくの注文住宅なので、アクセントクロスを1部屋につき1つは使った
  • トイレやファミリークローゼットといった独立した空間は攻めた柄にした
  • 一条工務店標準のクロスは種類が少なかったので、壁紙メーカーの展示場に行って気に入ったものを選んだ

住宅ローンの銀行

  • 一条工務店提携の銀行2つに事前審査を出し、条件の良かった地元の地銀に決めた
  • ペアローン、変動金利、ガン特約(ガンと診断されたら住宅ローン残高0になる)ありにした

外構

  • 一条工務店の提携業者、地元の業者に見積もりを取り、金額がほとんど変わらなかったため、一条工務店と直接やりとりしてもらえて安心感のある提携の業者にお願いすることにした

2022/4  契約!

  • 人生初の○千万の契約は痺れた
  • こわいので、事前に契約書などを送ってもらって目を通してから契約に臨んだ
  • 後日住宅ローンが実行され、晴れて債務者となった 🤑

感想

家づくり楽しい!だけど思っていた以上にやることある

  • 決めることが大量にあるため、妻と trello で管理していた
  • 妻と理想の家について何度も話して形にしていくのは楽しかった

ハウスメーカーの担当者を代えてもらって良かった

  • 住宅展示場でついてもらった担当者が自分たちに合わないと感じたため、アンケートにその旨記載して担当を変えてもらった
  • 変わった担当者はすごく合う人でスムーズに進んだので変えてもらって良かった
    • ただ、すごく多忙な方で仮契約後にレスが遅くなってしまったのは残念だった

おわりに

2022年末頃に完成する予定で、とてもとても楽しみです。

一条工務店は紹介制度があって紹介するとお互いにメリットある(紹介された側は○十万円のオプションが無料など)ので、気になる方がいれば Twitter DM でご連絡ください。

デスク環境をリニューアルした話

久々にデスク環境をリニューアルしたので、ブログにまとめておこうと思います。

きっかけ

元々ノートPC、ディスプレイ2枚のトリプルディスプレイ構成でした。(写真は次章にあります)

プライベートのPCを MacBook Air 2018 から M2 MacBook Air に買い替えたところ、なんと M2 MacBook Air に外部ディスプレイへの出力が1枚までという制約がありました... 😇 (MacBook Air 2018 は2枚いけてたのにマジか...)

DisplayLink というものを使えばこの制約を外せるようなのですが、別の制約があったり、DisplayLink 対応のアダプタは割高なのもあって、ノートPC + 大きめのディスプレイ1枚の構成にリニューアルすることにしました。

全体像のビフォーアフター

ビフォー

ビフォーの環境についてはこの記事にまとめています。

リモートワークでのデスク環境の紹介 - 銀行員からのRailsエンジニア

アフター

圧迫感がなくなってスッキリしましたね〜。M2 MacBook Air のミッドナイトブルーかっこいいですよね。

大きく変わったポイントとしてはこんな感じです。

  • マイク導入!
  • ディスプレイが減った
  • ノートPCに接続してるケーブルが1本になってスッキリ

ポイントを1つずつ見ていきます。

マイク

リモートワークは声の聞き取りやすさが重要なので、マイクを導入しました。

会社の同僚に、コスパの良い指向性マイクとして FIFINE を教えてもらい、それを購入しました。

同僚に音質が良くなったと言われて嬉しかったです。また、マイクについているタッチボタンでミュートの切り替えができて便利です。

マイクアームを合わせて使うことで、マイクを口元に持ってくるのが楽で(マイクは近くで話すとよりクリアに聞こえます)、さらにマイクを使わないときは、隅にスッとずらせて便利です。

隅にスッとずらした時の様子です。押すだけでスムーズにずらせます。

ディスプレイ

元々21インチ・23インチのディスプレイを使っていましたが、ディスプレイ数が減るので大きめの27インチにしました。

メーカーは、以前から気になっていた EIZO にしてみました。カラーは珍しい白色。

ディスプレイは見やすく、明るさの自動調節機能がいい感じです。

元々外部ディスプレイを2枚使っていたので、作業スペースが減って困るのでは、と懸念していましたが、27インチのディスプレイは基本2分割して使っており、今までとほぼ作業スペースは変わらないです。むしろ目線の移動が不要になった分、今までよりも便利になったと感じています。画面分割のツールとして Rectangle を使っており、簡単に左半分・右半分などできて便利です。

www.eizo.co.jp

購入した EV2781 が新しい機種のためか Amazon のリンクが取得できなかったため、近いモデルのリンクを掲載しておきます。

ケーブルがすっきり

前述したディスプレイは、ノートPCへの給電機能(70W)、4ポートのUSBハブ機能を有しており、マイクやキーボードなどのUSBをディスプレイに繋げば、ノートPCにはディスプレイとのType-C 1本繋ぐだけでOKになりました。

こんな感じになっています。

ノートPC---(Type-C)---ディスプレイ---(USB)---マイク
                                                      L---(USB)---キーボード
                                                      L---(USB)---トラックパッド  
                                                      L---電源

見た目もスッキリし、仕事用とプライベートのPCの切り替えが、ケーブル1本を抜き差しするだけで良くなってとても楽です。

おわりに

デスク環境の整備は楽しいですねーー。

ビフォー環境についての記事には、元々あったものなど、この記事で触れていないものについても紹介しているので、是非合わせてご覧ください。

ysk-pro.hatenablog.com

【読書まとめ32】3000万語の格差 ー 赤ちゃんの脳をつくる、親と保護者の話しかけ

こんにちは。

昨年第一子が生まれ、8ヶ月間の育休を取得して日々育児に奮闘しています。

今回は技術書からは離れ、子育て関連のこの本を読みました。

個人的になかなか衝撃的な内容も多く、子育て真っ只中の今のタイミングに読めて良かった本でした。

今後、育児中に何度も振り返れるように、特に覚えておきたいポイントに絞ってまとめます。

f:id:ysk_pro:20220402213013p:plain

ポイントのまとめ

最も重要だと思ったところ

子供の最終的な学業到達度により影響するのは、遺伝や社会経済的な状況等ではなく、生まれてから3歳の終わりまでに聞く言葉の量と質

思考や学びの基礎となる脳の神経細胞の繋がりは大部分が生後3年間に起こり、話しかけられた言葉によって脳の発達は引き起こされる

具体的にやるとよいこと

子どもの脳を育てるために保護者がするとよいことは「4つのT」

Turn In(チューン・イン)

子供が集中している対象に保護者も集中し、その対象について子供と一緒に話すこと

子供は自分が興味を感じた時だけ集中するため、子供が興味を持っていないものに無理やり集中させるのは難しい

保護者が物理的にも子供と同じ高さで話すことによって一層効果が上がる

Talk More

たくさん話すこと

特に、子供の発した言葉をふくらませることが、子供の言葉のスキルを伸ばすことを助ける(例:子供「抱っこ」→ 保護者「お父さんに抱っこして欲しいの?」)

「それ」等の代名詞は使わずに名前を使うことが、子供の語彙を増やす助けになる

Take Turns

会話のやりとりをすること

やりとりを行ったり来たりさせるために、保護者は子供が反応するまでちゃんと待つことが大切。子供が言葉を探す時間が長いと、つい保護者が言葉を先取りしてしまうが、そうするとと会話が終わりかねない

Turn Off

スマートフォン、テレビの電源を切ること

米国小児科学会は、2歳以下の子供にはテレビもテクノロジーも一切不要だと勧告している

子供の脳は、社会的な相互のやりとりがある環境でのみ学んでいく

 

※ 本書中では、Turn Off 以外を3つの T、+α の T として Turn Off を紹介していましたが、Turn Off も3つの T と同じくらい大切だと思ったので、この記事では4つの T としています

その他に気をつけるとよいこと

褒め方

その人を褒める(頭がいいね等)より、その過程を褒める(頑張ったね等)とよい

過程を褒めると、困難に直面した子供が挑戦する気になりやすい

本をたくさん読むこと

米国小児科学会が、保護者は生後すぐから子供に本を読むべきだと勧告を出している

生後数年間に保護者が本を読んだ子供は、幼稚園の段階で語彙がより豊かで、算数のスキルも高いという研究結果が複数ある

子供に何かして欲しいときの伝え方

子供に何かして欲しいとき、命令形ではなく理由も合わせて伝えると、何かをするときには理由があるのだと子供が理解する手助けとなる

ある行動の結果を考え、判断するという因果関係の学びにも繋がる

おわりに

ここまでお読みいただきありがとうございます。

人の頭の良さ(本書の中では学業到達度と言っています)は、遺伝が一番大きく影響するのかな、思っていたので、本書の内容は衝撃的でした。それとともに、子供の将来の命運の、少なくない部分を自分が握っていると思うと少しプレッシャーを感じました。

この記事に書いたことは本書に書かれていることのほんの一部なので(本書は270ページあります)、ご興味を持たれた方は是非本書を手に取ってみてください。

今日からできることとして、まずはスマホをターン・オフして、子供にチューン・インすることを意識的に増やしていきます。

 

育休関連の記事はこちらに書いていますのでご興味あれば合わせてご覧ください。

hokatool.com

エンジニア4年目の2021年振り返り

こんにちは。もう2021年が終わってしまいますね。

エンジニアになってから毎年 年末に振り返り記事を書いていおり、今年もやったことをまとめておこうと思います。

仕事の内容は詳細に書けないため、仕事以外の内容が中心です。

f:id:ysk_pro:20211230160154p:plain

アイキャッチ画像は、最近の読書している時の膝の上の状況です。かわいいが渋滞してます 😍

個人開発

趣味の個人開発に今年もじっくり取り組むことができ、新しいサービス2つリリースと、既存のサービスへの機能追加ができました 🎉

技術書えらび をリリース

楽天ブックスAmazonの両方のレビューを見ながら技術書を選べるサービスです。

どっちものレビューを見ながら選べたら便利だなーと思い、Vue.js の練習も兼ねて作ってみました。

構成は Vue.js × Rails API モードです。

ドメインを取得するときに、techbook(= 技術書)としたいところを teckbook と痛恨のタイポをしましたw(恥ずかしいけどもったいないのでそのまま使ってます..)

www.teckbook.net

HOKATOOL をリリース

現在地・住所・駅名から近い順に保育園を検索できるサービスです。

自分が保活をしていて、こんなサービスあったらいいなーと思ったものを妻と一緒に作りました。(エンジニアの妻との共同開発はこれで3つ目となり毎回楽しいです。)

僕は近隣の保育園を調べるために、区役所で保育園一覧の紙をもらって、1園ずつ Google Map で家からの距離を調べるということをやっていました。これがあればかなり楽ができると思います。

構成は Next.js × Rails API モードです。

妻が書いてくれたサービスの紹介記事がこちらです。

note.com

結構便利だと思うので、保活を控えてる方は是非是非覗いてみてください。

hokatool.com

Golf Medley の機能追加たくさん

Golf Medley は昨年リリースしたゴルフの口コミサイトです。開発の妻と僕、営業等のもう1人の3人で開発を進めています。

今年の多くの時間はこのサービスの機能追加にあてていて、多くの機能をリリースできたので紹介します。

オウンドメディアの作成

SEO 強化のためにオウンドメディアを作ろうということで、ヘッドレス CMS の Contentful を使って記事機能を作りました。

記事は営業メンバーがコツコツ書いてくれた結果40記事以上となり、かなりの流入があるので作ってよかったです。

golf-medley.com

練習場詳細ページのリニューアル

練習場詳細ページの情報を見やすくしました。

検索一覧ページのリニューアル

検索一覧ページについて改善を行い、行なったことを note にまとめました。

note.com

ゴルフ場、ゴルフレッスンの情報が加わった

元々はゴルフ練習場の口コミサイトだったのですが、ゴルフ場、ゴルフレッスンの情報を加え、ゴルフの総合口コミサイトに生まれ変わりました。

トップページのリニューアル

ゴルフ場、ゴルフレッスンの情報追加のタイミングで、トップページのリニューアルも行いました。

キャンペーンの開催

口コミ投稿で抽選5名様にゴルフボール1ダースプレゼントという初めてのキャンペーンを開催しました。

キャンペーン期間中に想定よりも多くの口コミをいただけ他ので、来年も新しいキャンペーンを実施予定です。

 

ゴルフをしている方は是非一度覗いてみてください!(口コミもいただけるとめちゃくちゃ喜びます)

golf-medley.com

仕事

Golang を書いた

前々からやりたかった Golang を仕事で書く機会を得ました。わーい

簡単な機能追加だったので 2ヶ月間程でしたが、基本的な書き方は把握できたので良かったです。

アジャイルを頑張った

チームでアジャイル開発を取り入れはじめ、定着させるために手探りで頑張りました。

知識をつけるためにいくつか本を読んでまとめ、まとめた内容を都度見返しながら進めました。

【読書まとめ25】スクラムブートキャンプ(SCRUM BOOT CAMP THE BOOK) - 銀行員からのRailsエンジニア

【読書まとめ28】アジャイルサムライ 達人開発者への道 - 銀行員からのRailsエンジニア

【読書まとめ30】いちばんやさしいアジャイル開発の教本 - 銀行員からのRailsエンジニア

小さなチームでのリーダー経験もできて有意義でした。

プライベート

子供の誕生・育休取得(8月〜来年4月)

8月に第一子が生まれ、8月から来年の4月まで約8ヶ月間育休を取得しています。

息子はとってもかわいく、息子と向き合う時間がしっかり取れる育休を取って良かったなあと思っています。(夜寝てくれないなど育児は過酷なので、育休取ってなかったらヤバかったな、、とも思ってます。)

育休を取った理由や、1ヶ月ごとの振り返りはこちらに書いています。(個人開発のところに書いた HOKATOOL のオウンドメディアです。)

hokatool.com

エヴァジョジョにハマった

ハマりました。アニメ・映画の一気見は最高でした。

おわりに

今年も個人開発を中心に色々活動できて楽しい1年でした。

来年は Golf Medley の勝負の年にする予定なので、今年以上に頑張っていきます。育児も妻と協力して頑張っていきます。

ご興味あれば、去年のブログも合わせてご覧ください。

ysk-pro.hatenablog.com

良いお年を。

 

【技術書まとめ31】現場で役立つシステム設計の原則

こんにちは。

今回は、DDD(ドメイン駆動設計)を学ぶために、勤めている会社で話題になっていた「現場で役立つシステム設計の原則」を読みました。

学ぶことが多く、今後も定期的に見返したいと思ったので、ポイントをまとめました。 

f:id:ysk_pro:20210707081045p:plain

設計の重要性

  • どこに何が書いてあるかを分かりやすくし、修正や拡張が楽なコードを生み出すこと
  • 変更が大変なプログラムの特徴 3点。どれも関心事の詰め込みすぎが原因
    • メソッドが長い
    • クラスが大きい
    • 引数が多い

 

設計の仕方の比較

2つの設計の仕方を比較します。

どちらの設計も、関心事の分離のために 3層アーキテクチャ を使うことを前提にしています。

  • プレゼンテーション層:UIなどの外部との入出力
  • アプリケーション層:業務機能のマクロな手順
  • データソース層:データベースとの入出力

 

データクラスを使う設計

  • 従来の手続き型の設計で基本とされていた、データを格納するデータクラスと、ロジックを記述する機能クラスに分ける設計
  • データクラスは getter/setterメソッドだけを持ち、データを使った判断/加工/計算のロジックは、機能クラスに記述する
  • 3層が同じデータクラスを参照できる結果、データクラスを使うロジックが3層のどこでも書けてしまい、重複しやすくなってしまう欠点があった

f:id:ysk_pro:20210706082357p:plain

イメージ図(本書のCHAPTER3 図3-2をベースに作成)

 

ドメインモデルを使う設計

  • ドメインモデルとは、業務で扱うデータと関連する業務ロジックを集めて整理したもの
    • ドメインとは、業務アプリケーションの対象領域を指す
  • ドメインモデルを使った設計では、ドメインモデルに集めた業務ロジックを3層が利用する形になる → 業務ロジックを書く場所が明確になり、重複を防げる

f:id:ysk_pro:20210706083139p:plain

イメージ図(本書のCHAPTER3 図3-4をベースに作成)
  • 業務ロジックを記載するのはドメインモデルのみとすることで、3層の記述は簡潔で分かりやすくなる。業務アプリケーションのコードが複雑になる理由は、業務ロジックの複雑さであるため
  • ドメインモデルは画面やデータベースの都合からは独立して、純粋に業務の観点から業務ロジックを整理できる → ドメインモデルを見れば、業務全体がどういう関心事から成り立っているかを理解できるようになる

 

ドメインモデル設計の仕方

ドメインモデルを使う設計の利点を理解した後は、実際にどのように設計を行うかを学びます

  • ドメインモデルの設計は、業務で使われる具体的な用語(概念)を手がかりに進める。その用語が、データとロジックをひとかたまりとしてプログラミング単位として使えるかを検証する
  • 部分に注目し、個々の部品を作り、それを組み合わせて段階的に全体を作っていくボトムアップのアプローチを取る
  • 部分に注目するが、全体像を意識しないと間違った方向へ進む危険がある。全体を俯瞰する道具として、以下の2つがある
    • パッケージ図
      • パッケージ間の依存関係を表現する
    • 業務フロー図
      • 業務の活動を時間軸に沿って図示したもの
      • 顧客/販売部門/出荷部門などの活動の主体ごとのレーンを並べ、その間の情報のやり取りを表現する
  • これらの図で全体を俯瞰したら、重要な部分を探し、重要な部分から作っていく
  • 業務を分析し、理解するために、業務の関心事をヒト/モノ/コトの3つに分類する手法がある
    • ヒト:人の意思/判断/行動についてのデータを持ち、そのデータを使った判断/加工/計算のロジックを持つ
    • モノ:ヒトが業務を遂行するときの関心の対象。これらの属性を表現するデータと、そのデータに対して業務的にどういう判断/加工/計算をしたいかをロジックとして持つ
    • コト:基本的にヒトの意思決定や行動の結果。業務アプリケーションの基本的な関心事は、コトを記録して、コトの発生を通知すること。コトに注目すると、全体の関係整理しやすい

 

ドメインモデル設計の注意点

  • 業務では実際に使っていない抽象的な言葉をクラス名として使ってしまうと、そのクラス名は具体的には何も説明しておらず、業務を的確に捉えられない
  • オブジェクトとテーブルを自動的にマッピングするアプローチは、どちらかの設計のアプローチの制約を受け、うまくいかないことが多い。業務ロジックはオブジェクトで、事実の記録はテーブルで行うべき
  • 表示のためのロジックと業務ロジックを混在させない
    • 例1)一定金額を超え、かつ、注文後1日以上経過した注文を画面で強調表示する場合、画面表示のロジックに if 文を書いてしまうことがあるが、これは業務ルールなのでここに書かない方が良い
    • 例2)カンマや千円単位の表示なども、ドメインオブジェクトが持つべき加工ロジックの候補。データの文字列表現は、利用者の関心事であり、そういう関心事に関わる加工や判断のロジックはできるだけドメインオブジェクトに集約した方が変更が楽で安全になる

 

おわりに

ここまで読んでいただきありがとうございます。

これまで DDD(ドメイン駆動設計)の本を何冊か読んできましたが、個人的には本書が一番理解しやすかったです。本書をとっかかりにして、関連書籍を読んでいき、実践することで DDD への理解を深めていこうと思います。

本書の中では、図を多く使って丁寧に説明されていて理解しやすかったので、ご興味ある方は是非読んでみてください。 

 

【読書まとめ30】いちばんやさしいアジャイル開発の教本

勤務している会社でアジャイル開発を取り入れはじめ、開発・ビジネスサイドのメンバー合同で「いちばんやさしいアジャイル開発の教本」の輪読会を行いました。

学びが多く、これからアジャイル開発を実践していく中で、都度振り返れるようポイントをまとめました。

f:id:ysk_pro:20210611082845p:plain

なぜアジャイル開発が必要とされるのか

従来型の開発手法であるウォーターフォールの課題を整理し、その上でなぜアジャイルなのかを学びます

ウォーターフォールとは

一言で説明すると

開発をいくつかの工程に分けて順番に取り組んでいく手法

 

メリット

工程が明確に分かれているので、進捗確認、役割分担がしやすい

 

ソフトウェア開発の難しさ

開発したけど使われない問題

ソフトウェアの6割の機能は使われていないという調査結果がある

なぜそんなことが起こるのかというと、利用者が欲しいと思っているものが本当に必要かどうかは、利用してみるまでわからない

 

不確実性が高い

特にプロジェクト初期ほど不確実性が高く、見積もりから大きくブレやすい

プロジェクト初期では、見積もりの0.25倍〜4番の振れ幅があるとされている

 

ウォーターフォールの課題

  • 手戻りができない。ただ、実際にソフトウェアを触ってみないとわからないこともあるので、要件を最初に全て決めることは現実的ではない → 本当に必要なものからかけ離れたものが作り込まれてしまうリスクがある

  • 前工程で遅延が発生した場合に、後工程で辻褄あわせのために期間が圧縮されることがある。前述のように序盤の工程ほど不確実性は大きい → テストなどの工程が削減され、品質の低いソフトウェアになるリスクがある

 

ウォーターフォールアジャイル開発の違い

  • ウォーターフォール:各工程での成果物を完成品とみなし、後工程での手戻りが発生しないようになっている。各工程は1度ずつのみ行う
  • アジャイル開発:一定の期間(スプリント)ごとに動くソフトウェアが作られ、次のスプリントではそのソフトウェアから得られた気づき・フィードバックをもとに要件レベルから見直しが行われる。 スプリントの数だけ各工程を繰り返す

アジャイル開発だと少しずつ動くものを作るので、細かくフィードバックを受けることができ、本当に必要なものを作れる可能性が上がる

 

アジャイル開発の原則・コンセプト

アジャイル開発について理解するために、原則・コンセプトをまとめます

主な原則

  • 継続的かつ短い間隔でのリリース
  • ビジネスサイドと開発者の協働
  • 対話の重視
  • 絶え間のないカイゼン
  • ふりかえり
  • 動くソフトウェアの重視
  • 要求の変更はたとえ開発の後期であっても歓迎する

 

3つのコアコンセプト

  • チームアジャイル開発における機能するチームは、自己組織化されており、職能横断型なチーム
    • 自己組織化:自分たちで物事を決めて自律的に動けること
    • 職能横断型:複数の専門性を保有し、ソフトウェアを完成させる能力を有していること
  • インクリメンタル少しずつ作る
  • イテレーティブ反復的に作る。反復的に作ることで、経験・得られた学びに基づき次の開発ができる

 

具体的な手法・カイゼン

職場で実際に使えそうな手法や、カイゼンの例をまとめました

カイゼン」は、改善とは区別されています

  • カイゼン今あるものをより良いものしていくという、前向きで積極的な活動を意味する
  • 改善:発生している問題を取り除くという、カイゼンに比べると若干後向きなニュアンス

プロジェクト開始時に有効な手法

プロジェクト、プロダクト作りを始めるにあたり、目的や前提を把握することやチームメンバーへの理解を深めることは、状況に応じた判断を自分たちで行うための第一歩。このような共通理解を深める3つの方法がある

  • インセプションデッキ:プロジェクト、プロダクトレベルで目的や目標、前提や制約を理解する
  • ドラッガー風エクササイズ:チームメンバーレベルで考え方や得意なことを理解する
  • ワーキングアグリーメント:チーム活動レベルで協働のためのルールを理解する。何か問題が起きる都度、ルールの追加、変更を検討する

 

デイリースクラムカイゼン

  • 進捗遅れがあるにも関わらず「問題ありません」発言が目立ってきたら、「困っていること」から「モヤモヤと違和感を感じていること」に変えてみると良い。メンバーが問題を共有するハードルを下げることができる
  • ファイブフィンガーで進捗状況を発言しやすくできる。スプリントゴールの達成度合いは5本の指で表現するといくつぐらいか、と数字の大きさで表明してもらうと、問題ありませんと発言していたメンバーも数字の理由を聞くことで状況を発言しやすくなる
  • 個人レベルの失敗を共有することは、チームで成果を出すための成長と前進のきっかけ。デイリースクラムで共有される問題は、他のメンバーが同じ失敗をしないための学びのきっかけであることを強調するためにも、マネージャーなどから積極的に行っていく

 

振り返りのカイゼン

  • 暗くなるようの反省会のようになってしまったら、良いことをさらに良くするための振り返り方法を試してみる
  • 「YWT」やったこと(Y)、わかったこと(W)、次にやること(Y)を意味し、わかったことという気づきをベースに、次にやることを明確にできる。気付いた学びを次に活かすという流れが成長を促進する
  • 「Fun! Done! Learn!」楽しかったこと(Fun!)、やったこと(Done!)、学んだこと(Learn!)を意味し、これら3つの円を重ね合わせて、実施したことがやっただけなのか、楽しさも同居していたのか、さらには学びもあったのかを振り返る。振り返りながら楽しさをイメージするため、記憶に残りやすい成功体験の学びになる
  • KPTカイゼン策に、YWTは気づきに、Fun! Done! Learn! は楽しかった学びに関心のフォーカスが当たる。3種類の振り返りを定期的に変えたり、状況によって使い分けることで形骸化を打破できる
  • こぼれ球を拾う、手こずっているメンバーを手伝うなどの動きはチームワークを発揮するために重要だが、フィードバックがなければ継続する気力がなくなっていく。チームワークを支える行動にフィードバックを与えるには、感謝を見える化するプラクティスが有効KPTに感謝という軸を加え、Tryを決めた後に最後にチームメンバーへの感謝を示すアクティビティをすると良い。チーム内に互いを尊重し称え合う文化も醸成されていく

 

プロセスのカイゼン

  • プロセスの無駄を見える化するためには、バリューストリームマッピングが有効。開発が始まってからユーザーに届くまでのプロセスを全て洗い出すことで、待ち時間が多いところや、手戻りが発生しやすい箇所が見つけられる

 

その他覚えておきたいこと

  • DX(デジタルトランスフォーメーション)とは、ITを道具として活用するだけでなく、ITによりビジネスや生活を変革させていくこと。これまでのITとビジネスの関係は、もともと人間が行なっていたことをITで置き換えることだが、DXが実現するのはITを前提とした新しいプロセスやビジネス
    • 例:音楽ストリーミングサービス
  • 仮説を検証するための、価値を提供できる実用的で最小限のプロダクトのことをMVP(Minimum Viable Product、Viable: 実行可能な)という
  • モブプロなどの1人でできることを全員でやったら時間が無駄なのではないか?への回答
    • 隙間時間があって時間を無駄にしていることを懸念するよりも、価値が早く顧客の手に届く流れの効率を大切にしている人がフル稼働することよりも、開発された成果物を重視している。リリースすることで顧客が利用可能になり、使われて初めて価値が生まれる
  • プロダクトバックログの開発可能チェックリスト
    • スプリント内で開発着手できる具体的な情報がある
    • 顧客に価値がある根拠や仮説がある
    • 優先順位で並べ替えられている
    • スプリントで開発可能な大きさに分解されている
    • 見積もられている
    • テスト可能な受け入れ条件がある

 

おわりに

ここまでお読みいただきありがとうございます。

本書の中では図がたくさん使われており、アジャイル開発の考え方がとても理解しやすかったの、ご興味ある方は是非読んでみてください。

 

以下の関連記事を合わせて読むことでアジャイル開発、アジャイル開発の1つであるスクラムについての理解がさらに深まると思うので、ご興味ある方は是非ご覧ください。

ysk-pro.hatenablog.com

ysk-pro.hatenablog.com

ysk-pro.hatenablog.com