見出し画像

独学プログラマーの独り言💬 NO.015

今週の独り言💬

今年の気付けば、10月から数えるとあと3ヶ月なのですね。早いものです。今年はいろんなことが起きて、個人的にもバタバタとしていることが多い一年なのですが、そんな時間の中でも少しずつでも成長していけるように毎日本を読んだり、勉強したりしています。特に大きな変化と言えば、最近になってようやくAWSの使い方がわかってきたことでしょうか。Djangoでの開発に加えて、クラウドサービスが使えるようになったことはかなり大きな変化でした。何せ自分でサーバーを立ち上げたり、ドメインの設定をしつつ、ウェブアプリが正しく動作しているかだったり、セキュリティ対策を構築しないといけないわけなので、短い期間の環境構築とはいえ、目をギンギンに疲れさせながらも毎日ちょこちょこ進めてきたわけです。そういった変化もありつつ、中には「これはもう手を引こうかな」という分野もだんだん見分けが付き始めています。例えば、DevOpsをどう築いていくかということを考えた時に、そもそもDevOpsという技術がツールだけを頼りにしているわけではないということを知り、JenkinsやDocker、構成管理ツールが本当に必要なのか?という疑問を抱き始めたりしているところです。これだけ便利なツールがあったとしても、個人的な時間や技術面での制限があることを考えたときに、チーム開発などの大規模開発に関しては、このようなCI/CD関連のツールは必須なのかもしれない。だけど、シンプルにGitHubでバージョン管理ができたり、バックアップを上手く活用すれば、Dockerや構成管理ツールはそれほど個人開発においては重要視しなくてもいいのではないか?と考えているのです。そんなことを思い始めたのはJavaScriptのフレームワークを勉強しようか考えていたことがきっかけでした。React.jsを学べばNext.jsを学ぶ必要もあるだろう。それらを使うには当然Node.jsでのコンパイルがなければかなり不便になる。それを考えると学習ハードルよりも環境構築のハードルが高くなってしまうというのは多くのプログラマーやエンジニアが感じていることでもあるようです。僕もいざJavaScriptの学習を進めていると、「VanillaJS」でいいかなと思ってしまうことが日に日に増えてきています。Web開発においてはフロントエンドフレームワークをどれだけ活用すべきかという問題は、まだまだ結論には至らないかもしれません。個人的にはMUIもChakla UIもアプリのマテリアル化だったり、チーム内におけるデザインの均一性を考慮すると活用するメリットは大きいかもしれないけれども、あまりにも時間がかかりすぎてしまう。それよりもシンプルにコンパイルなどが不要なVanillaJSを使えば、アクセシビリティーの面においても使い勝手は良くなりそうな気がしているのです。今年のWeb開発に関する学びとして、バックエンドはPythonやJavaを使い、フロントエンドはVanillaJSで開発する。小規模の開発であればインフラ環境はAWS Lightsailで十分事足りる。そしてNginxやGunicornを導入し、自らセキュリテイー対策を導入することで、ユーザーにとっても安心安全なネットワークコンテンツを活用してもらえるようになるということ。ここまでくるのに4年くらいかかりましたが、これが短いと考えるべきか、長かったなあと考えるべきかは良く分かりませんが、とにかく本当に今年は色々変化が多かった一年で大変だったけど、それはそれで充実していたのではないかと思います。

💻 Web Developer Yoshitaka Kai
🌐 https://yoshitakakai.net


ゆるくゆるくいきましょう♪