Feel pretty guilty about not writing a post to update my progress last week, but I was so swamped with work from our second NVC presentation that I didn’t really get a chance to study CA stuff outside of class.
But we made a ton of progress in class. After weeks of learning to hard code everything manually, we were finally introduced to scaffolding, which makes the entire coding process SO MUCH EASIER. I’m glad we didn’t start off with learning the scaffold function because I would not have had much incentive to go back and learn the seven golden methods in detail, which probably would have screwed me over in the long run.
This week I’m taking what I’m learning and trying to apply them to my own web app.
My web app idea is to build a backend marketing system for indie mobile app developers. I’ve made mobile apps myself, mainly by hiring outsourced developers, and this is a tool that I’ve always wanted for myself. Figured this would be a great opportunity to apply my learnings and scratch my own itch.
Sidenote: I’m finally beginning to understand some of the crazy acronyms that I see all the time when I browse various job postings at startup companies. CRUD, RESTful practices etc, these terms are all defined online, but it’s difficult to understand what they mean until you implement them in practice.
This week we also continued our exposure to Agile development principles:
DRY – don’t repeat yourself. This seemed like a pretty obvious common sense type of saying. And I thought I understood it, that is, until I was introduced to the before_filter, which is used to avoid duplicated lines of code in our controllers. Then it became like an “oh duh” moment, since I’ve been repeating code all over the place, never even consciously realizing that I do this because the programs I write are so simple. I should have known a better solution existed and tried googling for it.
YAGNI – you ain’t gonna need it. I like the minimalism in code, even though I can tell it’s going to be really tempting to just scaffold everything first and go back to tweak things the way I want.
We also spent quite a bit of time learning how to perform user authentication. I’m not going to lie – user authentication has me pretty confused right now. It’s going to be my main focus for the next few days.