kakakakakku blog

Weekly Tech Blog : Keep on Learning 👍

HashiCorp 学習コンテンツ「HashiCorp Learn Platform」を活用して Consul を学ぶ

最近 Consul を検証する機会があり,まず全体概要を把握するために「HashiConf 2018」で発表された「HashiCorp Learn Platform」を活用することにした.「HashiCorp Learn Platform」は HashiCorp が提供する学習コンテンツで,現在は Vault / Consul / Terr…

監視を育てよう! /「入門 監視」を読んだ

今年1月に出版された「入門 監視」を読んだ.出版前から予約をしていたけど,他に積読もあり,読み始めるのが少し遅れてしまった.評判通り素晴らしく,特に「監視」というテーマをうまく言語化している本だと感じた.目次を見るとわかる通り,「あれも監視…

ドキュメントにある「リンク切れ」を検知できる「textlint-rule-no-dead-link」

textlint のルール「textlint-rule-no-dead-link」を使うと,ドキュメントにある「リンク切れ」を検知することができる.最近とあるドキュメントをレビューするときに,比較的リンクが多く,作業を効率化するために導入した.インストール手順は GitHub に書…

楽しく成長できるモビングを目指そう /「モブプログラミング・ベストプラクティス」を読んだ

2月に出版された「モブプログラミング・ベストプラクティス」をさっそく読んだ.僕はモブプログラミングの経験があり,例えばインフラ構築など,プログラミング以外の場面でも「モブ」のエッセンスを取り入れてタスクを進めることも多いけど,本書の目次を見…

Jupyter Notebook に環境変数を設定する

最近 Jupyter Notebook を使って Python コードを実装しているときに,設定値を直接コードに書くのではなく,環境変数から取得する必要があった.小ネタとして「Jupyter Notebook に環境変数を設定する方法」をまとめておく.結論として,今回は direnv を使…

ブログ記事のクオリティに悩む人に読んで欲しい /「理科系の作文技術」を読み直した

2017年12月から「ブログを楽しく習慣化して書く」ことを支援するために「ブログメンタリング活動(完全無料)」をしている.既に1年以上継続していて,現在メンタリング中のメンティを含めると,計20名を超えている.「ブログを楽しく習慣化して書く」ことを…

WIP プルリクエストの誤った merge を避ける GitHub Apps「WIP」と GitHub 新機能「Draft pull requests」

チーム開発をしていると,プルリクエストを WIP (Work In Progress) として送る場面は多くある.例えば,コードを書く前に設計相談をしたり,レビュー依頼をする前にパッケージ構成など全体感を相談したり,プロトタイプなどを一時的に公開することもある.…

自分自身の情報収集スタイルを定期的に見直そう /「ソフトウェアエンジニアの情報収集について」を読んだ

@nikuyoshi に献本を頂き,去年「技術書典4」と「技術書典5」で頒布された「ソフトウェアエンジニアの情報収集について(改訂版)」を読んだ.本書は約50ページと薄く,すぐに読むことができる.重要なのは本書を読み終えることではなく「自分自身の情報収集…

htmllint で Inline Configurations を使って Lint ルールをカスタマイズする

最近も HTML を書く機会が多く,HTML を実装するときには「htmllint」と CircleCI を組み合わせて Lint を実行している.「htmllint」の紹介記事は前に書いてある. kakakakakku.hatenablog.com the i tag is banned Font Awesome を使って <i class="far fa-smile-wink"></i> のように絵文字…

JetBrains プロダクトを管理するプロダクト「JetBrains Toolbox App」

「JetBrains IntelliJ IDEA」や「JetBrains RubyMine」など,JetBrains プロダクトを使って開発をしている人は多いと思うけど,個人的にオススメな「JetBrains Toolbox App」の話をすると,あまり知られていなく,まだまだ普及していなさそうに感じる.「Jet…

FaaS フレームワーク「OpenFaaS」を実践的に学べる公式ワークショップ

Docker Swarm と Kubernetes をサポートしている FaaS フレームワークとして「OpenFaaS」がある.CNCF Cloud Native Landscape を見ても Serverless カテゴリに入っている.OpenFaaS は前から気になっていたけど,今まで試したことがなく,最近 GitHub に Op…

Docker 公式のセキュリティ診断ツール「Docker Bench for Security」を試した

最近 Docker 関連のセキュリティツールを調査する機会があり,今回は「Docker Bench for Security」を試したログを残しておく.「Docker Bench for Security」は Docker から公式に提供されているセキュリティ診断ツールで,具体的には「CIS Docker Communit…

Python の基礎知識を証明できる「Python 3 エンジニア認定基礎試験」に合格した

先週末に「Python 3 エンジニア認定基礎試験」を受験し,問題なく合格した.試験問題に関係する内容は NDA を厳守するため書かず,今回は「試験紹介(普及のため!)」と「勉強方法」にフォーカスする. Python 試験とは? 「一般社団法人 Python エンジニア…

Python の理解度確認をするために「Python チュートリアル 第3版」を読んだ

オライリーから出版されている「Python チュートリアル 第3版」を読んだ.読者対象として「Python 入門者のための」と書いてあるけど,そこそこ難しい内容もあり,中級者でも楽しめる内容になっている.本書の最初に載っている「訳者まえがき」にも,理解度…

キャリアを選ぶときの価値観を発見しよう /「キャリア・アンカー」を今年も読んだ

今回は「キャリア」をテーマにしたオススメ本「キャリア・アンカー(自分のほんとうの価値を発見しよう)」を紹介する.過去の記事で本書のことを少し紹介したことはあったけど,実は今まで書評記事を書いていなかった.2019年になり,目標設定をしている人…

