タグ

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

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

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

    「ITエンジニア、包丁研ぎにハマる」の巻 - give IT a try
    mas-higa
    mas-higa 2023/10/31
    "翌日には切れ味が落ちる" 職人さんなんかは毎日研いだりするんじゃないの?
  • 大阪Ruby会議03でHotwireを使ったモーダルUIを15分で作ってみました&基調講演裏話 #osrb03 - give IT a try

    はじめに 2023年9月9日に開催された大阪Ruby会議03で、基調講演(キーノート)を担当させてもらいました。 regional.rubykaigi.org 当日使った資料はこちらです。 発表のタイトルは"Enjoy Ruby programming, Enjoy Ruby community!"でした。 今回の基調講演ではちょっと攻めた取り組みとして、「Hotwireを使ったモーダルUIを15分で作る」というテーマでライブコーディングもしてみました。 www.youtube.com ライブコーディングには思わぬトラブル付きものですが、今回は何とかノートラブルで実装できました! 時間も15分以内(たぶん12〜13分ぐらい?)に収まりました〜😄 基調講演をするにあたって意識したこと 今回、基調講演を担当するにあたって「IT系カンファレンスの基調講演はどういうものであるべきか」を自分なりに

    大阪Ruby会議03でHotwireを使ったモーダルUIを15分で作ってみました&基調講演裏話 #osrb03 - give IT a try
  • 僕たちは本当のSQLite3を何も知らない(柔軟なデータ型と外部キー制約の罠について) - give IT a try

    「えっ、SQLite3ってこんな仕様なの!?」と最近ビックリしたことを紹介します。 たとえばこんな2つのテーブルがあったとします。 CREATE TABLE blogs ( id int primary key, title varchar(32) ); CREATE TABLE comments ( id int primary key, content varchar(32), blog_id int, foreign key (blog_id) references blogs(id) ); ポイントはcommentsテーブルのblog_idにはblogs(id)への外部キー制約が貼ってあることです。 もちろん、blog_idもblogs(id)も、どちらもint型です。 で、以下のようなSQLを発行します(blog_idの値に注目)。 -- blogsにデータを追加 INSERT

    僕たちは本当のSQLite3を何も知らない(柔軟なデータ型と外部キー制約の罠について) - give IT a try
  • 過度なDRYは読みやすさの敵!?「リーダブルテストコード」という発表をしました #vstat - give IT a try

    先日、このブログでもお伝えしましたが、「VeriServe Test Automation Talk No.3」というオンラインイベントで登壇してきました。 veriserve-event.connpass.com 申込者数はなんと1000人を超えていて、大変驚きました。 僕は「リーダブルテストコード」というテーマで発表しました。スライドはこちらです。 Twitterでたくさんシェアされたり、はてなブックマークがたくさん付いたり、こちらもすごい反響でビックリしました。 で、どんな内容だったの? ひとことで言うなら「テストコードを徹底的にDRYにしようとしちゃダメよ!」というお話です。 このネタは昔からQiitaやTwitterとかでことあるごとに話してきましたが、この勉強会であらためてなぜダメなのか、DRYに書かず、どう書くべきなのか、という話を力説してみました。 優秀なプログラマほど、「

    過度なDRYは読みやすさの敵!?「リーダブルテストコード」という発表をしました #vstat - give IT a try
  • 技術書にありがちな「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
  • 僕がRSpecでsubjectを使わない理由 - give IT a try

    はじめに 僕は折に触れて「RSpecではなるべくsubjectを使わない方がいい」という発言をしています。 Qiitaとか見てるとRSpecのsubjectを愛用している人が多そうな印象なんだけど、僕はほとんど使っていません。「subjectは原則使わない。明らかにメリットがあるときにだけ例外的に使用する」が僕のポリシーです。ほら、RSpecの(元)メンテナさんもそう言ってるし。 https://t.co/Rp5EiIxCVb #Qiita pic.twitter.com/pMlN35ihEG— Junichi Ito (伊藤淳一) (@jnchito) 2019年5月28日 そもそもの話として、RSpecではsubjectは無理に使わない、というのが僕の持論です。なぜなら無理にを使うと、いびつなテストコードができやすいから。基はsubjectなしで書く。明らかにsubjectが有効なと

    僕がRSpecでsubjectを使わない理由 - give IT a try
  • プログラミング初心者は変数名やメソッド名を略さない方がいいよ、という話 - give IT a try

    今回のエントリでは先日、僕が勤めているソニックガーデンで話題になったプログラミング関連の小ネタを書きます。 それは何かというと、「プログラミング初心者は変数名やメソッド名を略さない方がいい」という話です。 長い変数名やメソッド名はつい略したくなります。 実際、僕も長い名前を略すときはよくあります。 ですが、略称を使うのは長年の経験から「この略称は一般的だから誤解を招くことはきっと少ないだろう」とか「前後の文脈から、変数の中身は誰が見ても明らかだろう」という想像が付いた場合だけです。 一方、プログラミング初心者の人は経験が浅いため、「一般的かどうか」とか、「誤解が発生しないかどうか」といった判断ができません。 そのため、他の人が見たときに「え、何この変数名?」と思ってしまうような略称を付けてしまう恐れがあります。 たとえば、先日のコードレビューで、初心者の人がrev_noという名前の変数を定

    プログラミング初心者は変数名やメソッド名を略さない方がいいよ、という話 - give IT a try
    mas-higa
    mas-higa 2020/10/21
    省略するのは、プログラムの構造を把握しやすくするためです。1行がやたら長いと何かがスクロールの先に隠れていたり、全画面に広げると他の情報が見えなくなったり、それを避けるために不要な折り返しを…
  • 技術書、紙の本で読むか、電子書籍で読むか? - give IT a try

    Twitterに書こうかと思ったけど、明らかに字数オーバーするのでブログに書きます。 タイトルの通り、技術書を紙ので読むか、電子書籍で読むか、という話です。 結論からいうと、僕は基的に紙のを選びます。 紙ののメリット3つ(+1つ) 1. 自分にプレッシャーをかけられる 一番の理由は、机の上に置いて「最後まで読め」と自分にプレッシャーをかけられるからです。 上の写真のように、いやでも目に付く場所に常時置いておくことで、思い出す機会や手に取る機会を増やすことができます。 これが電子書籍だと姿形(すがた・かたち)が見えなくなるので、強い意志を持っていないと「積ん読」のまま終わってしまう可能性が高くなります。 参考:ちなみに今読んでいるはこれです↓ プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発 作者:Boris Cherny発売日: 2020

    技術書、紙の本で読むか、電子書籍で読むか? - give IT a try
    mas-higa
    mas-higa 2020/06/12
    ジュンク堂には「読割50」ってのがありまして
  • 【書評】「ソフトウェアテスト技法練習帳」を読んで、体系的なテスト技法の知識を身につけよう - give IT a try

    はじめに 弊社ソニックガーデンの中でも「この、面白そう」と少し話題になった「ソフトウェアテスト技法練習帳」を買って読んでみました。 ソフトウェアテスト技法練習帳 ~知識を経験に変える40問~ 作者:梅津 正洋,竹内 亜未,伊藤 由貴,浦山 さつき,佐々木 千絵美,高橋 理,武田 春恵,根 紀之,藤沢 耕助,真鍋 俊之,山岡 悠,吉田 直史出版社/メーカー: 技術評論社発売日: 2020/01/07メディア: 単行(ソフトカバー) このエントリでは書を読んだ感想をざっくりまとめておきます。 書の概要と目次 最初に、書の概要と目次を技術評論社の書籍ページから引用します。 このの概要 新人や経験の浅いテストエンジニアにとって,座学で学んだ「ソフトウェアテスト技法」を実務に活かそうにも,どのように適用したらよいかわからないというのが悩みです。そこで,書では実践的なシチュエーションを

    【書評】「ソフトウェアテスト技法練習帳」を読んで、体系的なテスト技法の知識を身につけよう - give IT a try
  • Rubyプログラマが中学校で情報モラル講演会をしてきたよ - give IT a try

    はじめに 先日、Rubyプログラマが職である僕が、なぜか地元・兵庫県西脇市の中学校で情報モラル教育に関する講演をしてきました。 このエントリではなんでそんなことになったのか、そしてどんなことを話したのか、といった話を書いていきます。 【もくじ】 はじめに 講演を依頼されたいきさつ 去年の情報モラル講演会は当にひどかった 今年は誰かな〜? → えっ、僕!? 当日使用したスライド この講演で伝えたかったこと 「スマホやSNSは怖い」だけでは終わらせない トラブルに遭遇したら大人に頼る(一人で解決しようとしない) リスクを語るときは、必ず予防策と対処法をセットで伝える テクニカルな解決策(設定の変更等)は重視しない 大人だって失敗したり、ちゃんとできてなかったりすることを伝える 生徒さんたちの感想 その他の裏話等 「経験がない&時間がない」で、かなり準備が大変だった 信頼が置ける専門家の方た

    Rubyプログラマが中学校で情報モラル講演会をしてきたよ - give IT a try
    mas-higa
    mas-higa 2019/07/29
    "「今年はいったい誰が講演するのかな〜?」と思っていたところ、中学校から突然電話が入り「今年は伊藤さんにお願いできないでしょうか?」とお願いされました。" うける
  • 恥ずかしがらずにオープンな場で積極的に質問していきましょう、という話 - 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
    mas-higa
    mas-higa 2019/07/03
    RubyKaigi みたいなデカい場所でもハードル下げるために質問してる熟練者いるな / “運営スタッフも…参加者の心理的安全性を高めるようにした方がいい” なるほど。
  • GitHubのプランを有料(Pro)から無料(Free)にダウングレードする手順 - give IT a try

    はじめに 2019年1月にGitHubのプランが変更され、今まで有料だったプライベートリポジトリも無料で使えるようになりました。 GitHub Free 無料で利用できるプランでも、プライベートリポジトリが利用できるようになりました。プライベートプロジェクトGitHubを利用する開発者は、リポジトリごとに最大3人のコラボレータとの共同作業が可能です。パブリックリポジトリは(もちろん)引き続き無料で、コラボレータの数に制限はありません。 新しい年とともに、新しいGitHub を | The GitHub Blog 今のところ、個人で使用しているリポジトリに関しては1人か2人ぐらいのコラボレータしかいないため、「GitHubさん、どうもありがとう」という思いをこめつつ、月額7ドルの有料プラン(Pro)から無料プラン(Free)にダウングレードすることにしました。 このエントリではその手順を簡

    GitHubのプランを有料(Pro)から無料(Free)にダウングレードする手順 - give IT a try
    mas-higa
    mas-higa 2019/01/11
    [Downgrade to free]という力強いボタンが!
  • ITエンジニアが知っておきたい、軽減税率制度(のイヤなところ) - give IT a try

    はじめに 僕のは兵庫県西脇市で「Coupé Baguette(クープ バゲット)」という小さなパン屋さんを営んでいます。 その関係で、先日国税庁から消費税の軽減税率制度に関するお知らせが届きました。 「軽減税率制度?あ〜、なんかそんな話もあったような」と思いながら資料を読んでみたところ、「げげっ、軽減税率制度ってこんな面倒な仕組みになってたの!?」とビックリしました。 というわけで、このエントリでは軽減税率制度の概要(と、ITエンジニアが困りそうなポイント)をざっくりとまとめてみます。 おことわり 僕自身は税理士のような税金の専門家ではないため、100%正しく理解しているとは限りません。 エントリ内に怪しい内容があればコメント欄等でご指摘いただけると助かります。 国税庁の資料から抜粋した、軽減税率制度の主なポイント 我が家にも届いた「よくわかる消費税軽減税率制度(平成30年7月)」(PD

    ITエンジニアが知っておきたい、軽減税率制度(のイヤなところ) - give IT a try
    mas-higa
    mas-higa 2018/08/22
    同一商品で税率変わるのエグイな…単純な対応表じゃ済まない。何年かしたら品目ごとに税率変わったりしてな……
  • 購入して1ヶ月も経たないうちにGoogle Homeを手放した - give IT a try

    はじめに に誕生日のプレゼントとしてGoogle Homeを買ってもらったんですが、1ヶ月も経たないうちに僕を含めて家族全員が飽きてしまい、全然使わなくなったので、手放すことにしました。 この記事ではGoogle Homeに期待していたことと、そのギャップについてあれこれ書いてみます。 Google Homeに期待していたこと 僕が「へー、Google Homeって面白そう」と興味を持ったのは、この記事を読んだのがきっかけです。 この記事にはまるでSF映画のような、おばあさんとGoogle Homeの交流が描かれています。 この記事を読んで、僕は「Google Homeってこんなにハートフルな会話ができるの!?」と思ってしまいました。 また、僕も音楽好きで普段からよく音楽を聴くので、Google HomeがSpotifyや手持ちのBluetoothスピーカーと連携できる「賢いミュージ

    購入して1ヶ月も経たないうちにGoogle Homeを手放した - give IT a try
    mas-higa
    mas-higa 2018/08/07
    同意しかない
  • Rails Girls Osaka #5 に参加して、女性限定イベントであることの意味を考えた #railsgirlsosaka - give IT a try

    はじめに 2018年6月17日に開催された、Rails Girls Osaka #5にコーチとして参加してきました。 今日はこちらのイベントに参加しております。 #railsgirlsosaka pic.twitter.com/lTEpRha2Bg— Junichi Ito (伊藤淳一) (@jnchito) June 17, 2018 Rails Girlsは以前から興味はあったのですが、参加したのは今回が初めてです。 機会があれば参加したいと思っていたのですが、コーチ枠も結構早く埋まってしまうんですよね。 ですが、今回は「コーチが不足して困っている」という情報を見かけたので、「お、これはチャンス!」と思って参加することにしました。 https://www.facebook.com/RubyKansai/posts/2172675319426147 というわけで、このエントリではRail

    Rails Girls Osaka #5 に参加して、女性限定イベントであることの意味を考えた #railsgirlsosaka - give IT a try
    mas-higa
    mas-higa 2018/06/25
    RailsGirls はお菓子もいっぱいある
  • 【問題提起】篠原嘉一氏に情報教育の講演を依頼する前に考えていただきたいこと ~ITエンジニアから見た、情報教育のあり方について~ - give IT a try

    要約(僕の主張) 篠原嘉一氏の講演内容には、IT関連の知識がない人にはわかりづらいウソや間違い、極論が多く含まれているため、適切な情報教育だとは言いがたい。よって改善を強く希望する。 学校側は「生徒をネットのトラブルから守りたい」という思いが優先されるため、ITエンジニアよりも「情報の正しさ」がないがしろにされてしまうのかもしれない。だが、ITエンジニアとして、そして保護者として、学校は子どもたちに正しい情報を伝える努力をしてほしい。 我々ITエンジニアも情報教育を学校に丸投げするのではなく、正しい知識を伝えるために、主体的に情報教育に協力していく必要がある。 はじめに Image: http://www.mrf-ip.com/blog/0067/ 先日、息子が通っている中学校で開催された情報教育講演会に参加してきました。 これは中学校の全生徒と、任意参加の保護者で、情報教育(主にSNS

    【問題提起】篠原嘉一氏に情報教育の講演を依頼する前に考えていただきたいこと ~ITエンジニアから見た、情報教育のあり方について~ - give IT a try
  • ブログに技術書の内容を丸写しする問題点と、オリジナルなコンテンツを書くためのアイデア - give IT a try

    はじめに 「プロを目指す人のためのRuby入門」を出版して以来、で学んだ内容をブログに載せてくれている方をよく見かけます。 それ自体は著者として大変嬉しいのですが、たまに「ん?これはちょっと・・・」と思うようなブログ記事を見かけるときがあります。 具体的にいうと、の内容を丸写ししているだけのブログ記事です。 このエントリではの丸写しがなぜいけないのか、かわりにどういうブログを書けばいいのか、ということについて書いていきます。 の内容を丸写ししているブログの例 の内容を丸写しをしているブログというのは文字通り「丸写し」しているブログです。 具体的なイメージを共有するために「こんな感じ」という例を載せておきます(特定の誰かのブログを意図しているわけではありません)。 タイトル「第2章 2.2.3 文の区切り」 「プロを目指す人のためのRuby入門」を読んでいるので、勉強した内容をメモ

    ブログに技術書の内容を丸写しする問題点と、オリジナルなコンテンツを書くためのアイデア - give IT a try
    mas-higa
    mas-higa 2018/01/26
    丸写しでも実際に書いてみると覚えることもある。自分はそういのはローカルの html に書いて外には出してない。Spotlight とか WDS で検索できて便利。
  • Ruby関西 勉強会で「プロを目指す人のための例外処理(再)入門」という発表をしてきました #rubykansai - give IT a try

    はじめに 2017年1月13日(土)に開催された第80回 Ruby関西勉強会で「プロを目指す人のための例外処理(再)入門」という発表をしてきました。 会場はすごくきれいで快適な、大阪梅田のグランフロントにあるAimingさんでした。 (どうもありがとうございました!) このエントリでは僕の発表内容と、勉強会中のエピソードを書いていきます。 発表スライド 当日使用した僕の発表スライドはこちらです。 例外処理については過去にいろいろ痛い目に遭わされているのと、間違った使い方をしている初心者さんをよく見かけるので、「お願いだから正しく使って!!」という気持ちでこのスライドを作りました😅 例外処理にまつわる僕の体験談については「当にあった怖い話」としてスライド内で紹介していますw その他にも例外処理のバッドプラクティスやベストプラクティスなど、例外処理を書くときは絶対に押さえておきたいポイント

    Ruby関西 勉強会で「プロを目指す人のための例外処理(再)入門」という発表をしてきました #rubykansai - give IT a try
    mas-higa
    mas-higa 2018/01/16
    まだ書店の担当者と連絡がつかないのですが必ずや…
  • 筆者自らが語る「プロを目指す人のためのRuby入門」のこだわりと見どころ - give IT a try

    このブログでもすでに何度か紹介していますが、いよいよ2017年11月25日に僕が執筆した「プロを目指す人のためのRuby入門」が発売されます。 僕の手元には一足先に見誌が届きました! 表紙は真っ赤なチェリーが目印です。 背表紙もよく目立つ赤色! 写真ではわかりにくいですが、普通の赤色ではなく、少しピンク色がかった個性的な赤色です。 すでに東京都内を中心に、一部の書店では先行発売が始まっています。 ジュンク堂書店 池袋店(池袋) 三省堂書店(神保町) 書泉ブックタワー(秋葉原) 有隣堂 ヨドバシAKIBA店(秋葉原) 紀伊國屋書店 新宿店(新宿) 丸善 丸の内店(丸の内オアゾ) 丸善 ラゾーナ川崎店(川崎市) 書泉ブックタワーでは早くもコンピュータ書のベスト3に入ったらしいです。 (まだ先行発売期間中なのにすごい!) 【書泉ブックタワーコンピュータ書ベスト】11/12-11/18付

    筆者自らが語る「プロを目指す人のためのRuby入門」のこだわりと見どころ - give IT a try
    mas-higa
    mas-higa 2017/11/21
    "Amazonでも予約注文できます" そうすると発売日にリアル書店では平積みされてるのに amazon では品切れしたりする。
  • デザイナさん直伝のCSSテクニックが満載!「RubyistのためのCSS勉強会」を開催しました - give IT a try

    はじめに さる2016年1月9日、西脇.rb&神戸.rbの合同勉強会として「RubyistのためのCSS勉強会」を開催しました。 主催者の僕自身が「参加して良かった!」と思えるぐらい有益な情報がたくさん詰まった勉強会になったので、今回のエントリではこの勉強会の内容を紹介します。 もくじ ちょっと長いので、先に目次を載せておきます。 はじめに もくじ 講師は合同会社フィヨルドの町田さん! この勉強会で講義してもらったテーマ 座学編 Railsの app/assets/stylesheets 内のディレクトリ構成例 最近注目を集めているAtomic Designについて 3種類のリセット系CSSの特徴について 変更に強いマークアップのルールについて プログラマとデザイナの協業について ハンズオン編 進め方の具体例 1問目:グローバルナビゲーションの作成 2問目:アラート画面の作成 3問目:記事

    デザイナさん直伝のCSSテクニックが満載!「RubyistのためのCSS勉強会」を開催しました - give IT a try