I believe that a celebration is in order as I completed my first month as a full time Ruby on Rails programmer. I have to reflect on my last post, that I really had no idea what I was in store for. It has definitely been a challenging but yet fun first month.
I think that the biggest challenge that I have encountered is that it is one thing t create a NEW Ruby on Rails app and an entirely different matter working on a legacy RoR app. My first project is a quite in depth and detailed one. It has taken some time to just wrap my head around what it was that the application did and was supposed to do. That was the first big hurdle for sure.
Now a month later I understand what it is that the client really wants and I understand what it is that I need to do so that the client will get what they want.
For those of you out there thinking of quitting your day job and going it solo, I say do it, but plan it out first. Were it not for the fact that there is a solid few months of work for this project I do not think I would have made the move. By the time I am finished with this project, I will be more than ready to take on the next one. If you are thinking of making the move, find a good project that will keep you busy for a few months so that there isn’t the constant worry of “what next?” and you can really dig into the existing project.
BDD/TDD development – Everything that I am doing is fully BDD/TDD development. Do not write and code unless there is a test for it. It will seem like a lot of extra work at first but later on when you start to make changes to your code you will be happy that you already have tests to run. That is probably the biggest thing for test driven development, not the original code but when you start to refactor your code, you know that it was already working. Everyday, I start off by checking my GitHub status and then running all of the specs. The last thing that do everyday is run all of the specs and push to GitHub.
For me, I use Rspec and Capybara. I would say that about 90% f the tests are request tests. I have never used cucumber all though I read about it in the Rspec book. The project is also using Pivotal Tracker and the client is heavily involved in the stories in Pivotal Tracker. It is a great way for them to keep up with what is being worked on everyday.
Well, that is it for this week……..