見出し画像

1年間web開発してみた知見のまとめ

はじめに

こんにちわ。ぴくむんです。

私は、自身の才能のなさからプレイヤーとして研究に関わるのを諦め、未来の研究者を支援をする活動を通じて、学問の世界に貢献しようとしている情報発信者になります。

活動としては、
・研究者を目指す方に役に立つような情報発信
・研究に関わりのない人が研究に興味を持ってもらうような記事の作成
・博士課程のための口コミサイト開発
をメインでやっております。

今回は、自身の開発していたwebページ

の開発が約1年が経過したので、得られた知見をまとめようと思います。

開発の内訳

2021年6月 DjangoのHello world
2021年10月 AWSの初デプロイ

初デプロイ

2022年4月 現在の大元になる形に改修
2022年9月 デプロイから一年経過

技術面に関して

自分は研究でPythonを使っており、その流れでDjangoに惚れ込んで、Django一択で開発を進めてきましたが、これがなかなかしんどかったです。理由としては、日本語ドキュメントor 個人ブログの少なさにあります。なので、本当のweb開発初心者はドキュメントが日本語ドキュメントが充実しているRuby on Railsから始める方が挫折するリスクが減るのではないかと思いました。

個人的にすごくしんどかったのはインフラ関係、特にデプロイがしんどかったです。
具体的に言うと
・デバッグモードをFalseにした瞬間に世界が変わってしまう(static, media)のpathが変な感じになる。
・本番環境ではrunserverが使えない
・Appatch, gnucorn, Nginx なんそれ?
・AWSインスタンス?なんそれ?
どんだけ覚えることあんねん!!!

ってなります。というかなりました。
なので、初デプロイする時は、ガッツリ時間(工数)を取ることをお勧めします。
「webページできたー!よしデプロイしよー」
と言うような仕事終わった飲みにいこう的な感覚でデプロイを捉えてると超萎えます。

あとhttps化を舐めないこと、お金払うのであれば問題ありませんが、自分みたいにお金使わないガチ勢は、https化に関しては割とめんどくさいことになります。
自分もかろうじてhttps化できていますが、人に指南できるほどできていないので、いつかまとめたレポートをかけたらと思います。

運用に関して

ここが一番この1年間で勉強になりました。
開発者がwebサービスを運用するとなるとものすごく視野がイカレてしまいます。
「自分がこの機能一生懸命実装したから、ここをアピールしよう!」
みたいに、自分の頑張りを見て見てになってしまいます。
しかしながら、ユーザーからしたら、開発者の頑張りなんてしっちゃこっちゃないのです。UIが使いにくければ即ブラウザバックされます。
そこにユーザーとの温度差が生まれやすいと思いました。

開発をしていて、「誰も使ってくれないんだよねー」って他の方に愚痴ったことがありますが、
「あなたのサービスはなくても誰も困らないからね」
と言われたことがあります。

これ、かなり芯を食った答えになると思います。
web個人開発初心者にありがちなのは、開発したプロダクトを人に見て見てって言いたくなります。
知った仲であれば問題ありませんが、大衆に対してそれを行うと基本的にはそれは「クソムーブ」になると思います。

知らない人がいきなり目の前で「僕のヨーヨーを見てください、このヨーヨー使ってください」と見せてくるようなものです。ヨーヨーに興味がない人にとっては苦痛でしかないし、興味ある人にとっても余程のハイレベルでないと、ウザいだけだと思います。

なので、個人開発において運用する心がけとしては、ストリートミュージシャンを参考にするといいともいます。
とりあえず、誰もいなくても歌い続けるのが基本だと思います。
無闇に声かけはしない方がいいかもしれません。
基本は相手が自分の前で立ち止まってくれるのを待ってからだと思います。

モチベーションに関して

人間は人のためだと頑張れるパターンがありますが、基本的にそれは顔が見えている場合にのみ有効だと思ってます。
顔が見えないような人物に向けて1年以上モチベーションを保つのはかなり難しいと思います。
かといって自分のためだけだと自己満足で終わってしまうので、重要なのはバランスだと思います。

私自身以下のような記事を書くぐらいモチベーションに関して悩みましたが、

現在は、自分が実装していて楽しい機能、自分が使う機能に工数をかけるように心がけています。

基本的にユーザーが使うことは2の次で考えていて、とにかく自分ファーストで開発を続けていて、時々、ユーザーのためのUI向上とかやるかーという感じで、基本は自分ファーストです。

恐らくユーザーが増えてきたら、ユーザーの方に比重を置いていけば良いのであって、ユーザーが0の段階で、ユーザーをモチベーションを置くのはお勧めできません。

一年で得られた成果

・デプロイできるようになったこと
・自分が想像していたようなwebページが作れていること(UIは終わってる)
・SPAちっくな機能を導入できたこと
・httpsを導入できたこと
・web開発に必要な技術の基礎が大方身についた気がする
・以上の知見が得られたこと

次の一年の目標

・RESTフレームワークを導入すること
・Unityのメタバースを進化させること
・UI向上(スマホ対応)
・メール認証系を強化
・ソーシャルログイン機能の充実
・セキュリティ関係

最後に

1年前の自分と見比べるとだいぶ成長したなっと思います。
来年の今頃似たようなレポートを書きたいと思いますが、どうなっているかわかりません。せめて、web開発を続けていることを切に願って、このレポートを締めようと思います。

これまで自分の活動に携わってくれた方ありがとうございました。
これからも自分のできる範囲で何かをやっていくので、これからも対応して頂けたら嬉しいです。
今後ともよろしくお願いします。

最後まで読んでいただきありがとうございました。


この記事が気に入ったらサポートをしてみませんか?