Friday, August 19, 2011

InfoSpace Invests in Open Source and Fun!

This was originally posted on the InfoSpace blog along with my other post, InfoSpace <3 Open Source and the Ruby Community


This blog entry was written by guest blogger, Tony Heupel, a Software Development Manager at InfoSpace.

As one of a few software development managers at InfoSpace, I’ve been afforded the opportunity to help make a difference while rediscovering the fun and passion that got me into programming in the first place.

Hacking on the Side

InfoSpace has been primarily a .NET shop for the last six years. In the last few years, however, some of us have been hacking on Open Source technology stacks for our side projects. We have been exploring fun ideas using Ruby, Rails, Node.js, and even Django. This side-hacking definitely isn’t my first go-round with coding for fun.

I started programming when I was 9-years-old on an Atari 1200XL. At that time, I would often have a random idea, sit down for an evening and code up something in BASIC and show it off to my friends when they came over the next day. As I progressed in my career at other companies, a lot of that simple joy was replaced with Big Design Up Front and lot’s of painful approval processes.

Well, the simple joy is back! I have certainly experienced a lot of what got me hooked on programming many years ago with the modern toolsets, especially Rails, HTML5, and Heroku. I can have an idea, piece together some gems, put a cool looking UI on it, and deploy it out for the world to see on Heroku in an evening!

Those of us hacking on the side have really enjoyed the sense of community and sharing so that everyone can grow in capabilities more rapidly together. It very much reminds me of when I started programming as well. We used to buy books and magazines where you could type programs in by hand and follow tutorials. We paid for a second phone line so we could use our 1200 baud Hayes-compatible modem to dial into local Bulletin Board Systems (BBSs). There, we would share programs, including a few games that perhaps were not public domain, code, messages, and get connected into local users groups.

Today, the code-sharing of the BBSs has been replaced with GitHub, the books and magazines by blogs and screencasts. The local interest groups still exist, but now, you can connect with folks all over the world who share the same interests as you. There are also tons of free podcasts that keep you up to date on both emerging technologies as well as the ever-changing social norms of the various interest groups.

The Green Light to Go Red (ruby red, that is)

Earlier this year, we embarked on an effort to see if there was a market for a new product. Our technology leadership team felt strongly that we should look at technologies like Ruby in order to quickly develop a Proof of Concept. Then, that PoC could eventually morph into a larger Pilot, and later, once the product looks to be a hit, we could figure out whether to morph the existing solution, or simply, rip-and-replace to achieve the real solution.

We were able to get that proof-of-concept out in just a few short weeks with only a couple of us working on it part time, using Ruby 1.9.2 and Rails 3! We were able to garner enough interest from potential customers to move into our Pilot phase. Three amazing things came out of that effort, from a technology standpoint:

  1. If we had to rip-and-replace, either for the Pilot or for the final solution, we did not feel as if we had invested months of blood, sweat, and tears into the original solution. It served its purpose and was well worth the investment even if we ended up replacing most of it just for the technical knowledge.
  2. As we built out the Pilot and started working on the production solution, we found that Ruby and Rails seemed to lend themselves to improvements through several refactoring or small rewrite phases that gradually improved the performance, scalability, and completeness of our solution. There is still a significant amount of the original code floating around, but it isn’t the scary, “Don’t-touch-that-legacy-code – It-might-break” kind of code. It fits in well with everything else.
  3. We personally experienced our company leadership investing in us in learning technologies that were new to the organization and to us (from a day-to-day standpoint). They did not give us pressure when we struggled with experimenting new technologies, and we reciprocated by working hard to learn those novel approaches from the community. Because of this support, we really haven’t hit a major delay of any kind!

Passion, Pay and More People!

Imagine getting to work on technology that you were working on in your spare time, but at your current day job and your current salary! That reality can come true—it did for me. The leadership support, the ability to innovate and learn what I love to do has been an awesome experience I haven’t had anywhere else in my career.

We’re looking to add passionate people to our team of developers at InfoSpace. We hope to hear from some of the Rubyists and Open Source leaders we met at the Cascadia Ruby Conference we sponsored in Seattle last month, or anyone else in the Ruby community who is interested in learning, innovating and following their passion.

Get a better sense of how cool our team is on our YouTube channel. Below is one video clip of our friendly InfoSpace engineering team at the Cascadia Ruby Conference.

Please visit us at www.infospaceinc.com/jobs, find us on LinkedIn, like us on Facebook, or follow us on Twitter @infospace for more information.

All the best,
Tony and the InfoSpace development team

Thursday, July 28, 2011

InfoSpace <3 Open Source and the Ruby community

This was originally posted on the InfoSpace blog along with my other post, InfoSpace Invests in Open Source and Fun!


This blog entry was written by guest blogger, Tony Heupel, a Software Development Manager at InfoSpace.

If there’s one thing to know about InfoSpace, we are very passionate folks. We love to work hard together and have tons of fun together, too. A few months ago, one of our developers put together a programming competition so that everyone in the company had a chance to learn Ruby, a very popular and powerful open source programming language. The winner would earn a cool trophy, paid attendance to the Cascadia Ruby conference, and the all-important bragging rights and privileges one gets when kicking your co-workers to the curb.

The contest was a Ruby Light Cycle programming competition. We were all given a developer’s kit to work on our AI algorithms and a very simple map to run it on. Once we got to the competition in our huge training room — complete with music, speech synthesis, smack-talk chat windows, leaderboards, and pizza — it was clear that the simple course was nothing compared to what our cycles had to navigate for the real games. It was a terrific afternoon and we all had a blast. The winner received a Tron Memory Disc trophy and he even had to race a cycle against his own AI using an old-school, gigantic Nintendo joystick. Good times were had by all–even us losers.

An image of the limited-edition InfoSpace decal you can score at the Cascadia Ruby conference!

We have also seen multiple examples of developers or other employees having an idea, doing a quick prototype, having the company leadership support us in spending time exploring and enhancing it, and investing in those ideas that have a shot of becoming something new. Companies always talk about finding innovation from their employees, but I have not truly experienced that anywhere else, but here at InfoSpace.

In addition to investing in our employees, InfoSpace is also investing in the Open Source community.  We’ve had the chance to spend some of our time on open source projects (http://github.com/infospace).  I was also able to update a Node.js bundle for TextMate to give it the same cool Run window command as the Ruby and bundle provides, and contribute it back out to the community. That contribution was picked up on The Javascript Show podcast as well as the Javascript Weekly newsletter. Since then, we have around 20 watchers and even received a pull request or two!

InfoSpace is also showing their support in our efforts and the Ruby community by participating as a Platinum sponsor of the Cascadia Ruby conference, the first regional Ruby conference for Portland, OR, Seattle, and Vancouver, BC. We will certainly be there and we are looking forward to meeting everyone! We will have a table out front and we are excited about the opportunity to participate and help grow the local community.

As I said earlier, we are a passionate bunch and we really love what we have experienced so far.  We are just getting started, but we love working in small, creative teams with these awesome technologies and the people who build them.  It really has brought the joy of programming that got us hooked in the first place back to our daily lives!

Stop by and visit us at the InfoSpace table at the Cascadia Ruby Conference this Friday or Saturday. The first five people to check-in on Foursquare will receive a choice of a few cool prizes! We hope to meet you there!

Tony and the InfoSpace Software Development Team