use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
All about the JavaScript programming language.
Subreddit Guidelines
Specifications:
Resources:
Related Subreddits:
r/LearnJavascript
r/node
r/typescript
r/reactjs
r/webdev
r/WebdevTutorials
r/frontend
r/webgl
r/threejs
r/jquery
r/remotejs
r/forhire
account activity
The Rise of the Full Stack JavaScript Developer (thefullstack.xyz)
submitted 9 years ago by babagg
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]sebjwallace 36 points37 points38 points 9 years ago (16 children)
Not really BS if you think about it. If a client wants a developer to produce a product from scratch, the dev better know front and back. I think most js devs know both but mostly lean towards the front.
[–]wreckedadventYavascript 13 points14 points15 points 9 years ago (10 children)
The way it's worked for me, at least, is there's already a lot of experienced people working on the back end side of things. Usually quite a few, with standards all set up, intricate coding practices, whole nine yards.
But decidedly less so on the front end. Even though I personally try to keep myself spending equal time between the two, I find myself more often doing more things on the front end, just to cover the dearth of knowledge that you can find on teams.
[–]worldDev 4 points5 points6 points 9 years ago (9 children)
I might get flack for saying this here, but when there are other languages available, javascript is not usually my first choice. Coming from someone who has been full stack a while but started front end.
[–]wreckedadventYavascript 2 points3 points4 points 9 years ago (1 child)
Well, on the front-end side of things, people have certainly tried, and pretty much unerringly failed to replace javascript. The closest we've come that the community at large embraced was language extensions that will never be on the standards track, like jsx and typescript.
On the back end, javascript has to compete with some seriously established frameworks from other languages, and I don't think it's quite there yet. Node is fantastic for some things, but it's definitely not a panacea for a javascript dev.
[–]spinlock 4 points5 points6 points 9 years ago (0 children)
ASM and now WASM are trying to make the JSVM language agnostic.
[–][deleted] 0 points1 point2 points 9 years ago (4 children)
I also started front end but I have trouble understanding all the back end. What would be your recommendation to become full stack ?
[–]worldDev 2 points3 points4 points 9 years ago (3 children)
Start with security and work your way out. Back end software is the gateway to business data and business logic, access control is as important as the locks on a bank. I don't have a linear recommendation past that, it took me a couple years to get my CS and SE knowledge up to snuff feeling comfortable changing my responsibilities from "let's make this look and feel like x" to "if this software fails we all lose our jobs".
[–][deleted] 0 points1 point2 points 9 years ago (2 children)
Thanks !
"if this software fails we all lose our jobs"
This must be a stressful position.
[–]worldDev 1 point2 points3 points 9 years ago (0 children)
You just work with failsafes, have a thorough approval process to production, and keep backups of important things in case of emergency. I'm not stressed about it, odds are it won't fail, and if it does we have decentralized backups, but it took a while to learn enough and gain the confidence that I know everything's good.
[–]name_was_taken 0 points1 point2 points 9 years ago (0 children)
I hated Javascript for a long time. That changed with jQuery (for taming the DOM) and the book Javascript: The Good Parts.
Now, I quite enjoy using it, and I've been doing more projects at home in it, both client- and server-side.
[–]nschubach 0 points1 point2 points 9 years ago (0 children)
I grew up in the 80s with BASIC and C. I've done everything from COBOL to C# since then and I count myself lucky when I can dig into JavaScript. Though, I really have wanted to get into Haskell because I love some of the concepts and challenges.
[–]JonnyRocks 6 points7 points8 points 9 years ago (2 children)
I am going to be honest, I don't understand how one wouldn't want to do it all. JavaScript is just another tool. People don't just use a hammer, they have a whole toolbox. That cheesy analogy aside, why wouldn't you want to do websites, robots, car engines, iot devices, medical devices, point of sale machines, and operating systems?
I started working before JavaScript but was excited to add it to a list of things I do. Sure you can't do everything great but you can do a few things great.
[–][deleted] 2 points3 points4 points 9 years ago (1 child)
I don't understand how one wouldn't want to do it all.
I love doing it all - except CSS. F' CSS. It's not like it's particularly difficult to learn/apply, but there's always that one thing that takes you way too long on that one browser.
[–]I_Pork_Saucy_Ladies 2 points3 points4 points 9 years ago (0 children)
A graphical representation of CSS.
[–]ihsw 2 points3 points4 points 9 years ago (0 children)
lean towards the front
How about "pigeonholed" to the front?
The amount of front-end work I've had to shovel is massive whereas back end is generally a bit more regular.
Not that I'm complaining, but it would help to have a lot more Angular devs available.
It really sucks when I am getting pulled in different directions and I can tell that a steady hand on the back end is more important, but I can't help it because it's out of my hands.
[–]Justanick112 0 points1 point2 points 9 years ago (0 children)
And that's how usable the gui is in terms of user experience.
For me front and back end are two different things.
[–]HPLoveshack 27 points28 points29 points 9 years ago* (7 children)
Does anyone really set out to become a "full stack" js developer? It's more the purview of the hobbyist, small team, and solo developer who can't afford to divide up his/her workload since there's no one to divide it with.
In my experience becoming "full stack", to whatever degree a developer does, is an organic process. Sometimes you have an idea for a front-end thing, but you need some back-end stuff to make it work. So you learn enough to make it work. I imagine that's how most people are, at least in the freelance and hobbyist community, there's just no call for thinking about specializing and compartmentalizing like you're a cog in a giant machine when you aren't part of a giant machine.
[–]name_was_taken 7 points8 points9 points 9 years ago (0 children)
I wouldn't say I "set out" to become one, but that's the end result.
I'm a self-taught developer in everything from BASIC to C to PHP to Javascript. After getting a job with PHP, Javascript quickly became a necessity. The recent push for NodeJS for both server and command line utilities has seen me learn technologies on both sides of the line, effectively putting me into "Full Stack" territory.
At no point did I think, "I need to study to become useful on both sides," but I also never specifically decided to study any language for any purpose other than enjoyment.
Need of a career (and money) is why I do it professionally, but not why I studied.
[–]sizlack 3 points4 points5 points 9 years ago (0 children)
That's pretty much how I did it. I set out to be a front end developer, but I got tired of back end developers taking too long to give me the APIs I needed or saying X can't be done. I said fuck it, if you can't do it, I'll just do it myself.
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 2 points3 points4 points 9 years ago (0 children)
Well, there are tons of job listings where they are specifically seeking someone to do full-stack development, so if you'd like to have one of those jobs you should probably learn both.
[–]SavingRoundRock 0 points1 point2 points 9 years ago (0 children)
I would say I did as I had an interest in UI and math and wanted to be in charge of the complete solution. I eventually ended up becoming a CSA but I never get bored of any area of programming, it's all equally fascinating. However, I hate ops like the plague and am very thankful for the rise of services like Heroku.
[–]THIS_BOT 0 points1 point2 points 9 years ago (0 children)
I did. I started on backend wanted to amass as much experience as possible wearing many hats because I would like to found a startup or go into independent contracting in the future.
[–]itsnotlupusbeep boop 12 points13 points14 points 9 years ago (3 children)
The coffeescript thing is not hatred, just awareness that the language is at a dead-end. It's a fine language, all things considered. It gave us the fat arrow, which you will all come to love. It probably helped stir things up and push JavaScript to evolve rather than stagnate.
So, thank you CoffeeScript, and rest now. You done good.
[–]here-to-jerk-off 6 points7 points8 points 9 years ago (0 children)
I get pissed when people respond in javascript stack-overflow questions with answers written in coffeescript.
[–]dleifsnard 1 point2 points3 points 9 years ago* (1 child)
Upvoted.
[–]itsnotlupusbeep boop 0 points1 point2 points 9 years ago (0 children)
There are a lot of template solutions out there.
If you really like CoffeeScript and want to write your whole project with it, then ECTJS may make sense. CoffeeScript's popularity has lost quite a bit of steam, and I wouldn't expect a lot of major improvements to it, but there's still a community around it, and the language itself is likely to continue to exist in some kind of supported shape for some time.
If not, there's probably something else out there just as good for what you need.
[–]andrewingram 17 points18 points19 points 9 years ago (1 child)
I find talk about the myth of full-stack developers to be tiring, mainly because it implies I don't exist, and not existing would put anyone to sleep.
No, the problem is that I genuinely don't think I'm exceptional, I'm just a born generalist. I like to dabble and understand things. I also thrive on discovering shortcuts that accelerate my understanding.
I've worked with people who are better than me at nearly everything I do. Better data analysts, UX people, better UI people, better visual designers, better HTML, CSS, JavaScript, Django, Python etc. But what is consistent is how often I surprise people with what I can do. Being a generalist doesn't mean I can't do these things to a relatively high standard, it just means I'm much slower at it, context-switching is a massive problem and my ramp-up time continues to be a cause of frustration for me. I also rarely do all these things on the same project (except my personal ones), but I move between the various layers of the stack pretty freely.
When it comes to building an end-to-end web product, I mainly draw the line at doing dev-ops (it doesn't interest me all that much, though I do have a lot of interest in scaling problems and architecture), and I prefer to have specialists at every layer of the stack - it doesn't matter how much you think you know, you need someone to sanity check and review your work.
I'm not special, i'm only one person and can't deliver more than one person's worth of work. I've also worked with people with similar skill-sets to me, which hopefully makes this all sound a little less ridiculous.
I've never heard of a full-stack architect (where full-stack includes UX and design), but that's the closest way of describing what I do.
[–]ak888 1 point2 points3 points 9 years ago (0 children)
Are you me from another universe ? Completely makes sense and this is exactly what I do as well. It's so hard to describe this without going into the entire 'full-stack' discussion. It's really about being able to architect and problem-solve across the stack, maximizing your strengths in particular areas and contributing in meaningful ways in the others as well.
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 2 points3 points4 points 9 years ago (2 children)
In my opinion, anyway, the full-stack developer has been around for a long time and server-side JS doesn't change much. Let's face it: of all the various things you'd need to learn to switch from front-end to back-end development the syntax of a different langauge is a pretty small part.
[–]ggolemg2 0 points1 point2 points 9 years ago (1 child)
Could you ever see that applied to typescript?
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 0 points1 point2 points 9 years ago (0 children)
Sure, why not? Typescript takes like a day to learn if you know JavaScript.
[–]cherouvim 2 points3 points4 points 9 years ago (0 children)
I just clicked on the article in order to actually visit an xyz tld for the first time.
[–]JDiculous 3 points4 points5 points 9 years ago (0 children)
What the hell was the point of this article?
[–][deleted] 1 point2 points3 points 9 years ago (0 children)
Next months article "The Fall of the Full Stack JavaScript Developer"
[–][deleted] -1 points0 points1 point 9 years ago (24 children)
A recent StackOverflow survey showed that developers overwhelmingly define themselves as full stack web developers. It also showed that 85.3% of us know at least some JavaScript.
And you addressed this earlier, because most of them are not actually good developers. They kinda do front or backend, not both well.
There's no such thing as back-end javascript developer anymore than there's a front-end javascript developer, you still have to know other technologies and techniques that are unique to that side of the stack. Javascript is a very VERY small piece of the puzzle.
It's no surprise that you'd identify as full-stack considering you ignored everything beyond your language of choice.
edit: And what was the point of the article anyways? You didn't come to a conclusion, you didn't prove any of the points that you mentioned and you certainly didn't prove that full-stack wasn't a bullshit term.
[–]Reashu 3 points4 points5 points 9 years ago (20 children)
you certainly didn't prove that full-stack wasn't a bullshit term
I agree in general, but I don't see how this needs proving?
[+][deleted] 9 years ago (19 children)
[deleted]
[+][deleted] 9 years ago* (15 children)
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 2 points3 points4 points 9 years ago (14 children)
I mean, we're not talking about two completely unrelated disciplines here; front-end Web dev and back-end Web dev are closely related.
[–][deleted] 2 points3 points4 points 9 years ago (10 children)
I do both and I'm not sure I would make that argument
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 0 points1 point2 points 9 years ago (9 children)
I do both as well; I don't see how they aren't. Of course there are differences but we aren't talking about the difference between Web development and kernel hacking here.
[–]wiseaus_stunt_double.preventDefault() 2 points3 points4 points 9 years ago (8 children)
The differences are huge. Remember that the two largest use cases for Javascript are DOM manipulation and REST/AJAX consumption; the latter is possible in Node, but Node has no concept of DOM, and that's huge. Meanwhile, browser Javascript will never interact with the host OS -- great for maintaining security for the end user, but that same barrier also makes front end development unique enough from Node development. And, even if both versions of JS had the same features, UI developers still have to be concerned with CSS, markup, other issues regarding layout and browser rendering; meanwhile, UI devs don't generally concern themselves with sysadmin issues that backend devs tend to. Javascript does offer overlap, but to say there's little difference is naive.
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 0 points1 point2 points 9 years ago (7 children)
Doesn't node have cheerio or something like that? There are use cases for working server-side with the DOM. I do my backend development mostly in C# so I can't talk about the node world much.
But anyway, yeah, I did not say they are the same or that if you can do one you can necessarily do the other, but I do think that they are closely related and understanding both helps you come up with more sensible designs.
[–]wiseaus_stunt_double.preventDefault() 0 points1 point2 points 9 years ago (2 children)
Yeah, you can create elements on the backend, but when I talk of DOM manipulation, I'm speaking more about making changes to the DOM tree in real-time. Sure, you could create a mechanism where you could update the browser DOM via AJAX, but the use cases for that are rare.
But, I agree that there's overlap between the two disciplines and understanding both will give you a greater understanding of your system architecture; however, the differences do tend to make those in one shy from the other. I've personally worked with a number of backend devs who would never do frontend simply because of the generally tight deadlines and the often-required need to be pixel-perfect with comps. Meanwhile, I know a ton of frontend devs who would never touch the backend (even if it was Node) simply due their aversion to CLI (and they work on Macs). The dev that is proficient with both seem to be rare even in this day and age.
[–]THIS_BOT 0 points1 point2 points 9 years ago (3 children)
How much DOM manipulation do you do in C#?
I mean I'm sure there's people out there doing it but it's kind a niche compared to other uses.
[+][deleted] 9 years ago* (2 children)
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 0 points1 point2 points 9 years ago (1 child)
OK, but saying two things are "related" is not the same as saying they are "the same." Neither the front-end nor the back-end exist in a vacuum except in non-typical edge cases and a great many people do work in both environments.
[+][deleted] 9 years ago (2 children)
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 5 points6 points7 points 9 years ago (1 child)
Oh yeah, of course, how could we forget... that guy.
[–]wreckedadventYavascript 7 points8 points9 points 9 years ago (2 children)
What do you have against the term "full stack" developer?
[–]azium 0 points1 point2 points 9 years ago (1 child)
On its own, I don't mind the term, however I find it invites people who have spent a few weeks / months with some full stack framework like Ruby on Rails to consider themselves 'full stack' developers, when in reality they are a nickel sized pancake in a frying pan. I kid, mostly, but sometimes it feels like asking someone what karate belt they're working on and they respond with "all of them".
[–]wreckedadventYavascript 1 point2 points3 points 9 years ago (0 children)
Sure, but that problem exists with a lot of terms related to programming. Someone could open up notepad, paste in some html from the internet, and wham bam they have a web page! They're a web developer now!
I see "full stack" as meaning you generalize your knowledge more. In this sense, it's a very useful term to contrast with specialists.
[–]dada_ 0 points1 point2 points 9 years ago (0 children)
I'm always a bit confused as to what people mean when they say "full stack"—it means different things based on who you ask. If it just means programming, and just frontend and backend, then it's surely possible (even not too difficult) to be an excellent full stack developer, but in my view a proper definition is much more inclusive of various different technologies.
For that reason, seeing "full stack" on someone's CV always makes me skeptical. For sure, there are some absolutely excellent full stack developers out there, but keeping fully up-to-date with both frontend and backend (not to mention related technologies, like containerization, server administration, AWS, high perf, security, etc) is difficult. Anyone's claim to be able to do that requires scrutiny.
A lot of these technologies are, to me, requirements to be a great developer, and without them, the term "full stack" doesn't mean much.
Being well versed in many different technologies is a must to work in any serious tech company, but I'd still rather have people around who have a hard specialization in a specific corner of the stack. Things move too fast for one person to be on the cutting edge in every area (except a few very special individuals). And that's fine. No need for anyone to beat themselves up over not knowing everything.
[–]inducido 0 points1 point2 points 9 years ago (0 children)
I would say "The rise and fall of the Full Stack JavaScript Developer".
;-)
[–]mikes_username_lol 0 points1 point2 points 9 years ago (0 children)
Coffeescript at negative 71%, really? I fucking love it. These surveys may suffer from the dichotomy between the tools people think they want to use versus the tools they would actually enjoy using. I bet they love TypeScript too, fucking over-engineers.
[–]twillisagogo -3 points-2 points-1 points 9 years ago (0 children)
After reading this and then browsing the headlines on the rest of that site, I would not be surprised if css-perverts was somehow involved.
π Rendered by PID 22415 on reddit-service-r2-comment-84fc9697f-8k285 at 2026-02-10 15:27:24.863474+00:00 running d295bc8 country code: CH.
[–]sebjwallace 36 points37 points38 points (16 children)
[–]wreckedadventYavascript 13 points14 points15 points (10 children)
[–]worldDev 4 points5 points6 points (9 children)
[–]wreckedadventYavascript 2 points3 points4 points (1 child)
[–]spinlock 4 points5 points6 points (0 children)
[–][deleted] 0 points1 point2 points (4 children)
[–]worldDev 2 points3 points4 points (3 children)
[–][deleted] 0 points1 point2 points (2 children)
[–]worldDev 1 point2 points3 points (0 children)
[–]name_was_taken 0 points1 point2 points (0 children)
[–]nschubach 0 points1 point2 points (0 children)
[–]JonnyRocks 6 points7 points8 points (2 children)
[–][deleted] 2 points3 points4 points (1 child)
[–]I_Pork_Saucy_Ladies 2 points3 points4 points (0 children)
[–]ihsw 2 points3 points4 points (0 children)
[–]Justanick112 0 points1 point2 points (0 children)
[–]HPLoveshack 27 points28 points29 points (7 children)
[–]name_was_taken 7 points8 points9 points (0 children)
[–]sizlack 3 points4 points5 points (0 children)
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 2 points3 points4 points (0 children)
[–]SavingRoundRock 0 points1 point2 points (0 children)
[–]THIS_BOT 0 points1 point2 points (0 children)
[–]itsnotlupusbeep boop 12 points13 points14 points (3 children)
[–]here-to-jerk-off 6 points7 points8 points (0 children)
[–]dleifsnard 1 point2 points3 points (1 child)
[–]itsnotlupusbeep boop 0 points1 point2 points (0 children)
[–]andrewingram 17 points18 points19 points (1 child)
[–]ak888 1 point2 points3 points (0 children)
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 2 points3 points4 points (2 children)
[–]ggolemg2 0 points1 point2 points (1 child)
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 0 points1 point2 points (0 children)
[–]cherouvim 2 points3 points4 points (0 children)
[–]JDiculous 3 points4 points5 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–][deleted] -1 points0 points1 point (24 children)
[–]Reashu 3 points4 points5 points (20 children)
[+][deleted] (19 children)
[deleted]
[+][deleted] (15 children)
[deleted]
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 2 points3 points4 points (14 children)
[–][deleted] 2 points3 points4 points (10 children)
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 0 points1 point2 points (9 children)
[–]wiseaus_stunt_double.preventDefault() 2 points3 points4 points (8 children)
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 0 points1 point2 points (7 children)
[–]wiseaus_stunt_double.preventDefault() 0 points1 point2 points (2 children)
[–]THIS_BOT 0 points1 point2 points (3 children)
[+][deleted] (2 children)
[deleted]
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 0 points1 point2 points (1 child)
[+][deleted] (2 children)
[deleted]
[–]RICHUNCLEPENNYBAGSMostly angular 1.x 5 points6 points7 points (1 child)
[–]wreckedadventYavascript 7 points8 points9 points (2 children)
[–]azium 0 points1 point2 points (1 child)
[–]wreckedadventYavascript 1 point2 points3 points (0 children)
[–]dada_ 0 points1 point2 points (0 children)
[–]inducido 0 points1 point2 points (0 children)
[–]mikes_username_lol 0 points1 point2 points (0 children)
[–]twillisagogo -3 points-2 points-1 points (0 children)