Still searching for the code to success? Take the shortcut.

The man behind BDD with JavaScript

Developer.Press have just released ‘Behaviour Driven Development with JavaScript’ by Marco Emrich to great success!

So we thought we’d get to know more about the man behind the book itself!

Marco_Emrich_head_shot

How did you first get into developing / coding?

My first encounter with a computer was in 1987 during a physics class. This particular one (a Commodore C64) went immediately to my Xmas wish list. When I teared away the gift wrapping, I found the datasette broken. A datasette was a tape drive using audio cassettes for storage – without it, there were no chance to play any of the bundled games; what a sad day for a young boy.

The machine itself, however, worked fine. Bundled with it was a well written manual. Unlike most manuals today, this one didn’t treat their readers like complete morons and even included a course in the GW-Basic programming language. So I decided to learn coding my own games till a replacement arrives. I was fascinated, in love, and just couldn’t stop coding. More than twenty years later, I still love to code.

When did you start working with BDD and JavaScript?

Actually, these are two different questions. JavaScript? There was a seminar I had to do at university. Every student was allowed to choose a topic. I chose “scripting languages for the Internet” and presented Tkl/Tk, Java and JavaScript to the other students. An odd selection from todays perspective. While I never saw Tkl again, JavaScript and me become good friends. When I was offered a part time job as a JavaScript/HTML-coder, one year later, I took it happily.

BDD was quite a different story. I was introduced to TDD with the Ruby on Rails framework in 2005. At this time there wasn’t a lot of documentation available of how to use TDD for the best benefit. After many experiments, real projects, successes and failures, I stumbled over Dan North’s BDD-introduction and it immediately struck a cord. If I just had known these principles and practices earlier, it would have saved me a lot of pain.

Can you describe what the book has in store for potential readers?

I wrote exactly the book that I would have liked to read when I started with TDD/BDD. It provides a short and straight path for reaping the benefits of BDD with JavaScript. Readers will learn the good parts in tutorial style without historical baggage. I used Jasmine, so they will learn this as well; although it’s not only about learning the tool, it’s about the concepts and how to apply them in practice.

What was the best and worst part about writing the book?

The worst part was to make time for writing. Besides wife and kids, organizing user groups and talking at conferences, it’s hard to cram some time aside for writing a book in your spare time. I could easily have doubled or tripled the content, but I had to cut the topics very rigorously. I didn’t like it, but in the end I think, the readers benefit from having a short and concise book with a clear focus.

The part I loved was crafting the example code. I reworked the code several times, with each version getting simpler and more focused. I really love refactoring, but this kind of code rework was even more fun. It was also very entertaining to dream up a story of a cool company and their workers.

 What’s the main piece of advice you’d give to someone who’s just starting out with JavaScript in the developer world?

The body of knowledge for JavaScript is huge. It accumulated a lot of historical baggage. Don’t expect to master every aspect of JS in a short time. Start with the good parts and don’t target old browsers. Also don’t think JS is similar to Java or any other prominent OO-language. Embrace the functional concepts and prototypical inheritance.

What individuals or companies do you admire most/heroes in the tech space?

Phew. Difficult question. Let’s check twitter :) There are a many great people I follow, watch their talks, or read their books and blogs etc. Here is a random selection ‘Aaron Patterson, Adewale Oshiney, Addy Osmani, Avdi Grimm, Brendan Eich, Brian Marick, C.J. Date, Corey Haines, Chris Granger, David Chelimsky, Dan North, Dave Thomas, Douglas Crockford, Eric Evans, Gojko Adzic, Jeremy Ashkenas, J.B. Rainsberger, John Resig, Jose Valim, Kent Beck, Kevlin Henney, Markus Gärtner, Martin Fowler, Michael Feathers, Nat Pryce, Obie Fernandez, Paul Irish, Robert C. Martin, Sam Stephenson, Scott Ambler, Stefan Tilkov, Steve Klabnik, Steve Souders, Stoyan Stefanov, Yehuda Katz, Yukihiro Matsumoto’.

There also some companies I admire, because they help to promote and support good software craftsmanship or innovative technologies, Thoughtworks or It-Agile for example. Github is also superb. They have built the backbone of the modern open source movement.

If you could have 3 celebrities round for dinner (living or dead) who would they be?

That depends on your definition of celebrity. If you allow me some freedom here, I would like to meet with Robert Abbott, Michael Moorcock and Peter Molyneux. Maybe I could talk them into a common game project. I’m convinced, that this would become a masterpiece!

Finally, what’s your favourite movie?

I prefer movies with well thought stories and great artistic style. Since I can’t decide I give you three: 12 Monkeys, Cube, Inception.

Behaviour Driven Development

Marco’s ebook is available to purchase now from the Developer.Press website for only $3.99 ( site also contains links to other retailers such as Amazon, Google Play and iBooks).

You can follow Marco and Developer.Press on twitter, Facebook or Google Plus.

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Information

This entry was posted on June 24, 2013 by in Uncategorized and tagged , , , , , , , , , .
var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-39401322-1']); _gaq.push(['_setDomainName', 'wordpress.com']); _gaq.push(['_setAllowLinker', true]); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })();
Follow

Get every new post delivered to your Inbox.

Join 601 other followers

%d bloggers like this: