4 ms·
You state this as if the answer was obvious... I recently switched back to front end development after months of developing a Bitcoin node from scratch as well
by olalonde 11y ago
You state this as if the answer was obvious... I recently switched back to front end development after months of developing a Bitcoin node from scratch as well as a custom BitTorrent server. I'd say among those three, modern front end is what I find most complex. The amount of technologies, protocols, tools and leaky abstractions to know about is just staggering and by the time you finally caught up, you are already behind.
- sklogic 11y agoOf course, if you're doing things the wrong way, you can create any amount of complexity out of nothing. I'm not considering this case. Why would anyone care about the amount of "technologies, protocols, tools and leaky abstractions" when the smart thing to do is to avoid them altogether and just pick the lowest common denominator?
- jmagoon 11y agoAnd what would that be for web development? Or are you just saying "don't develop for the web"? I've seen people who are great at diving deeply into a narrow field struggle greatly with the broad, changing knowledge needed for web dev, especially at scale. It's not clear to me that one is intellectually more challenging than the other. They often seem like different types of intelligence.
- sklogic 11y agoSame as with any other crappy set of APIs and standards - hide the complexity underneath a thin layer of DSLs. I do not consider any area where this is possible to do (i.e., any area where complexity is artificial, not inherent) to be really complex and challenging, unlike the domains where complexity cannot be eliminated by simply removing the stupidity.
- jmagoon 11y agoAre you really saying that the internet and web applications (and all their various components) are artificially complex? Or is it just whatever reification of "web dev" that you have in mind?
- sklogic 11y agoYes, I'm really saying that a majority of this web crap is artificially overcomplicated for no reason at all, and it is mostly a product of stupidity rather than any sane design. And stupidity got this funny property - it attracts even more stupidity, they stick together, they grow like a snowball, consuming everything around. Ill designed web standards, exceptionally, incomprehensibly shitty language (javascript) - of course it should have created tiers upon tiers of ill designed frameworks, ladders of leaky abstractions and a broken culture of tolerance towards all this shit. The only sane way to deal with this kind of crap is to shield from it entirely, introduce a simple and clean design which should interact with a broken system, without allowing any of the underlying abstractions to leak to your level. It always works, with all kinds of broken APIs, and I cannot see why web should be any different. Btw., it's amusing that web devs got so offended by quite an obvious fact that their work is nowhere near in complexity with the hardcore realtime stuff.
- jmagoon 11y agoIt's hard to argue your "fact", especially against such an insufferable amount of smugness and causal reductionism. I find it not amusing that people can assume things they don't participate in are simple, stupid, and trivial. It's the same type of intellectual closemindedness that leads to major problems in human existence. It's a mindset that deliberately ignores complexity in order to justify preexisting belief and prop up belief as truth while protecting the ego. Personally, I enjoy working on hardware and working on distrubted systems. I also like building things that look beautiful. But to each their own, I guess.
- olalonde 11y agoThere was an article on HN recently which I believe applies equally well to technical stacks: http://techcrunch.com/2016/01/18/why-big-companies-keep-failing-the-stack-fallacy/ http://techcrunch.com/2016/01/18/why-big-companies-keep-fail...