Ruby

Ruby Job Fair in Toronto Tonight!

by Joey deVilla on February 10, 2012

Ruby Job Fair Poster

Don’t forget: the Ruby Job Fair takes place tonight at Unspace headquarters (342 Queen Street West; it’s the door just to the right of Lululemon)! If you’re looking for work that involves Ruby programming or if you’re an employer looking for Ruby developers, you’ll want to be at this event, which is more cocktail social than career fair. Yes, there will be a bar.

The event takes place from 6:00 p.m. until 9:00 p.m.. DO NOT show up early! They’ll either be wrapping up the day’s work (remember, Unspace is a development shop) or prepping for the event. If you plan to show up fashionably late, please note that the employers are doing their three-minute “soapbox” spiels starting at 6:30.

There’s a small registration fee to help cover the costs of holding this event: it’s $5 for people looking for a job; $15 for employers looking for Ruby developers. You’ll get a lot of bang for your buck at this event. Click here to register for the event, and do it before the tickets run out!

Shopify logo

If you’re looking for Ruby work at one of the most successful startups around, you might want to consider Shopify. I’ll be there tonight as Shopify’s representative – find me (I’ll be the guy with the accordion) and we’ll talk.

If you’re looking to find out more about Ruby Job Fair, check out the Ruby Job Fair site as well as my earlier article on the Fair.

This article also appears in the Shopify Technology Blog.

{ 0 comments }

WAT? A Funny Look at Ruby and JavaScript Oddities

by Joey deVilla on January 28, 2012

WAT: A donkey in an orange raincoat, standing on the deck of ship holding a tabby cat

The Urban Dictionary definition of "wat" is "the only proper response to something that makes absolutely no sense". The concept of wat is covered a little more completely on its page in Know Your Meme.

Darth Vader standing in the ocean, pouring water from a Brita pitcher into a plastic jug

"Wat" is also the title of a funny demo of Ruby and JavaScript oddities presented by Gary Bernhardt at CodeMash 2012, a rather unlikely tech conference — it takes place in Sandusky, Ohio, in Ohio’s largest indoor waterpark. (If you just said "wat" right now, you’ve used the word correctly.)

In the video, you see this classic wat bit about undefined variables and assignment in Ruby:

Screenshot of an irb session full of wat

You’ll also marvel at the way JavaScript treats (array + array) vs. (array + object) vs. (object + array) vs. (object + object):

Screenshot of a jsc session full of wat

Watch the video, and wait for that final slide, which is pure, hilarious wat!

This article also appears in the Shopify Technology Blog.

{ 2 comments }

ClearFit’s Looking for a Rails Developer

by Joey deVilla on November 8, 2011

Clearfit [hearts] Rails, GitHub and Amazon Web Services

My friend Robert Nishimura’s looking for a Rails developer for his company, ClearFit, which is based in uptown Toronto. He sent me some details about the position he’s trying to fill; I’ve posted them below.

If you’ve got the skills and if the position sounds interesting to you, you should drop him a line at robert@clearfit.com!

Company Information

ClearFit is changing the way small businesses hire. Most people know that ‘fit’ is the most desirable attribute for employees and employers — that intangible sense that can’t be found in a resume and is difficult to glean from a job interview. It’s a huge problem — employers spend billions every year on staffing in Canada alone.

Most small business owners don’t know where to even start when hiring a new employee. Ask around for referrals, “pay and pray” with a job board or deal with an avalanche of resumes from Craigslist? 

We have built the system that some describe as “an eHarmony for jobs”. We have over 2500 registered employers and tens of thousands of registered career seekers which barely scratches the surface of a multi-billion dollar market. All this and we just completed our first round of investment so we are poised for stellar growth.

We are located in the Yonge/Eglinton neighbourhood, strategically situated between 3 Starbucks and 3 minutes from Bulldog Coffee. We’re also upstairs from Copacabana Brazilian BBQ.

Skills & Requirements

Skills:

  • Minimum 2 years experience coding in Ruby on Rails
  • Minimum 2 years experience with HTML/CSS
  • Experience with Javascript (Prototype, JQuery)
  • Experience with Postgres SQL
  • Experience with Ubuntu/Nginx
  • Experience with GitHub

Bonus points:

  • Experience with Amazon EC2
  • Experience integrating with other web apps
  • Photoshop and front-end web development skillz
  • iOS development experience

What ClearFit Offers

  • Salary between $80K and $100K based on experience
  • Snacks and drinks in our kitchen
  • Wicked awesome coffee from our new Nespresso machine
  • 15 days paid vacation per year
  • Full group benefit plan which includes vision, dental

If this sounds like something you’re interested in, contact Robert Nishimura directly at robert@clearfit.com

{ 1 comment }

Salmagundi for Monday, August 22, 2011

