Follow along with our T-3 Ruby on Rails students as they document their development in our Colorado Ruby on Rails coding Bootcamp. This blog series will give you a good idea of what it's like to go through one of our learn to code bootcamps. You will notice that the curriculum and pace of this course is challenging, but our students are not alone in the process. They have plenty of assistance from the lead instructor, TA's and mentors. All of which can relate to their situation. Most of the mentors have been in their shoes.
To the DaVinci Community,
We started the week with a look at the Agile retrospective meeting. Part of the Agile project management methodology, these meetings are held after certain milestones to discuss what went well, what needs improvement, and what action items need to be addressed in the weeks to come. The class held a productive meeting and suggested several opportunities for improvement. These types of meetings are frequently held in real-world software development environments and are yet another way that Da Vinci Coders helps students prepare for the workplace.
We've continued our transition from focusing on the software tools that professional coders use every day to focusing on the nuts and bolts of the Ruby programming language. On Monday, we covered methods and flow control. Methods are the ‘verbs’ of the programming world. They allow programmers to capture frequently used procedures and add new functionality to their software objects. Flow control involves the use of conditionals to guide the execution of our programs.
We were introduced to flow control by an exploration of branching, loops, and Boolean expressions. Branching allows our code to make decisions by using if statements and else statements. Loops are used to execute a single method multiple times. Finally, Boolean expressions are used to evaluate the truth or falsity of various expressions in the program. Basically, we now understand how to make our Ruby programs decide the truth or falsity of various statements, make decisions based on those truth values, and execute our methods until we get the results that we’re looking for.
We’ve put this new understanding to the test by coding the infamous Fizzbuzz program, a program that’s frequently used in programming interviews.
We kicked off Wednesday, October 7, with a lively inter-posse programming contest, which proved to be easier than anticipated with the built-in “random” class in the Ruby language. After we reassembled as a group, we went over a few possible solutions to the number picking program with Jason’s guidance. The remainder of the class was devoted to learning about methods, recursion, and arrays. We learned how to define a method, set parameters, and refactor a line of code into a method using RubyMine. An important note to the idea of using methods in Ruby is the DRY (Don’t Repeat Yourself) principle, in which you strive to not repeat functional code within a program. Jason introduced us to the concept of recursion by calling a method from within itself. We were also shown how arrays work and how they can be used.
Friday was more of a creative day. In order to get a better grasp of classes and methods we programmed a card game in Ruby as a class exercise. By popular demand, we decided on Go Fish. It was a great way to learn classes and methods and a great way to see how Object Oriented Programming works. Everything we’ve been doing so far has been a stepping-stone to get us to where we are and visualizing the program as a card game was awesome. We are flying through the class and have been immersed in code!
• Shout out to @jasonnoble for being great and inspiring instructor.
• Shout out to @wleborgne , @anthonyfalzetti , and @pko for being awesome mentors as usual.
• Shout out to @timsjpark for helping @nsackett defeat Travis.
• Shout out to TA’s for helping Von Drais.
• Shout out to @pko for meeting with @analogrez and going over hashes and arrays.
von Neumann posse, t3-2015
Lucas Henderson, David Jarrett, Sergey Skumatov, Reza Mamdani, and Jonathan Speek ( ͡°( ͡° ͜ʖ( ͡° ͜ʖ ͡°)ʖ ͡°)ʖ ͡°