give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

【受付終了】TokyoGirls.rb Meetup vol.2の女性登壇者を募集します #tokyogirlsrb

お知らせ

お知らせです。TokyoGirls.rbの第2回ミートアップを2019年12月21日(土)に実施します。
そして、今回は「女性も参加しやすいRuby勉強会」から一歩進めて「女性も登壇しやすいRuby勉強会」を実現するため、女性登壇者を公募します!

f:id:JunichiIto:20190926101100j:plain
第1回ミートアップの風景(2019年3月2日)

募集要項と申込みフォームはこちら!

登壇者の募集要項はこちらにまとめてあります。

公募スピーカー募集要項 - TokyoGirls.rb Meetup vol.2 · GitHub

この募集要項を読んで「登壇してみようかな」と興味を持った方は以下の申込みフォームから申し込んでください。

【受付終了】公募スピーカー申込みフォーム - TokyoGirls.rb Meetup vol.2

募集要項(簡易版)

正式な募集要項は上のリンクになりますが、このページにもざっくりと簡易的な内容を転記しておきます。

イベントの基本情報
  • イベント開催日時:2019年12月21日(土) 13:00〜18:00
  • 場所:株式会社SmartHR(東京都港区六本木3-2-1 住友不動産六本木グランドタワー 39F)
  • 参加人数:50人〜70人程度を予定(男女比は、ほぼ半々)
  • 発表時間:1人あたり15分(質疑応答の時間を含む)
  • 募集人数:3名(このほかに4名の招待スピーカーが登壇します)

なお、イベントページは準備中です。11月中旬の公開を予定しています。

登壇者特典と制限事項
  • 登壇者はイベントの参加費が無料になります
  • 小さなお子さんがおられる場合は優先的に託児室(無料)を提供します
  • 有志によるコミュニティイベントであるため、交通費や謝礼はお支払いできません。あらかじめご了承ください
応募者の条件
  • 「女性も登壇しやすいRuby勉強会」をテーマとしているため、今回は応募者を女性に限定します(女性の定義にはトランスジェンダー(MtF)の方も含まれます)
  • 年齢やプログラミング経験、登壇経験は不問です
登壇テーマについて
  • RubyプログラマやRailsアプリ開発者に役立ちそうなテーマであれば、何でもOKです
    • 女性向けでも、男女を問わないテーマでも構いません
    • 技術的なテーマはもちろん、ご自身のキャリアや生き方に関する話題でも構いません
    • 技術的なテーマは初心者向けの内容でも上級者向けの内容でも構いません
  • ただし、TokyoGirls.rbのアンチハラスメントポリシーに反するような発表はご遠慮ください
  • 選考時は、運営スタッフが「面白そう、聞いてみたい!」と思ったテーマや、「これは多くの参加者にとって役立ちそう」と思ったテーマを優先的に採択する予定です
登壇テーマの例
  • こんなサービスやこんなライブラリを開発しました
  • エンジニアになって初めてわかった知見や気づきを紹介します
  • 運用中のRaisアプリを○○倍速くした話
  • 弊社で実践している開発プラクティスがすごいんです
  • Rubyで始める娘(4歳)の英才教育
  • 私、こんな修羅場をくぐり抜けてきました、などなど
  • 第1回ミートアップの登壇テーマも参考にどうぞ。

これらはあくまで架空の登壇テーマです。実際にはみなさんが自由に登壇テーマを決めてもらって構いません!

登壇者決定までの流れ
  • 申込み締切は 2019年10月9日(水) です(応募者が少ない場合は延長する可能性があります)
  • 申込みの締切後、応募者の情報を伏せた状態で(つまり、誰が応募したのかわからない状態で)運営スタッフが登壇テーマを選考し、登壇者を決定します
  • 2019年10月18日(金)頃に当落の結果をメールでお伝えします

まとめ

というわけで、今回のエントリはTokyoGirls.rb Meetup vol.2の登壇者募集のお知らせでした。
これからいろいろとイベントの詳細を詰めていきますので、前回参加された方も、そうでない方も、楽しみに2019年12月21日(土)の開催日をお待ちください😆

それでは、みなさんからのたくさんの応募をお待ちしていまーす!

第1回ミートアップに関する情報あれこれ

2019年3月に開催した第1回ミートアップに関してはこちらの情報を参照してください。

blog.jnito.com
magazine.rubyist.net

BOOTH動画の売上金の一部を京アニと佐賀県と千葉県に寄付しました

はじめに:動画のご購入、ありがとうございました!

このブログでも以前お伝えしたとおり、先日、「プログラマがコードを書きながら考えること 〜動画でわかるWebクローラー開発〜」という動画をBOOTHで販売開始しました。

jnito.booth.pm

blog.jnito.com

こちらの動画は、この1週間でたくさんの方々に購入していただきました。
中にはブースト機能を使って購入金額を上乗せしてくださった購入者の方もいました。
購入してくださったみなさん、どうもありがとうございました!(ちなみに現在も販売中です)

売上金の一部を寄付することにしました

