WindowsでもMacのUS配列キーボードが最強なわけ

WindowsでもMacのUS配列キーボードが最強なわけ

 コードを書く人間なら、キーボードにこだわりたくなるものだ。ノートPCをメインにしている場合はキーボードを変えることは難しいが、それでもJIS配列かUS配列など一度は考えたことがあるはずだ。 このサイトで何度も書いている通り、プログラミングのほとんどは試行錯誤の繰り返しで作り上げてい …

RustでgRPCが最速か?1msを追い求める

RustでgRPCが最速か?1msを追い求める

 リクエストからレスポンスまでの時間はなるだけ短いほうがいい。ユーザー操作性的にも好ましいし、昨今ではリクエスト~レスポンスまでの時間で課金されるクラウドサービスも多い(GCPのCloudRunとか)。特にマイクロサービス設計の場合は、リクエスト~レスポンスまでの時間がより重要にな …

非認証APIのアクセス対策(粗大ごみセンターのシステムの例)

非認証APIのアクセス対策(粗大ごみセンターのシステムの例)

 前回の記事で書いたとおり、全くユーザーが動作させる機能がないようなコーポレートサイトやLPサイトは静的サイトで作成するほうが、あらゆる面でメリットがある。ところがそれら以外の普通のWEBシステムでは、バックエンドでの動的な処理が必要なはずだ。今回はそのセキュリティの話。 バックエ …

静的サイトホスティングは万能か?

静的サイトホスティングは万能か?

 WEBサイトって一般的にブラウザがHTMLやCSS、Js、その他画像などのファイルを読み込んで描写されているものを言うよね?一方Webサイトを作成するには、Webサーバーが必要という。特に有名なCMSであるWordPressではサーバーでPHPやデータベースが動作してサイトが構築 …

リーダブルコードを意識して人に優しく

リーダブルコードを意識して人に優しく

 リーダブルコードを心がけよう。ってよく言われてきた。このサイトでは処理の書き方とかにそこまで拘らずとにかくプログラミングすることが重要だってさんざん書いてきた。初心者のうちはラムダ式とかinterfaceとかそういう知識より、とにかく何かを作り上げることが重要だということ。一方 …

Dockerのヤバさを再認識

Dockerのヤバさを再認識

 前回の記事に引き続き近年の大前提ツールであるDockerについての説明。この記事は初心者プログラマ、上達できない人向けの記事だ。なのでGitやDockerについて詳しい人は読む必要がない。 なお前回の記事と同じく、Dockerが存在しなかった時代の不便な実体験を紹介して、その利便 …

Gitがなかった時代はみんな頭悪かった

Gitがなかった時代はみんな頭悪かった

 この記事は初心者プログラマ、上達できない人向けの記事だ。なのでGitやDockerについて詳しい人は読む必要がない。できる限り小難しいことは書かずにその特徴を書きたい。  プログラマをやっていく上で絶対に避けて通れないのが、GitとDockerだ。なぜこの2つをまとめて紹介してい …

RESTfulなAPI。それは魔法です。

RESTfulなAPI。それは魔法です。

 では最後の工程。何かWebAPIを作ってみる。前回の記事では、pythonでWebAPIのリクエストとレスポンスを作ったけど、今回は一般的なWebAPIの構造をやってみる。 究極魔法「RESTful」  何年か前からWebAPIは、***RESTful(REST)***という構造 …

特定の箇所を自分でいじって。それがWebAPI開発上達の基本

特定の箇所を自分でいじって。それがWebAPI開発上達の基本

 WebAPIを理解する上で、前回の記事と前々回の記事で、通信、サーバー、Webサーバーなどの話を書いてきた。今回は最深部であるアプリケーションの話。 アプリケーションというと、スマホの「アプリ」を思い浮かべてしまう人もいるかもしれないけど、広い意味で「ある特定の機能や目的のために …

Webサーバーが出来上がるまで

Webサーバーが出来上がるまで

 今回からはWebAPIを作ってみようと思う。このサイトのコンセプトに沿って、作成するためのサンプルコードを上げるのではなく思考のプロセスを中心に書いていく。完全な初心者、または、なかなか上達出来ずに悩んでいるエンジニア向けの記事なのであしからず。 前回の記事でネットワークについて …

HTTP通信の基本をイメージできなければバックエンド実装は何もできない

HTTP通信の基本をイメージできなければバックエンド実装は何もできない

 WEBのフロント実装やスマホアプリ開発、デスクトップアプリ開発など、目に見えるフロント開発やそのUI処理の実装はイメージしやすい。だっていじって表示や動きを確認、またいじって確認という感じで、わかりやすいから。実際にはフロント開発は奥が深くて難しいと思うけど、サーバーサイド(バッ …

リファクタリングが自分を成長させてくれる

リファクタリングが自分を成長させてくれる

 前回の記事では、どんな初心者でも「投票システム(フロント)」を実装できるっていうことを紹介したんだけど、当然ググってコピペ、そのコードをひたすらコピペで量産では、ごみコード(またの名をウンコード)になるのはいうまでもない。なので前回の状態からレビューをしてくれる架空の先輩エンジニ …

え、ウソ!?プログラミング簡単すぎ!

え、ウソ!?プログラミング簡単すぎ!

 前回の記事で紹介したプログラミングの思考プロセスを使って、実際に何かを組んでいく様をお見せする。この思考のプロセスは基本的に汎用性があるので、真似してくれたら間違いなく上達する。前回も書いたがこの記事は、なかなか上達しないと悩んでいる初心者をターゲットにしているのでご注意を。 今 …

プログラミング下手な人、変わりたいならまず

プログラミング下手な人、変わりたいならまず

 近年のプログラミングって一体何をしているのか。どのようなプロセスを経ているのか。多くのできるエンジニア・プログラマーは教えたくないのか、教え方がわからないのか、はっきりと説明してくれない。だから初心者エンジニアはなかなか上達できずに悩んでしまうのだ。これからの数回の記事を読んでも …

まずはこれだけ!VSCodeのショートカット操作!

まずはこれだけ!VSCodeのショートカット操作!

 ようやくプログラミングを開始するかと思いきや、まだまだ効率的操作について書きていく。前回の記事VSCodeとVimバインドについて当たり前のことを必死に説明したが、まだVSCodeの基本操作だけ書いていなかったからね。 VSCodeの知ってないとまずい操作  この記事の対象は超初 …

いいから黙ってVSCodeとVimバインド

いいから黙ってVSCodeとVimバインド

 さてついにプログラミングを始めるわけだが、あなたはまずエディタを用意する必要がある。要はプログラムコードを書き込むツールだ。エディタと呼ばれるものとIDEと呼ばれるものがあるが、とりあえずはエディタの方を用意しよう。  この記事によると2021年 …

初心者プログラマは基本動作だけで年間66時間以上も損しているかも?

初心者プログラマは基本動作だけで年間66時間以上も損しているかも?

 プログラミングの学習って何からスタートするべきと思う?Javaとかで、変数とかforとかifとか?そんなもんは後からでいいんだよ。何から手を付けるべきかというと、プログラミング作業時の将来の時間コストを削減することだ! プログラミングってのは、実装を頭のなかでイメージして、そのイ …

誰でも短期間でプログラマになれる

誰でも短期間でプログラマになれる

 まず私について。これまで長くシステム業界で働き、現在もシステム会社経営しながらプレーヤーとしても活躍してします。子供のころの趣味のプログラミングも合わせると17年以上パソコンカタカタを続けているので、この知識や経験を共有したいと考えてサイトを開設しました。 また、私はWEB開発、イ …