今日学んだこと

読書感想文とか、勉強した内容とか

趣味プログラミングの勧め:仕事しながら1週間で作ったサービスを紹介してみる

2019/1/1追記:メンテの気力もなくなり、でもサーバー代はかかっており・・・という状況なのでクローズしました

 

1週間ほどブログの更新をサボっていたんですが、何をしていたかというと新しいWebサービス作ってました。

作ったもの

http://www.programmerprofile.net/

f:id:nakazye:20150207185352p:plain 

ソースも公開しちゃうよ!


nakazye/ProgrammerProfile · GitHub

何コレ?

プログラマーツイッターアカウントを言語毎に並べ立てるサービスです。コンセプトだったり作ったきっかけだったり諸々あるんですが、それは正式リリース時にとっておきます(Topに書いてある通り、まだα版の位置づけ)

 

趣味プログラミングのススメ

ここからが本題。

デザインが酷いとか、コードが投げやりとか、色々意見はあるかと思うんですが、一応動いてます。

コレ、2/1(日)の23時から開発始めたので、休日無しの仕事しながら1週間でここまで持ってきた感じです。今日も作業しましたが、デプロイとデータ登録くらいです。その代わり、ここ一週間夜はほとんどコーディングに当ててましたが。

仕事しながらでもできるよ!

何が言いたいかというと、完璧を求めなければ、これくらいのレベルなら、1週間くらいで作れちゃうんですね。

例外を握りつぶしてたり、変数名が実態と合ってないのを放置してたり、見た目以上にコードも酷かったりしてますが、動いてます。

1週間でできたというのは、前提として「仕事でプログラムやってる」というのがでかいですが、それでも1ヶ月も言語学べば、そのあと1ヶ月かけてこれくらい作れちゃうんじゃないかなぁと思ったりもします。

プログラマの素質は怠惰であること

って言ったのはラリーウォールでしたっけ?

怠惰に素早くもの作りする為に、世にある便利ツールを利用してます。

Django

僕は仕事でJavaを使う事が多いんですが、趣味ではpythonをよく使ってます。そのPythonでWebアプリ作る際に使っているのがDjangoと呼ばれるフレームワーク

Javaで同じもの作れと言われたら、多分倍から3倍時間かかってるかと思います(Javaが悪いわけでは無いです。大規模開発Pythonでやれと言われたら、逆に3倍以上の時間を費やす気がします。)


Django を体験しよう | Djangoと日本の仲間たち

bootflat

僕はデザインのセンスが全くもってありません。悲しくなるくらいありません。なので、世にあるアセット化されたものを利用しています。


Documentation - Bootflat

これがなかったら、1ヶ月かけても終わってなかったでしょう。

heroku

自分でサーバーを立てたり借りたりして、必要なものをインストールして、セキュリティリスクのあるソフトを無効化して・・・と自分でやると、それだけで数日かかってしまいます。

ソースを配置(git push)するだけ。それだけでサービスが公開できるherokuはホント革新的だと思ってます。

インフラ構築を勉強したいというなら別ですが、やりたい事がアプリ開発であれば、やりたい事だけに集中できる。


Heroku | Cloud Application Platform

これがなければ公開が1週間伸びてたかと思います。

new relic

一般的にはパフォーマンス監視ツールとして認識されてるかと思いますが、勢いでアプリを作った時にはエラー情報収集ツールとしてものすごく役立ちます。

f:id:nakazye:20150207193111p:plain

エラーが出たらアラートを出してくれて、かつ分かりやすく教えてくれる。これがなかったらバグ対応に倍時間が取られるんじゃないかなぁと思ってます。


Application Performance Management & Monitoring | New Relic

まとめ

最近は、そこそこのモノを作るのであれば楽して短期間に開発する事が可能です。

もちろん、時間をかけて作り込む事もできます。僕もここから改善をかけていこうと思ってますし。

何か、「こういうサービスがあったらいいな」というアイディアをお持ちでしたら、是非作ってみてはいかがでしょうか?

すでに知識がある人は、やってみると意外にサクッとできちゃうかもしれない。

言語から学び始める人は、作るからには凄いものをと肩肘張らず、このレベルで公開することを目標に頑張れば、割とすぐに達成できちゃうかもしれない。

趣味でのモノづくり、やってみませんか?

 

最後にお願い

1週間でできる事の実例をと思い、機能的にまだまだ不足しつつ、テストも完全ではない状態でこの記事を書いてます。

もし、動作がおかしいところを見つけましたら、ツイッター@nakazyeか、このブログのコメントなりで教えていただけると大変助かります。

また、このサービスのキモである「世のプログラマーの情報を集めたい」の情報が全く集まっていません。

「この人○○言語に詳しいよ!」という情報がありましたら、是非登録をお願いできないでしょうか。

f:id:nakazye:20150207192707p:plain

C#に詳しそうな人をTwitterで検索しよう!と思った時に、C#を単語として認識してくれず、かなり悲しい思いをしました。そんな人が、このサービスでフォローする人を探せたらなと思ってます。是非、ご協力をお願いします!

最後にURLをもう一度:

http://www.programmerprofile.net/

右上のログインメニューからサインアップお願いします。連携時に出てくると思いますが、勝手にツイートとかは権限の関係で不可能なので安心してご利用ください

追記

思ってた以上に沢山のアクセスを頂き大変感謝してます。早くβを名乗れるように、頑張って作業します。

なんどもクドイかもしれませんが、このサービスが有益なものになるか否かは、どれだけ情報を提供して頂けるかにかかってます。有名人じゃなくてもいいんです。その言語を使って何かやられてる方の情報を1人でも良いので登録頂けると助かります

もちろん、あなた自身の情報も大歓迎です(自薦推奨です!)