Live data from Hacker News

The Hubris of Front-End Developers

allenc.com

21–27 of 27 posts

Re: The Hubris of Front-End Developers

#21
post #8

Earlier quoted context omitted.

Simply put, if computer science heavy questions bother you, you are not an A player. And herein lies the problem - the hubris of a SW Dev. So often the more artistic-leaning FE Dev is interviewed by the more pragmatic-leaning SW Dev. The software dev starts asking questions about recursion and collections and then labels the FE as a terrible developer. What you have to understand is that FE Devs don't care about that…

It's not worse, it's just different. Many SW Devs are great at creative front end work. Many FE Devs used to be amazing back end Devs. Many Devs don't care what end or language they work in. Those are A players. If you've just never worked with a single particular technology, that's fine. If on the other hand you have never touched a lot of technologies.... probably not an A player. If you don't know anything about r…

You're saying that just because someone doesn't have a specific set of domain knowledge they can't be an 'A player' in the domain they do have knowledge in. This simply isn't true.

Using an analogy, even though Tiger Woods and Michael Jordan play golf, Michael Jordan can't be an 'A player' in basketball even though that's his domain, not golf.

Are backend developers that have only a cursory domain knowledge of the front end not 'A players'?

Re: The Hubris of Front-End Developers

#22
post #13

Earlier quoted context omitted.

You only need to coordinate inputs and outputs. If you need to coordinate more than that you've probably got a very coupled system. Especially with web services - REST, SOAP, etc. - who cares if the front end is connecting to a Java application or a .Net application? Who cares if what the FE dev is building is IOS, Android, JSF, Spring, Flex, etc.? If it's done right, all the details can be (and should be) abstracted…

My entire point is - who defines this REST / SOAP / "who cares" layer? If it's strictly back-end engineers, front-end interoperability is not represented. A FE engineer involved in the development and maintenance of this API layer ensures that concerns are effectively recognized - which requires an FE engineer who knows the whole stack. Yes, these details should be abstracted away from the strict implementation of th…

who defines this REST / SOAP / "who cares" layer

Definition of an API isn't about knowing the 'entire stack'.

A front end dev will need to understand the structure of the API and present needs to whoever is maintaining it but it doesn't matter what the API is coded in since that is most likely abstracted away via the different service interfaces.

Frankly, other than what they are developing the front end in, the only aspect a dedicated front end developer needs access to is the document describing the API so they can make changes there and get their needs to the API owner.

Re: The Hubris of Front-End Developers

#23
post #15

Earlier quoted context omitted.

but knowing how you are getting your data, where it's coming from, etc will only make you better. How will it make any difference if they aren't actually making changes to the backend?

Requires you to have to ask them less questions when you run into a blocker. Helps you debug issues. it helps you help them design the interface or design an API. Are you just missing the fundamental point of why anyone learns anything? You learn more so you can do more and make more effective/informed decisions.

Requires you to have to ask them less questions when you run into a blocker. Helps you debug issues.

Possibly.

it helps you help them design the interface or design an API.

Ugh, that's a disaster waiting to happen. Dedicated backend engineers are usually terrible when it comes to what the user really needs and how to display it.

Are you just missing the fundamental point of why anyone learns anything? You learn more so you can do more and make more effective/informed decisions.

No reason to be condescending.

My point is that a front end engineer can make plenty of informed decisions without needing to know the schema of the database or the code in the MT. Does the API return what is expected? Yes = bug in UI. No = bug in server. Does the UI need something the API doesn't provide? Talk to the backend dev to get that into the API. It should be that simple.

Re: The Hubris of Front-End Developers

#24
post #20

HTML/CSS is a small piece of a stack that is fairly easy to pick up. There are hardly ever reasons to hire someone who is FE only (at small companies) and I often find that people who are FE only don't have the kind foundation that would allow them to venture into complicated JS code. The author seems to be implying that SEs given front end responsibilities will struggle with them but that's only true in the way that…

Ah, thanks - I guess I should just get rid of the fixed header...

