出来たという実感

最近よく気になっていることに「終わらせるスキル」ということがありまして。
なんかTwitterでそういった話をよく聞くんですね。

とくに絵描きさんとか、本作る人とか、「とにかく公開してしまう」「質は低くても、本にしてイベントに間に合わせる」とか。
プログラム作る人の話でも、不完全でもサービスとして公開するとか。
クリエイターの人の言葉でも、似たようなニュアンスの「いままで、何をやってたかじゃなくて、いままで何を完成させた」とか。

実際仕事でプログラムとか作ってて、感じるんですよ。
あ、おれ仕事ちゃんと終わらせてないかも。って。

いろいろプロダクトのスタートは参加してるんですが、中盤以降、詰めにかかると後から来た人に投げちゃっって別の仕事開始とかよくやってましたね。最終的に作りかけの機能そのまま放置であとヨロシクとかもありました。そりゃ、残された人は敵わんですね。お陰でかなり言われました…。

実際今の仕事も終わりが見えなくて辛い。
しばらくは足元を見て一歩一歩踏みしめていくしか無いと思い作業をしてきました。その間は結構いいんです。
でも、終わらせろと言われて顔を上げてゴールを見るとあまりにも理想のゴールが遠すぎて心が折れそうになってるんです。
やっぱり、足元見てたほうが気は楽なのかもしれませんね。こうやって遠くを見渡せないから、マネージャー業務が向かないんでしょう。それができるとは自分も思わないし、出来ないやつといった評価もくだされた気もします。

で、なんか成果物を作りたいってことでぱっと思いついて、こんなん欲しいと思ったやつを(超簡単だから)作って見ようかと思って。
仕事中に作ってみようかと思い立って。

要はゲームの攻略サイトみたいなものですが、SaGa スカーレットグレイスやってて、産業開発ってのがるんですよ。

http://kamikouryaku.com/saga_sg/?産業開発(特産品開発)

わらしべ長者見たく、藁からスタートして、世界中の町で交換をしていき、たくさんの特産品をつくるって道草要素です。
(なお、報奨はトロフィーのみ。強い武器とかそんなものは無い)
で、渡されるのは藁×99、藁から交換できるのは、世界中のなかで2つの町だけ。
その交換した品から次のは…

うーん、攻略サイトはあるけど、「この品を作るには何が必要か」しか書いて無くて、「これから何がどこ行けば作れるか」って情報が無かったんですよ。そりゃページ内検索を使えばできんことは無いが、面倒。

というわけで、プログラムにお願いだ!ってことで作ろうとしてみました仕事中に

とにかく、簡単に作りたいと思ったので、いま実際仕事で使ってるC# 4で。
ホントはC# 7でやりたいところだけど、環境構築はこの際パス。
他の言語の学習がてらとも思ってちょっとだけNode.jsもやろうとしたけど、いまはそうじゃない。作ることだ!ってことでパス。

Webで見るようにできるのが楽なので、せっかくアカウント作ったAzureに載せるように、Azureの無料サービスを使用。
Web+C#なら、ASP .NET MVC 4 で。
ホントは6とか、Coreとか使いたいけど(以下略)

クラスの設計は、
名前(キー)、生産地、Listで必要品ぐらい。

もうキーも文字列で構わん。
データはWikiからコピペでCSV化。この辺もさくっとできればかっこいいけど、コピペとほぼ手作業で。悔しい。
ファイルを読み込んでオブジェクトのリスト化してしまう。

まずは全体のリストを表示。
ASP .NET MVCは2を仕事で使ってたのでフレームワークとして慣れてるので、4になってもほとんど変わっておらず。
テンプレートがRazorになっただけ、こっちのほうが書きやすい。

で、特産品にリンクをはって、Action追加。
引数に特産品名を渡して検索。

全体のリストから、LinqつかってWhereで該当する特産品を取得。
これが欲しいってときに、どこで何を使えば作れるかが一覧で見えるように。

「特産品の一覧うち、素材の中に対象の名前がある素材だけ取得する」

で、必要生産品を取得して、作成できる特産品名と地名を一覧表示。
これで、これをもてったら何が作れるかがわかる。

で、それを作るページも無事表示できました。

はい、これで終わり。
デザインも素のHTML、昔ながらのTABLE使いまくり。
いいんです、機能は実装出来てます。見た目こだわると終わりが見えません。

というわけでAzureにデプロイ。
デプロイ、かっこいい!イケてる開発者みたい!!
それが、便利なことにAzure、FTPからのアップロードができるんですよ。
管理画面から、ログインユーザとパスワードを設定して、HOSTアドレスがあればFTPは接続できます。

また、これがですね、VisualStudio2010にもWebアプリケーションを「FTPで発行」できるんですよ。
さっきの設定を入れて、発行を押せば、ビルドして必要そうなファイルをぽいーー。

これで見れる!とおもったらエラー。
エラー内容を見れるようにしたら、DLLが足りないと。
確かにアップロードしたファイルにDLLがなかったんで、参照の設定からローカルコピーをTrueにしたらOK
最終的に、CSVがアップロードされてなかったんで、そっちはさっさと動かしたいからFTPで直アップロード。

これで動きました。やったね。
http://lyunesdotnet.azurewebsites.net/
https://github.com/lyunes/SaGaSGIndustry
(改めて見直すときたねーソースだなwww)

で、昨夜お家帰ってから実際使ってみたところ、わりと好感触。
そりゃ自分が欲しいデータを欲しいように出せますからね。

なんかすごい、「満足」出来ました。あ、おれ、色々できるかも!!

ちょっとした「出来たという実感」を得られたことは、なんかすごい自信になりました。
実際、滞ってた仕事ができそうな気がするって今日出社出来たし。
(結局、別の修正をしてみようってことになってそっちでほとんど潰れたけど)
とはいえ、手を動かせば解決するってことを再認識出来たのは本当によかったです。なんか自信付いた。

今後もなんか躓いたら「簡単なアプリを公開する」みたいなことしてみよう。

・・・こないだTwitterで見た
本題 進捗 20%
息抜き 進捗 40%
息抜きの息抜き 進捗 80%

みたいにならないようにしないとね・・・
スポンサーサイト

trackback

comment


<<MM3はーじまーるよー HOME TOP 雑記>>