Barbarian Meets Coding Titlebarbarianmeetscoding

WebDev, UX & a Pinch of Fantasy

How to Write a Book And Not Die Trying: The Story of How I Wrote JavaScript-Mancy And Everything I Learned From Writing Two Books and a Half - Part I

Last week I finished my second book JavaScript-mancy: OOP - Mastering the Arcane Art of Summoning Objects in JavaScript and promised to write a follow-up on everything I’ve learned on the topic of writing books these past two years.

So here we are, I think this will be a long series of articles with half a serving of practicalities, tips and tricks, and another half of soul-searching, reflection and dreaming. Hopefully you’ll find something useful, and who knows, perhaps feel inspired to write your own book and spread your ideas throughout mankind.

Read on →

Rejoice! JavaScript-mancy OOP: Mastering the Arcane Art of Summoning Objects In JavaScript is Complete!

More than two years ago I had an idea.

I was going to write the most awesome JavaScript book of all time mixing two of my passions: programming and fantasy. It would be a complete guide for C# developers coming into JavaScript and it would teach them using common C# patterns and practices as the perfect gateway. All the while carefully navigating the most obscure and arcane parts of JavaScript, and opening the door to all the awesomeness JavaScript has to offer.

To make the book more fun and interesting it would have a theme - Fantasy - and a story - the hero’s (or heroine’s) journey of the wizard Mooleen in her quest to learn JavaScript and save the world. All the chapters would be wrapped within a Fantasy story of epic proportions, with all the code samples and exercises inspired by fantasy and related to the overarching story.

The name of this book was (is) JavaScript-mancy: Mastering the Arcane Art of Writing Awesome JavaScript.

a JavaScriptmancy sample cover

As time went by, I came to realize that the task I had set before me - writing a book about everything JavaScript - would be an arduous and time-consuming one. So after writing more than a thousand pages I decided to split the original volume into smaller ones and thus The JavaScript-mancy Series was born. I did this both for the readers and for my own sake. Being confronted by a 2000 pages book can be daunting for any reader and mustering the willpower to write a 2000 pages volume which could take years to complete is extremely difficult.

So I broke down the original book into two books that would include the more mature parts I had written at the time:

The first of these I published last year and the second one has been my sole focus for the past year. I’m happy to announce that I have just finished the last review for JavaScript-mancy OOP and so my second book is completed (writes Jaime with overwhelming happiness). Behold!

Read on →

TypeScript: JavaScript + Types = Awesome Developer Productivity - Type Annotations

The Mastering the Arcane Art of JavaScript-mancy series are my humble attempt at bringing my love for JavaScript to all other C# developers that haven’t yet discovered how awesome this language and its whole ecosystem are. These articles are excerpts of the super duper awesome JavaScript-Mancy book a compendium of all things JavaScript for C# developers.

Type annotations are TypeScript’s bread and butter and provide yet a new level of meta-programming in JavaScript: type meta-programming. Type annotations give you the ability to create a better developer experience for you and your team by ways of shorter feedback loops, compile time errors and API discoverability.

Read on →

TypeScript: JavaScript + Types = Awesome Developer Productivity - Cool TypeScript Features

The Mastering the Arcane Art of JavaScript-mancy series are my humble attempt at bringing my love for JavaScript to all other C# developers that haven’t yet discovered how awesome this language and its whole ecosystem are. These articles are excerpts of the super duper awesome JavaScript-Mancy book a compendium of all things JavaScript for C# developers.

In this part of the series we setup a basic TypeScript project and learn some of the cool features in TypeScript that can improve your life as a developer and enhance the code that you produce. Go forth!

Read on →

TypeScript: JavaScript + Types = Awesome Developer Productivity

The Mastering the Arcane Art of JavaScript-mancy series are my humble attempt at bringing my love for JavaScript to all other C# developers that haven’t yet discovered how awesome this language and its whole ecosystem are. These articles are excerpts of the super duper awesome JavaScript-Mancy book a compendium of all things JavaScript for C# developers.

TypeScript is a superset of JavaScript that adds type annotations and, thus, static typing on top of JavaScript.

If you are a C# or Java developer you’ll feel right at home writing TypeScript. If you are a JavaScript developer or have a background in dynamic programming languages you’ll encounter a slightly more verbose version of JavaScript that results in a safer and better developer experience. Either way, you’ll be happy to know that everything you’ve learned about JavaScript thus far also applies to TypeScript, that is, any JavaScript is valid TypeScript.

Read on →