Front-end development should cease to be a profession.

Today I tried to provoke my twitter time line by stating that the discipline of front-end development should cease to exist. Part of it should become part of Visual Web Design, and part of it should become part of the discipline Web Development. Provoking worked, discussing the provocation is harder. I’ll try to explain what I mean.

I am asked to think about the future of the specialty front-end development as it is taught on the University of Applied Science in Amsterdam. One of the ideas I’m playing with is to make front-end development a part of two other courses that are taught there: Visual Design and Web Developer.

Visual Design

The reason behind this thinking is as follows: Visual web designers don’t really understand the web technically, they don’t understand that everything will look different everywhere. This must be part of their understanding. When they understand this, their designs will be better. I strongly believe this is the basic idea behind web design. This makes web design different from all other design specialties. Of course you could force designers to learn how to write HTML and CSS, but I don’t think that will work, designers want to see what they’re making. Instead we should make tools that force/help them in working with the web (instead of ignoring it). And until these tools exist we should teach them how the web works.

But it works both ways: many front-end developers right now don’t understand anything about design. They should.

Web Development

There used to be a strict division between people who write code for the server and people who write code for the browser. But this division is not so clear anymore. Which is a very good thing. But this does have some consequences: I see so called back-end developers bringing their best practices to the browser. The problem here is comparable with the problem we have with designers: the browser is completely different from the server and many developers find it very hard to accept that. Not all best practices apply to the browser. I firmly believe that all web developers must understand how browsers work, that developing for the browser is fundamentally different from developing for a server.

But it works both ways: many front-end developers right now can and should learn a lot from classic developers.

Conclusion

So I’m not saying that Front-end development should cease to exist as a trade. It is a separate profession in many ways. It needs its own specialists for sure. But I do believe that in applied universities front-end development, or browser behaviour, should be taught as a part of other, broader disciplines.

Now, I’m really looking forward to reading your opinions on this matter.

Comments

    • Sjors Pals
    • #

    I totally agree, the problem is that many designers and backend developers don’t have a clue about frontend development and problems. Not because they don’t care, but because they don’t know what kind of a problems frontenders run in if you don’t communicate.

    Even more sad is that there are a lot of good frameworks which both make the life easier of FE’s and SE’s. But without communication both parties are doing a lot of boring work, currently it only takes one line of code to convert a server result to JSON, very easy to render by many javascript json template parsers. Win Win!

    But it is all about communication, i would say, talke with your developer, tell them why you want to work together, ask them or your frontend code is easy to implement! It takes often only a few tweaks to make it easier for both.

    GG happy coding :)

    • Ruud Kuin
    • #

    The idea you’re playing with is interesting, I guess people shall/will have to understand each-others professional area better when both Visual Design and Web Developer will learn frontend development. Maybe the visual designers like to have a WYSIWYG editor like Dreamweaver with an HTML/CSS window to have a better understanding of how everything is coded. But I’m sure Web Dev’s know how browsers work, they should…

    Again, nice food for thought, Vasilis!

  1. I believe that in the long run it will indeed cease to be seen as a thing separate from design. Mostly due to strongly evolved tools (front-end frameworks and JavaScript libraries are the first baby steps). When you take a little dive into recent graphic design history, you will notice that a graphic designer used to have DTP colleagues that would prep the artwork for printing. Since Adobe’s PDF workflow, this is no longer the case. A good print designer knows how to prepare artwork for printing—which doesn’t mean that there still are a lot of designers out there who don’t.

    I strongly believe that a designer is driven by making things. His resources (paper & ink, molten plastic or computer code) should be irrelevant in that drive. A good designer has a thorough knowledge of whatever the resources he works with are, and web design is no exception to that rule.

    • Maaike
    • #

    Perhaps Xavier is right. Until then I believe we need special 3-person desks and monitors that switch off if nobody speaks for more than 5 minutes. OK I’m kidding but I believe communication is a big part of the solution.

  2. I actually don’t agree. I don’t think the front-end profession is two separate jobs, I don’t think there is any ambiguity whatsoever. It is, however, evolving into something most of us are not geared up for.

    I’ve always felt that designers shouldn’t need to code, at least at a production level. Sure, they can code for mockups, prototypes and anything that’s part of the design process. Designers that code I’d would never consider being a front-ender. Tools for web/ux designers still need to evolve because they’re woefully inadequate.

    So what is a fron-ender then?

    The profession sits in between two web professions that never really concerned themselves with customised UI’s. The tools are either not-existant or concealed by a framework.
    A front-ender creates the UI that a user directly interacts with. This includes text, sound, shapes, animation, and the interaction between all these. They have to technically recreate or implement a given design while understanding and instructing what the requirements are for both design and its technical implementation. The front-ender creates neither the design nor the technical services but makes the design fit the technical layer it sits on.

    The process, knowledge and skill required to create these interfaces has grown rather complex these last few years. That’s going to continue for while. It’s going to get worse before it gets better. Browsers, for example, still don’t do layouting and templating which is making things really hard.
    This just reflects that front-end technology from a web perspective is still very new. This does give us a chance to catch up on design theory and how to work with application level code.

  3. I agree with your conclusion that ‘browser behaviour’ should be a part of the curriculum of courses in other disciplines. How ‘far and deep’ this should be taught is the question. I think it would be beneficial to have a quick broad(!) presentation on how the Web came to be and how browsers generally work (with a very brief overview of the basic building blocks of websites: HTML/CSS/JS).

    The above should give both Designers and (traditional) Developers some context when they set out to work on/for the Web.

    As for the discipline of front-end development: one cannot draw clear lines anymore; there simply is too much overlap in disciplines. A good front-end developer deals with some(!) server configuration, back-end (Node? AJAX, Optimization etc), design (UX, ID, usability) and even ‘marketing’ (conversion, SEO, optimization, speed) issues.

    A front-end developer cannot be master all these areas — and we will undoubtedly see more specialization — but must have at least a basic working knowledge of most of these areas.

    I like to see the front-end developer as a middle-man between these other disciplines. A person with strong(er?) knowledge of the broader Web and one who _unifies_ the design and the functionality. In this context _communication_ is indeed one of the most crucial skills for a front-ender. She must be able to interpret and translate various messages between the other specialists.

    The truth is, however, that one could say many of these things about the other disciplines also: a web designer deals with marketing and usability issues and a back-end developer must have a lot of knowledge of performance, server configuration etc.

    We must not forget that the current developments in Web technologies are basically grown out of ‘hacks’. This is the beauty and the ‘curse’ of Web development: we could never have foreseen how it would evolve so we ‘run with what we have’ and hack our way around obstacles. Web design/development is ‘messy business’: the specs are messy, browsers are quirky and the future unpredictable.

    The most crucial skill, therefore, for anyone working on the Web — be it a designer or developer — is to be ‘responsive’ (zing!) to change, be an eager learner and a strong communicator. Oh, and to not be too occupied with roles, boundaries and other boxes :)

  4. Great argument. Design is always changing, and you never know who’s going to be in and out.