But to your first point, I don't think it's just learning HTML and CSS syntax. For example, I've never seen a SE break out XScope and measure the exact pixels between two elements, obsess about the opacity of a drop shadow, or spend a few hours to tweak the bezier curve of an animation. It's like saying that SEs will just struggle with design initially.

Re: The Hubris of Front-End Developers

#25
post #21

Earlier quoted context omitted.

It's not worse, it's just different. Many SW Devs are great at creative front end work. Many FE Devs used to be amazing back end Devs. Many Devs don't care what end or language they work in. Those are A players. If you've just never worked with a single particular technology, that's fine. If on the other hand you have never touched a lot of technologies.... probably not an A player. If you don't know anything about r…

You're saying that just because someone doesn't have a specific set of domain knowledge they can't be an 'A player' in the domain they do have knowledge in. This simply isn't true. Using an analogy, even though Tiger Woods and Michael Jordan play golf, Michael Jordan can't be an 'A player' in basketball even though that's his domain, not golf. Are backend developers that have only a cursory domain knowledge of the fr…

A better analogy might be two different positions in basketball: shooting guard and center. To some degree, the two positions specialize: SG doesn't need to block shots (let's say), while the center does.

However, everyone needs to dribble. A simple CS concept like recursion is analogous to dribbling. If you can't dribble, you're not playing basketball. If you don't know what recursion is, you're not a professional. Period.

Re: The Hubris of Front-End Developers

#26
post #21

Earlier quoted context omitted.

It's not worse, it's just different. Many SW Devs are great at creative front end work. Many FE Devs used to be amazing back end Devs. Many Devs don't care what end or language they work in. Those are A players. If you've just never worked with a single particular technology, that's fine. If on the other hand you have never touched a lot of technologies.... probably not an A player. If you don't know anything about r…

You're saying that just because someone doesn't have a specific set of domain knowledge they can't be an 'A player' in the domain they do have knowledge in. This simply isn't true. Using an analogy, even though Tiger Woods and Michael Jordan play golf, Michael Jordan can't be an 'A player' in basketball even though that's his domain, not golf. Are backend developers that have only a cursory domain knowledge of the fr…

Are backend developers that have only a cursory domain knowledge of the front end not 'A players'?

I would say that if have no interest in what is literally half of the internet, it does not matter how good you are at the back end, you are not an A player.

And computer science isn't just another domain. We're not talking php vs python here. This is about the fundamental nature of the work you do. Yes, even as a JS slinger, you still have the exact same computing fundamentals to deal with.

It's not like basketball and golf, it's like basic athleticism. No you can't be an A basketball player if you don't have a minimum of athleticism. And the same is true for almost all sports.

The fundamentals of computer science are to developers like cardio is to athletes.

Re: The Hubris of Front-End Developers

#27
post #21

Earlier quoted context omitted.

You're saying that just because someone doesn't have a specific set of domain knowledge they can't be an 'A player' in the domain they do have knowledge in. This simply isn't true. Using an analogy, even though Tiger Woods and Michael Jordan play golf, Michael Jordan can't be an 'A player' in basketball even though that's his domain, not golf. Are backend developers that have only a cursory domain knowledge of the fr…

Are backend developers that have only a cursory domain knowledge of the front end not 'A players'? I would say that if have no interest in what is literally half of the internet, it does not matter how good you are at the back end, you are not an A player. And computer science isn't just another domain. We're not talking php vs python here. This is about the fundamental nature of the work you do. Yes, even as a JS sl…

I would say that if have no interest in what is literally half of the internet, it does not matter how good you are at the back end, you are not an A player.

There are very few people who could have enough knowledge of all the domains of CS to be an 'A player' in your definition.

This is about the fundamental nature of the work you do. Yes, even as a JS slinger, you still have the exact same computing fundamentals to deal with.

Not sure if you are literally targeting me, but I am a backend developer who does a fair share of UI. I frankly despise JS but live with it nonetheless.

Post reply on HN