Week 2 of Makers pre-course
Meeting my mentor
This week we organised our mentors. Our mentor is someone two months ahead of us on the course who can answer questions and give us advice to prepare for what’s ahead. We were given a list of potential mentors and told to choose one. I chose someone who seemed to have a good amount in common with me, so I messaged them on Slack and on Friday we had a Zoom call to introduce ourselves and chat about the course so far.
Procedural Ruby
Procedural programming is based around procedure calls, where a procedure is a list of steps to be carried out and a call is an instruction to carry out those steps. Procedural programming is a subset of imperative programming; procedures are essentially a way to package imperative statements together in a logical way, which makes development easier.
In Ruby, procedures are always called methods. A method is technically a function which belongs to an object. Every function in Ruby belongs to an object (functions defined outside of classes or other objects belong to the main object), so every function is a method.
Procedural and imperative programming in Ruby are relatively easy to understand, but what is less intuitive for me is object-oriented programming (OOP). I’ve decided to read a well-reviewed book about OOP: Practical Object-Oriented Design, An Agile Primer Using Ruby. Hopefully this will help explain the concepts of OOP and give me a good start for the main course, when we’ll deal with OOP more thoroughly.