Hacker News new | ask | show | jobs
by hunterwerlla 3696 days ago
I know code camps are usually web focused, but I'm really surprised about the lack of any lower level, desktop, or non web back end options for "which roll are you most interested in". Coming from a CS background I was also surprised that more people were interested in front end web development than back end web development, because most of the people I interact with hate front end web development with a passion.
6 comments

When people want to learn how to create something, usually it starts off as imitation.

"I want to make a video game just like Mario!"

"I'd love to learn how to make a social network just like Twitter!"

"I'd like to learn how to make a desktop app just like iTunes!"

"I want to know how to make a programming language just like Lua!"

But the majority of software people use these days is web-based, even the desktop versions, from Facebook to Spotify to Twitter to Snapchat or whatever that's called. (I'm dating myself aren't I?)

So it makes sense that people getting into programming want to learn how to make web stuff first. But as they get deeper into learning how to make some website, they'll necessarily need to learn how to make the stuff that goes with it, like a backend server that uses a database, or a companion iOS app, or whatever.

Wouldn't this lead to a lot of mobile-first developers as well, though?
At least getting an basic introduction into web development (basic HTML, CSS, maybe PHP and jQuery) is probably a lot easier than mobile development.

Setting up IDE's, learning about OOP etc is probably harder than throwing some Bootstrap components together.

> desktop app just like iTunes

Ha. Haha. Hahaha.

Front-end programming is very visual. You can immediately see/sense/feel what you have developed/program, so there is a expedited positive feedback loop.

This can appeal to beginner programmers because it gives a immediate sense of satisfaction and accomplishment vs. backend programming where you see lines of output spit back to you in a terminal.

I may agree in term of first experience, but after a while (when you pass the "first time I..."), UI programming is a lot more tedious than back end. It requires so much boiler plate code to just achieve little things, having to worry about weird CSS behaviours, fighting winforms that do not do exactly what we want, obscure WPF syntax, etc. I feel that backend you only focus on your problem and get to an "ideal" solution quicker, which is more gratifying.
That's interesting, as I feel the opposite. I am a front end dev for a large eComm company, but do a lot of back end programming and scripting in my free time. The reason I love programming is problem solving. I have the most fun doing coding challenges, and get the most immediate sense of satisfaction and accomplishment when I write an algorithm that solves a test case. Although my day job is primarily "application level" JS, I am least happy when I have to do the visual things, like adding new templates with HTML/CSS. To me, design tends to be too subjective (if I'm going to do it, I'd much rather have someone provide me with a design PSD), and it tends to feel monotonous/tedious. I guess that's why I'm considering moving more into back-end development.
I wonder how much of this is because they are simply new to the field. Front-end stuff is more immediate, and immediacy is appealing. Back-end stuff has you spending less time worrying about compatibility headaches and all the non-problem-solving rabbit trails, but if you haven't spent a lot of time programming, you might not realize this and just assume that the level of headaches doesn't vary much.
Thats what I thought. Front End involves knowing a lot of quirks between browsers / css / JS and I find it a lot less about solving problems in an abstract way. Instead its solving "why does this display this way one one machine and another way on that machine" problems.
Agreed. Its only one you work with the various different technologies available on both front end and back end that you realise what a mess the front end landscape is, and how much less pleasurable it is to work with. A beginner isn't going to notice the difference a they are likely just happy to get something to work
I have the feeling there is a bigger need of front-end devs. After you got your API set up, you need shiny stuff and creating this is time consuming.

Also non-technical people seem to value front-end development more, because they have the feeling these devs do more "user specific" stuff (-> "they understand what I want")

I marketing myself as a front-end developer, but I would consider the jobs I get offered full-stack (2/3 front-end, 1/3 back-end)

I come from a CS education and a professional background that's not focused on any kind of web technology. I guess that I'm accustomed to the idea that most new devs aren't remotely interested in the areas of technology that I am, because the survey results didn't surprise me very much.

Eventually, I imagine I'll be forced to move at least into web back-end development with a modicum of front-end thrown in, but I can't imagine that ever being my main focus.

Yeah, wow - if all CS work consisted of web development, I'd have dropped out of the industry years ago.
I have been teaching myself programming and feel front end is really the only way in without formal schooling or extensive self study. "Full stack" was the most popular in the survery and I feel most code camps teach "full stack light"; enough to put up a site using RoR or Node back end/JS front end framework.

I would love to get a job doing backend development and have worked through some CS moocs and I just feel like there are so many things I don't sufficiently understand to even be considered for a backend position. I could probably handle a "full stack light" position, but get overwhelmed when I try to really understand everything going on instead of just accepting "use this gem".

As someone who comes from a CS background, spent many years as a backend web developer, and is now focusing mostly on frontend ...

... I go where the complexity goes[1]. In the age where most [web] backends are just glorified DB wrappers with an API, and the main app is on the frontend - I'm gonna stick to frontend, thanks.

Although it's starting to look more and more like I should rekindle my interest in non-research[2] machine learning and AI.

[1] complexity and users, really. You could call it "the market"

[2] with much regret, I have discovered that I am too impatient/dumb/product-focused to do well in research.

I sometimes wish I could just go where the market goes, but I can't. I've never learned how to aim the analytical engine in my head, only to figure out where it is pointing, so I can try to put myself into a job where someone will pay me to think about whatever it is that I am apparently going to be spending my time thinking about next.

Nothing about the web inspires me or engages my attention, which has left me wondering lately whether I'm still in the right industry. Not sure what else I could reasonably do for a living, though, since I doubt my brain is going to stop working on software problems whether I'm still getting paid to work on them or not.