A path for quickly becoming productive with Node.js

If you’re an experienced web developer, and you want to learn Node.js and be somewhat productive with your time, here’s an easy path to begin with.

I’ll assume you know raw JavaScript and a little raw Node. Enough JavaScript to be familiar with the DOM, anonymous functions, and callbacks. You dont have to know React or anything of the sort.

First up, Learn enough to recognise the new syntaxes in ES2016, along with promises, arrow functions, generators and async await. You don’t have to be good at them; just be able to know how to read them.

Now learn enough Node and NPM to start a vanilla Express server and realise how much work it would be to write a whole fully featured web application in it.

Now quit jQuery, cold turkey.

If you come from using a Rails-like framework such as Rails, Django or Laravel, the though of scouring NPM for all the packages you’ll need, you’ll be wanting someone to make opinionated decisions about the right packages for the job for you. May I suggest Adonis.js. It comes with all the MVC, Authentication and ActiveRecord stuff you’re used to, along with loads of other good stuff too. You’ll have a good reason to learn about Generators, Promises and async await here.

Resist the urge to jQuery.

If you want to write your front end as a single page application (SPA), to run in front of your API, you could use what you’re familiar with, or you can start afresh with Vue.js because it has the gentlest learning curve of any of the mainline frameworks, all the best stuff from the other frameworks, and you don’t even have to learn a bundled/compiler if you don’t need it.

Vue is easy to learn, easy to adopt, and you’re never forced into complicating things too early. Go at your own pace, and eventually you’ll learn about components, which will change everything. Get started with Vue’s single file components and never look back.

With Vue, you don’t need a router out of the box, until you know you do. You also don’t need state storage until you know you do.

You want to write a universal app, or use Material design you can do that when you want. Heck, you can even bring in JSX if you’re feeling that. And you dont have to add any of these packages to your project, until you need it, and in any order.

tl;dr: Learn enough JS and Node to spot new JS language constructs, starting with Adonis will give you a reason to learn the new stuff while giving you an easier path to success.

Disagree? Got a easier, faster path to productivity and learning all this crazy JS? Chime in below, or hit me up: @Glutnix on Twitter.

New inner.geek.nz design!

Yup, I got a new design! I did this all in 1 day.

Sure, I did spend some time ‘upskilling’ at work doing the design and html template, but I got the whole WordPress skin done in about 4 hours.

I based it off of the Classic theme (y’know, the ugly default theme) and tweaked the living daylights out of it, adding extra template files.

I’m quite happy with how it came out. What say you?

Jakob Nielson rides again

Just had this one come through the wire:

Jakob Nielsen’s Alertbox, June 23, 2009: Stop Password Masking

Usability suffers when users type in passwords and the only feedback they get is a row of bullets. Typically, masking passwords doesn’t even increase security, but it does cost you business due to login failures.

This sounds like Nielson kicking up publicity. This is shorter than his normal articles and he hasn’t backed this one up by mentioning his latest rounds of usability tests. He’s often got really good points, but this is one that I have issue with.

Nielson has forgotten that the reason password masking exists is if you type it out but don’t submit the form right away, then it won’t be on the screen for a long length of time for passers-by to ‘shoulder-surf’. The form could be really really long and/or you might be a really slow typist.

Padlocks and deadbolts keep honest people honest. The same goes for password masking.

Not to mention that password masking is visual shorthand reminder for the personal habits of “you should remember what you right in this box, cos even you won’t see it” and “no-one else should see this but you”. If we removed this ‘tell’, what would become of the culture of ‘protect your password’?

Think of where, other than web sites, that password masks get used. ATMs, EFTPOS machines, computer software, the Operating System uses it. Western culture is conditioned to this design pattern, and I speculate that the only people who have trouble remembering passwords are the ones who were born before 1980.

I guess a compromise would be to have the field in plain text when it has focus, switching to a password mask on blur…? Not a difficult solution.

IE6 denial message for Momentile.com


You can see sketches and a bit of the process on my website.

There have been many requests to use this image on other websites, so I’ve decided to release it under a Creative Commons license. You are free to reuse the image on your own website as long as credit is given and linked back to RobotJohnny.com.

For prints, contact me directly.”>

IE6 denial message for Momentile.com
Uploaded to Flickr by John Martz.

Go home, IE6!

WDANZ Wellington Conference

At WDANZ‘s Wellington Conference last week, I had the privilege of talking to a group of my peers about how easy JavaScript has become since the DOM — there is still a lot of people in this industry out there who think JavaScript is in the too-hard basket, but if you think about it the right way, it really isn’t.

My slides for the talk I did (PDF, 180kb)

Creative Commons License My slides are licensed under a Creative Commons Attribution 3.0 License.  You are free to share and remix my work without limitation as long as you credit me, Brett Taylor, with a link to this blog post.

. . .

I had a really good time at the WDANZ Conference. While there wasn’t a spectacular turn out, the quality of the speakers was second-to-none. I learned an absolutely epic amount of stuff about the business hemisphere of this industry, and met some of the most highly respected developers in New Zealand. I won’t be missing the next WDANZ conference in my city!