TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

JavaScript Fatigue: Realities of our industry (2017)

83 pointsby wheresvic1about 6 years ago

16 comments

rnd33about 6 years ago
&gt; You are not paid to write code [...] The only thing that somebody cares about is how much does your software cost and how much revenue it generates.<p>I have a real trouble with this sentiment, and it is repeated often here on HackerNews due to this site&#x27;s entrepreneurial focus.<p>As a developer and a professional, where does my responsibility end? I&#x27;m a developer, not a manger, and not a shareholder of the company.<p>Would you say it&#x27;s a pilot&#x27;s responsibility to point out and act in ways that reduces the cost of running the airline business or that increases its revenue? How about a surgeon or a medical doctor? At the end of the day most professionals work for a private company, a private company exists to generate profit.<p>Why must software developers have an entrepreneurial mindset while other professionals do not? Can someone help me understand?
评论 #19346043 未加载
评论 #19346208 未加载
评论 #19346137 未加载
评论 #19346046 未加载
评论 #19346199 未加载
评论 #19346068 未加载
austincheneyabout 6 years ago
&gt; Technology is not a goal. Nobody cares about which programming language you are using, nobody cares about which frameworks your team has chosen, nobody cares about how elegant your data structures are and nobody cares about how good is your code.<p>100% that!<p>&gt; JS Fatigue happens when people use tools they don&#x27;t need to solve problems they don&#x27;t have.<p>Many JavaScript developers are scared (by scared I am paralyzed in the face of death catatonic scared to the most possible irrational extreme) to write original code when often times original code takes less time and is a better fit to the immediate problem. This is called <i>Invented Here Syndrome</i> and is internally coddled when developers are appeased by writing configurations opposed to logic.<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Invented_here" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Invented_here</a><p>It is so bad that at my current employer somebody recommended I use a different editor to write code, because it had this kiss ass extension called Atom Beautify. They were pretty forceful in their recommendation. I am a collaborator on that project and wrote one of its beautifiers. People are scared to death to write software themselves or use any software from people they know, but so long as they don&#x27;t I wrote any of it its great (to them).<p>&gt; Even though the ECMA spec is becoming more and more solid these days, we still need Babel.<p>I have always believed this is one of those not real problems the paper talks about immediately prior. Writing cross browser JS is like writing CSS. Everybody bitches about it but once you&#x27;ve nailed it you got it with ease forever.<p>&gt; My first advice for anyone suffering from JS Fatigue...<p>Learn the standards. Code to the standards first. Then optimize your workflow to become more efficient. This is the very essence solving for <i>premature optimization</i>.
评论 #19345719 未加载
评论 #19345783 未加载
评论 #19345692 未加载
divanabout 6 years ago
While there are some good ideas brought up in this post, in my opinion, author misses the main point about JS and, JS fatigue, which leads to the vague advice like &quot;solve problems&quot;.<p>The point is, as Fred Brooks put it, in software there are two kinds of complexity – essential and accidental complexity. First one – is exactly those &quot;problems&quot; author talks about – it&#x27;s the complexity of the real-world problems we try to solve with software. Second one – accidental complexity – is the complexity we bring into the process by using our tools, frameworks and languages. And JS ecosystem is largely revolves around accidental complexity.<p>Let&#x27;s be clear – JS is a historical accident that, by unpredicted twist of events, became the only language in the unexpectedly dominant platform – web. We, developers, did not have choice – if we need to reach users&#x2F;customers via web – we were forced to use JS. Language, poorly designed under the pressure in 2 weeks, coupled with incredibly sloppy and constantly changing technologies like DOM and CSS, accidentally became the only way your business can reach users.<p>Of course, people started to solve those problems of the JS&#x2F;DOM&#x2F;CSS poor design, by creating more tools, more frameworks, more solutions – bringing more accidental complexity, which required new hacks, tools and solutions to solve that. The process then repeats itself, as web world was changing and growing.<p>Accidental complexity in JS world is astronomical. But the worst thing is that newcomers, unable to see perils of that through the prism of experience, accept it as a normal state of things. They embrace this madness and happy to write more hacks and tools, for solving problems, created by other tools.<p>The whole JS ecosystem thus is a huge mess of hacks on top of hacks. Most of developers&#x27; time is spent in not &quot;solving the problems&quot;, but dealing with tooling and accidental complexity.<p>And that&#x27;s exactly what software engineering should fight with. But it&#x27;s really hard and challenging task.<p>As Edsger Wybe Dijkstra said in 1984: “Simplicity is a great virtue but it requires hard work to achieve it and education to appreciate it. And to make matters worse: complexity sells better.”<p>So, I think JS fatigue is exactly what happens when you find yourself inundated in accidental complexity and ugly designed tools and frameworks.
评论 #19346281 未加载
perfunctoryabout 6 years ago
Ok. The guy writes about js fatigue. He appears to be chai.js maintainer. Ok, let&#x27;s check it out. Oh, this is a library that lets you use three different styles to say the same thing<p><pre><code> chai.should(); foo.should.be.a(&#x27;string&#x27;); var expect = chai.expect; expect(foo).to.be.a(&#x27;string&#x27;); var assert = chai.assert; assert.typeOf(foo, &#x27;string&#x27;); </code></pre> Seriously? If this is not a major reason of js fatigue I don&#x27;t know what is.
评论 #19345922 未加载
评论 #19345929 未加载
评论 #19345861 未加载
评论 #19345769 未加载
评论 #19345870 未加载
评论 #19345843 未加载
评论 #19345853 未加载
kissgyorgyabout 6 years ago
<p><pre><code> &quot;software is not poetry&quot; </code></pre> Yes it is. You did not saw yet how you can write the same piece of code like hundreds of different ways, some of them which are &quot;more beautiful&quot;, some of them are &quot;really bad code&quot;.<p>The more experience I have, the more code I saw, the more I think software development is more of an art then actual science. Obviously there are mathematical formulas you can&#x27;t alter, but you can still introduce very good or very bad abstractions to solve those either.<p>Making software is a creative process, not something immediately everyone can do. Even if two developers have the same amount of experience (in terms of years), there can be huge differences how they solve the same problem.
评论 #19346062 未加载
shaan7about 6 years ago
&gt; Software solves business problems<p>Not entirely correct. Software solves problems in general, they don&#x27;t have to be business problems.<p>&gt; Software does not exist to please us as programmers<p>Nope. Examples: Pretty much any good development tool. There is a lot of software out there that exists to please programmers and to make their lives easy.<p>&gt; Nobody cares about which programming language you are using, nobody cares about which frameworks your team has chosen...<p>Not really. I have come across managers and even investors who care about what was being used. Why? They need to ensure that it won&#x27;t be too expensive to hire more people to work on the software when there is a need.
评论 #19345731 未加载
shabbyrobeabout 6 years ago
&gt; Complaining about JS Fatigue is just like complaining about the fact that humanity has created too many tools to solve the problems we have, from email to airplanes and spaceships.<p>No, complaining about JS Fatigue is just like complaining that we should actually try to launch a spaceship instead of tearing the last one we started into pieces just so we can put some shiny new thing in the middle of it, and that we should try to actually finish an airplane and send an email while we&#x27;re at ooh React Hooks! Hang on, I really need to start my post again and do it perfect this time now that it&#x27;s possible. Bear with me a sec, trust me I&#x27;ll be finished soon, hopefully you still have enough money to pay me.
评论 #19346121 未加载
sbhnabout 6 years ago
I can read anybodies plain old javascript code, and figure it out. But if the author uses some kind of fancy vendor lock in framework, that had a life span in the community of six months, never to be seen again, well that is a pain in-the A to reverse engineer, i dont even bother reading the code anymore, i packet sniff, and see if the network has any value, and guess what, no customers, and all that effort. those who spout the spec, are indicative to me, as never having seen a customer in there life. Saying that though, you should check out the future of web development, <a href="https:&#x2F;&#x2F;github.com&#x2F;Sean-Bradley&#x2F;Seans-TypeScript-ReactJS-Redux-Boilerplate" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;Sean-Bradley&#x2F;Seans-TypeScript-ReactJS-Red...</a> Typescript will win. All you react&#x2F;redux gods will be automated out of a purpose, what is the problem you are fixing again? Oh thunk, thunk will fix it, yeah, yeah, distractions, i get it, the problem. Solved, keep up the good work. Were fixing the problems of internet and were not finished yet,
ivanhoeabout 6 years ago
I think the text is missing a main point why people feel the fatigue. Problem are not tools themselves or any fetish around them, problem is making choices of which ones to use for which job. It&#x27;s stressful and time consuming and requires you to constantly follow everything new that&#x27;s going on - and in back of your head you still constantly feel a fear that you&#x27;re missing on something important because it&#x27;s impossible to try and test everything that comes your way. Imagine trying to open some machine, and every screw holding the lid is a different kind and size. You&#x27;d go crazy changing between phillips, slotted, star, torx, etc. That&#x27;s how I started to feel with JS at some point. Luckily I think that some level of standardization is now happening in JS world, so there&#x27;s some light at the end of the tunnel...
growtofillabout 6 years ago
(2017), please.<p>Update: previous discussion, <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=14861886" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=14861886</a>
legends2kabout 6 years ago
I don&#x27;t buy this completely. I&#x27;ve seen software that doesn&#x27;t solve any _business_ problem. LaTeX solves the typesetting problem, if you make that your business, sure, but LaTeX in itself was created to solve a problem not related to business, directly. If you wanna go meta and say everything is a business then I dunno what to say, it&#x27;s just a blanket argument.<p>Also I&#x27;ve seen code golfs, Perl poems and like, so no I don&#x27;t buy the author&#x27;s viewpoint. In fact many open source projects were created to scratch some creative developer&#x27;s itch and not to make money out of it.<p>This article seems to take a very narrow&#x2F;rigid view of the computing industry&#x2F;the computing community.
评论 #19350980 未加载
kenabout 6 years ago
I&#x27;m sensing a bait-and-switch here.<p>He starts by addressing Patrick&#x27;s article, which is specifically about the &quot;90% of programming jobs ... creating Line of Business software&quot;. Then he turns around and quotes from the NASA Apollo project, and Donald Knuth. Are these examples of this type of software? Are they relevant? TeX took decades to write, and not only does he have no customers, no requirements, and no unit tests, but the author pays people out of pocket when they find a bug. It took him over a decade to make a stable release, and he&#x27;s barely made any changes to the software since then. Oh, and it&#x27;s all free. I&#x27;m struggling to think of how a person could be any worse at business!<p>Once you admit that there are radically different types of &#x27;programming&#x27; in the world, you shouldn&#x27;t be quoting from the opposite kind to support your cause. This reads like the McDonald&#x27;s operations manual quoting Julia Child. They both work with food but words like &quot;quality&quot; or &quot;efficiency&quot; will have completely different meanings in these two contexts.<p>Knuth has many useful things to say about software, but his oft-quoted aphorism was not telling you how to make your business succeed. Are you also going to rewrite your software from scratch after 5 years once you&#x27;ve learned what the hard parts are?
asow92about 6 years ago
&gt; The only thing that somebody cares about is how much does your software cost and how much revenue it generates.<p>This is such a narrow mindset – can&#x27;t we take pride and enjoyment from our craft while also being productive? Look at ornate antique architecture for instance: it doesn&#x27;t _need_ to be beautiful to perform its function of being a building, but it is certainly more impressive and likely to endure the test of time.<p>Go outside and pet a puppy or something. This is depressing.
sanxiynabout 6 years ago
I disagree with &quot;Try to understand bottom-up&quot;. The whole point of abstraction is to use it without understanding it. Trying to understand bottom-up is actively harmful. At most, attempt one or two levels below you.<p>For god&#x27;s sake, don&#x27;t go study quantum mechanics (or semiconductors, or CPU architecture) when you are writing JavaScript.
评论 #19345975 未加载
评论 #19346256 未加载
评论 #19346359 未加载
sbhnabout 6 years ago
Companies who have managers, who think that all the problems of the business can only be solved by IT, have no customers, just a dream that maybe someday they will.
chiefalchemistabout 6 years ago
&gt; &quot;The more you decrease cost and increase revenue, the more valuable you are...&quot;<p>I&#x27;ve also heard it said: How much you&#x27;re worth is a function of the size of the problems you solve.<p>Technical chops =&#x2F;= real world biz problem solving.
评论 #19345895 未加载