2023-01-01から1年間の記事一覧
Goの公式ブログで2023年12月5日に公開されたGo Developer Survey 2023 H2 Resultsを読んでみたので気になったところをメモってみました。 go.dev Goを使って開発している人はもちろんのこと、Goに興味がある人は軽くでも読んでみると新たな発見があり面白い…
ソフトウェアエンジニアのキャリアラダー(特にシニア以上)について理解を深めたかったので、スタッフエンジニアの本を読んでみました。 スタッフエンジニアは誰向けの本か? ソフトウェアエンジニアのキャリアラダー スタッフエンジニアの典型的な4つのア…
React.jsのオフィシャルサイトのLearn React (https://ja.react.dev/learn) を改めて読み直したました。 Reactを学習し始めたときだけでなく、Reactに慣れてきたときこそ読み直すとまた新たな学びがありました。より深くReactを理解して使いこなすためにもぜ…
ソフトウェア開発のエンジニアリングマネージャー(EM)になりたてのときは、EMとしてどういった役割が求められ、何をしたらいいのかわからないことばかりではないでしょうか。 マネジメントは経験学習が効果的な分野ですが、実践だけではなく学びと併用して…
ノーコードツールの bubble で Todoアプリを作成してみました。コードを書かずに小1時間で簡単に作ることができました。 ノーコードツール bubble とは bubbleでつくったTodoアプリの紹介 bubble で Todo アプリを作る ノーコードツール bubble を使った感想…
オライリーから出版されている「プロダクトマネージャーのしごと 第2版」は、地に足がついた実践的なプロダクトマネジメントの本です。本書を読むことで、プロダクトマネジメントの日々の業務に活かせる学びをすぐにでも見つけることができるでしょう。 この…
アジャイル開発では、機能をストーリーという形でタスク分解することで短期間で動くソフトウェアを作り続けることができます。 しかし、チームや開発規模が大きくなってくると、タスク分解したことで全体像が見えづらくなり 「自分たちがどこに向かっている…
ソフトウェアのプロダクト開発をしていると、「XXXという機能がほしい」、「顧客がYYYをほしいといっていた」、「ZZZもやる必要がある」といったように、何をつくるか?といった解決策に目が向きがちです。 しかし、多くのプロダクトマネジメントの書籍では…
プロダクトマネジメントについて網羅的に学べる「プロダクトマネジメントのすべて」の要約記事です。 「プロダクトの軸がない」、「プロダクトマネジメントがいまいちうまくいっていない」、「プロダクトチームがいまいちワークしていない」といったことはな…
プロダクトマネージャーのバイブル的な本として有名な「INSPIRED 熱狂させる製品を生み出すプロダクトマネジメント(第2版)」の要約記事です。 書籍内では、シリコンバレーで行われているIT企業でのプロダクトマネジメントの手法が紹介されています。 プロ…
プロダクトマネジメントにおいて有名な書籍はいくつかありますが、ソフトウェアのプロダクトマネジメントの基本を短時間で学ぶために「ゼロから始めるプロダクトマネジメント」という書籍を読みました。 「プロダクトマネジメント」という言葉は知っているが…
Zenn Bookの「つくりながら学ぶ!AIアプリ開発入門 - LangChain & Streamlit による ChatGPT API 徹底活用」をやってみました。 Pythonにあまり詳しくなくても、PythonのLangChainとStreamlitというライブラリを使い、とても簡単にChatGPTを使ったAIアプリを…
ChatGPTのCode Interpreter を使って、kaggleのタイタニックのデータ分析をしてみました。 タイタニックが有名なモデルな可能性がありますが、「データ可視化」、「データの前処理」、「複数のモデルのトレーニング・精度比較」、「生成したモデルでの予測」…
Rustでいろいろなエラー型のエラー処理が大変だなと感じる場合は、dtolnay/anyhow を使うことで簡単にエラーハンドリングをシンプルにすることができます。 この記事では、anyhowの主要な使い方を3つ紹介しながら、どれだけ簡単にエラー処理を実装できるかを…
Rustで独自のエラータイプを実装する必要がある場合、dtolnay/thiserror を使うことで簡単にカスタムエラータイプを実装できます。 この記事では、thiserrorを「利用した実装」と「利用していない実装」を比べることで、どれだけ簡単にカスタムエラータイプ…
RustのWebアプリケーション開発でよく利用するクレートをまとめてみました。 選定方法は、awesome-rustや各リポジトリのスター数などから独断と偏見で記載しています。あくまで個人的な見解なので、「こんなのもあるよ」「ここは違うんじゃないの」などあれ…
開発をしていてRailsやRSpecの起動がなんか遅いなーと感じることはないでしょうか。 はじめは遅いと思っても次第に慣れていってしまいがちですが、日々の開発を通してRailsやRSpecの起動は何回も実行するので塵も積もれば山となってしまうので改善したいもの…
Writing an OS in Rust は、ステップバイステップでRustを使って軽量なOSを作成するチュートリアルです。手を動かしながらOSを少しずつ作ることで、カーネル、CPU割り込み、メモリ管理といったOSの基本的な仕組みについて理解を深めることができます。 OSの…
「メタプログラミングRuby 第2版」はRubyをより深く使いこなすための素晴らしい本ですが、理解を深めるには実際にコードを書いてみることが不可欠です。読者向けの練習問題集がGitHub - kinoppyd/reading-metaprogramming-rubyに公開されているので、手を動…
Railsの初期化プロセスは複雑で、数多くのステップが絡み合っています。この記事では、その複雑さをステップバイステップで確認していくことで、Railsの初期化順序を理解できます。そして、Railsの初期化にまつわる改善やバグ解消を行いやすくなるでしょう。…
ログはとても重要ですが、機微情報を出力してしまうとすると大きなリスクにつながります。Railsではconfig.filter_parametersとActiveSupport::ParameterFilterを用いてリクエストパラメータやカラムの値をフィルタリングしています。この記事では、具体的に…
isucon.net 2022年に開催されたISUCON12予選を「ISUCON12 予選の解説 (Node.jsでSQLiteのまま10万点行く方法) : ISUCON公式Blog」をみながら試してみて、SQLiteのままRuby実装で86,910点(予選No1水準)までいけました。どのような流れでスコアを高めていけ…
RustのWebアプリケーションの開発に慣れるためRustのactix-webとdieselを使ってMedium.comクローンを作ってみました。作り方は、 https://github.com/gothinkster/realworld リポジトリのRustの実装を写経しました。この、Medium.comクローンではAPIは20API…
プロファイラを活用することで、プログラムの実行速度や使用リソースの収集ができます。そして、プロファイル結果を解析することでコードのボトルネックを把握し、プログラムのパフォーマンスチューニングを効率的に実施できます。 プロファイラとは何か プ…
VSCodeのショートカットキーを活用することで、プログラミングの作業効率を向上することができます。 この記事では、普段の開発作業で使える有効なショートカットを紹介します。キーバインドを覚えるのは大変ですが、マウスを使わずVSCodeのショートカットを…
現時点でChatGTP-4の最新の学習データは2021年9月 1になっており、それ以降の情報は聞いても教えてもらえません。 例えば、次のようにGitHubの llama_indexリポジトリについて聞いてみた結果「詳しく説明できません」と回答されてしまいます。 GPT-4にllama_…
Rustのアトリビュートは、関数や構造体などの項目に追加情報を注釈することができる強力な機能です。 Rustのアトリビュートを使いこなすことで、コンパイラへの指示やテストの効率化など、幅広い分野で活用できます。 この記事では、アトリビュートの使い方…
Rustでは、他の言語のようにnullや例外(Exception)が存在しません。 その代わりに、Rustは「値の存在有無をOption型」、「処理の成功・失敗をResult型」で扱います。また、回復不能なエラーが発生した場合にはpanic!でプログラムの実行を中止させることがで…
Rustの所有権について、初心者でも理解しやすいようにわかりやすく整理してみました。 本記事では、基本的な所有権の説明から具体的な使い方まで、分かりやすいサンプルコードを交えて解説します。Rustの鍵となる所有権の概念を楽しく学びましょう! Rustの…
Rustプログラミングの学習を始めたばかりのあなたへ。実務で活躍できるレベルまでスキルを磨くための効果的な学習ステップを解説します。 本記事を参考に、Rustの知識を確実に身につけ、実務で役立つスキルを習得しましょう。 Rustを学ぶ(公式サイト) ステ…