ブラウザ経由で Windows Server にリモート接続ができる「Apache Guacamole」を Docker Compose で起動する

最近 Windows Server にリモート接続 (RDP) をする機会があり,ブラウザ経由で使えるツール「Apache Guacamole」を試すことにした.今までは「Microsoft Remote Desktop」を使っていて,違う選択肢を学んでおくという意図もあった.「Apache Guacamole」の公…

Python で「両端キュー」として使えるデータ型 collections.deque

最近「Python チュートリアル 第3版」を読んでいて,11章で紹介されている collections.deque を実際に使ったことがなく,ドキュメントを読みながら動作確認をした.Python 3.2 と Python 3.5 で追加されたメソッドもあり,メモ程度にまとめておこうと思う.…

スタンディングデスクを買おうかと悩んでいる人にオススメする「LEVIT8」

運動不足と感じる場面も多く,自宅に「電動昇降式スタンディングデスク」を買おうかと悩んでいたところ,Twitter で @budougumi0617 さんに「LEVIT8」を教えてもらった.すぐに購入し,約2ヶ月半使っているけど,とにかく最高なので記事を書くことにした. L…

最新バージョン Redash v6.0.0 をすぐに試せる「Redash ハンズオン資料」

2018年12月に「Redash v6.0.0」がリリースされた blog.redash.io Redash ハンズオン資料 v6.0.0 サポート さっそく「Redash ハンズオン資料」で「Redash v6.0.0」をサポートした.サクッと Redash v6.0.0 を試すときに使ってもらえると!なお「Redash ハン…

2018年の振り返りと2019年の抱負

2018年の振り返り 幅広く実戦投入をした 2016年から3年連続で目標にしている「実戦投入力を高める」を2018年も達成できた.インフラ関連で言うと「Redis on EC2 → Amazon ElastiCache 移行」や「Embulk データ抽出基盤構築」や「Zabbix → Mackerel 完全移行…

2018年 : 登壇を振り返る

今年の登壇を振り返る.去年の振り返り記事は以下にある. kakakakakku.hatenablog.com 登壇 : 計9回 今年の登壇は計9回だった.去年の計14回よりも減ってしまった. 勉強会 : 登壇8回 社内勉強会 : 登壇1回 時系列で並べると以下のようになる. 2018/01/11 …

知っておくと便利な MySQL の GROUP_CONCAT 関数

最近 MySQL で SQL の相談を受けたときに「もしかしたら GROUP_CONCAT が使えるかも?」というアドバイスをした.GROUP BY だけではなく GROUP_CONCAT も知っておくと便利なので,今回は GROUP_CONCAT の紹介記事を書く. GROUP_CONCAT とは? GROUP_CONCAT …

プログラミング初心者だけじゃなくプログラミング講師も読むべき一冊だった /「ゼロからわかる Ruby 超入門」を読んだ

11月末に発売された「ゼロからわかる Ruby 超入門」を読んだ.最近まで2年ほどプログラミング講師として Ruby / Ruby on Rails を教えていたので,プログラミング初心者に教えるノウハウが得られたら良いなと考えていた.そして本書は「本当にプログラミング…

2018年のプルリクエストを振り返る

今年も OSS に送ったプルリクエストを振り返る.過去2年間の振り返りは以下の記事にある. kakakakakku.hatenablog.com kakakakakku.hatenablog.com プルリクエストを振り返るための検索 GitHub には Issue / プルリクエストを検索するための条件式があり,…

Rubyist が学び合うカンファレンス「Rails Developers Meetup 2018 Day 4」に参加した

12/8 (土) に開催された「Rails Developers Meetup 2018 Day 4 Nouvelle Vague」に参加した.イベント名に「Rails」と付いているものの,トークテーマは多岐にわたり,エンジニアなら誰でも楽しめるように工夫されていた.また YouTube ライブ配信もあり,リ…

プログラミング初心者に教えるときは「身近な比喩」が重要なのだ!

今日は「Rails Developers Meetup 2018 Day 4 Nouvelle Vague」に参加し,教育関連のネタで登壇をしてきた!パブリックイベントに登壇するのは約半年振りで,やはり登壇するのは楽しいなぁー!という気持ちになった.あと登壇前に司会者から「ブロガーの吉田…

多くの CircleCI ファンが集まった「CircleCI Japan User Community Kickoff」に参加した

12/3 (月) にサイボウズ様オフィスで開催された「CircleCI Japan User Community Kickoff」に参加した.今回は招待制のプライベートイベントで,CircleCI を日頃から圧倒的に活用している人たちが集まっていたので,有名人多すぎでは?という感じだった.僕…

HTML の Lint ツール「htmllint」を CircleCI で実行する

HTML を実装しながら Lint を実行するため「htmllint」を使うことにした.類似ライブラリに「HTMLHint」もある. github.com htmllint と htmllint-cli 「htmllint」を CLI で実行する場合は「htmllint-cli」を使う. github.com 以下のように npm で htmlli…

CSV に SELECT / UPDATE クエリを実行できる VS Code の拡張機能「Rainbow CSV」

定期的に CSV からデータを抽出する機会があり,抽出条件によって,今までは以下のような方法を使っていた. CSV を Excel で開いてフィルターを使う方法 CSV を grep / egrep などの Linux コマンドで絞り込む方法 CSV をAmazon S3 にアップロードして Amaz…

Vue School の無料コース「Nuxt.js Fundamentals」を受講して Nuxt.js の基礎を学んだ

Vue School で今月から提供されている最新の無料コース「Nuxt.js Fundamentals」をさっそく受講した.最近よく聞くようになった Nuxt.js をまだ試したことがなく気になっていて,タイミングも良かった!今まで Vue School で「Vuex for Everyone」と「Vue.js…