This week I spent a good deal of time trying to work through outdated cucumber tutorials, the only two tutorials I found that were fairly up to date were the two screen-casts listed in the book for my EDX class (first screen-cast, second screen-cast). The other Railscast tutorial link is seriously out of date. In my previous post  I documented what needed to be updated in the Screen-cast so that the first half of Railscast #155 could be completed. I am very excited to have come to the end of the first half of CS 161.1x from EDX. Getting ready for part two. This past week I put in a solid 22.25 hours, bringing my Learning Journey total up to 183.25. I plan to break the two hundred hour mark this week. I decided to post goals up this week and discuss their progress in the upcoming blog posts.

Goals this next week
  • Watch Video Lectures for CS169.2x
  • Setup my computer to do screen-casts
  • Pair program, twice or more this week.
Longer Term Goals
  • Do a Behaviour Driven Development,(BDD) Screen-cast.
  • Build a online job application site for local business.
  • Design a tutorial building gem witha sister gem that checks whether a tutorial is still up to date, and notifies the owner of the tutorial that it needs updating.

Railscast #155 Cucumber Tutorial Substitutions part A

I've had trouble finding a good cucumber tutorial that isn't out of date. In fact I haven't found one, so I worked through the first half of the Railscast #155 which is an outdated Cucumber Tutorial, which if you can get over the outdated part is very well done. I would love it if someone posted an updated cucumber tutorial.
Below I've listed the substitutions necessary to follow the first half of the screen-cast.
So follow the on screen instructions unless I have a substitution listed, and these substitutions should allow you to finish the first half.

rails blog rails new blog

instead of setting up our test gems in test.rb
add this to Gemfile instead

group :test do
    gem 'rspec', ">=1.2.2"
    gem 'rspec-rails', ">=1.2.2"
    gem 'capybara' # replaced webrat
    gem 'cucumber-rails' #replaced cucumber
    gem 'cucumber-rails-training-wheels' #is needed to generate web_steps.rb

    #web_steps.rb replaced webrat_steps.rb
    gem 'database_cleaner' # I don't know why you need this one but I had an error that told me I needed it so I added it.
end


sudo rake gems:install RAILS_ENV=test bundle install
script/generate cucumber rails generate cucumber:install
#as well as the line below to generate web_steps.rb
rails generate cucumber_rails_training_wheels:install
rails generate rspec:install #I don't know if you need
cucumber features -n #including the -n results in an error, including features isn't necessary as features is the default location.
script/generate rspec_model article title:string content:text
rails generate model article title:string content:text

in the routes file with rails >3.0 you don't need map
map.resources :articles

 I think this should get you through the first half of the tutorial, The second half I'm still working on... ...if I I ever finish I'll be sure to post them up.
This has been a pretty good week. I achieved a personal high on study time at 26.75 hours this week, and pair programmed several times this week.  I finally pushed up the Gosu Gem game on Monday which I mentioned earlier this week.  I discovered the Style Editor in Firefox under the tools menu, in  Web Developer section.  The Cool thing about Style Editor is that it allows you to make changes to the style-sheets and instantly see the results.  Which was especially helpful when I was adjusting the the layout of the Rotten Potatoes site for the CS 169.1x homework. Right now I have 161.25 hours of study time completed since I began my Learning Journey this past November.

Quick update

I finally pushed the my version of the Gosu game from Ruby4kids.com tutorial, up to github, I added a score tracking feature to the game which is directly proportional to the number of bullets you destroy. Right now the speed is set a little too slow on the bullets, and the game is not set to generate the bullets fast enough. there is one more feature/bug, that I have added to the game while experimenting with varible speed bullets. this feature/bug is that the further the bullet is to the right the faster it falls. this feature/bug will likely be eliminated from the game eventually. Here is the link to the repo http://bit.ly/11SfKTQ

This week I used Oracle's VM VirtualBox to run Ubuntu 12.04 on Ubuntu 12.04.  I know it seems pointless to run the same system on top of itself, but I couldn't get the Gems working right for a cloned project, outside of the virtual machine.  The difference the VM was running an image of Ubuntu that needs 240 plus updates, the image has a lot less programs installed than the base system, and last and probably most important, the image was set up by the creators of the cloned repository that was giving me grief.  Worked with Github and Heroku again this week.  The Gosu game that I mentioned last week has not been put up, but I will push the Gosu game up this week.  I spent 15 hours studying Ruby on Rails this week bring up my Learning Journey total to 134.5 hours.
This past week has been a pretty solid week of studying with 20.5 hours of study time this week. Which brings up My Journey's total to 119.5 hours. I didn't get a chance to mess with the text to speech project this week, I focused mostly on CS 169.1x homework from www.edx.org
I definitely  enjoy pair programming with my brother Josh, we've had the opportunity to do it both in person and virtually using Google Docs with the auto-formatting turned off.  It would be so cool if there was a setting on Google docs that automated programming syntax highlighting and auto-correct.
This week I started working on a project with Dan Voell, and my brother called sideprojects.  On this project we are using the Devise Gem that I haven't used before.
This projects feels like a roofing project where tools I have mastered, handtools (Programing without Gems from scratch) might be able to put up the shingles, but if I am doing a large roof or multiple roofs, it will be worthwhile to take the time to learn how to use power tools, (Gems).
Yesterday My brother Josh and I were able to add the score feature to the Ruby4kids Tuturial Gosu game, I hope to push this updated game upto my Github later this week.
I've been working on making a text to voice program in ruby, and I'm thinking there are basically three ways it could be structured, 1.use a small sound library of individual sounds or phonograms, with a pronunciation guide database, which would concatenate the sounds together to form words as the program runs, or 2. have a large sound library of the most common words, and only use a pronunciation guide database on the less common words. or 3. have a small small sound library with with no pronunciation guide database, and only rules how to pronounce words.  I have also been working on my Ruby homework, which is forcing me to better understand how ruby works. I'm still finding the .each technique of doing iterations a bit uncomfortable but I think it'll eventually make my life easier. I missed doing a post last Sunday so I will mention I studied for 18 hrs that week, and I studied 21.5 hrs this past week. which brings up my total study time to 99 hrs!