Notes on Bath Ruby 2015

UPDATE: I’ve just received this Amazing Timelapse of the event! (Don’t miss the Happy Friday Hug moment and the massive movement on breaks xD)

Friday 13, March 2015, 5.30am. My alarmclock rings. I don’t feel tired but excited instead!.
Why? Lots of hours to enjoy learning Ruby from some of the top minds!!

So after several hours by train and car here we are!!,
we made it just in time to grab a coffee and then the talks started!

Linda Liukas

Linda showed us her successful KickStarter project: HelloRuby, definitely a really nice idea
to introduce kids the passion for computing and programming.

Her talk gave us the idea of trying following her steps and try to get out a driving related project
using KickStarter funds. Would you like to see that happening? Let us know!

Ben Orenstein

Listening to Ben is definitely something very familiar to me as I’ve been following his Robots Podcast
for several years, but meeting him in person was awesome!! Specially because of the great talk he did.

I love live coding during conferences and his’ was really a good one, beginning with a working code and refactoring it
to improve it’s quality.

Running tests should be fast, and it can be fast, so if it doesn’t feel like that, then you’re doing something wrong.

Being n the numer of keystrokes to run the required test(s)

Also he made a note on The SOLID Principles.

Saron Yitbarek

Saron’s pitch was a typical story of someone who moves her career from marketing to coding and during it
dropped some interesting ideas:

Everything changes all the time. Welcome to programming!!

Well, that’s arguably TRUE, isn’t it? And in my experience this happens at all levels. Business requirements and specifications,
best frameworks and technologies for a particular task, even your own willingness to certain particular technology, … Uncountable, you name it.

Reading code is one of the best things to gain experience

I think this is arguably true again, and I’d like to highlight a good code hunting process she described
she had in order to try to find the best pieces of code to go through…Failing. It is not easy to know
which pieces of code are good or bad before fully understanding them, and once understood, the learning process
had already taken place because of all the questions that she did about that code!! So, in order to pick
good pieces of code to read to learn, just make sure that the size is something you can easily manage.

During all her learning process she had spent $11k and several full time months. One of the most clear things to her
was the strength of the community and the idea of allowing people with less resources learn Ruby as well lead her
to organise CodeClub, TwitterChats and The CodeNewbie Podcast.

Apart from her talk, we loved the OpenSource Board,
which is one more evidence that the Ruby Community is something absolutely strong.

Katrina Owen

Katrina spoke about a very bad, and unfortunately common situation in the development world,
that we should definitely erradicate, and is
The Fundamental Attribution Error

It has two sides:

  • Companies and Organisations should strive to avoid it by using Code of Conducts or Contract Clauses.
  • Each developer should decide to COOPERATE
    • When using someone else’s code by just trying to understand the code itself rather than complaining that the guy was an idiot or bad developer. Because you don’t know which was the other guy’s situation when he wrote it, and because, ultimately, everyone can have a bad day.
    • When commiting: To make sure the upcoming processes on this code (code reviews or next developers) are the most smooth and pleasant coding experience ever.

This talk was very inspirational, even heard about someone who wanted to become a better
person after it 😉

Tom Stuart

Tom’s talk was, to me, a myth killer. He basically explanied the abstraction of numbers
from scratch to end up with:

Mathematics = Spotting patterns and bulid reusable abstractions.

And then wondering… Isn’t this EXACTLY the same as programming?

The explanation is that maths are not only the theory that we studied and that we have
associated with the Maths term. So then typical quotes as…

You don’t need maths to program


You need to be VERY good at maths to program

Become somehow FALSE, as it all depends on which kind of programming you’re up to and
which maths part does that require.

Sandi Metz

Sandi’s talk showed two interesting programming patterns starting from the idea that she,
as a former purely functional programmer, hates conditionals.

  • First was an example of the so called Null Object Pattern, and how it removes the conditionals. You can see the code of this example along with her explanations on her blog
  • Second was an example of how Inheritance differs from Composition and how the latter can be used to remove conditionals again.

To wrap up, and as it was Friday, we sent a massive Happy Friday Hug and then went for some
free beers and snacks that I’m sure everyone enjoyed.

And that was it, but before closing this post, We’d like to remark how well the
conference was organised, We really enjoyed it and We’re really looking forward to 2016’s edition!!