I’ve been inspired to start blogging again at the Scottish Ruby Conference. So I thought, why not make my first post a round up of the excellent sessions I attended. So here goes.
Friday Morning Keynote
Pretty inspirational opening keynote from Mike “World’s Toughest Programmer” Lee about his journey from baggage handler to software developer to Appsterdam founder. Mike compared the discrimination he faced because of his body shape (big and strong) to the discrimation women face within the tech industry. This resulted in two things, me being afraid to talk to female attendees for the duration of the conference and me volunteering to help with the upcoming Rails Girls event in Dublin.
Next up for me was the Power Rake talk by the always fantastic Jim Weirich, creator of Rake. Jim introduce some new Rake functionality that I didn’t know existed – FileLists, File Tasks and Rule Tasks. You can see a previous instance of this talk at Confreaks.
Then before lunch we had Piotr Szotkowski (who is an assistant professor at Warsaw University of Technology) talking about decoupling persistance from the domain model. I really enjoyed this talk, it was a good mix of wit, relevant quotes and thought provoking ideas. I also thought the thrust of the talk, decoupling persistance from your models to allow for greater flexibility in the future really set the tone for the conference and a number of other talks built on this idea too. Piotr gave a number of (good realistic) examples of how to possibly achieve this decoupling some of which were new to me others which I’ve seen before but which were a nice reminder of. I’m definitely looking forward to figuring out how to implement some of these ideas on my own codebases. Slides for this talk are available online.
First up after lunch, I went to the Hexagonal Rails talk give by the trio of Matt Wynne, Steve Tooke and Kevin Rutherford. Another very good talk, though having three people alternating interrupted the flow for me a little. The speakers advocated a new approach to Rails development, that new approach isn’t fully formed and codified yet, my take was they were prompting us (as a Ruby community) to get involved in contributing to the discussion on how we should move Rails development forward. Some of the simple yet powerful concepts that were advocated:
Tell, don’t ask style
Get rid of the stacked layer metaphor
Responsibility driven development
Your domain model is in the interactions between objects, not the objects themselves
Building on some of the motivations of Matt Wynne et al was Steven Baker who gave a great talk on making mantainable Rails apps. Some of the tips I’ve taken away from this talk:
FIXME – Add these immediately wherever you see stuff that needs cleaning up.
Technical Waste – Avdi Grimm – Read it
Do what you want Fridays – a good time to fix FIXMEs
Listen to tests – no such thing as slow tests, theres slow code. When slow, fragile, coupled = it’s the code
Delete code often – “I try and delete more code than I add”
As a result of Steven’s talk, I’ve already delete >500 lines of code or almost 7% of the main codebase I working on. I’ve always know there was old cruft in there from years ago but with some of it being so old and not well covered by tests there’s always been an hesitancy to delete it – not any more. I spent last friday evening from 5pm til 9pm cutting great chunks out …… and if felt great!
I am Designer
After a short break, Justine Arreche took to the podium for a great talk that I described in my notes as “a crash course, design for developers”. This was a great talk for me – as someone who believes he uncorrdinated when it comes to design and colours, this talk demystified the whole process and give me some simple rules to follow. It make me think designing something is achievable now. Justine covered the basics in a simple accessible manner.
Grid and content structure
If you’re a developer who fears designing (or who just wants to know a bit more about it) – watch this talk when the video goes up. In the meantime, make do with a copy of the slides.
Some other tips I took away from this talk:
Use a Grid
Colour wheel – opposite sides contrast
Don’t be afraid to choose white and gray
Differentiate from competitors
Serifs – easier to read in big chunks
Sans-serifs – headlines
Web fonts – myfonts.com typekit.com fontsquirrel.com
Email template – reflect the website, brand consistency
Design Process (in very basic form)
Sketch on paper
Black boxes on grid
Then colors, typefaces
then html, css
The fundamentals of pursuing a dream in a digital world
I was all nerd-ed out by this stage of the afternoon, so I chose to go to the less technical talk on chasing your digital dream by Leanne MacDuff. As a coaching enthusiast I thought I’d enjoy this talk. And I did. It was a nice way to end the day in a positive, if knackered, frame of mind. I didn’t think I got a lot of new stuff from the talk, but I figure thats just down to possibly down to having done a coaching course and probably having read a lot of similar books to the ones I’d imagine Leanne has. But one great takeaway was a video she ended with, that I can use as a kick in the ass when I get into a grumpy mood.
That ended day one of my Scottish Ruby Conference. I’ll put together my notes on day two and put them in the next week. Overall, a great first day, possible one of the best conference days I’ve experience, definitely in the top three.