Javascriptrap

By Mark Dalgleish

Thumbnail

Give me the Mic

Crockford and Eich

From Netscape to Node

It's been quite a hike

JS in the front, REST in the back

Ain't it time you changed your stack?

Server-side rendering? That's just whack

Once you go Backbone, you never go back

Use Grunt, it automates your stuff

Code it DRY, dont waste precious time

AMD will make you will feel cool

Loose Coupling so you won't look a fool

Onclick to Require was such a ride

With GitHub my skills have got nowhere to hide

My lack of globals is a point of pride

I'm hitting my stride on the client-side

Stop testing IE 6, it's a trap!

Been crap since way back, everybody knows that

Standards make dev such a snap

And don't get me started on space vs. tab

Just sit right back hear the ta le

Brendan's gonna make, we cannot fail

We ain't got three hours, it'll take ten days

Born from scheme and self in a lispy haze

Unobtrusive set us free

It all blew up with jQuery

Now it's MVC with TDD

Ain't got time for PHP

And amp, semicolon, the rhymes, I got plenty

I got the space encoded, fool it's percent twenty

My var's locked in closure, that's dope

Ain't no bleedin or leakin since I'm in the right scope

Yo, JS is /the/ form

Where I code like a storm

Free from spaghetti!

Fierce like the Serengeti

If that bug's hard to track

Console's got your back

You code in JS, but you mixing the types

And always forget the syntax for “splice”

To type “double equal” is like rolling the dice

And you scared to death … of prototypes

It’s time to stand up and get some respect

Just go to ECMA and read fucking spec

Unpuzzle, unlock it, uncode and decrypt

And gain yourself power of true JavaScript

You add number to string and string to array

Divide it by object (you know it’s ok)

The prototype chain you can see through the code…

It was a great journey from Netscape to Node

Eval is evil and with is whack

F*ck classes you can have em back

This is the generation of floating math

No tail calls in this giant stack

Var i, math dot pie in the sky

Fly tries to catch zero size

Arrays with new prototypes are lies

Disguised as wise overrides

Prefix with java, ecma, mocha, and live

Script all day and all night

Microsize your JS lines

But dont self minify

Above all else, yo, f*ck static types

Go async and then you'll never lookdfdf

(this line will run before the last's call)dfvdf

Back. Stop waiting for some slow IO

And start using four cores in your MacBook Pro

Dfvdf

Fat arrow lambda, func'd the funky

Close over this, ya JavaScript junkie

Comma abuse, ASI hack

Truth-y compare, you'll wanna redact

Dfvfd

Bask in the glow, open/close brace

Of any indent, Insignificant whitespace

Arguments array? It isn't that hard

You ain't gotta call, Captain Picard

My macros are sweet, my models aren't fat

My build script's complete, unit test - all that

Controllers are trim, view models fine

E.C.M.A. - TC-39

Functional code, is what I'm rockin'

Dot foreach and map, reduce ain't lockin'

Those mutable props, makin' me sneeze

I think I'm allergic, object dot freeze

While cache clonin', weakMap for me

Gimme some has,Own-Prop-er-ty

Awaiting for no one, renaming a file

Async is alright, actor callback style

// maybe close w/

Google Go code-gen, in fat reams

Don't need no types, or agile teams

Slingin' that node, gimme pipes, gimme streams

Gimme that Harmony, of our dreams

My code is lean, it ain't all swollen

I love my braces and my semicolons

Its ok now, don't you be tight-lipped

It's ok to say you hate coffeescript!

It was all a dream

I used to code vanilla JS on the scene

Now I got Backbone and Zepto all up in the IDE

JS is blowin' up like I thought it would

New frameworks, but same language in the hood

And it’s all good

So if you dont know, now you know, coders. Uh

// finish this rap

Hey yo server siders clogging up the rear

Stop making it complex, I'm starting to tear

Try the frontend, that's where it's at

Power to the coders, got nothin' to catch

Semicolons yes, semicolons no

Semicolons no matter how we roll

Love love love love semicolons love

Hate hate hate hate semicolons hate