chevron_left

メインカテゴリーを選択しなおす

cancel
satoryuの日記 https://satoryu.hatenablog.com/

とあるウェブサービス企業に務めるエンジニアが、勉強したことを忘れないうちに書き残すためのブログ。Ruby、Ruby on Rails、PHP、Laravelやチーム開発のことなどもたまに書いたり、勉強会のレポートや読書の感想を書いたり。

普段、インターネットサービスを開発するSEをしている一姫二太郎の父が、面白そうなものを発掘しては紹介したり、何気ないことを書き込んだりします。

satoryu
フォロー
住所
大田区
出身
花見川区
ブログ村参加

2012/01/15

arrow_drop_down
  • はてなブログからGitHub Pagesに引っ越します。

    特に理由はありませんが、はてなブログからGitHub Pagesへ引っ越すことにしました。 satoryu.github.io 今の所、はてなブログのアカウント自体は消すつもりはありません。 ですが、念の為、ここで書いてきた記事すべてをGitHub Pageへ移行してあります。 移行のために作ったスクリプトを公開しました。 forkしてご自由にお使いください。 github.com

  • スクラムフェス大阪2020でLTセッションを担当した。

    6/26、27に開催されたオンラインカンファレンス「Scrum Fest Osaka」で、ハッカーライフラボとしてLTセッションを担当しました。 confengine.com オンライン開催決定後、ハッカーライフラボを運営している岩切さん*1から 旅するAgile本箱で何か一緒にやりませんか? というお誘いを頂き、今回の企画に至りました。 たしか今年のデブサミの頃からこういうイベントをしたいという話をしていたのですが、具体的にやる機会を今回得られたのでとても良かったです。 旅するAgile本箱は、翔泳社の岩切さんが始めた活動です。 スクラムを実践する人たちが読むと良い本を、実践者の人たちが選ん…

  • 「みんなでアジャイル」を読んだ。

    みんなでアジャイル ―変化に対応できる顧客中心組織のつくりかた作者:Matt LeMay発売日: 2020/03/19メディア: 単行本(ソフトカバー) 開発のプラクティスに特化しているわけではないので、エンジニア以外の人たちでも十分にわかるような内容だと思う。 むしろ、そういった人たちがアジャイル開発というのに関わる場合に始めてに手に取るといいのかな。 「アジャイルって何?」という人にどういうことをやるかという話をしても頭に疑問符が残りそうだ。 そういったときに、この本に書いてあるように「何のために」「なぜやるのか」といった説明があると理解してもらいやすそうだ。 色々プラクティスを試してみて…

  • 「リモートワーク時代のモブプログラミング」勉強会でLTしてきた

    もうそろそろ一週間経ってしまいそうなのですが、「リモートワーク時代のモブプログラミング」という勉強会(?)でLTをしてきました。 最初はただのネタっぽい感じの話にしようかと思っていたのですが、わりと真面目に考えても良い話とも思っています。 このLTをした翌日にSlackがダウンしました。 いくつかの開発の現場ではチームでのコミュニケーションが途絶えたのではないでしょうか。 幸いなことに、短時間であったし、そんなに頻繁に起こることでは無いのかもしれないです。 けれど、zoomなどで常時接続していなければ開発ができない、という状態は問題ないのだろうか。ネットワークが常に安定していることは望ましいけ…

  • 捕捉できなかった例外を勝手にググってくれるUndine をリリースしました

    unsplash-logoFabian Grohs 開発中のコードを試しに実行してみたところ、思いがけない例外が出てしまった。 そういう時はどうするだろうか。 出てきたエラーメッセージを読み、何が原因なのかを探るのではないでしょうか。 自分もgoogleなどで検索して、例外に関するドキュメントを探したりします。 その手間を助けるために、コード内で捉えられなかった例外が出た場合に自動でブラウザを起動してエラーメッセージをキーワードとして検索してくれるgemを作りました。 github.com 使い方 インストール 下記のようにgemコマンドでインストールできます。 gem install und…

  • Typetalkに通知を送るGitHub Actionを作った: Typetalk Notify

    無料プランがあるということでなんとなくTypetalkを使い始めてみた。 Slackなんかと同じようにAPIやWebhookなどがありカスタマイズが可能で、GitHubとの連携もサポートされている。 GitHubと連携することで、ブランチのプッシュ、Issueやプルリクエストの作成・変更が起きる度に通知がTypetalkのトピック(Slackのチャネルに相当)に届くようになる。 しかし、リリースなどどうやらサポートされていないイベントが一部あり、またメッセージをカスタマイズしたいことがある。 ということで、GitHub Actionsを作ってみた。 github.com 使い方 オプションにつ…

  • Rails のGeneratorのデフォルト値はどこから来るのか

    ことの発端 TL;DR 探求編 参照側 設定編 どこでつながるのか ことの発端 Rails のController generator で不要なrouting が書き込まれてしまうので、毎度--skip-routes オプションを付けるようにしている。 けれど、オプションを付け忘れることもあって、面倒なことになることがよくあった。 調べてみると、 config/application.rb などでconfig.generators を以下のように指定することでデフォルトのオプションとして指定できることがわかった。 config.generators do g g.skip_routes =…

  • docx v0.5.0 をリリースした

    Wordなどで作られるOffice Open XMLファイルをRubyで扱うためのライブラリdocx のコミット権を昨年末にもらった。 今の所、既にあるIssueを整理し、既に出ていたプルリクエストをmergeできるものから取り込んでいった。 それらをまとめてv0.5.0としてつい先日リリースしたので、ここで今回のリリース内容を紹介します。 https://github.com/ruby-docx/docx 機能拡張 Added opening streams and outputting to a stream #66 これまではdocx形式のファイルしか扱えなかったのですが、このバージョン…

  • Agile PBL祭りに行ってきた。 #agilepbl

    個人スポンサーとしてエントリーしていたAgile PBL祭りに参加してきた。 agilepbl.com agilepbl.connpass.com 個人スポンサーした経緯についてはこちら。 satoryu.github.io Twitterで一時トレンド入りした #agilepbl のまとめ togetter.com 北は北海道、南は沖縄から、プロジェクトベースドラーニング(PBL)でこの1年間チーム開発をしてきた学生の方々の発表とブースでのデモを拝見させてもらった。 「祭り」という名にふさわしく、ブースの準備段階からすでに賑やかな雰囲気が出ており、「楽しい」雰囲気で会場が終始満ち溢れていたよ…

  • UglifyjsWebpackPluginが非推奨になったので乗り換えた

    Vue.js やらWebpackやらPWAを勉強するために小さいアプリケーションを作っていたのだが、それがいつの日からかリリース時のビルドのみ失敗するようになった。 TL;DR 修正したPull Requestはこちら。 github.com 何に乗り換えるか そもそもUglifyjsWebpackPluginは、2ヶ月ほど前に非推奨(deprecated)になっているのを見つけた。 GitHub - webpack-contrib/uglifyjs-webpack-plugin: [deprecated] UglifyJS Plugin それを継ぐ選択肢として、terserを用いたterse…

  • Azure クラウド基礎講座に参加して、AZ-900を取得した

    今年は、色々と真面目に技術のことを勉強したいと思い、資格試験を受けてみようと思っている。 そこで、以前からMicrosoftさんが頻繁に開催している基礎講座に参加して、AZ-900 Azure Fundamentals を取得しました。 参加するだけで資格受験のための無料バウチャーも貰えるので、費用は完全無料でした。 microsoft-events.connpass.com 基礎講座について これは9時30分から16時ころまでの講義形式のセミナーです。 講師はマイクロソフト社員の方*1。 内容は、もちろん資格試験Azure Fundamentalsをカバーしており、なおかつ試験対策についても…

  • GitHub Sponsors に登録した。

    タイトルの通りGItHub Sponsorsに登録した。 GitHub Sponsorsとは GitHubのスポンサーのことではなく、GitHub上で自身のスポンサーを募ることができるサービスがGitHub Sponsors。 help.github.com スポンサーするにはGitHubアカウントがあればできるが、スポンサーを受けるには審査が必要になる。 特に難しいことはなく、身分証明書と税金の支払いに関する情報を入力し、審査を待つだけだった。 自分の場合、身分証明書には運転免許証を使用した。 米国からの支払いの受け取りになるので、W-8BENという書類を作成しなければいけない。 これもオン…

  • アジャイルレトロスペクティブズを読んだ

    アジャイルレトロスペクティブズ 強いチームを育てる「ふりかえり」の手引き作者:Esther Derby,Diana Larsen出版社/メーカー: オーム社発売日: 2007/09/01メディア: 単行本 自分はふりかえりについてはあんまり手数を持っていない。 KPTやYWTや最近だとFDL*1をやったりなんかしていて、それぞれやっていて意義があるのだがマンネリ感は常に伴うような気がしていた。 この本を開く前に期待していたのは、ふりかえりのやり方の手数が増えることだった。 この本は、ふりかえりのファシリテーターに向けた本である。 ただふりかえりだけではなく、場の設定からクロージングまでのアクテ…

  • Regional Scrum Gathering Tokyo 2020 へ行ってきた。 #RSGT2020

    2014年から参加しているので、もう年初の慣習と化している気がする。 でも、今年は一般参加者として参加する初めてのRSGT2020でした。 2014年はパネリスト、2015年から当日スタッフ、2018年が実行委員、2019年で再度当日スタッフ。 まだやってないのはキーノートくらいか。 セッションの内容とか、冬の寒さをふっとばすような熱いレポートはTwitterからザクザク出てくるので、そちらを探してください。 twitter.com 初日のキーノートは、真面目に前の方の席で参加してみた。 相変わらずのコープ節というか、エンターテイメントというか、表現力が豊かというか 同通レシーバーの使い方や自…

  • Hacktober Fest 2019の Tシャツが届いた。

    毎年恒例のHacktober FestのTシャツが届いた。 昨年はDigitalOceanとDEVが共催していたので、ステッカーがにぎやか。 satoryu.hatenablog.com 今年もちまちまとOSS活動を頑張ります。

  • 2019年振り返り

    2019年の大晦日となりました。 本年もまた関わってくださった皆々様方のおかげで、今このようにして生きていけるのだな、と思い、大変感謝しております。 来年もまた引き続きよろしくお願いいたします。 ここ数日はこの1年に起きたことを思い返すことが多く、簡単に書き残しておきたいと思います。 TL; DR 今年も色々頑張ったし、来年も頑張るぞ! お仕事 今年の1番の出来事はやはり転職でした。 satoryu.hatenablog.com 個人としての転職活動ではなく、チーム転職という方法をとりました。 個人でする転職活動に比べて、同じ立場で意見を交換できる相手がいるというのが一番のメリットじゃないかな…

  • OSS Gater 東京 ワークショップ 12/14 にサポーターとして行ってきた。 #oss_gate

    oss-gate.doorkeeper.jp 今年最後のOSS Gate東京ワークショップにサポーターとして行ってきました。 今回参加のビギナーの方は4名*1。 多様な業界、言語から来るのはいつもどおりですが、普段コードを書くお仕事ではないという方がいたのは印象的でした。 それでも全員フィードバックを送って終えることができました! ビギナーさんから「OSSの貢献ってドキュメントから入っていくのが良いんですね」ということを言われました。 確かにそうではあるんだけれど、それだけじゃないんだよなぁ、という気持ちがあったのだがその時にうまく伝えられなかったのでここに書いてみます。 まず1つに、ワークシ…

  • XML文書からXPathで要素を抜き出すCLIツールを作った

    この記事はRuby Advent Calendar 2019 10日目の記事です。 久しぶりにアドベントカレンダーにエントリーしたので、最近作ってみたいと思った地味なgemを作りました。 TL;DR 作ったものはこちらです。 github.com しかしながらRubygems.orgのMFAで詰まってしまっていて、まだリリースできていません。 もし使う場合は、上のリポジトリをcloneしてgemファイルをビルドし、インストールする必要があります。 動機 お仕事でXMLドキュメントを解析しながらそれを処理する必要がありました。 複雑なXMLドキュメントで、スキーマもいまいちわからないものだったの…

  • マーティ・ケイガン推薦書籍の日本語版を探してみた。 #pmconfjp

    プロダクトマネージャーカンファレンス2019の基調講演は、あのInspiredの原著者マーティ・ケイガンでした。 マネジメントやプロダクトのデザインとかそういう話ではなく、意外とチームや人の話で、とても共感できる部分があったり、とても考えさせられました。 基調講演中、氏が推薦図書を紹介してくれました。 #pmconfjp pic.twitter.com/zGW4bMQxNf— 文 (@wifecooky) November 12, 2019 で、さらっと中身を知りたいと思ったので、日本語版の書籍を探してみました。 一部は翻訳されていませんでしたが、原著はAmazonで購入可能のようです*1。 …

  • 「闇に魅入られた科学者たち」を読んだ。

    闇に魅入られた科学者たち―人体実験は何を生んだのか作者: NHK「フランケンシュタインの誘惑」制作班出版社/メーカー: NHK出版発売日: 2018/03/08メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見る たまたま図書館で見かけたのだけど、科学倫理の話として面白かった。 副題にあるように、犠牲者を出す人体実験を行ってしまった5人の科学者について書かれている。 時代背景などは異なるが、好奇心や国家への忠誠心、理想が生み出されている。 人体実験を行った科学者本人それぞれは、それぞれが従った正義を否定することはないようだ。 本文中にも書いてあるのだが、謝罪することはそれま…

  • エクストリームプログラミングを読んだ。

    エクストリームプログラミング作者: ケントベック,シンシアアンドレス,Kent Beck,Cynthia Andres,角征典出版社/メーカー: オーム社発売日: 2015/06/26メディア: 単行本この商品を含むブログ (6件) を見る 先日参加したXP祭り2019までの予習として読んでいたのだけど、当日までに読み終えることができなかったが、ちまちまと読み進めてやっと読了。 この本を読む前までは、エクストリームプログラミングについては名前しか知らなかった。 本を開くまでは、プラクティスについて記述された本だと思っていた。 10年以上前に学生の時に、ペアプログラミングを同期とやったことはあっ…

  • XP 祭り2019 でLTしてきた #xpjug

    前回行ってきたのが2015年だから4年ぶりにXPに行ってきた。 今回はLT参加でエントリーしてたので、LTしてきた。 この前の週に久しぶりにOSS Gateワークショップにサポーターとして参加してきた。 satoryu.hatenablog.com 2年ぶりの参加だったのだが、ビギナーの方々と話をしてみて感じるところは変わっていなかった。 彼らは「OSS開発者をすごく強大なエンジニア」と想像してしまっていることがある。 このLTで、少しでもそのイメージを払拭して、気軽にプルリクなりバグ報告なりをできるような人が出てくれたら嬉しいな、なんて思ってます。 記念 こんなにRTやファボられたのは滅多に…

  • OSS Gate東京ワークショップ でサポーターとして参加してきた #oss_gate

    oss-gate.doorkeeper.jp いつも行こうとして、なかなか家の都合と合わずにキャンセルばっかりしていたので、本当に久しぶりの参加。久しぶりに会った方々には、「本当に久しぶりですね」と言われるくらい。 今調べてみたら、この前に参加したのは2017年10月のPHPカンファレンスで実施した時以来のようだ。 いつもなら午前から始めるワークショップを今回は午後から始める短縮版としての開催だった。各回ごとに運営としては、集客のための挑戦を1つ入れていて、今回は「午後からなら参加しやすい」という仮説のもとでこうなったようだ。 自分としても午後からの方が家のことを片付けてから来れそうなので、参…

  • rakuten_web_service v1.12 をリリースしました。

    github.com 昨日に2ヶ月ぶりのリリースをしました。 これまでまったく自分が興味を持てなかったIchiba Tag APIに対応させるプルリクエストが送られてきたので、それを取り込んだものが今回のリリース内容です。 github.com 利用する場合は、 gem install rakuten_web_service -v '1.12.0' またbundlerを利用している場合、下記の1行をGemfileに追加してください。 gem 'rakuten_web_service', '~> 1.12.0'

  • TDDワイワイ会に行ってきた #tddyyχ

    今日被ってた予定が台風の影響で中止となったので、当日だったけど参加枠が空いてたのでドタ参してきた。 tddyyx.connpass.com 台風の予報が出ていたけれど無事に開催となって、特に目立った電車の運休などもなかったので15名ほどの参加者がいた。 5名ほどのチームで3チームに分かれ、各チームでcyber-dojoを使い、モブプログラミングとTDDを楽しんだ。 自分が参加したチームは、まず始めにプロジェクタがうまく接続できず、プロジェクタの準備をモブでやった。 他のレンタルのプロジェクタに取り替えてみたり*1、TV会議システムのモニタを拝借しようとしたり*2、最終的に使われてなかった天井付…

  • 「服従の心理」を読んだ

    服従の心理 (河出文庫)作者: スタンレーミルグラム,山形浩生出版社/メーカー: 河出書房新社発売日: 2012/01/07メディア: 文庫購入: 4人 クリック: 16回この商品を含むブログ (29件) を見る 先日参加したアジャイルジャパン新横浜サテライトで視聴した基調講演の中で、この本が取り上げられていた。 どういった文脈でこの本に触れていたのかは記憶があやふやだったのだが、フラットな組織についての文脈だったと思う。 この本は、人が権威に服従する仕組みを調査する実験について、その実験方法から被験者の記録、分析について、実験を主導したミルグラム本人によって書かれたもの。ミルグラム実験がどう…

  • VS Code Recipes でRailsのデバッギング環境を構築してみた

    Microsoft がVisual Studio Codeの設定のレシピをGitHub上に公開している。 その中に、Ruby on Railsのデバッグ環境の構築方法があったので、試しにそれに倣って作ってみた。 github.com やってみた中で、自分なりに置き換えた部分がありました。 デバッグで使うgemをGemfileに追加 デバッグで使用するruby-debug-ide とdebase をGemfile に追加する。 理由としては2つある。 それらのgemがデバッグに必須であるので、Railsアプリケーション開発に必要なものとして必要であることを明示するため。 あとで作成するデバッグの…

  • Agile Japan 2019サテライト 新横浜 に参加してきた。 #agilejapan #デンソー

    Agile Japan 2019の企業内サテライトの1つである、デンソー(新横浜)会場に参加してきました。

  • Railsでウィザード形式のフォームを実装する時はテーブルを分けよう

    Railsでウィザード形式の入力フォームを作成した際にハマってしまったことを書きました。

  • 38歳になりました&今年上期を振り返ってみた。

    Photo by Lidya Nada on Unsplash 本日で38歳になりました。 37歳のあいだも色々ありました。 色々な方に支えられての1年で、様々なことを経験させていただいており、周囲の方々への感謝の気持ちでいっぱいであります。 37歳の振り返りではありませんが、ちょうど良い頃合いなので、上半期の振り返りをしてみました。 TL;DR 38歳になりました。 イベントで登壇したり、転職したり、色々ありました。 最後の重要な連絡事項はこちら

  • Google AssistantのバックエンドをAzure WebAppで作った。

    Google Homeで音声を入力とした何かを今後作るかもしれないので、試しにGoogle Assistantを作るためのActions on GoogleとDialogflowを使った開発をしてみた。 初めて触れる技術のことなので、アプリケーションのネタはとてもシンプルにこれまで作ってきた駄洒落の自動生成にした。 で、実際にできたものがこちら。 www.youtube.com バックエンドを、Firebase Functionsで作ろうと思ったのだが、無料版だと外部へのネットワーク接続ができないため諦めた。バックエンドは、Webhookの呼び出しを受けられれば何でも良いので、今回は普段から慣…

  • インスタンス名を取り締まるためのRuboCop拡張をリリースしました。 #rubocop

    インスタンス名を取り締まるためのRuboCop拡張 rubocop-instance_variable_name をリリースしました。 github.com 何ができるの? この拡張がやっているのは、とてもシンプルなことで、インスタンス変数名の長さが一定以下(デフォルトだと2)のインスタンス変数に警告を出します。 @ms = 'foo' # bad code @message = 'foo' # good code 作った動機 最近、他人の書いたコードをレビューしたり、他人の書いたコードを修正する機会が増えてきました。 その中で、いつも悩まされるのが変数名がわかりづらい時でした。 特に、インス…

  • インスタンス名を取り締まるためのRuboCop拡張をリリースしました。 #rubocop

    インスタンス名を取り締まるためのRuboCop拡張 rubocop-instance_variable_name をリリースしました。 github.com 何ができるの? この拡張がやっているのは、とてもシンプルなことで、インスタンス変数名の長さが一定以下(デフォルトだと2)のインスタンス変数に警告を出します。 @ms = 'foo' # bad code @message = 'foo' # good code 作った動機 最近、他人の書いたコードをレビューしたり、他人の書いたコードを修正する機会が増えてきました。 その中で、いつも殺意が湧いたり腹が立つのは悩まされるのが変数名がわかりづら…

  • 「デザイン思考の先を行くもの」を読んだ。

    デザイン思考の先を行くもの作者: 各務太郎出版社/メーカー: クロスメディア・パブリッシング(インプレス)発売日: 2018/11/09メディア: 単行本(ソフトカバー)この商品を含むブログを見る 最近身近に「デザイン思考」という言葉をよく聞くようになった。 言葉自体は以前から知っているが、一冊本を読んだくらいで、仕事でやったことは無い。 ということで、どんなものなのか知るためにとりあえず一冊読んでみた。 208ページある本だが、見開き2ページの片側のみに文章が書いてあり、文量もそれほど多くないのでサラッと読めた。 この本では、デザイン思考はPDCAと類似するものとして扱っている。 計画(Pl…

  • Butterfly Effect #1 に行ってきた。 #バタエフ

    Butterfly Effect というイベントが始まる、ということで、初回ゲストがチームメンバーの @TAKAKING22だったので行ってきた。 butterfly-effect.connpass.com Butterfly Effectって何? butterfly-effect.connpass.com イベントページより抜粋すると、 「すごい人が話を聞きたい人の話はすごいはず」という発想で 毎回違ったゲストを呼んでパネルディスカッションをするというイベント。 ということで、懐かしのテレフォンショッキング形式でゲストを回していくイベント。 確かに、紹介してもらった方がいい話をしてくれる人が…

  • 7月からデンソーにジョインしましたのお知らせ

    タイトルにありますように、デンソーの人として7月より働いております。 今は聖地横浜アリーナ近くの新横浜オフィスでソフトウェアエンジニアとして勤務しています。 経緯 今年1月末にチームでFA宣言を公表し、それに反応していただいたのがきっかけでした。 takaking22.com 都内ではどうやら認知度がまだまだ低いようですが、もともと名古屋で生活していた時期があったので、デンソーという名前は知っていました。 ウェブサービスと連携したMaaS開発を本気で取り組んでいて、新横浜をその拠点として一昨年あたりから取り組んでいるところ、お声がけいただきました。 個人的にも、ウェブだけでなくモノと繋がったサ…

  • 7月からデンソーにジョインしましたのお知らせ

    タイトルにありますように、デンソーの人として7月より働いております。 今は聖地横浜アリーナ近くの新横浜オフィスでソフトウェアエンジニアとして勤務しています。 経緯 今年1月末にチームでFA宣言を公表し、それに反応していただいたのがきっかけでした。 takaking22.com 都内ではどうやら認知度がまだまだ低いようですが、もともと名古屋で生活していた時期があったので、デンソーという名前は知っていました。 ウェブサービスと連携したMaaS開発を本気で取り組んでいて、新横浜をその拠点として一昨年あたりから取り組んでいるところ、お声がけいただきました。 個人的にも、ウェブだけでなくモノと繋がったサ…

  • Tokyu Ruby会議13 でLTしてきた。 #tqrk13

    TokyuRuby会議13のLTに採択されたので、これまで自分が一番長く関わってきたとあるOSSについてLTをしてきました。 自虐ネタとか言わないで、地道な活動の話だと思って見てください。 自分語り 思えば入社して初めて外の勉強会に行ったのも、そこで初めて体外発表という形でLTをしたのもTokyuRuby会議01でした。 たまたま誘ってくれた人が居て、開催場所が大田区の区民施設で徒歩圏内だったからという理由でほいほいと行ってしまったのです。 あの時に誰が何を話していたのかは覚えていませんが、色んな所から面白い人達がRubyという共通点だけで集まって、賑やかで楽かったのが印象的でした。 それから…

  • 月刊ギルドワークス2019年6月号に行ってきた。 #guildworks #nulab

    アジャイルコーチについてちょうど興味があったので行ってきた。 guildworks.doorkeeper.jp 余談: なんでアジャイルコーチに興味あるのか 次の会社は複業が可能なので、どのような仕事が複業でできそうなのか考えている。 まったく畑違いのことをしても、バリューは出せそうにないので、今までの開発の経験を活かした何かをやりたい。 充てられる時間についても、そこまで多くないことを考えると、ガッツリとした開発をやらせてもらうのは難しいような気がしている。 ということで、週1とかで開発の悩みや抱えている課題の相談にのったり、その解決のための調査や、実際に現場へ入った支援とかが出来たりしない…

  • nikotama.rb #2 に行ってきた。 #nikotamarb

    nikotama.rb #2の参加レポートです。 ラクマのサーキットブレーカーの導入の話とそれに関するあれこれ議論から始まり、わいわい話をしました。

  • Visual Studio Code Remote Development のRuby環境を作ってみた。

    VS Code の次期目玉機能であるRemote Developmentを試してみました。 TL;DR MacだととりあえずContainer接続がお手軽。 試しにRubyの開発環境を作ってみました。 リポジトリはこちら。 github.com Visual Studio Code Remote Development って? Visual Studio Code Remote Development 先日発表されたVisual Studio Codeの一押し拡張機能で、リモートにあるソースコードや実行環境を利用した開発をVS Code上から実行できるというもの。 接続先には、 SSH Con…

  • 大切なお知らせ

    Photo by Aaron Burden on Unsplash TL;DR 6月末日で退職します。 業務の引き継ぎは既に終わっているので、ランチとか誘ってください。 お祝いの品を贈ってくださる方はこちらからお選びください。

  • nikotama.rb #1 に行ってきた。 #nikotamarb

    nikotamarb.connpass.com 渋谷.rbなんかに行こうとしても田園都市線上りの負荷(通称: 上昇負荷)に耐えられないので行けない自分にとってはとてもありがたい場所で開催される地域Rubyコミュニティnikotama.rb 第一回目に参加してきました。 タイムテーブルにあるように、参加者が持ち寄ったお題であれこれ話し合うOST風なスタイルで、わいわいできて楽しかった。 OSTのテーマは、その場でみんなでテーマを共有し、投票した後の上位4つ。 今回のテーマは、 Rubyの勉強のやり方 VS Code Remote Development のRuby環境の設定 Ruby コミュニテ…

  • エンジニアの新人研修Night に行ってきた。 #ttnight

    connpass.com 新人研修についての知見を共有したりする場ってなかなか聞いたことが無いので、参加してみた。 昨年、ひょんなきっかけから新卒研修で講師というかメンターみたいな感じで関わったこともあり、他社がどのようにやっているのか気になっていた。 プログラミング言語などの知識については個人でも学べる機会はかなり増えてきていて、実際の業務はどのように進めていくのかを伝えていくことが研修での重要な点になっていると思う。情報系出身の学生であれば、それこそ業務のことをキャッチアップすれば即戦力としてすぐに成果を出してもらうことが期待できる。 ただ、その業務に関することは、会社独特なものがあるので…

  • ログインシェルをfishに乗り換えた。

    長らくzshを使っていたのだけれど、少し前から気になってたfishに乗り換えてみた。 zshで凝った設定はあまりしていなかったので、.zshrcからの移植のほとんどは PATHの追加 aliasの追加 で、唯一、rbenvがrbenv init - をevalしてもfishでは正しく動かなかったので、oh-my-fish のrbenvプラグインを入れた。 ドキュメントのいたるところに Unlike other shells, と出てきて、これまでのbashやzshのようにはいかないが、デフォルトのコマンドが読みやすく、自動読み込みされるfishファイルの配置もわかりやすいので、書きやすそう。 …

  • Node.js で書いたAzure Functions アプリのテストを書く。

    自分で使うためだけのTwitterクライアントをほそぼそと開発していて、それのテストがそろそろ欲しいと思い、Jest を使って書いてみた。 手始めに、Azure Functions アプリのテストを書いてみたので、それについてまとめてみる。 実際のコードは、こちら。 github.com Jest jestjs.io JestはFacebookが開発するJavaScriptのテストツール。Node.jsで書いたライブラリやフロントのアプリのテストも同じように書ける。 知人に勧められて使ってみることにしたのが発端ではあるが、今開発しているものはAPIはAzure Functions(Node.j…

  • PHPでGoogle Suggest APIを利用するためのパッケージを作って、リリースした。

    packagist.org タイトルの通りなのですが、先日、google_suggest というPHPライブラリをリリースしました。 Googleみたいなサジェスト機能を作りたい! といった時に是非ご活用ください。 以下は、開発のときの余談です。

  • easyAuthを使ってAzure FunctionsでTwitter OAuth認証付きのAPIを作る。

    Azure Functionsには認証認可を扱うeasyAuthと呼ばれる機能があり、ここでその使い方について紹介する。 Azure Functions は、Azure Web Appがベースとなっていて、だいたいWeb App で出来ることはFunctionsでもできる。 Web Appには、TwitterやFacebookなどの外部での認証と連携させる機能を持っており、それを利用し、アプリケーションの認証機能部分を作ることができる。 また、Token Storeを利用することで、認証したユーザーのAccess Tokenも保存し、特別なライブラリを使用することなくそのAccess Toke…

  • WebpackでApplication Insightのコードを埋め込む。

    Microsoft Azureが提供するサービスの1つにApplication Insightsがある。 これはアプリケーションのメトリクスを収集、集計するための機能を提供してくれるサービスで、お手軽に導入できて便利なのでよく使っている。 公式ドキュメントでは、HTMLにコードを埋め込む方法を書いているが、JavaScriptなどをWebpackで一元管理したい場合については触れられていない。 ということで、そのやり方を調べてみた。 目次 HTMLにタグを埋め込む方法 Webpack で埋め込む方法 パッケージのインストール Application Insightsを埋め込む リリースの時だけ…

  • プライベートリポジトリで提供しているgemを使ったアプリをHerokuにデプロイする。

    何らかの理由で外部に公開はできないgemがあって、それを使ったRubyアプリケーションをデプロイする場合にどうしたらいいのか調べてみた。 何らかの理由というのは、まだ開発途中で試験的に使ってみたいとか、ビジネスに特化した機能であって外に公開できないなど、いくつかあると思う。複数のRubyアプリケーションを扱っている会社なんかだと、共通する機能をgemにしたりするだろうから、ありえるシナリオだと思う。 もくじ もくじ TL;DR Gitリポジトリで公開されているgemを使う プライベートリポジトリで公開されているgemを使おうとするとどうなるか プライベートリポジトリのgemを使うための設定 G…

  • 「Small Factory 4.0」を読んだ。

    Small Factory 4.0 第四次「町工場」革命を目指せ! IоTの活用により、たった3年で「未来のファクトリー」となった町工場の構想と実践のすべて作者: 木村哲也出版社/メーカー: 三恵社発売日: 2018/08/01メディア: 単行本(ソフトカバー)この商品を含むブログを見る ちょっとだけIoTに興味があって、たまたま見つけたので読んでみたら面白かった。 町工場の業務改善のためのIoTサービスとそれを用いたコンサルティングを展開しているiSmart Technologies社社長自身が、どのように事業を始めて、発展させていったかについて書いてあった。 使用している技術については細か…

  • Vue.js で開発を始める手順をまとめてみる。

    フロントエンド開発に疎い自分とサヨナラしようと昨年末くらいからVue.jsの勉強をしている。 ドキュメントやチュートリアルを見て、自分で考えた小さいアプリケーションを作りながら覚えていこうとしている。 何個か作ってみたけれど、毎度初回に何のパッケージをいれて、どうセットアップするかで時間を取られるので、ここいらで少し自分なりにまとめてみる。 もくじ もくじ TL;DR リポジトリを作る NPMの準備 Webpack インストール ビルド HTMLを生成する Vue.js インストール 簡単なVue.jsのアプリを作る。 単一ファイルコンポーネントを使えるようにする。 おわりに ここで紹介してい…

  • Laravel で一部だけ違うロケールのテストデータを生成する。

    例えば、こんなプロジェクトがあるとする 日本向け*1のサービスをLaraelで開発していて、Fakerを使ってテストデータを生成している。 ある時、ユーザー名に英語表記*2をサービス内で保持する必要が出てきた。 どうやるか Faker はFactoryパターンで実装されていて、createメソッドにロケールを渡すことで、指定されたロケールに合致するジェネレーターを返してくれる。 なので、一時的に欲しいロケールのジェネレーターを生成することで実現できる。 具体的には、デフォルトのロケールが'ja'の環境でUserモデルのテストデータを生成するUserFactoryがあるとき、 <?php use…

  • rakuten_web_service v1.10 をリリースしました。

    ちまちまと開発を続けているrakuten_web_service v1.10.0 をリリースしました。 今回のリリースで、やっとこさトラベルAPIのうち Simple Hotel Search API Get Area Class API を使えるようになりました。 経緯 プルリクエストを振り返ってみると、 このAPIだけがレスポンスの形がマジ糞 設計思想が異なるところから、それをどう取り込んだらいいのか悩んだ挙げ句、途中で挫折してから5年も経ってしまっていました。 github.com この機能を望んでいる方が現れたので、開発を再開した次第です。 改めて勉強がてらRails周り触ってみてる。…

  • 突如、"The resource you are looking for has been removed, had its name changed, or is temporarily unavailable." が現れたときの対処

    起きたこと Azure WebApps上で動いているアプリケーションのうち、大きいテキストファイルをアップロードする機能があって、それを使おうとしたら The resource you are looking for has been removed, had its name changed, or is temporarily unavailable. というメッセージのみが白い画面に出てきた。 もちろん期待してない動作なので、アプリケーションのログなどを漁ってみたが、どうやらアプリケーションのエラーではないことがわかった。 調べたこと 調べてみると、この画面になる原因自体はいくつかあるよ…

  • SmartHRさん主催 公開モブプログラミング会 に行ってきた。

    久しぶりに面白いイベントに参加できた。 smarthr.connpass.com モブプロを始めてから1年半くらい経つけど、他のチームや会社のモブプロを見学する機会が無かったので、ぜひ見てみたいと思って参加してきた。 SmartHRさんの中で今回のイベントを企画したチームでは、定期的にモブプロを実施しているそうだ。詳しくはSmartHRさんのブログに書いてあって、とても良い雰囲気出てて素敵。 tech.smarthr.jp 公開モブプロ ファーストドリンクからアルコールを提供してくれるとか、ゆるい感じで始まってとても良かった。 おもしろそー!!#公開モブプロ#SmartHR pic.twitt…

  • INSIDE TOYOTA #1 を観た。

    www.youtube.com たまたまツイッターで見かけて、観てみたのだけど、食い入るように観てしまった。 内容もとてもわかり易くて良い話なのだけど、さすがトヨタのトップというか、プレゼンテーションとしてもすごいと感じた。 わかりやすい言葉選びや会場全体に向けて話す姿勢、悲しい現状を伝えるときの声のトーンの落とし方が訴えかけるようで引き込まれた。 先月、スクラムフェス大阪での発表練習とかひとり黙々とやっていたけど、結局本番ではほとんど吹っ飛んじゃったり、もうちょっと良い言葉を選べたらよかったなぁ、とか反省してたところなので、何度も観てしまった。 内容についても、最後のこのメッセージはとても素…

  • 「モブプログラミング・ベストプラクティス」を読んだ。

    モブプログラミング・ベストプラクティス ソフトウェアの品質と生産性をチームで高める作者: マーク・パール,及部敬雄(解説),長尾高弘出版社/メーカー: 日経BP社発売日: 2019/02/23メディア: 単行本この商品を含むブログを見る モブプログラミングについて言葉だけ知ってたり関心がある人はもちろん、 すでにやっている人も、やり始めてから慣れてきた人たちも、うまくいかずに離れてしまった人たちにもぜひ読んでほしいと思った。 というのは、この本はモブプログラミングを知らない人向けではなく、上にあげた人たちに向けて書かれている。 単に、著者が経験したことを書き連ねているのではなく、それぞれの状況…

  • Macbook Pro 2017 で音声が再生されない時はcoreaudiodを殺す

    昨年末あたりからたまに起こる現象で、急に音声がイヤホンや内蔵スピーカーから再生できなくなることがあった。 調べてみると、Macbookの型番は違うが同じような現象が報告されていた。しかし、解決方法については書かれていない。 discussions.apple.com 別で音声関連の問題を調べてみたら、 coreaudiod というプロセスがおかしな挙動をする問題があるようだ。 www.google.com coreaudiod は音声再生のためのデーモンらしい。 www.howtogeek.com 試しに以下のようにプロセスを殺してみたところ、自動でプロセスが再起動し、音声が再生されるようにな…

  • スクラムフェス大阪2019で喋りきれなかったこと #scrumosaka

    satoryu.hatenablog.com 先日、スクラムフェス大阪2019にて発表してきたのですが、時間オーバーしてしまい、最後は巻きで流してしまいました。 ということで、当日お話できなかった 推しパターンの「傾聴」 コミュ障になぜこの2パターンが推しなのか おまけ について書きます。

  • 1日階段200段を登り続けて1ヶ月経った。

    2年前くらいから自宅で筋トレを週2か3くらいで続けている。 腕立てやダンベルは好きなのだが、足腰周りがどうも苦手で、スクワットなどやってみてもあんまり楽しくない。 ということで、楽しくないのなら、生活の一部に組み込んで必須事項にしてみた。 具体的には、出社時に自分のデスクがある19Fまで、9Fから階段で行くようにした。 1階登るまでにだいたい20段なので、200段登っていることになる。 iPhoneのヘルスケアアプリで上った階数を見てみると、上った階数が上がっている。 これを始めたのが1月22日からなので、一ヶ月が経過した。 平日の出社時のみなので毎日ではないが、この期間を続けられたので、やは…

  • スクラムフェス大阪2019で発表してきた。 #scrumosaka

    www.scrumosaka.org 無茶苦茶、緊張したけど、なんとか終えられることができて、一安心しております。 聴きにきてくださった方々には、お礼しかありません。 時間オーバーしてしまったのが残念でありますが、ツイッターを見ていると楽しんでいただけていたようで、脇汗をかきまくった甲斐がありました。 このセッションでは、コミュ障な自分がお客さんと直接対話する仕事に携わった時にとても参考になったCustomer Interaction Patternsを、自分の話を交えつつ紹介しました。 コミュニケーションを始めることが苦手なコミュ障の人にとって、コミュニケーションを始めるハードルが下がってく…

  • Developers Summit 2019 2日目に行ってきた。

    一日目はこちら。 昨晩のアンオフィシャル懇親会で飲みすぎたのか、今朝が冷え込んでいたせいなのか、はたまた虫歯のせいなのか、今朝は具合が悪くて、午前はまともに話を聞けなかった。 という気持ちにめげずに、参加したセッションについて忘れないうちに書き残しておきます。 ゲームQAを支える技術~前処理・後処理は大変だが役に立つ~(太田 健一郎[スクウェア・エニックス]) スクエアエニックスの某タイトルで実践した、AI for QAでの泥臭いデータの前・後処理についての話だった。 そもそもゲーム開発について自分は知らなかったし、テストについてもそんなに知識が無いので、色々と新しいことばかりで面白いセッショ…

  • Developers Summit 2019 1日目に行ってきた。

    devsumi2019 毎年恒例のエンジニアの祭典Developers Summit 2019に行ってきた。 今年はスピーカーでも当日スタッフでも無く、ただの参加者です。 やっぱり個人スポンサーになっておくべきという後悔を初っ端からしてしまった。最前席がやはり最善。 全部のコマをセッションで埋めるつもりは無いので、聞きたいところに行き、なるべくAsk the speakerでスピーカーにお話を伺うのがやはり良いなと思いました。 こういうスタイルのイベントを長く続けているのは本当に尊敬する。 その中でも、少しずつスタイルを変え続けていて、今年はスタッフの方々がスタッフTシャツを来てて、お祭りっぽ…

  • Emmet でHTMLをサクッと気持ちよく書く。

    Emmet という、HTMLやCSSをサクッと書くためのプラグインがある。 今日はチーム内で、どこまで一度にHTMLコードを生成できるか小一時間くらい盛り上がってしまった。 それくらい気持ちよく書ける。 emmet.io vim やemacsを始め、多くのテキストエディタのプラグインが提供されている。 Visual Studio Codeには同梱されているので、すぐに試せる。 CSSセレクターに似た記述でHTMLを生成してくれる。 例えば、 div.container>div.row>(div.col-md-3{Sidebar}+div.col-md-9{Content}) と入力して展開する…

  • chartjs-plugin-colorschemesを試してみた。

    ウェブの画面に棒グラフや折れ線グラフを表示するためのJavaScriptライブラリにChart.js というのがあって、とても便利。 しかし、ちょっと悩ましいことがある。 複数のデータをプロットする際に、それぞれの色をどうするか自分で考えなければいけないということだ。 そういった時に使えそうなプラグインを見つけたので、ここで紹介。 nagix.github.io これはChart.jsで書くチャートのカラーパレットを提供してくれる。 個別に色を指定することは必要ないのはとても嬉しい。 自分は最近はwebpackを使うようにしているので、以下のような感じにセットしてみた。 npm install…

  • Laravel Valet がPHP 7.3で動かないので、7.2に戻した。

    Homebrew でPHPをインストールして、そのまま使い続けているので、気づいたらPHP 7.3に上がっていた。 たまたまLaravel Valetを使ってみようとインストールしてみたところ、試しに作ったLaravel アプリをブラウザで開こうとしても、502 Bad Gateway とNginxのエラーで開けなかった。 GitHub上にIssueが既にあがっていて、ちょうど同じタイミングで同様の現象に直面していた人がいた。 github.com ここで挙げている手順を試してみたのだけれど、PHP 7.3 では動かせなかった。 ということで、別の方法として提案されている7.2に戻すことで、一…

  • DENSO Meetup Yokohama #1 に行ってきた。

    自動車業界の中でも有名なデンソーさんが、新横浜に独立した内製の開発組織を作っていて、その部署とクリエーションラインさんの共催イベントの第一回目に行ってきました。 Attractor社の吉羽さんがコーチに入っているという話を以前に伺っていて、昨年のデブサミでも講演していたり、大企業の中でアジャイル開発の導入を取り組んでいることは知っていました。 このイベントでは、1年半前のオフィス立ち上げから携わっているエンジニアの方々の話を聞くことができました。 connpass.com オフィスの一室のでっかいテーブルとでっかいディスプレイをわいわい囲んで、ひさびさに「勉強会」っぽさあるミートアップでした*…

  • 「新訳 科学的管理法」を読んだ。

    100年以上前の、しかも工場での生産を対象としたマネジメントの本なのだけど、いろいろマネジメントについて考えることができた。 新訳 科学的管理法作者: フレデリック W.テイラー,有賀裕子出版社/メーカー: ダイヤモンド社発売日: 2009/11/28メディア: 単行本購入: 1人 クリック: 7回この商品を含むブログ (7件) を見る 昨年くらいからエンジニアリングマネージャーというのが流行っていて、そもそもマネジメントとは何なんだろうか、という疑問からこの本を見つけた。 マネジメントと聞くと、ドラッカーのマネジメント なんかを思い浮かべたのだけれど、その本の序文にも科学的管理法について言…

  • Multi-Stage Build を使ってLaravelアプリのイメージを作ってみた。

    LaravelとVue.jsの勉強がてらにちまちまとアプリを作っていて、そのLaravelアプリケーションを実行する環境をDocker で構築しているのだけど、以下の2つほど問題があった。 composer やnpm はアプリを起動させるまでに必要なパッケージのインストールやアセットのコンパイルに必要なのであって、アプリ実行時には必要ない。特にnode_modules。 Dockerファイル内でcomposer やnpm のインストールするとなると、その記述やそれぞれのバージョン管理が面倒。 ということで、Docker 17.05以降で使えるようになったマルチステージビルドで解決してみた。 検…

  • Azure Functions がTypeScriptでかけるようになったからVS Codeで試してみた。

    先日、 Azure Functions の公式ツイッターアカウントで、TypeScriptで書きたい人向けのパッケージのリリースアナウンスがあった。 ⚡️⚡️⚡️Check out the new @azure/functions type definitions!!!⚡️⚡️⚡️https://t.co/plmpXd7U7v— Azure Functions (@AzureFunctions) January 14, 2019 これは面白そうなので試してみようと思って探してみたら、さすがMSの人がQiitaに早速書いていた。 qiita.com これを参考に、Visual Studio Co…

  • クリスと #NoEstimates について立ち話をして思ったこと

    先日のRSGT2019の3日目に開催されたOSTにて、基調講演で来てくれていたクリス・ルーシャンに #NoEstimates について少し話を聞いてみたので、それのザックリとしたメモとして書き残しておく。 自分が途中から参加したテーブルのテーマは「見積もりをすることのメリット」だった。 自分はスタッフ業で聞けなかったのだけど、どうやらクリスは基調講演で、見積もりすることのデメリットについて語り、#NoEstimates をやっているという話をしたようだ*1。そこで、このテーブルでは、見積もりすることのデメリットだけではなく、メリットについても取り上げ、見積もりの可否について議論していた*2。 …

  • Hacktoberfest Tシャツを貰った。

    毎年オクトーバフェストの時期になるとDigitalOceanとGitHubが開催するHacktoberfestというイベントがある。これはこの期間中に、OSSのリポジトリにプルリクエストを5つ送ると、上のようなTシャツが貰えるというイベント。 昨年も例年通り開催されたので、エントリーして、そのTシャツがやっと届いた。 一昨年もエントリーしてたんだけど、住所入力がまずかったのか、届かなかったので、やっと手に入れた感じで嬉しい。

  • Regional Scrum Gathering Tokyo 2019のスタッフをやってきた。 #RSGT2019

    年に1度のスクラム開発の祭典Regional Scrum Gathering Tokyo 2019 に、当日スタッフとして行ってきました。 正月休み明けの三日間、新年の始め方としてはとても有意義な始め方になりました。 来た理由 本当は今年は来るつもりはありませんでした。昨年のRSGT2018が終了した時には、そう思ってました。 2014年からほぼ毎年スタッフやらスピーカーとして参加してきたのですが、昨年の時点ではちょっと飽きを感じていました。「特別面白いセッションが無ければ来ないなぁ」なんて思っていました*1。 今年来た一番の理由は、弊社新卒の勇姿を見るためです。昨年の夏、突如訪れた新卒向けの…

arrow_drop_down

ブログリーダー」を活用して、satoryuさんをフォローしませんか?

ハンドル名
satoryuさん
ブログタイトル
satoryuの日記
フォロー
satoryuの日記

にほんブログ村 カテゴリー一覧

商用