TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: Is Front-end harder to learn than Back-end?

4 点作者 theshire超过 8 年前
I&#x27;m asking this because Front-end seems to be changing so rapidly it&#x27;s hard to keep up with all these new technologies especially with so many devices being used in 2017.<p>I&#x27;m talking let&#x27;s PHP or Javascript which would be harder to learn in 2017?

3 条评论

akamaozu超过 8 年前
Front-end is not as hard as people want it to appear.<p>Unfortunately the shiniest of tools in this space don&#x27;t teach you the things you need to know to appreciate how straightforward it is.<p>#1. Perception: CSS is hard. Here are five JS tools, two bundlers and a build tool you can&#x27;t write css without.<p>Reality: Don&#x27;t cascade styles unless you absolutely need to.<p>#2. Perception: You don&#x27;t know JavaScript if you&#x27;re not writing ES6 &#x2F; ES2015.<p>Reality: Browsers don&#x27;t know ES6 &#x2F; ES2015.<p>#3. Perception: Client-side rendering first. Use brand-name framework.<p>Reality: Server-side rendering first. Enhance with JavaScript.<p>---<p>Backend is not as easy as people want it to appear.<p>The backend is way more complicated in reality, but the tooling makes everything so straightforward you may not appreciate just how hard the problems you need to solve are.<p>#1. Perception: Deployment === Git push.<p>Reality: Perception plus Continuous Integration and automated backups that work.<p>#2. Perception: Infrastructure === PaaS.<p>Reality: Perception plus distributed computing, because there&#x27;s only so much vertical scaling you can do before horizontal is a better choice on your pocket. Then you&#x27;ll need an orchestrating layer to manage all those boxes &#x2F; instances.<p>---<p>All is not what it appears to be.<p>When in doubt, use the simplest version of what is available to you.<p>Unfortunately the simplest of backend options won&#x27;t take you as far as the simplest of front-end options.
BloodKnight9923超过 8 年前
I think that this is a question that will draw a lot of opinionated responses.<p>There are new technologies driving every day both on the front end and back-end that demand attention to stay &#x27;current&#x27; with what is going on. I don&#x27;t think that it is fair to say that either is &#x27;harder&#x27; which will not earn me a lot of love.<p>I am a back-end engineer currently doing freelance independent contacting, and I am fully self employed in the U.S. and I have developed a lot of respect for front end developers in the last two years while pursuing a true full-stack set of skills. I work with Java, ansible, docker, kubernetes, and AWS for my development cycles and I find the front-end work to be the trickiest personally. I say that because it is typically what customers touch every day, so it gets the most scrutiny. My back-end code can be solid and the front-end engineer can screw up the UI and I will still take the fall, so I think it is worth noting that regardless of difficulty you need to think about what the customer will be looking at, at the end of the day.<p>I <i>personally</i> think that with traditional back-end coding you have to learn good coding practices to be able to fit into dev ecosystems, and you get <i>very</i> active feedback on when you&#x27;re doing something wrong. I have not had the same experience with the front-end, I have seen a lot more of &quot;Does it work? Cool. Sure we need to fix it, but we can do that later&quot; while working on that side of products. In my experience that has led to rushed code that has bugs that are not easily found, or is just slow in general.<p>So which one is harder? I want to say back-end because I am a back-end engineer, every front-end engineer I know says the front-end is worse. So at this point I honestly think it more depends on what <i>you</i> know as an individual.
vgy7ujm超过 8 年前
Doing non trivial stuff will be the challenge, not the programming language. With that said I think Javascript&#x2F;front end is more of a moving target and you will constantly need to relearn the same things using new frameworks etc. In something like PHP or Perl you can get more years of relevant knowledge from your effort. But some people like shiny things that break often ;)<p>If JS didn&#x27;t have a monopoly in browsers I think something else would have been more popular.<p>Back end is definitively a deeper area once you are past beginner&#x2F;intermediate level.