タグ

ブックマーク / blog.jnito.com (20)

  • 「ITエンジニア、包丁研ぎにハマる」の巻 - give IT a try

    はじめに:包丁が切れない! 僕は全然料理をしない(できない)んですが、料理が大好きです。 しかし、包丁が切れないことに不満を持っていて、「包丁が切れない、新しい包丁が欲しい」とずっと嘆いていました。 もちろん、毎日使う道具なので新しい包丁を買うことぐらいは全然構わないのですが、新しい包丁を買う以外に、「包丁を自分で研ぐ」という選択肢もあります。 いや、いちおう簡易シャープナーはあるんですよ。こんなやつが。 グローバル スピードシャープナー GSS-01 グローバル(Global)Amazon しかし、曰く「シャープナーを使っても翌日には切れ味が落ちる」とのことです。 なので、シャープナーではなく、ダメ元でいいから砥石を使ってちゃんと自分で一度研いでみよう、という話になりました。 よし、YouTubeで勉強だ! 砥石で包丁なんて一度も研いだことがないのですが、とりあえずYouTubeで

    「ITエンジニア、包丁研ぎにハマる」の巻 - give IT a try
    hachi
    hachi 2023/10/30
  • 書き手の意図やコードの背景を残す方法のあれこれ −きれいなコードの次に意識すべきこと− - give IT a try

    はじめに 先日、こんなエントリを書きました。 blog.jnito.com 上の記事の中で、僕は「きれいなコードだけではすんなりコードが理解できないこともある」というような話を書きました。 もちろん、ある程度の規模になってくるといくらがんばっても「すんなり」では済まない場合も増えてくるけど、それでも最初に挙げた特徴を兼ね備えたコードとそうでないコードでは、開発効率に雲泥の差が出てくる。 僕が考える「良いコード」 - give IT a try きれいなコードを書くことはいつでも大事ですが、きれいなコード「だけ」では大きなコードを理解するのは難しいです。 そこできれいなコードを書くことに加えて、僕が意識しているコードを理解しやすくする工夫について書いてみようと思います。 ただし、ここで書く内容はあくまで僕が普段心がけていることです。 現場の文化やコードの規模や歴史、開発チームのスキルや人数、

    書き手の意図やコードの背景を残す方法のあれこれ −きれいなコードの次に意識すべきこと− - give IT a try
    hachi
    hachi 2023/07/16
  • 雑に作って、それから作り込んで、最後にテストを書く「テストラスト」開発 - give IT a try

    (この話は最初Twitterに書こうと思ったけど、長くなるのでブログに書くことにしました) 僕はRSpecやMinitestでテストを書くのは得意ですが、常にテストファースト(TDD)で開発するとは限りません。 今業務でやってるタスクはこんなふうに進めてます。 雑に動くものを作る ↓ 見た目をきれいにする&機能を作り込む ↓ テストを書く ↓ リファクタリングする この順番で開発する理由を以下に述べます。 雑に動くものを最初に作る理由 最初は見た目とか、異常系とか、細かい仕様とかを無視して、正常系が一通り動くものを作ります。 これはこれから作ろうとしているものの認識が合っているかどうかをPO(プロダクトオーナー)に確認するためです。 実際に動く画面を見せると「こんな感じでOK」とか「ここはこういうふうにしたい」というフィードバックをもらうことができます。 また、開発者としてもコードを書きな

    雑に作って、それから作り込んで、最後にテストを書く「テストラスト」開発 - give IT a try
    hachi
    hachi 2023/02/17
  • 昨今の「未経験からエンジニア就職!」みたいなトレンドに対して業界歴20年の僕が考えていること - give IT a try

    このブログ記事は動画バージョンがあります。動画で見たい方はこちらをどうぞ↓ www.youtube.com ちょっと前から「もやもや〜」と考えてることなんですが。 なんかここ数年、急にプログラマ(エンジニアと言われることが多いけど)の仕事が脚光を浴び始めた気がします。 「3K(笑)」から「お給料が良くて、自由に働ける、イケてる職業」に!? 僕がこの仕事を始めた頃(20年前)とか、ソニックガーデンに入社した頃(10年前)はまだ「プログラマ?おたくっぽい」「あー、3Kでしょ?きつい、帰れない、給料安いw」みたいな扱いだった気がします。少なくとも日においては。 ところが、この5〜6年で急に「お給料が良くて、自由に働ける、イケてる職業」みたいなイメージに変わってきたんですよね。 それ自体はとてもいいことだと思うんですよ。自分の仕事が「3K(笑)」と馬鹿にされるより、「お給料がいい!自由!イケてる

    昨今の「未経験からエンジニア就職!」みたいなトレンドに対して業界歴20年の僕が考えていること - give IT a try
    hachi
    hachi 2022/12/09
  • マトリョーシカ人形のようなメソッド設計を避ける - give IT a try

    フィヨルドブートキャンプのコードレビューでよく指摘してるシリーズです。 次のようなパンを焼くRubyプログラムがあります。 このプログラムはどういう工程を経てパンが焼かれるのか、ぱっと把握できますか? def main パンを焼く(粉, 水) end def パンを焼く(粉, 水) 焼く(パンを発酵させる(粉, 水)) end def パンを発酵させる(粉, 水) 発酵させる(パンを整形する(粉, 水)) end def パンを整形する(粉, 水) 整形する(パンをこねる(粉, 水)) end def パンをこねる(粉, 水) こねる(粉, 水) end main 上のプログラムは次のように書いても同じように処理されますが、工程の全体像がつかみやすいのはどちらでしょうか? def main 生地 = パンをこねる(粉, 水) 整形された生地 = パンを整形する(生地) 発酵した生地 = パ

    マトリョーシカ人形のようなメソッド設計を避ける - give IT a try
    hachi
    hachi 2022/12/01
  • 技術書にありがちな「IT技術は変化するけど、紙の本は更新できない問題」について僕なりの創意工夫を話してきました #DevReljp - give IT a try

    先日のブログでもお伝えしたとおり、「DevRel Meetup in Tokyo #78 〜商業技術書出版を学ぼう〜」という勉強会で「出版したら終わり、にしない技術書執筆」という発表をしてきました。 devrel.connpass.com 当日使ったスライドはこちらです。 どんなことをしゃべったの? 発表の概要はこんな感じです。 内容を随時更新できない紙のと変化の速いIT技術はどうしても相性が悪い 相性の悪さは受け入れた上で、筆者が積極的に読者をサポートする 変化の速い技術は紙のではなく、電子書籍のみとするのも一手 拙著「プロを目指す人のためのRuby入門」の話題を中心に話しつつ、僕がなぜRailsではなくRubyを書いたのかとか、電子書籍オンリーで販売している「Everyday Rails - RSpecによるRailsテスト入門」と紙のの棲み分けについてどう考えているのか

    技術書にありがちな「IT技術は変化するけど、紙の本は更新できない問題」について僕なりの創意工夫を話してきました #DevReljp - give IT a try
    hachi
    hachi 2022/09/08
  • Ruby 3.0に完全対応、だけじゃない!?改訂2版「プロを目指す人のためのRuby入門」が発売されました🍒 - give IT a try

    はじめに 以前からこのブログでもお伝えしてきたとおり、拙著「プロを目指す人のためのRuby入門(通称チェリー)」の改訂2版が日2021年12月2日に発売されました🎉 改訂2版では表紙のさくらんぼの数が1個から2個に増えているのがポイントです。「改訂2版だから、さくらんぼが2つ」と覚えてください🍒 Amazonでは昨日から購入可能になっているようです。 プロを目指す人のためのRuby入門[改訂2版] 言語仕様からテスト駆動開発・デバッグ技法まで Software Design plus 作者:伊藤 淳一技術評論社Amazon 書店の入荷は発売日から数日遅れることがあります 書店の場合は発売日から数日遅れて入荷されることがあるので、「あれ、もしかしてこの店には入ってこないのかな?」と思った人も諦めずに店員さんに入荷予定を聞いてみてください。 ちなみにhontoというサイトを利用すると、

    Ruby 3.0に完全対応、だけじゃない!?改訂2版「プロを目指す人のためのRuby入門」が発売されました🍒 - give IT a try
    hachi
    hachi 2021/12/02
  • 「Kaigi on Rails _2021_ new」のスペシャルコラボ座談会に登壇します! - give IT a try

    お知らせです。Kaigi on Rails 2021のプレイベント、「Kaigi on Rails _2021_ new」のスペシャルコラボ座談会に登壇します! 10/10(日)14:00~16:00に、プレイベント「Kaigi on Rails _2021_ new」を開催いたします🎉 今年は@igaiga555さん・@jnchitoさん・@yasulabさんのスペシャルコラボ座談会と、LT会を企画しています! LT枠(先着)と併せて、皆さまのご参加登録お待ちしております!https://t.co/9G0TNWSHoc#kaigionrails— Kaigi on Rails (@kaigionrails) 2021年9月20日 上のツイートにもあるとおり、「Ruby超入門」の著者・五十嵐邦明さんと、Railsチュートリアルの運営でお馴染みの安川要平さんも一緒に登壇されます。 トークテ

    「Kaigi on Rails _2021_ new」のスペシャルコラボ座談会に登壇します! - give IT a try
    hachi
    hachi 2021/10/04
  • 年内に発売?改訂版「プロを目指す人のためのRuby入門」を制作しています! - give IT a try

    お知らせ 現在、「プロを目指す人のためのRuby入門(通称・チェリー)」の改訂版を制作中です。発売時期はまだ確定していませんが、年内の発売を目標に作業を進めています。順調にいけば12月のはじめぐらいには発売できるかもしれません。 現在発売中の「プロを目指す人のためのRuby入門」の第1版は2017年11月の発売なので、4年ぶりの改訂ということになります。 追記:発売日は2021年12月2日に決定しました 上で「順調にいけば12月のはじめぐらいには発売できるかもしれません」と書きましたが、発売には2021年12月2日に決定しました!Amazonにも販売ページができていて予約できるようになっています。 プロを目指す人のためのRuby入門[改訂2版] 言語仕様からテスト駆動開発・デバッグ技法まで Software Design plus 作者:伊藤 淳一技術評論社Amazon で、どこがどう新

    年内に発売?改訂版「プロを目指す人のためのRuby入門」を制作しています! - give IT a try
    hachi
    hachi 2021/09/07
  • 外資系企業で学んだ「何が起こりますか?対象者は誰ですか?何をしなければなりませんか?」スタイルのアナウンスメール - give IT a try

    はじめに 僕の前職は外資系企業でした。 その当時、アメリカ社からときどき送られてきた社内アナウンスメールのフォーマットがなかなか良かったので、今でもときどき使っています。 特に、このフォーマットは何かをお知らせするだけでなく、社員に何かしらのアクションをお願いするときに有用です。 というわけで、このエントリではこのメールフォーマット(記述スタイル)を紹介します。 「何が起こりますか?対象者は誰ですか?何をしなければなりませんか?」スタイルのアナウンスメールの記述例 どんなフォーマットなのかというと、「何が起こりますか?対象者は誰ですか?何をしなければなりませんか?」を見出しに書いて、文を埋めていくフォーマットです。 たとえばこんな感じです。 社員各位 ○○○○○の計画メンテナンスについてお知らせします。 以下の内容を確認してください。 何が起こりますか? 2020年1月11日(土)15

    外資系企業で学んだ「何が起こりますか?対象者は誰ですか?何をしなければなりませんか?」スタイルのアナウンスメール - give IT a try
    hachi
    hachi 2021/08/11
  • 【アウトライン版】サンプルコードでわかる!Ruby 3.0の主な新機能と変更点 - give IT a try

    お知らせ 毎年恒例の(?)Rubyの新機能解説記事を公開しました。 型チェックについてまとめたPart 1と、それ以外の新機能についてまとめたPart 2があります。 qiita.com zenn.dev お気づきかもしれませんが、Part 2はQiitaではなくZennを使って書きました。 その理由は読者の方が記事に対してお金を振り込めるからです!・・・といっても僕がそのお金を独り占めするわけではありません。 2021年1月31日までに集まったお金Rubyの普及と発展のためにRubyアソシエーションに寄付する予定です。 また、こういった技術記事に対して、どれくらいの人が対価を支払う意思があるのかという、調査・実験の目的も兼ねています。 そんなわけで、上記の記事が良かった、役に立った、と思った人はぜひサポート(対価)の支払いをお願いします🙏 さて、それはそれとして、今回書いた記事はどち

    【アウトライン版】サンプルコードでわかる!Ruby 3.0の主な新機能と変更点 - give IT a try
    hachi
    hachi 2020/12/25
  • Rubyプログラマが勢いで仕事用のMacをBig Surにアップグレードしてみた - give IT a try

    ぼちぼちBig Surにアップグレードしてみようかな、どうしようかな、大丈夫かな、とお悩み中...。Rubyをメインに使ってる人で「やってみたよ」という方がいたら教えてください〜 🙏— Junichi Ito (伊藤淳一) (@jnchito) 2020年11月28日 ↑昨日こんなツイートをしてみたんですが、なぜか「さっさとBig Surに上げてしまいたい!」という欲求が勝ってしまい、勢いでBig Surにアップグレードしてみました。 自分が人柱になってみたので、人柱情報を書いてみます。 ちなみに、結論から先に書くと、今のところBig Surにアップグレードしたことによる致命的な問題はありません。(注:アップグレードして3時間後の感想です) 事前の情報収集 Big Surに上げたい!といっても、何も考え無しにアップグレードしたわけではありません。 いちおう、情報収集はしておきました。 会

    Rubyプログラマが勢いで仕事用のMacをBig Surにアップグレードしてみた - give IT a try
    hachi
    hachi 2020/12/03
  • 25歳から5年刻みで自分の健康がどう変わってきたのかをまとめてみる - give IT a try

    はじめに 以前、健康に関するこんなツイートをしました。 25歳ぐらいまでは「(健康面において)自分は(何もしなくても)無敵」だと思っていたけど、25を過ぎるとだんだんと「あれ?こんなはずじゃ??」と思うところ(今までのようにいかないところ)が増えてくるんだよな〜。って、話し始めるとブログ1書けちゃうのでストップ。— Junichi Ito (伊藤淳一) (@jnchito) January 24, 2020 健康っていうネタで1ブログが書けそう、ってツイートしたので、今回ちょっとブログを書いてみようと思います。 僕は今年で43歳になるのですが、年を取るにつれて「健康維持って大事だよな、そして大変だよな」という思いが強くなってきています。 具体的にどういった点でそう思うのか、25歳から5年刻みで健康について僕が感じてきたことを簡単にまとめてみようと思います。 【もくじ】 はじめに 25歳

    25歳から5年刻みで自分の健康がどう変わってきたのかをまとめてみる - give IT a try
    hachi
    hachi 2020/11/18
  • 【Ruby初心者向け】伊藤さんってなんでそんなにRubyについて物知りなんですか?への回答 - give IT a try

    はじめに 僕はフィヨルドブートキャンプでメンターをやっています。 その一環として生徒さんが書いたRubyのコードをレビューすることもよくあります。 そんなとき「そこはこんなメソッドが使えますよ」「こう書いた方がシンプルですよ」みたいなコメントを入れると、「なんでそんなにたくさんメソッドを知ってるんですか?」「どうしたら豊富な知識を身につけられるんですか?」という返事が返ってくることがあります。 このエントリではその質問に対する回答をあれこれ書いてみようと思います。 【もくじ】 はじめに 前提として 仕事で毎日コードを書いてるから(コードを書いてる時間が長いから) とことんリファクタリングする リファクタリングに欠かせない、テストコードとgit コードレビューしてもらう / コードレビューする モブプロやペアプロをする 人に教える コラム:自分で自分好みの勉強会を主催してみる 情報をインプッ

    【Ruby初心者向け】伊藤さんってなんでそんなにRubyについて物知りなんですか?への回答 - give IT a try
    hachi
    hachi 2020/08/25
  • 【告知】「Qiita夏祭り2020 オンライン」でQiita運営に突撃してきます!(2020年7月22日・水) - give IT a try

    お知らせ 2020年7月22日(水)に開催される「Qiita夏祭り2020 オンライン」というライブ配信イベントのパネルディスカッションに参加させてもらうことになりました。 connpass.com イベントの概要は以下のとおりです。 開催日:2020年7月22日(水) 時間: 18:00〜19:30 主催:Increments株式会社 場所:Zoomにてオンライン配信 参加費:無料 パネルディスカッションは18:25-19:00に開催される予定です。 このディスカッションには僕だけでなく、Qiitaの上位コントリビューターである広木 大地さんやsuinさんも一緒に参加されます。 左から広木大地さん、suinさん、伊藤淳一 パネルディスカッションでは何を話すの? リハ無しのぶっつけ番でやるので、どんな話が飛び出すのかはわかりませんが、いちおう以下のようなテーマが用意されています。 近頃の

    【告知】「Qiita夏祭り2020 オンライン」でQiita運営に突撃してきます!(2020年7月22日・水) - give IT a try
    hachi
    hachi 2020/07/14
  • 【JS完全に理解した】JavaScript PrimerとプログラミングTypeScriptとレガシーフロントエンド安全改善ガイドを読んでみた - give IT a try

    はじめに 僕は仕事Ruby on Railsを使ってWebアプリケーションを開発しているので、JavaScriptはそれなりに使えます。 ですが、サーバーサイドで使っているRubyに比べると、JavaScriptの習熟度はそれほど高くありません。 とくに、文法が一気にブラッシュアップされたES2015(ES6)以降の知識は「なんとなく把握はしているが、あくまでなんとなく」といった感じです。 また、最近よく名前を聞くようになったTypeScriptも「名前は知っているが使ったことはない」というのが現状です。 というわけで、「そろそろちゃんと勉強しておかないと」という思いから、以下のを購入してみました。 JavaScript Primer 迷わないための入門書 (アスキードワンゴ) 作者:azu,Suguru Inatomi発売日: 2020/06/10メディア: Kindle版プログラミ

    【JS完全に理解した】JavaScript PrimerとプログラミングTypeScriptとレガシーフロントエンド安全改善ガイドを読んでみた - give IT a try
    hachi
    hachi 2020/06/30
  • 予備校で習った「現代文の読解テクニック」を使って、Web記事から「筆者の主張」を抽出してみた - give IT a try

    はじめに 元の記事は削除されてしまったのですが、昨日Qiitaで「Webエンジニア業界に感じた違和感」という記事を読みました。 内容の方は「まあ、言わんとすることはわからなくはない」という感想だったのですが、それ以上に「なんか読みにくい文章だな」「話が右へ左へ大きくブレていて(=褒めたりdisったりを何度も繰り返していて)、結局何が言いたいのかよくわからないな」という印象を強く受けました。 そこで、エントリでは昔僕が予備校で習った「現代文の読解テクニック」を使って、「筆者が主張したい内容」を抽出してみることにします。 予備校で習った「現代文の読解テクニック」とは? 僕が予備校で習った「現代文の読解テクニック」は、ざっくりいうとこんなテクニックです。 「だが」「しかし」など、逆接の接続詞が登場したら、そこから後ろが筆者の主張なので、「だが」「しかし」の前に書いてある内容は無視して良い。 「

    予備校で習った「現代文の読解テクニック」を使って、Web記事から「筆者の主張」を抽出してみた - give IT a try
    hachi
    hachi 2019/12/01
  • 恥ずかしがらずにオープンな場で積極的に質問していきましょう、という話 - give IT a try

    はじめに 先日、Teratailに以下の質問が挙がっているのを見つけました。 Ruby - irbと打つと「can't find gem irb」とエラーが出ます。どうしたらいいでしょうか|teratail 質問の内容は、「rbenvのインストール後、irbを起動しようとするとエラーが出て起動しない」というものです。 質問者の方は拙著「プロを目指す人のためのRuby入門」の学習を進めようとして、この問題に遭遇したそうです。 エラーが出てirbが起動しない、という現象は今まで聞いたことがありません。 irbはRubyが持つ基機能の一つだからです。 原因は僕もはっきりわからなかったのですが、"rbenv-communal-gems"というあまり聞き慣れないrbenvプラグインを使っていたので、もしかしたらこれが原因ではないかと推測しました。 そこで、「もしかすると"rbenv-communa

    恥ずかしがらずにオープンな場で積極的に質問していきましょう、という話 - give IT a try
    hachi
    hachi 2019/07/02
  • 男女の参加バランスが良く、託児室があって、懇親会でぼっちにならないRuby勉強会を開催しました #tokyogirlsrb - give IT a try

    はじめに このブログでも何度か紹介してきた「女性も参加しやすい(でも女性限定ではない)Ruby勉強会」、TokyoGirls.rb Meetupの記念すべき第1回を2019年3月2日に開催しました。 TokyoGirls.rb Meetupを開催しようと思った目的や背景は以前書いたこちらのエントリにまとめてあります。 今回のエントリでは、「男女の参加比率」「無料託児室」「懇親会のぼっち対策」という3つのポイントに注目しながら、当日の様子や運営上の工夫を書いてみたいと思います。 【もくじ】 はじめに ポイントその1. 「男性ばかり」でも「女性ばかり」でもない男女比率になりました 参加者の感想(と僕自身の感想) 男性エンジニアにも何かしらの気づきを与えられる勉強会でした 「自分は男性だし、興味がないなあ」という方も ポイントその2. 無料の臨時託児室を提供しました なかなか大変だった臨時託児室

    男女の参加バランスが良く、託児室があって、懇親会でぼっちにならないRuby勉強会を開催しました #tokyogirlsrb - give IT a try
    hachi
    hachi 2019/03/08
  • そう簡単にブログはバズらない - give IT a try

    はじめに 普段はRubyRails関連の情報発信をしているTechRachoさんのブログに興味深いエントリが出ていました。 ネタ的に「あー、これは僕もひとこと言いたい!」と思ったので、ブログについて僕が普段考えていることをつらつらと書いてみます。 「これ、絶対バズるはず!!」とは僕も毎回思ってるんですよ? 以下はTechRachoさんのブログに載っていた文章の抜粋です。 TechRacho翻訳記事のはてブ100超えがなぜか一週間に2件も出ました。ありがとうございます。 (中略) 「これはイケるぞ」と渾身で出した記事が全然伸びなかったり、まったく期待してなかったのにホッテントリしたり、公開後随分経過してすっかり忘れてしまった頃にどかっと伸びたりと、つくづく水物といいますか、芸能の神であるミューズの女神や弁天様の司る世界であることを日々痛感しています。 あー、わかりますねえ。 そして、僕もや

    そう簡単にブログはバズらない - give IT a try
    hachi
    hachi 2018/04/14
  • 1