Thoughts on DrupalCon LA's Front End Forum
At DrupalconLA, I had the opportunity to go to an Open Front End Forum, wherein people chatted about the state of the front end. It was good fun, and the moderator did a good job of keeping the conversation flowing.
First question: "Where is the line that separates front end from back end?"
There was some disagreement on that. There is a line, there is no line, it's a permeable line... Going on to explore what defined front end or backend, people cited tasks and tools like PHP, HTML/CSS/JS, the browser, Photoshop, in favour of one argument or another.
Next question: Then he asked, "What do you call yourself?"
A front end dev? A themer? One chap claimed 'I do front end development', which was cited as a rather nice way to think about it as he was not defining himself, but rather just describing what he did.
Similarly, I was thinking: "I make websites".
Front end frameworks were also discussed at length. Angular, the cool kid on the block, kept surfacing and re-surfacing, as it seems to often be considered 'easier'. Interestingly, nobody cited any of the negatives of using front-end frameworks that had been talked about the previous day, such as the fact that you lose all the good stuff baked into Drupal, e.g. you need to worry about form API stuff, user password reset, SEO etc.
But everyone agreed that they love the shiny toys. There was a discussion around 'what if a framework was baked into Drupal Core?'. "Ah it'll never happen" seemed to be the consensus. Note: Backbone and Underscore were actually added to Drupal Core in 2013!
There was talk about front end people resenting or resisting the increasing complexity and 'back-ended-ness' of the front end, and some complaining about having to write PHP.
A couple of brave souls actually stood up and asked "Why can't we do both? I do both."
My thoughts
I've been making websites since 1998, hand writing HTML and styles. There was no front end and back end. There was just a website. Now, I still make websites. I let Drupal do the hard work, and then I massage it to fullfil my clients' dreams.
What I was hearing from several people in the room was that they had found their niche and did not want to leave it. They did not want to learn anything new, with the possible exception of Angular, the shiny new toy. This can't be good in such a fast-moving industry.
Back in the day, I learned HTML to make my first page. I learned CSS to make it sparkle. I learned JS to make it dance. I learned to love JS through the cross-browser magic provided by learning jQuery's API. I learned about and how to use a few CMSs and built sites with them. I learned and wrote SQL like a badass. I busted a Java groove and rocked some servlets. I learned Drupal and quickly tried to forget some previous CMS horror-shows. I learned some PHP. I learned how to modify templates and override preprocess functions. I learned how not to write a module. I learned how to write a module. I learned SASS. I learned Git.
It just keeps on going. I love to learn.
A home truth that just keeps coming back to us at Annertech is this: "If you are not embarrassed about the code you wrote 6 months ago, you are not learning fast enough."
To "front-enders" afraid of the back-end, and "back-enders" afraid of the front-end, I say to you: You work with computers. If you can handle Javascript, you can do PHP. If you managed to build a site through manually crafting the HTML, you can manage CSS. If you can manage CSS, it's a small step to SASS and from there we're back to PHP. It's all the same delicious burrito with different salsas.
I feel that one big exception is in design, and specifically graphic design, which is a very magical skill, and doesn't immediately follow from code. But even those blessed with warlock-like Photoshop chops need to know how their design can be implemented, or else they are dreaming up a whole world of hurt.
By all means, find a preferred area of expertise and hone that craft, but know how all the other areas work. Each layer of the technology stack for a modern web site impacts on the construction, architecture and performance of the others, so it is imperative to understand the knock on effects of your decisions.
The take-aways from all of this are simple:
- keep learning, all the time,
- living in a silo leads to unhappiness all round,
- lastly, commit - to your choice of career, to amazing websites and to always using version control!
Contact us when you are ready to accept the help that Annertech can give to your project. We build award-winning websites.
Anthony Lindsay Director of Managed Services
With decades of experience, Anthony leads the Annertech Managed Services Team, delivering top quality design, development, and, ultimately peace-of-mind services to all of Annertech's wonderful clients.