サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
円安とは
kakakakakku.hatenablog.com
2023年3月に出版された「エンジニアのためのドキュメントライティング」を読んだ.原著は Docs for Developers で,翻訳を担当された @iwashi86 さんに本書を送っていただいた.ありがとうございます❗️そして出版おめでとうございます🎉 本書は今まで書いてきたテクニカルドキュメントに対して "できてなかったな〜" という気付きを与えてくれるイイ本でした📖 読みながら感じたことを大きく分類すると以下2点!印象に残ったところを中心にまとめようと思う. テクニカルドキュメントの重要さを改めて認識できた👌 テクニカルライティングという仕事(ポジション)に興味を持った👀 ユーザーの問題解決とプロダクトの成功を導く エンジニアのためのドキュメントライティング 作者:ジャレッド・バーティ,ザッカリー・サラ・コーライセン,ジェン・ランボーン,デービッド・ヌーニェス,ハイディ・
今回は 2022年12月〜2023年2月中旬(第2期 : 約3ヶ月間)のシャドーイングを振り返りつつ,課題と今後(既に着手している第3期)についてまとめようと思う❗️あくまで個人的な英語学習ログだから参考にはならないと思う.ちなみに英語学習の一つとしてシャドーイングに入門した 2022年8月末〜2022年11月(第1期 : 約3ヶ月間)の振り返り記事は以下にまとめてある. kakakakakku.hatenablog.com 使ったシャドーイング教材 前回の振り返り記事の最後にも載せた通り,今回シャドーイング教材としては「TOEIC 公式アプリ (TOEIC presents English Upgrader)」を使った.「タニケイ式」のおすすめ教材にも載っていて,会話も2-3分と長くなく,レベル的にもちょうど良いと思った.また TOEIC を受験する予定もあったため,単語や表現の観点でも
コンテナイメージを作るときに Dockerfile の FROM に指定する「イメージ名」や「タグ名」をビルドごとに変えて設定したく,Dockerfile の ARG を使って実現できた.試しながら学んだポイントをまとめる❗️ Dockerfile 例 例えば,以下の Dockerfile では ARG を使って VERSION を変数化していて,docker build コマンドを実行するときに --build-arg オプションを使うと変数に値を挿入できる.もし --build-arg オプションを使わなかった場合はデフォルト値(今回の例だと latest)のままになる. ARG VERSION=latest FROM nginx:${VERSION} ARG の仕様や注意点などはドキュメントに詳しく載っている. docs.docker.com 実際に docker build --b
Amazon で "そこそこ" 評判が良く,メーカーは信頼できるマランツプロ 🎵 そして何よりもお手軽すぎる「3000円台(記事を書いてる 2/25 時点だとなんと3,192円 💰)」という価格にも驚きで,あまり期待はせずに検証も兼ねて「888M マランツプロ USB コンデンサーマイク M4U」を買ってみた❗️ 1ヶ月(2023年2月)ミーティングや収録で使ってみて,結論としては「十分に使えた👌」ので紹介したいと思う.価格もお手軽なので「マイク入門」にも良いと思う.ただし macOS で使う場合には自分自身の環境 (macOS Monterey と Ventura) だと問題もあって,その点も紹介する〜 \( 'ω')/ コスパ最強マイクだぁぁぁー 888M マランツプロ USBコンデンサーマイク PC 単一指向性 ゲーム テレワーク ケーブル スタンド付 ボイスチャット Mac
タイトルに惹かれて「限りある時間の使い方」を読んだ.僕は日常的に "忙しく時間がないなぁ..." と感じることが多い(忙しいフリをしているだけの可能性もある).やりたいことは多いけど全然処理しきれず,常に何かしらを犠牲にしているというモヤモヤもあって,本書を読んでみることにした. 僕自身は "意識高い" 自己啓発本が大好きではあるけど,本書はそういった「ライフハック本」ではなく,○○をしろ!○○はするな!という内容ではなかった.もっと哲学的な内容が多く,根本的な "何か" を気付かせてくれる感じで,人生や時間について考えながら読み進めることができた.また本書で繰り返し出てくる「生産性オタク」や「完璧主義者」はまさに僕自身のことを揶揄しているようにも感じられて,時間をコントロールしているはずなのに常に何かに追われているという点は非常に刺さった.他にも刺さった箇所は「読書メモ」に箇条書きにして
「自分だけの Technology Radar」を構築できる「Build Your Own Radar」を以下の記事で紹介した💡 kakakakakku.hatenablog.com Build Your Own Radar サービスに入力する Technology Radar ファイルとしては Google Sheets / CSV / JSON を使うことができて,もし Build Your Own Radar を企業やチームで構築するなら Technology Radar ファイルを「GitHub 管理」したくなると思う. 今回は検証として,GitHub に CSV ファイルをコミットしたら GitHub Actions と Playwright for Python を組み合わせて「自動的に Technology Radar を構築する仕組み」を試してみた.構成はザッと以下のよう
いつ購入したのか正確には覚えていないけど,本棚に眠っていた「一生モノの英語勉強法」を読み直した📖 本書では「実践しやすい英語学習のコツ」が紹介されていて,自分自身にあった勉強法を見つけるのに使える一冊だった.関連書籍や学習リソースが多く紹介されているのも良かった.受験のために問題集をどう使うかというコツも載っていた.2013年に出版されているので,少し古くなっている書籍などは一部あるけど,それでも気になる書籍も見つかった.最近は英語学習の書籍をいくつか読んでいて,どの書籍にも似たようなことが載っているけど,本書は「理論と感覚」のバランスが良いと思った. 一生モノの英語勉強法――「理系的」学習システムのすすめ(祥伝社新書312) 作者:鎌田 浩毅,吉田 明宏祥伝社Amazon 目次 第1章 : 英語ができれば人生が変わる! 第2章 : “武器”としての発音 第3章 : 本当は「おもしろい」
2023年1月にリリースされた Docker Desktop v4.16.0 (release notes) で GA になった「Docker Extensions」の Extensions は段々と種類が増えてきて,Disk Usage / Aqua Trivy / LocalStack など,最近使う機会もあったりする.今回は "Quickstart" ドキュメントを読みながら Docker Extensions の実装に入門してみた❗️ \( 'ω')/ オレオレ Docker Extension を実装するぞー docs.docker.com 🐳 docker extension コマンド まず,Docker Extensions を実装するためには docker extension コマンドを使う.コマンド一覧を以下に載せておく. $ docker extension --he
GitHub Actions でワークフローを実行するときに git commit と git push を実行して GitHub Actions の実行を待つことがよくある.より迅速に実行して,結果を受け取るために「act」を使って GitHub Actions をローカル環境(コンテナ)で実行する仕組みを試してみた.便利だったので紹介しようと思う❗️ 当然ながら GitHub Actions を完全再現できてるわけではなく,最終的には GitHub Actions を使うことにはなるけど,特に開発中に頻繁にテストを実行できるのはメリットだと思う.うまく併用しながら開発体験を高めよう👌 github.com セットアップ macOS の場合は Homebrew を使って簡単にセットアップできる.他には Chocolatey (Windows) や Bash script も選べる.今回
仕事に関係なく「話したいなぁ〜」と思った相手とのミーティング(1on1 / 壁打ち / 技術雑談など)を気軽に申し込めるサービス「Calendly」を紹介する❗️ちょっと前から気になってて,試してみたら便利でさっそく導入(テスト運用中)もしてみた.機能は限られるけど,無料で使える "Basic" でも問題なさそう〜 calendly.com Calendly 操作イメージ🎤 Calendly を使って「ミーティングを申し込む流れ」を見てもらえばイメージは掴めると思う❗️ 1. Calendly サイトにアクセスする Calendly サイトにアクセスすると,設定しているイベント「1on1」を選べる.本当は「Blog 1on1」や「Tech 1on1」や「General 1on1」など複数イベントを設定したかったけど,Basic プランだと1イベントのみ設定できるようになっている. 2.
GitHub App「Pull Request Size」を使うとプルリクエストの差分量から "サイズを意味する" ラベルを付けてくれて便利❗️やってることは単純だけど「このプルリクエストは大きすぎるな〜」という判断材料にも使える.個人アカウントなら無料なのも嬉しい✌️ github.com ラベル一覧 ラベルに関しては以下の「計6種類」が用意されている! size/XS : 差分量 0-9 行 size/S : 差分量 10-29 行 size/M : 差分量 30-99 行 size/L : 差分量 100-499 行 size/XL : 差分量 500-999 行 size/XXL : 差分量 1000 行 以上 差分量の計算式と除外ファイル 「差分量」を算出する計算式は GitHub に載っていて,基本的には「追加 + 削除」になる.でも generated file(自動生成され
リアルなテストデータを簡単に作ってモック化までできるサービス「Mockaroo」を紹介する❗️データベースのテストデータを作ったり,フロントエンドを実装するときに必要になるバックエンド API をモック化できる.テストデータに test や hoge という文字列を使ってしまうと本番環境相当の確認がしにくく,できる限りリアルなテストデータを作りたい場面は多くあると思う💡 www.mockaroo.com Mockaroo の特徴としては,サポートしてるタイプがなんと現時点で「13 カテゴリ(169 種類)」もある.以下にカテゴリごとにタイプ数をまとめる.What's new を見ると,定期的にタイプは増えている. Advanced(10 種類) Basic(29 種類) Car(1 種類) Commerce(13 種類) Construction(6 種類) Crypto(7 種類) H
2022年の振り返り 🎉 幅広く技術を語れるように学び続けた ⭕ 2019年から4年連続で「幅広く技術を語れるように学び続ける」を年間目標にしていて,今年もたくさん学び続けられたと思う.引き続き "自称" 意識高い系❗️まだ技術講師という仕事を続けているため,顧客満足度の高い技術講師であり続けるために学び続けている.よって「語れる = 教えられる」という目標設定は本当に自分自身にあっている.また2022年も「四半期ごとに」中目標を掲げていて,2022年は以下に取り組んでいた. 1-3月 : 今まで後回しにしていた "もろもろ" を学ぶ 📅 2021年末に Trello の整理をしていたときに「長期間未着手のままになっているタスク」が多くあることを課題に感じた.幅広い技術に興味はあっても時間にも限りがあるため,優先順位が低めのタスクはどうしても残り続けてしまう傾向にある.そこで,1−3月
Parquet ファイルをサクッと読むときに parquet コマンドを使うと便利❗️ Homebrew なら brew install parquet-cli コマンドで簡単にセットアップできる.今回は最新 v1.12.3 を使う.そして parquet コマンドの実装は GitHub の apache/parquet-mr リポジトリにある.parquet help コマンドの出力だと引数まで細かく把握できず,実装を確認する必要がある.実装は parquet-cli/src/main/java/org/apache/parquet/cli/commands/ ディレクトリにある. $ brew install parquet-cli $ brew info parquet-cli ==> parquet-cli: stable 1.12.3 (bottled), HEAD github
HTTP ヘッダーを使ってアプリケーションのパフォーマンスメトリクスをクライアント側に返す仕様「Server Timing」を調べながら試してみた.詳細な仕様は以下の W3C ドキュメントに載っている.ドキュメントの Introduction に載っているけど,今まではクライアント側で "レスポンスタイム" は確認できても「どの段階でなぜ時間がかかったのか」という詳細までは確認できなかったという背景がある.そして Google Chrome 65 以上など,Server Timing をサポートしてるブラウザなら DevTools で可視化できる❗️ www.w3.org Server Timing 仕様 仕様としては HTTP ヘッダー Server-Timing にパフォーマンスメトリクスを設定してレスポンスを返す.フォーマットは以下の通り(W3C ドキュメントを引用). Server
Textual は Python を使って TUI (Text User Interfaces) アプリを構築できるフレームワークで,ドキュメントには "電卓" や "Color Picker" を実装したサンプルが載っている.アプリのデザインには CSS を使う.Python x CSS という技術スタックで,入門しやすくなっているのもメリットだと思う. textual.textualize.io Textual に入門するために Tutorial に載っている「ストップウォッチアプリ」を実装してみた.それぞれのストップウォッチで計測できて,ストップウォッチの追加/削除もできる.また dark モードと light モードを切り替えることもできる.簡単に実装できるし,何よりも楽しかった❗️Textual スゴイ✌️ また以下のギャラリー (Projects using Textual)
英語学習で Speaking と Listening の苦手意識を改善したくて先輩に相談したら「シャドーイングをしよう❗️」とアドバイスをもらった.10年ほど前に(新卒入社した外資系 SIer で働いているとき)一瞬シャドーイングをやろうとしたことはあるけど,数日で挫折してやめてしまった記憶があって,改めてちゃんとやってみようという気持ちになった. 先輩には "シャドテン" を紹介してもらったけど,正直英語学習に使える日々の時間は限られていて,また無理なく習慣化をしたいとも思っていたので,評判の良さそうだった書籍「3ヶ月で英語耳を作るシャドーイング」を使って,3ヶ月間「タニケイ式シャドーイング」に取り組んでみた.2022年8月末から3ヶ月間毎日欠かさず取り組んで,やっと2022年11月に本書の練習教材を終えた🚀 TOEICリスニング満点コーチが教える 3ヶ月で英語耳を作るシャドーイング
仕事でインストラクター(技術講師とも言う)になって4年を超えた.また直近2年半ほどはオンライン研修(リモート研修とも言う)をしている.インストラクターはただスライドに書いてあることを喋るのではなく,教授戦略を練って,インストラクションデザインを考えて,お客様の学びを最大化する.とにかく「やりがいのある」仕事だと思う. 当然ながら,インストラクターとしての「ベストプラクティス」的なものはあれど,最終的にはインストラクター自身の「個性(強みや特徴など)」を活かして研修を提供することが重要になる.個性は多岐にわたる!ただし,インストラクター育成をしながら「それは改善しようか!」と伝えることが多い「振る舞いに関するアンチパターン」がある.強制はしないものの今まで繰り返し伝えていて,今後はブログ記事を渡せるようにしたく,今回「汎化して」まとめることにした. 本題に入る前に注意点を載せておく.あくまで
ID を採番するときによく使われる UUID Version 4 の課題として「順序性がなくソートしにくい」という側面があり,ULID (Universally Unique Lexicographically Sortable Identifier) を使えばソートできるようになるという記事を前に書いた. kakakakakku.hatenablog.com 関連して調査をしていたら,標準化団体 IETF (Internet Engineering Task Force) によって,UUID Version 6, 7, 8 という新しい仕様が提案(ドラフト段階)されていることを発見した❗️UUID Version 6, 7, 8 の目的を簡単にまとめると「タイムスタンプ情報を使ってソートできる ID を採番できるようにする」となり,もしこの仕様が取り込まれると,UUID を活用する幅がさ
ブラウザ操作を自動化して,E2E (End to End) テストやスクレイピングをするときに使えるライブラリ Playwright を試す.Playwright の特徴としてまず「クロスブラウザ」があり,Chromium / Firefox / WebKit をサポートしている.また「複数言語」という特徴もあり,Node.js / Python / Java / .NET をサポートしている.今回は Playwright for Python を前提にする. playwright.dev Playwright の前に 過去の経験を思い出すと,Capybara + PhantomJS で E2E テストを実装していた(2015-2016年頃でなつかしい!).また最近だと Puppeteer や Amazon CloudWatch Synthetics を使う機会も増えている.しかし,個人的
2022年8月に「村上式シンプル英語勉強法」を読み直した.Amazon の購入履歴を見るとなんと2012年(新卒で入社した外資系 SIer に在籍しているとき)に購入していた!当時読んだ記憶はもう薄れているけど,10年たって改めて読み直した❗️って今だと Kindle で 624 円で買えるじゃん〜 村上式シンプル英語勉強法 作者:村上 憲郎ダイヤモンド社Amazon 本書は当時 Google アメリカ本社副社長をされていた村上憲郎さんが,30歳まで英語を話せず,そこからどのように英語を学習をしたかというプラクティスと体験談がまとまっている.本当に読みやすく,文章量も少なく,読むだけならすぐに終わると思う.2022年8月に読み直して,そこからコツコツと本書に載っているプラクティスなどに取り組んでいて,やっと書評記事を書こうと思った. 本書を読むと,とにかく村上憲郎さん学習量と学習時間がもの
データベースのマイグレーションを行うツール migrate を試した.migrate は MySQL / MariaDB / PostgreSQL / Amazon Redshift / MongoDB / Cassandra など,多くのデータベースに対応している.GitHub リポジトリを見るともっと多くのデータベースに対応していることがわかる.他にも GitHub や Amazon S3 に置かれたマイグレーションファイルを直接読み込む機能や Go ライブラリとしてアプリケーションに組み込める機能などもある.今回は MySQL を使ってマイグレーションの基本的な機能を試す❗️ github.com インストール macOS だと Homebrew を使って簡単に migrate CLI をインストールできる.今回は v4.15.2 を使う. $ brew install golang
コードを書き換えず,フラグを使って機能を有効化するプラクティスを「Feature Flag(もしくは Feature Toggle)」と言う.Feature Flag を実現するサービスとして「Unleash」があり,単純に機能を有効化するだけではなく,有効化する条件を設定したり,カナリアリリースもできる.多くの機能が揃っていて,管理画面もある.今まで使ったことがなく「Unleash」を試していく!数記事に分割する予定! www.getunleash.io Unleash Demo まずは「Unleash」の挙動を確認するため,公開されているデモ「Interactive demo」を試す.「Unleash」を導入したフロントエンドアプリケーション(React で実装された SPA)と管理画面を操作できる.管理画面にログインするためにメールアドレスを入力必要があるけど,特に認証は求められず,
フロントエンドのプロトタイプ実装をするときや API を使ったアプリケーションを実装するときなど「ササッと使える API があると便利なんだけどー!」という場面はよくある!本当によくある.今回紹介する GitHub の public-apis リポジトリは,2022年8月時点で「1400 以上」の API が載っていて,使いたい API がきっと見つかるはず! 僕自身は2019年頃から public-apis リポジトリを参考にしていて,今までブログで紹介していなかったことに気付いた!今回は public-apis リポジトリと個人的によく使っているおすすめ API を紹介する.ちなみに GitHub issue を見るとすぐに気付くけど,リポジトリ運営に課題があるらしく,特に今年になって状況は悪くなっていると思う.今後どうなることやら... github.com public-apis
2018年に発表された論文「Ten quick tips for teaching programming(意訳 : プログラミングを教えるための簡単な 10 Tips)」を読んだ.直近は技術講師(インストラクター)として4年間ほどクラウドなどを教えていて,コースによってはプログラミングを教える機会はあるし,2018年までは2年間ほど TechAcademy で Ruby / Rails 講師をしていたし,キャリアとして「今まで」も「今後」もプログラミングを教える続けると思う.そこで,今までの教授戦略を振り返るためにも本論文に興味を持った! (PDF) Ten quick tips for teaching programming 本論文に載っている 10 Tips は以下で,日本語訳は意訳してみた! Tip 1: Remember that there is no geek gene(ギ
プログラミングを教えるときに使える「Parson's Problems(もしくは Parson's Puzzles とも言う)」というプラクティスを最近知った!「Parson's Problems」はコードの各行がバラバラになっていて,インデントも含めて正確に並び替えたら正解になるというパズルのようなプログラミング学習スタイルという感じ.以下に載せた parsons.problemsolving.io のキャプチャ(お題 : 数列から最大値を見つける)を見ればイメージできると思う. 「Parson's Problems」は特に入門者にプログラミングを教えるときに効果的!コードを書かずにドラッグアンドドロップで試行錯誤できて,パズルのように楽しめる.また入門者がコードを読む機会にもなる.入門者にとって,コードをゼロから実装するのは難しく,挫折する理由になることもある.そこで,実際に教育の現場
2000年に発表された論文「The Costs and Benefits of Pair Programming(意訳 : ペアプログラミングのコストと利点)」を読んだ.個人的にペアプログラミングやモブプログラミングの経験はそれなりにあって,メリットとデメリットは理解しているつもりだけど,論文としてどうまとまっているんだろう?という点に興味を持った! 発表されてから20年以上も経過するけど,今読んでも内容は陳腐化してなく,参考になるし,納得感もあった.もし,現場にペアプログラミングなどのプラクティスを導入したくても「ペアプログラミング?単純にコスト2倍で非効率!ダメゼッタイ🙅」なんて言ってくる上司がいたらこの論文を使って説得しましょう!笑 (PDF) The Costs and Benefits of Pair Programming 開発時間は 15% 増えるけど...? 本論文を読ん
Pluto を使うと Kubernetes マニフェストの apiVersion に対して deprecated(非推奨)と removed(削除)を検出できる.警告自体は Deprecated API Migration Guide | Kubernetes を見れば確認できるし,kubectl apply コマンドを実行したときにも表示されるけど,Pluto は実行前に確認できて便利!パイプラインに組み込むのも良し! github.com セットアップ Pluto CLI は macOS なら Homebrew を使えば簡単にセットアップできる.今回は現時点で最新となる Pluto v5.10.2 を前提とする. $ brew install FairwindsOps/tap/pluto $ pluto version Version:5.10.2 Commit:0070fa70364
「Diagrams」を使うと Python コードでアーキテクチャ図を生成できる.サポートされているアイコンセットがとても多く AWS や Google Cloud や Microsoft Azure もあれば,Kubernetes やプログラミング言語なども使える.試してみたけどめちゃくちゃ便利!まさに Diagram as Code だ✌️ diagrams.mingrammer.com セットアップ 「Diagrams」は Graphviz に依存しているため,macOS だと pip と brew ですぐにセットアップできる. $ pip install diagrams $ brew install graphviz 試してみた さっそく Examples を参考にアーキテクチャ図を作ってみた! サンプル : AWS from diagrams import Cluster, D
次のページ
このページを最初にブックマークしてみませんか?
『kakakakakku blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く