Articles on Archives

  1. How to use context and describe in Rspec

    I've never been super-clear on how to use context and describe in Rspec. A colleague recently clarified it really nicely for me. Context is an English version of what the setup is for that group of specs. The nouns around your specs. Describe is for the verbs (methods) and/or the nouns (objects) which you are testing.


  2. Checking out Puffing Billy

    Puffing Billy gives you the ability to stub out remote sites in your request (integration) specs, in the same way that you'd use Webmock or Artifice in your unit/controller specs. I thought I'd throw a little non-rails spec together to check it out.


  3. A use for cucumber

    I first came across Cucumber at the 2007 QCon conference in London. Aslak Hellesoy gave a really great talk where he took suggestions for an app, and built it live in a 1-hour session in front of everyone there using Cucumber to drive the features - BDD style.


  4. It's hard to get people to pay for software

    We've got used to free software. Either we expect it to be free, or (as with Facebook and Gmail) we're happy to use our personal data as currency. There's a ton of interesting thinking already on the web on the psychological shift that's happened in SAAS (Software as a Service) over the past, say, 5 years, but that isn't really my area - I'm much more interested in building software which people are happy to pay for. I thought it would be interesting to go through a very simple model of financing a new software service from conception to 12 months after launch.


  5. Rsift - A Ruby client for Datasift

    DataSift is a "real time social media filtering engine". They have recently published an API which allows developers to create and manage "streams". The domain of social media curation is very hot right now, so I was very interested to receive a alpha API key to try it out. I work mainly with Ruby, and there wasn't a client out there yet to "wrap" the Datasift API in Ruby, so I thought that writing that gem would be my first step.

    Read More about Rsift

  6. The Pivot as Prepare, Execute, Listen

    One of the key principles in Lean Startup is the Pivot. It has actually become a bit of a buzzword over the past year. The term comes from basketball - keep one foot planted but change direction with the other. The metaphor for business is that you stay grounded in what you've learned whilst testing something new. For example, you might have been offering a monthly subscription product: you could pivot to offering an annual subscription instead, or as well as the monthly. As I've been reading about Pivots, I realised I had met the pattern before in a quite different context.

    Read More

  7. Running background jobs with Resque

    Our users at Wordtracker search for keywords and linking domains many thousands of times each day. We run the majority of these searches as "background jobs" to maintain a good user experience. We'd developed an in-house system written in Ruby and Sinatra for running these jobs, but the robustness and error reporting wasn't as good as we wanted. I decided to take a look at the Redis backed Resque (pron. res-queue |ˈreskyoō|) to see whether it would work well for us.

    Read More

  8. Lean Startup London reviewed

    A couple of weeks ago, I attended a @TechHubFriday event: Eric Ries on The Lean Startup. Eric began with an interesting definition of a startup company: "A startup is a human institution designed to deliver a new product or service under conditions of extreme uncertainty." It has nothing to do with company size or industry sector. Interestingly, this differs from the "two guys in a garage" model, which is probably the mainstream media's impression of a startup.

    Read More

  9. Launching using Agile.

    We've just used agile methodologies to launch a new product, Link Builder at Wordtracker. We had to build the app and get to market quickly. That meant defining a 'viable product' and launching with fewer features than we would ideally have liked. It would prove to be crucial to gain traction and avoid falling behind our competitors. Agile Methodologies give us some structure and methods to help connect software development to business. I'd like to cover the three aspects which have been important to us in launching Link Builder...

    Read More

  10. A review of Leancamp

    A couple of days ago I attended an Unconfernce called Leancamp. My main reason for going was that David Heinemeier Hansson - the creator of RubyOnRails and co-author of Getting Real and Rework was speaking.

    Read More

  11. A review of Rework.

    Rework is largely a rehash of Getting Real, but with the focus moved away from people who write software, onto people involved in all aspects of running a business. The refocussing allows Fried and DHH to reach a far wider audience with their opinions. Their wisdom, gained by experience, of how to deliver software will be read by people who would have never considered reading Getting Real. That's pretty savvy market positioning and something that wouldn't have been achieved by a series of blog posts on their website.

    Read More

  12. Thoughts on MongoHQ pricing

    I was lucky enough to be a beta-tester for MongoHQ, the hosted MongoDB service. Yesterday (20100226) they came out of private beta, and launched their pricing options to the world. The results, as MongoMapper author John Nunemaker tweeted, were surprising...

    Read More

  13. Using Chowder for Simple Rack-based authentication

    I have been searching for some time for a simple rack based authentication system. A key requirement for me is that I'd like it to work with the data storage mechanism of my choice - MongoMapper. I spotted a project on github called Chowder, which worked really nicely...

    Read More

  14. JRuby Cookbook published

    I'm very happy that my contribution to the O'Reilly JRuby Cookbook has been accepted. It is only a little bit on making SOAP calls from Ruby (JRuby) using the Mule ESB Client library, but it is still really nice to see my name inside a book.

    Read More

  15. Calling SOAP Services from JRuby

    I have been working on a project which uses the Mule ESB, and a JRubyOnRails app. Part of this means calling SOAP services from within the JRuby app. Ola Bini sets out a couple of approaches in his JRuby on Rails book,but I thought I would blog the success I've had using the mule-client libraries. I am passing "complex" Java objects around in these SOAP services, not just primitives - always more difficult when it comes to SOAP interoperability.

    Read More

  16. Shuttleworth discusses future of OSS

    This is a reprint of an article I wrote for Ping Wales (now sadly closed) back in July 2006 covering Mark Shuttleworth's keynote speech at ApacheCon.

    Despite being on record as disliking public speaking, Mark Shuttleworth was in Dublin last month to give the keynote speech at this year's ApacheCon Europe.

    His theme was the future direction of open source software (OSS), and the issues developers should focus on to ensure the OSS movement's continued success.In true cosmonaut style, Shuttleworth's ApacheCon Europe presentation took the form of a countdown of the issues facing OSS developers.

    Read More

  17. Hacker and Painters

    There are plenty of coders in the world and in the mid 1990s, not a few of them tried their hands at creating a technology start-up company. The majority of those start-ups failed in due course - but one of them succeeded, and in doing so, became a part of dotcom legend. In 1998, Yahoo! paid $49 million for Viaweb Inc., a company whose market-leading Viaweb Store software and reporting tools powered the majority of all e-commerce sites then in existence. Not only is Viaweb Store thought to be the world's first web-based application, it was written using Lisp - one of the oldest programming languages still in relatively wide use.

    Read More