A response to “A Baseline for Front-End Developers”

I read a great article: A Baseline for Front-End Developers (article no longer available 🙁 )

But one of the comments in particular summed it up for me:

“Ease up, fella. This post feels borderline religious.”

And that’s what it is. It’s born again religion. It’s somebody who’s just seen the light and wants to evangelise. And there’s nothing wrong with that. And it shows me that we, the web industry, are still suffering growing pains.

We might not be infants any more. But we are a long way from a mature adult. Perhaps we’re stuck in an angsty teenage? Struggling with our identity?

The baseline article sounds like somebody who is self taught in web,  learning software development. I studied web development at university, and the course was taught by old school software developers who were trying to get their heads around web. Everyone is coming at it from a different direction.

If there’s anything I’ve learned about the web it’s that it is something new. It is not old school software development. It’s not the horrible table based layouts and crappy javascript that every self taught web guru in the ’90s and early 2000’s cut their teeth on. It’s none of those things, nor is it entirely removed from them.

Anyway, here’s my comments on the specific points in the article…

Javascript

Right on.

Nothing illustrates my point about the webs growing pains for me better than Javascript itself. Javascript’s coming of age mirrors the growing up of the web itself.

Old school software developers poo poo’d JS because it’s “wasn’t a real programming language”. My message to them?

Get over yourselves!

Learn Javascript.

Not only is it a real programming language, but it’s a darn good one.

Git

This should be titled “version control”.

Version control is critical to any development project, big or small. Even the tiny ones. But Git? Seriously? I know it’s cool to love Git, but it’s not like it’s the only versioning system out there. We use Mercurial at work, and I’ve kinda grown fond of it, but if I’m honest, we could be using SVN just as easily and with no loss of quality. And the only reason CSV wouldn’t work for us is because we work as a team and CSV doesn’t do teams so good.

Most of us would love to think we are the next Linus Torvalds working on a mind numbingly complicated software project that will earn us a Nobel Prize. But we aren’t. Really.

Modularity.

Well this is just old school software development. And I’m glad web developers have discovered it.

In Browser Developer Tools

Yes, yes. Yes!

Actually I’m surprised they need to be mentioned at all. I can’t imagine a developer worth the title not using the built in tools. But if we are mentioning them, then why not plug Firebug* for Firefox, which showed all the other browsers how it should be done.

* Firebug isn’t a thing anymore since developer tools are now integrated into all modern browsers which is a fantastic thing 🙂

The Command Line

Now here’s a funny one. This is old old school.

It surprised me recently when I was looking for help on a command line interface (CLI) command I was having trouble with. All the Linux documentation gave examples of how to fix it using GUI widgets. Why? Because graphic interfaces rock! And even the Linux world has got behind them. So I’m surprised to see this article being so enthusiastic about the command line.

Sure the command line has it’s place. It’s phenomenally powerful. But with great power, comes great responsibility. If you are going to use the command line, do it with caution*.

But first, check to see if there isn’t a GUI app that will do the job for you in one mouse click, rather than 250 key strokes.

* I speak from experience having once blown away an entire production web site with a typo in the CLI. Luckily the IT guys had backups, but they didn’t let me forget how stupid I’d been.

Client Side Templating

I’ll be honest. I need to look into this more.

When you say templates, I think of smarty. And then I need pain killers. I hope these new templates are a whole lot better than the old. For so many projects, it’s actually easier just to ditch the templates and DIY.

CSS Preprocessors

Hmm. Bandaid.

Treating the symptom, not the cause.

I love CSS, but preprocessors and frameworks are only making a bitter pill slightly easier to swallow. What we need is a whole new take on styling the web. But it’s not going to happen any time soon. I’m not even aware of any likely successors (I’d love to hear about them if they exist). In the mean time, embrace the preprocessor!

Testing

More honesty time. This is something I need to spend time with and get better at. As much as I love the web and the new things it presents, a part of me is still stuck in my old ways. And not for any good reason. I just need to get over myself and get with the testing.

Process automation + Code quality

More old school goodness, now coming to a web near you.

The fine manual

Had a little LOL at this one.

Actually I don’t prefix searches with “mdn”. I just go straight to the MDN and search there. Or search on Stack Overflow.

Google is so passe.