hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

学生時代にホームページ作成の仕事を請けてもなかなか完成しない、というのがあるあるだよねと喋っていた。自分の場合どんなステップがあったか。

  • プログラミングを始めても、当面は自分で使って遊んでみたら満足
    • 小学校の理科室にBASICが動くパソコンがあったので、10 PRINT "UNKO": GOTO 10とがんばって書いていた
  • 思いついたコードをブログにペーストして紹介する、という発表もしていたけど、これは半分くらいはレポートを書くのと同じ。その場で使えないため
    • JavaScriptを使えるようになるとその場で遊べるようになる
  • 友達とライブラリやCLIツールを作る時代があった。これはOSSにしていてGitHubでPull Requestを送ったり、友達の家でピザを食べたりプレステをやったりしながら作っていた。ネットの世界でバズらせたいというよりは、自分たちで使って満足していた。
  • 勉強会で知り合った人たちとOSS開発に参加する時代もあった。テストのカバレッジを上げることに夢中になって、研修所を借りて開発合宿をやったりした。Lingrに開発会議所があって雑談しながら作ったり相談したり。便利な機能を思いついて提案する、というサイクル
  • 授業でチームを組んで作ることもあったけど、あんまりコラボレーションした記憶がない。分担、持ちより、が主だった気がする。言語処理型を作る課題では、トークナイザと意味解釈をする分担になるもののお互いインターフェイスは気にせず進めていて最後まで決して完成しなかったような記憶がある
  • バイト先で知り合ったデザイナの方とWebサービスを作るとか、ネットで知り合ったデザイナ友達とペライチのページを作る、とかしていたのがかなり楽しかった。プログラミングはできるけどデザインはわからない、という人と、デザインはわかるけどプログラミングは分からない、という組み合わせなので、協力しないと完成しない。
    • 良いものを作ってはてなブックマークのトップに出ると良いな、とか、1000usersになるといいな、みたいな軸で活動していた。自分たちで使うのも重視していて、毎日使ったり、デザインをTシャツにして着たり。アフィリエイト広告で収益化したり。
    • ネットでの発表を重視すると、titleタグとか、ogpの設定とか、気にすることが増えてくる。
  • いろんな人が、5万円、とか、野菜をあげるから、とか、さまざまな条件でホームページ作りの依頼を安請け合いしてしまい、全然完成しない、だんだんフェードアウトして話が終わってしまう、という現象を見ていた。破綻しかけたプロジェクトを何度か完成させに行った記憶がある。
    • 情報系の大学に通っていて、IT企業でバイトしていたので、どちらに所属する人もある程度の知識があり、それによってホームページ作成の依頼が来るのだけど、それでも完成しない
  • 完成させるには、すべての工程を終わらせなければならない(工事中のままリリースにはできないため)ので、画面設計、コーディング、デプロイ、というぜんぜん違う3つのスキルが求められる
  • もう一つ持つのが難しいのは、スコープのコントロール(何を作るかを関係者と合意する)で、お客さんの要望通りに作業し続けると、何年間でもリリースしないまま作業を続けることができる。ソフトウェア開発のプロとして、これは大事だから作りましょう、これは省きましょう(ページ数は減らしましょう、とか、CGIを置くとPHPのバージョンアップなど苦労するのでメールへのリンクにしましょう、とか)、と、作るものをはっきりさせないといけない。
  • 技術的なマネジメントも必要で、Googleマップの置き方が分からなかったら、手書きのイラストを掲載して完成とみなす、など、実現方法に関してのスコープ調整もある。
  • 本当に急いでたらプロにお願いするはずで、学生に話が来ているということは、暇なときにやっといてよ、という依頼になりがちなので、期日から逆算する、ということがやりづらい。ロードマップとして年内完成、とか決めて、そこから逆算して、お客さんとコンテンツ準備など内容を詰めていかないといけない。定食を注文したら出てくるのと違って、発注者側からも、何を作るかをまとめて伝えて、チームとして取り組む必要がある。期日、内容はお任せ、ではなくて、収束に向かって協力する必要がある。
  • ちなみに、こういう暮らしは学生時代で終わりではなくて、僕の今の暮らしとしては、義母の税理士事務所の、20年前くらいに作られたホームページのメンテナンスをやっている。これも期日なし、最初の指示はあいまいなのでこちらから情報をもらいにいって構成を提案する、既存のコードは誰が書いたものか分からないのを読み解いて改修して、作業が終わったら、たまにお小遣いや、ワインや、シャインマスカットをもらえる。