by Joey deVilla on August 22, 2011

Welcome to another Salmagundi — a selection of some interesting techie stuff on the web!

In his article Your Code is My Hell, all-round Ruby/Rails guru Avdi Grimm warns Ruby and Rails developers about a creeping exceptionalism that has been rearing its ugly head as of late. Many Ruby/Rails developers seem to be under the impression that simply because Ruby and Rails do a lot to make programming easier, they can simply ignore things like good coding, good object design, design patterns and the SOLID principles and all those other practices and disciplines that good coders follow and exercise. Ruby’s a great programming language and Rails is a great web development framework (and I’m quite glad to return to them), but they’re not a free pass to code carelessly!

Nick Quaranto from Thoughtbot explains why he loves CoffeeScript, by way of the movie 300, in CoffeeScript: Spartan JavaScript. “Writing JavaScript properly, and in an OO manner, requires you to be verbose,” writes Quaranto. “What I like best is that CoffeeScript is simply…spartan.” He covers the good as well as the bad (but it’s mostly good). If you’d like to try it out, visit the CoffeeScript site to get started.

Here’s another one from Avdi Grimm (he’s got lots of good suggestions — you should check his blog regularly if you’re a Ruby/Rails developer): The Procedure/Function Block Convention in Ruby. He’s got a clever idea for when to use “curly bracket” blocks (he suggests to use the for functional blocks) and when to use “do…end” blocks (he says to use them for procedural ones.

And finally, if you use Git, you’ll want to read Benjamin Sandofsky’s article, Understanding the Git Workflow. “If you’re fighting Git’s defaults,” he writes, “ask yourself why.” He suggests that your workflow should be:

  1. Create a private branch off a public branch.
  2. Regularly commit your work to this private branch.
  3. Once your code is perfect, clean up its history.
  4. Merge the cleaned-up branch back into the public branch.

This article also appears in the Shopify Technology Blog.

{ 0 comments }

It’s Whyday!

by Joey deVilla on August 19, 2011


A hand-drawn copy of a comic panel from why’s (poignant) guide to Ruby on a traffic light in Austin, Texas.

It’s August 19th, which in some circles is known as Whyday. If you’re not familiar with what this day’s about or where its name comes from, you might want to read our earlier article, Whyday is Friday. I like to think of this day as a reminder to bring a sense of whimsy, sharing, fun and wonder to your work, whether it’s programming or anything else.

Jessica Allen tweeted the photo above: an expense report in the spirit of Whyday.

Roger von Oech, who wrote one of my favourite books — A Whack on the Side of the Headmentioned Whyday in a tweet today!

I must tip my hat to the appropriately-surnamed Josep M. Bach, whose Whyday contribution is Niki, “the first stable, documented version of Niki, a ruby DSL to write songs”. Programming and music — what could be more fitting?

_why’s cartoon foxes are everywhere. This stencilled graffito was found by Janet Swisher in Barcelona, which I believe is quite far from where _why lives.

Wyatt Greene, on this blog Techiferous, is celebrating Whyday with an article about programming archetypes featuring _why-esque comic illustrations. Nicely done!

Andrew Lenards, who leads “a team of developers working on a larger scientific application” is encouraging his developers to celebrate Whyday. Well done, sir!

Andrei Volkov tweeted: “I just MUST use #whyday to promote my translation of Why’s Poignant Guide to Ruby into Russian.” Keep at it, Andrei, and…spaceeba!


The RubyLearning blog is celebrating WhyDay by announcing the 8th batch of their “Ruby with Shoes” course. Shoes is a great little Ruby GUI toolkit that _why whipped up, and there’s nothing that makes learning a new programming language fun like the immediate satisfaction and feedback of a desktop app.

Gogol is a game that’s written in Ruby, minimalist and brain-teasing. This is right up _why’s alley.

As for me, I’m doing my bit to spread the word about Whyday, working on a few ideas to help people get better at programming and ecommerce (which includes making more videos like this one), mixing music with coding with the assistance of my trusty travelling accordion as well as relearning all the Ruby I’ve forgotten over the past couple of years working at the Empire and sharing what I learn along the way.

I feel incredibly fortunate to be at Shopify (I’ve been with the company a shade more than three months), away from the Fortune 50 corporate world and back in the land of startups, programming languages like Ruby and CoffeeScript, and where whimsy and the willingness to take chances and try new things is greatly appreciated. It’s been a wild and crazy year for me both personally and professionally, and it’s only increased my appreciation for bringing the spirit and sense of fun to my work in the same way that _why did. I hope Whyday does the same for you.

Happy Whyday, and happy hacking!

(If you’re doing or did something interesting for Whyday, drop me a line and I’ll mention you and your activity in an upcoming blog post!)

This article also appears in the Shopify Technology Blog.

{ 0 comments }

Whyday is Friday

by Joey deVilla on August 16, 2011

Photo of why the lucky stiff's book 'Why's (Poignant) Guide to Ruby' in hardvoer form, backed by paper cutouts of why's cartoon characters.

Clever programmer. Multimedia and performance artist. Whimsical writer. Oddball performer. Howard Hughes-style recluse. All of these phrases are apt descriptions of the guy most of us know only as why the lucky stiff, or _why for short.

Bold, Brief and Gone

'Cartoon foxes' comic from why's (poignant) guide to Ruby

If _why had a personal motto, it might be “Be bold, be brief, be gone.” The bold part was plain to see. His Ruby tutorial, why’s (poignant) guide to Ruby, broke away from the style of your typical programming books and went for the wild and whimsical. Only _why would take a topic like metaprogramming — something that confounds a number of experienced developers, never mind the newbies he was trying to reach in his book — and turn it into a fantastic adventure game exercise, complete with comics. Few developers have the breadth of skill and interest to make projects like Try Ruby (a browser-based Ruby shell with instructional guides) to Camping (a Rails-like web app microframework smaller than 4K) to Shoes and Hackety Hack (a UI toolkit for “web-like desktop apps” and a development environment to teach children programming) to Park Place (a “nearly complete clone” of Amazon’s S3). There may be people out there who’d be able to pull off a music-and-programming performance like the one he did at the first RailsConf, but they haven’t yet presented themselves to the world.

Why non conformist certificate

The “brief” and “gone” bits take a little more explaining. _why’s notoriety rose with Ruby’s popularity, which in turn was connected to Ruby on Rails. I remember reading some posts on one of his blogs, RedHanded, as far back as late 2003, and the (poignant) guide surfaced in 2004 and found its way into print in 2005, when the chapter A Quick (and Hopefully Painless) Ride Through Ruby (with Cartoon Foxes) appeared in the Apress book The Best Software Writing I: Selected and Introduced by Joel Spolsky. His music-and-code extravanganzas at South by Southwest, O’Reilly’s Open Source conference and the first RailsConf cemented his rep as the programmer who was also a performance artist and by 2008, people were seeking him out for all sorts of things, from personal appearances (Pete Forde tried to get him to come to RubyFringe, but convincing him to leave the US proved to be impossible) to commissioning body art (Leah Culver got him to design a tattoo for her).

Leah Culver shows off her tattoo by why the lucky stiff

Close-up of Leah Culver's tattoo by why the lucky stiff

All in all, _why’s popular presence on the web spans about 5 or 6 years.

Milk carton with drawing of _why in the 'missing child' picture

For reasons still unknown to the Ruby community at large — perhaps Matz knows and is sworn to secrecy — _why “disappeared” on August 19, 2009. It’s not that he disappeared in the D.B. Cooper sense, but in the J.D. Salinger sense: not as a legal missing person, but as a person determined to remove himself and his activities from the public eye. In the span of a day, he removed as many traces of his online presence as he could: the blogs, the sites, the projects. Luckily, there’s a lot of his work floating around thanks to his open sourcing and Creative Commons-ing of his works and the curation of many techies who appreciated them.

WhyDay Declared

Whyday

A year after his disappearance from the online world, Glenn Vandenburg declared the first anniversary of his disappearance as “Whyday”. Whyday is a day to celebrate _why’s contributions to the culture and communities that have grown around the Ruby programming language and all the software built upon it. “We in the Ruby community wish him well,” goes the text on the Whyday site, “but we really miss him.”

A spread from 'Nobody Knows Shoes, the documentation for Shoes, _why's UI toolkit for desktop apps

The Whyday site goes on:

Why gave us a lot of cool software and other things, but what he really gave to the Ruby community was a spirit of freedom, whimsy, and creativity. When Why took the stage at the first RailsConf, in 2006, he strapped on his guitar, walked to the microphone, and yelled “Put your best practices away!”

Discipline, care, and responsibility are important; we owe our customers, employers, team members, and families to take our work seriously. At the same time, though, we need to play. If we don’t occasionally break out of the mold of our “best practices,” we can easily miss many wonderful ideas, some of which can bear rich fruit (just as Camping and Hpricot led to Sinatra and Nokogiri).

This year, on August 19, celebrate Whyday. Set aside that day to remember Why’s contributions to our community and culture by hacking just for the fun and joy of it.

Why the lucky stiff and the Thirsty Cups playing at SxSW

Among the things people were encouraged to do on Whyday were:

  • See how far you can push some weird corner of Ruby (or some other language).
  • Choose a tight constraint (for example, 4 kilobytes of source code) and see what you can do with it.
  • Try that wild idea you’ve been sitting on because it’s too crazy.
  • You can work to maintain some of the software Why left us (although Why is more about creating beautiful new things than polishing old things).
  • On the other hand, Why is passionate about teaching programming to children. So improvements to Hackety Hack would be welcome.
  • Or take direct action along those lines, and teach Ruby to a child.

I made a note of WhyDay on my personal tech blog, Global Nerdy, as well as the blog I got paid to write for (I was a Microsoft employee at the time). I didn’t get the chance to do as much as I’d like in the spirit of Whyday, probably because I was knee deep in getting ready for TechDays, a series of cross-country conferences run by The Empire.

WhyDay 2011

Youre leaving us here

Here we are, a year after the first Whyday. I’ve done some quick searching and haven’t found any mention of celebrating Whyday this year, so I’ve taken it upon myself to spread the word. It probably helps that I’m no longer at Microsoft and now in Shopify, which not only builds stuff on Ruby and Rails; it was also co-founded by an original member of the Rails core team, and people here are writing the next edition of Rails in a Nutshell. This place just oozes Ruby.

_why might not want to be celebrated, but in my mind, _why isn’t the real reason that Whyday should be celebrated anyway. I think it’s more about the spirit of what _why did: really getting to know the tools you’re using, helping people understand those tools using unorthodox means whenever conventional means just don’t get the point across, and building great tools when the tools you want don’t exist.

It’s about finding joy and delight in your craft, and bringing to it a sense of play. It’s about making things better. All that is in the spirit of why I quit a high-paying, cushy job and joined a rag-tag team of techies in a startup, and this year, I’m going to try to celebrate Whyday — this Friday, August 19th, 2011, a little more properly.

How about you?

Last page

This article also appears in the Shopify Technology Blog.

{ 0 comments }

Ruby Foo

by Joey deVilla on May 30, 2011

ruby foo

After three years away from all but the most trivial of noodling with the Ruby programming language, I have become a Ruby Foo (as in Mr. T’s catchphrase, “I pity the foo’!”). I am severely out of practice with Ruby, and with two versions having appeared since I last made a living with Rails, even the act of creating a new project is completely different. Since Ruby is the preferred back-end programming language at Shopify and I am the Platform Evangelist, it’s time for me to “sharpen the saw”.

obie

Luckily for me, I ran into Obie Fernandez at the South by Southwest Interactive conference back in March. We sat down for a coffee and he told me about what was happening with Hashrocket and I told him that I was a hair’s breadth away from joining Shopify.

“I’ve been away from Ruby long enough that I’m probably back at newbie level again,” I told Obie between sips of latte made with overcooked beans. “I did it for a bit at the beginning using IronRuby, but between doing all the C# and PHP and the open source ‘Iron’ languages dying of neglect at Microsoft, I’m severely out of practice. I thinking of joining Shopify, and let’s face it: I don’t want to look like an ignoramus in the presence of rock stars like Tobi, Cody and Edward.”

“Give me your email,” said Obie, “and I can do something to help.” Of course he could – he’s the series editor of Addison-Wesley’s Professional Ruby series of books.

Shortly after South by Southwest, a couple of links to PDF editions appeared in my inbox. Thanks, Obie!

eloquent ruby

The first link was to Eloquent Ruby, Russ Olsen’s guide to speaking idiomatic Ruby and getting the most out of the Ruby programming language. It’s a breezy read, written in the same conversational tone that Olsen used in Design Patterns in Ruby, and the book is broken down into 31 bite-size chapters about a dozen pages in length. Each chapter’s title is some principle for programming eloquent Ruby – the first few are “Write Code That Looks Like Ruby”, “Choose the Right Control Structure” and “Take Advantage of Ruby’s Smart Collections” – and each explains that principle, provides code, shows you where you can find the principles used in actual, working projects. The book straddles the line between tutorial and reference; it’s written in tutorial style, but it’s organized so well that it might as well be a reference for those parts of Ruby that you might not use often (but should) as well as for those parts you keep forgetting (in my case, I always end up having to look up metaprogramming). I’ve been going through it at about a chapter an evening, and I’ve been getting smarter each time. Whether you’re coming back to Ruby after a hiatus like I am or if you just simply want to get better at Ruby, you should have this book in your library.

If you’d like to know more about Eloquent Ruby and its author, Russ Olsen, check out this interview with him at InfoQ.

ruby on rails 3 tutorial

I have yet to properly sink my teeth into Ruby on Rails 3 Tutorial but a quick scan of the book has shown that it’s quite promising, and the Amazon reviews are bolstering my belief.

I’ll be writing from time to time about my return to Ruby and Rails in this “Ruby Foo” series of posts, and I hope that whether you’re new to the language, returning after a break like me or aiming for “guru” status, that you’ll check out this blog regularly for notes on my explorations and what I’ve learned.

This article also appears in the Shopify Technology blog.

{ 0 comments }