で、もともとは普通に僕個人の収益にさせてもらう予定だったのですが、思いがけない臨時収入になったこともあって、売上金の一部を寄付することを思いつきました。

あまり大きな額ではありませんが、今回は以下の3つの団体・自治体にそれぞれ5000円ずつ寄付させてもらいました。

  • 株式会社京都アニメーション 支援金(リンク
  • 令和元年8月 佐賀県豪雨災害 義援金(リンク
  • 令和元年 千葉県台風15号 義援金(リンク

f:id:JunichiIto:20190917084842p:plain:w450
f:id:JunichiIto:20190917084854p:plain:w450
f:id:JunichiIto:20190917084905p:plain:w450

いずれの事件・災害も突然の災難で、当事者の方々のお気持ちを想像すると、非常にいたたまれません。
被害全体の大きさと比較したら本当に微々たる金額ですが、何もしないよりはと思い、支援金・義援金を寄付させてもらいました。
少しでも何かのお役に立てば幸いです。


追記:僕の気持ちをもう少し詳しく書くとこんな感じです↓

【書評】「レガシーコードからの脱却」の9つのプラクティスは圧倒的に正しい(経験者談)

はじめに

株式会社アトラクタの原田騎郎さん(@haradakiro)から、書籍「レガシーコードからの脱却」をご恵贈いただきました。(どうもありがとうございます!)

f:id:JunichiIto:20190913074209j:plain

せっかくいただいた本なので、本書を読んだ僕の感想を書いてみようと思います。

どんな本なの?

端的に言うと、「初めからレガシーコードを作りださないための9つのプラクティスを説明した本」となります。

最初にタイトルを見たときの印象は「今そこにあるレガシーコードを、どうやってイケてるコードに書き直していくのか?」を説明した本なのかなと思ったんですが、本書が主眼としているのは「そもそもレガシーコードを作らないこと」でした。

ですので、「レガシーコード改善ガイド」とは毛色が違う本だと考えた方が良さそうです。
(「レガシーコード改善ガイド」は、「今そこにあるレガシーコードを改善する方法」を解説した本です)

レガシーコード改善ガイド (Object Oriented SELECTION)

レガシーコード改善ガイド (Object Oriented SELECTION)

  • 作者: マイケル・C・フェザーズ,ウルシステムズ株式会社,平澤章,越智典子,稲葉信之,田村友彦,小堀真義
  • 出版社/メーカー: 翔泳社
  • 発売日: 2009/07/14
  • メディア: 大型本
  • 購入: 45人 クリック: 673回
  • この商品を含むブログ (157件) を見る

ちなみに、原著のタイトルは "Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software"です。

Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software

Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software

本書におけるレガシーコードの定義

「レガシーコードって何?」という人のために簡単に説明しておくと、本書におけるレガシーコードとは「修正や拡張、作業が難しいコード」(訳者まえがきより抜粋)のことです。

ポジティブかネガティブかでいうと、明らかにネガティブな意味です。
「弊社にはレガシーコードがたくさんあります」とのたまう人がいたら、その会社はちょっと大変な状況であることが疑われるので注意しましょう。

本書が提示する9つのプラクティス

本書は「ソフトウェアの寿命を延ばし価値を高める9つのプラクティス」として、以下のプラクティスを掲げています。

  1. やり方より先に目的、理由、誰のためかを伝える
  2. 小さなバッチで作る
  3. 継続的に統合する
  4. 協力しあう
  5. 「CLEAN」コードを作る
  6. まずテストを書く
  7. テストでふるまいを明示する
  8. 設計は最後に行う
  9. レガシーコードをリファクタリングする

それぞれの具体的な内容についてはここには書きません。
本書を購入してご自身でチェックしてみてください😉

レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス

レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス

  • 作者: David Scott Bernstein,吉羽龍太郎,永瀬美穂,原田騎郎,有野雅士
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2019/09/19
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る

正直に言うと、あまり目新しい内容はなかった・・・が!

さて、ここから下は僕の感想です。

本書をひと通り読んだあとの感想は、「うーん、あまり目新しい内容はなかったな🤔」でした。

ネガティブですよね?disってるように聞こえますよね??

いや、でも違うんです!

なんで目新しい内容がなかったのかというと、この本に書かれているほぼすべてのプラクティスが今僕が勤めているソニックガーデンで実践できていたからです。
そして、ソニックガーデンにはレガシーコードがありません。
かれこれソニックガーデンで7〜8年働いてきましたが、「うわー、これはないわー。まさにレガシーコードだわー」と思ったことは一度もないのです。

反対に、僕が以前勤めていた前職や前々職の会社では「勘弁してくれよ〜、まったく!」とうんざりするようなレガシーコードを何度も見てきました。
そうした職場では本書に書かれているプラクティスがほとんど実践されていませんでした。

このことから何が言えるのか?

これはつまり、「本書に書かれている内容は圧倒的に正しい」ということです。

本書で紹介されている9つのプラクティスを実践していけば、確実にレガシーコードから脱却できます。
これは僕自身の経験と照らし合わせて断言することができます。

では、どうやって実践するのか?(要検討)

本書に書かれている内容が正しいことはわかりました。
でも、もしこのブログを読んでいるみなさんが、「今の職場では全然実践できていない!なんとかしたい!」と思ったときはどうすればいいのでしょうか?

残念ながら、その答えは本書には載っていません。(もし僕が見落としているだけだったらすいません💧)

僕もSIerで働いていた経験があるので予想が付くのですが、「ウォーターフォール型かつ、多重下請けかつ、納品型の受託開発」をやっていたりすると、ビジネスモデル上の制約や会社の力関係等があるために、こうしたプラクティスを一(いち)開発者の意見で導入するのはほぼ不可能だと思います。

また、そうした開発スタイルではなくても、同僚にあまり向上心がなかったり、上司がまったく理解してくれなかったりすると、自分のやる気だけが空回りして疲弊することもよくあります。(こちらも経験あり)

じゃあ、僕自身はどうしたのかというと、今の職場を変えることは諦めて転職しました。
その転職先が今僕が働いているソニックガーデンです。
前述の通り、ソニックガーデンに入ってからは本書に書かれているような理想的な環境を手に入れることができたので、僕にとっては「転職する」という選択肢は正解だったと思います。

では、みなさんだったらどうしますか?
これはみなさん自身の宿題なので、自分の頭でよ〜く考えてみてください。

「9つのプラクティス」は転職活動するときにも役立つかもしれない

もしあなたがよりよい環境を求めて転職しようと思った場合は、本書の「9つのプラクティス」が役に立つかもしれません。
なぜなら、面接官から「何か質問はありませんか?」と聞かれたときに、9つのプラクティスで書かれていることをベースに「◯◯はどうされていますか?」とか「◯◯は実践されていますか?」と尋ねれば、その現場のレガシーコード具合が予測できそうだからです。

これから転職しようとしている方は、本書を読んで質問リストをあらかじめ作っておきましょう👍

その他の感想:翻訳が非常に読みやすい!(重要)

本書の内容とは直接関係がありませんが、本書を読んでいる最中、僕は翻訳が非常に読みやすいところに密かに感銘を受けていました。

訳書ってたまに翻訳がめちゃくちゃ読みづらいことがあるんですよね。
過去に読んだ訳書の中には、いくら翻訳を読んでも内容が頭に入ってこないので、「もはや原著を買って英語で読んだ方が良いのでは?」と思ったものもあります。

その一方で、僕自身が英語の技術書を日本語訳したことがあります。
(「Everyday Rails - RSpecによるRailsテスト入門」という電子書籍です ↓ )
leanpub.com

実際に翻訳をやってみると、これがめちゃくちゃ難しいんですよね〜。
英文の構造や言い回しって、日本語と大きく異なる部分が多々あるので、素直に翻訳すればするほど「読みにくい日本語」が量産されていくんです。
Everyday Railsの翻訳をするときも「翻訳臭」を消すのにすごく苦労しました。

そういった「読む側」と「翻訳する側」の両方の経験がある僕からすると、本書「レガシーコードからの脱却」の翻訳は非常に高レベルだと思います。
訳書臭がまったくしないので、すらすら読むことができました。

なので、本書を読むときはそういった翻訳の自然さ、滑らかさにも注目して読んでみてください!

まとめ

というわけで、このエントリでは書籍「レガシーコードからの脱却」の書評を書いてみました。
本書の感想は次のように大きく2つに分かれると思います。

まず、僕のように、本書を読んで「あまり新しいことが載ってないなー」と思ったそこのあなた!
あなたはきっと幸せな環境で開発ができている人です。(良かったですね😄)

反対に「へー、こんなやり方があるのか」とか「これは実践できてないな」と思ったそこのあなた!
あなたは今から何かアクションを起こすときなのかもしれません。

自分が置かれている状況を判定する「リトマス紙」として、ぜひ「レガシーコードからの脱却」を読んでみてください。

レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス

レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス

  • 作者: David Scott Bernstein,吉羽龍太郎,永瀬美穂,原田騎郎,有野雅士
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2019/09/19
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る

あわせて読みたい

我田引水になってしまいますが、弊社ソニックガーデンの働き方を紹介した本がいくつか発売されています。
ソニックガーデンは受託開発をやっているのに、なぜレガシーコードが生まれないのか?
その答えを知りたい方はこちらの書籍も読んでみてください。

ザッソウ 結果を出すチームの習慣 ホウレンソウに代わる「雑談+相談」

ザッソウ 結果を出すチームの習慣 ホウレンソウに代わる「雑談+相談」

管理ゼロで成果はあがる ~「見直す・なくす・やめる」で組織を変えよう

管理ゼロで成果はあがる ~「見直す・なくす・やめる」で組織を変えよう

リモートチームでうまくいく

リモートチームでうまくいく

「納品」をなくせばうまくいく

「納品」をなくせばうまくいく