ねこものがたり

いちにちいっぽ

アプリを作りたいと思ったら

先日、「うちの勉強会においでよ〜」と誘っていただいたので参加しました。

  • 人見知りしない
  • できない事を引け目に感じない

という点が強みだったり心がけだったりするので、お誘いいただいたのに参加しないなんて選択肢はありませんでした笑

あと自分の職場から歩いていけるという、物理的に諦めなくていい条件もとても良かったです。(会場が電車で1時間とかなら多分やめてた)

何を学びたいか

前に参加した勉強会と異なり自分の中で「これを教えて欲しい」というのはあまり明確ではありませんでした。

  • Rails Tutorialはしょっちゅう引っかかるのでやや挫折気味で気がおもい
  • 教えてもらうにしても一人で進めてわからないところがあれば聞くというスタイルは教えてもらうには時間が勿体無いのでは??と思う部分があった
  • 自作を試みているアプリで実装したいことがRails以外の事だったりしてるのだけれど、まず「rubyRailsをもっとやりたい」と思っている
何をわかったりできるようになったりしたいか自分でもわからない

そんな訳でドキドキというか「これでいいのかな」という状態で会場へ向かいました。

そして教えてもらった事

Railsに関して教えてもらたこと
  1. rails new
    コマンドで何が作られたり実行されたりするのか改めて、しかも懇切丁寧に解説していただいたので、実はこのコマンド実行時にbundle installまで実行されている事を初めてきちんと理解しました

  2. rails scaffold
    同様に一個ずつ丁寧に一緒に辿っていただいたのと、生成されるファイルの中で何がどういう役割なのか、また最初に記載されるメソッドや色々なコードがどういう意味なのかを教えてもらいました。

 そもそもAppを作ることについて教えてもらったこと
  1. なぜそれを作るのか
    既存のサービスではダメなのか/なぜダメなのか/セールスポイント…を文字に残しておくこと、お仕事の場合それをみんなで共有する、そして行き詰まった時に立ち返る、というリアルなお話をしてくださいました。

  2. どんなものを作りたいのか
    完成形や使った時の画面の変遷、そのアプリでできる事を紙芝居のように絵に描いてみるという事を教えていただきました。「これをやると最初コードを書く時間はあまりないけどあとあと手戻りが少ない」ということと、「”人によって目指している形が違った”という事態が減る」ということだそうです。

そういえば文脈で意味はわかりましたが「手戻り」って初めて聞いたので調べたらなんと業界用語らしいです。こういうさりげなく一般用語みたいな業界用語多い気がする笑

できそうなことからやってみる

せっかく行った勉強会でせっかく教えてもらったのだから、やっぱり自分のものにしたい。

そこで「完成形を絵に描いてみる」をまずは実践中(まだ途中)

絵を描く=「設計する」ということ

とやってみて知りました。(鈍すぎる)

実は「すごだし」の時にも何枚か描いたことはあったんですが、「見た目に走りすぎる」という傾向が私にはあるようです。

でも教えてもらった中の「なぜそれを作るのか」を意識しながら絵にすると

  • 一つの画面にどういう情報がまとまっているといいのか
  • 提供するコンテンツがどんなカテゴリーに分けられるのか
  • コンテンツはどんな優先順位か
  • 不変的な情報と可変的な情報は何か
  • ヘッダーやフッターの要不要 等といった要素を考える事ができると感じています。

こういうのを「設計」というそうです。へ〜。

まだ絵を描ききってない、考えきってないので、しばらくは描きながら構想を練って「すごだし」よりはスムーズに作り進められるはずだと思います笑

「すごだし」が思いつきで進めてすぎてて、最初からやり直したいと思い始めてるんですが、これはプログラミングやっている人なら誰もが思った事があるそうなので、過去の私より今の私の方が少し先に進んだ証拠なのかもしれません。 たぶん、そうだな、5ミリくらいは。

ゆっくりでもコツコツ続けたい

プログラミングを始めて以来ずっと、そして日々感じているのは、どんなすごい人でも、もう私と比べたら沼底と宇宙の果てみたいな差があったとしても「どれどれ」と教えてくれるような人や場がとても多いという事です。

それってすっごいありがたい!って思います。

教えてもらうこと全部が一回でできるようになればいいんだけどな〜。 これからもスパイラル式にできるようになったりあとからわかったりするという繰り返しだろうと思いますが、教え導いてくださる皆様に感謝して、自分のものとしていけたらと思います。