home about me text processing with ruby

About Rob Miller

Journalism, marketing, software development, design, writing, data analysis, commercial strategy, consumer research; there are few things I’m not interested in, and few things I’ve not touched on in a slightly schizophrenic career.

I like nothing more than getting my head around complex, complicated systems and then explaining and simplifying them – whether that’s consumer behaviour in a particular market, the nuts and bolts of a commercial model, or the technology that powers a business. I love figuring out how businesses can understand and adapt to a rapidly changing world of ever-tougher competition and ever-more demanding consumers.

I’m currently Chief Strategist at Big Fish, a design, branding, and marketing consultancy based in London. I help our clients – people like Yeo Valley, Dorset Cereals, Belvoir Fruit Farms, and Tyrrells Crisps – with their commercial and marketing strategies, I plan and facilitate qualitative and quantitative consumer research, and I generally try to bring instinct, insight, and inspiration to the creative process.

But I particularly love working with direct businesses. I love their direct connection to consumers, I love their ability to make data-driven decisions, and I love their ability to execute things and see the results immediately. I’ve worked with direct businesses like, Freddie’s Flowers, Yellow Zebra Safaris, and Pai skincare, among many others, on everything from consumer profiling to UX, from data analysis to hiring development teams.

Before I got into my current line of work, in 2010, I worked as a journalist and lived for a time in Bosnia where I reported on war crimes trials at the Court of Bosnia and Herzegovina. I’m still a fully signed-up Balkanophile, and follow the region’s news whenever I can.

Ceasing to work as a journalist hasn’t diminished my love for writing, as I assume you can see from this blog. Some of the most popular entries here have been:

  • Decoding “Almost Sinatra” – an article in which I break down Konstantin Haase’s “Almost Sinatra”, trying to discover the Ruby tricks within and gain an education in just how concise Ruby can be.
  • Ruby’s -e, -n, and -p switches – I talked here about these three command line arguments to the Ruby executable, inherited from Perl, that enable you to perform powerful one-liners in the shell to process text.

As well as what’s on this site, you can find my book reviews, travel writing, and other attempts at “serious” writing on my writing blog.

I also wrote my first book in 2015: Text Processing with Ruby. Aimed at the novice-to-intermediate Ruby developer, TPWR takes you from the basics of reading files through to parsing structured files, using regular expressions to extract data from text, and writing Unix utilities that can play nicely with other processes – with lots more along the way. If you’ve ever found yourself with a mountain of text and not known what to do with it, TPWR might help. TPWR was picked up by Pragmatic Bookshelf in the summer of 2014, and is available to buy from their website.

I also enjoy working on open source projects. You can find some of the ones I’ve worked on on my GitHub profile. Among the more popular ones are: ruby-wpdb, a WordPress binding for Ruby; varnisher, a tool for purging Varnish HTTP caches; and batchtapaper, a mass-adding tool for Instapaper.

If you’d like to contact me, you can email me at