4 ms·
Great job. I largely agree with the concepts in this well thought out paper. I have built several commercial grade products and the front-end is always where th
by drknow007 6y ago
Great job. I largely agree with the concepts in this well thought out paper. I have built several commercial grade products and the front-end is always where the most pain and cost exist. By a long shot. If someone doesn't agree this layer needs a serious overhaul, they are not the ones paying the bill or have not build a large scale commercial product.
HTML and CSS are not clean, intuitive, or efficient beyond simple examples. Masters of these tools sadly have their heads full of legacy hacks and trickery needed to get content to display properly. Thank goodness there has been some consolidation on the V8 engine because without it, the hacks between browsers had already become exponential.
Contrast this with algorithms, the middle-tier, and databases. These tools, while not perfect, are far better able to express developer intentions and therefore be maintained.
Sadly, the Web stack has largely become popular due to OS politics. JS/HTML/CSS is the only real loophole devs currently have to build cross-platform products, which everyone wants because the expectations from users today are so high (expected to run everywhere on any device). It is good that we at least have this direction to build upon, but it doesn't mean that this is the ideal tech stack. There is alot of improvement to be had here.
For example, consider how much good VS Code and Typescript have brought to this space in recent years. The concepts of types, intellisense, async/await, and other efficiencies are great examples of historically native benefits brought to the Web.
Good work here. Keep pressing on - I salute you. Please consider making any progress you have made here open for review and validation. Cheers!
- galoisgirl 6y ago> HTML and CSS are not clean, intuitive, or efficient beyond simple examples. They do have a steep learning curve. The web is polluted with tutorials and StackOverflow answers from people who haven't learned them yet, like this atrocious thread where most upvoted answers are plain wrong: https://stackoverflow.com/questions/4814398/how-can-i-check-if-a-scrollbar-is-visible https://stackoverflow.com/questions/4814398/how-can-i-check-... > Masters of these tools sadly have their heads full of legacy hacks and trickery needed to get content to display properly. The trickery is not needed anymore. I started in 1996 and I remember the table and float layouts. You can forget all this stuff now. IE11 supports flex-box well. Clean up your code and move on. > Contrast this with algorithms, the middle-tier, and databases. These tools, while not perfect, are far better able to express developer intentions and therefore be maintained. Well, I did understand flex-box after thinking in terms of layouting algorithm instead of a bag of properties and values. [1] But you're dangerously close to comparing apples to oranges here: front-end technologies are all about the user's experience, not the developer's intent. If you feel that strongly about them, consider sticking to the back-end. > Sadly, the Web stack has largely become popular due to OS politics No, the web stack has become popular because of the people from your first paragraph: the ones paying the bills. The ones who couldn't afford to lose customers by requiring a plug-in, nor building multiple versions of the same product. > The concepts of types, intellisense, async/await, and other efficiencies are great examples of historically native benefits brought to the Web. Types? JavaScript is typed, always was. Ajax was always asynchronous - do you mean the syntactic sugar? [1] I then wrote that: https://dev.to/galoisgirl/how-to-finally-understand-css-flexbox-2chb https://dev.to/galoisgirl/how-to-finally-understand-css-flex...
- drknow007 6y ago>> They do have a steep learning curve. The web is polluted with tutorials and StackOverflow answers... Agreed. >> The trickery is not needed anymore... This isn't needed (as much) today because of browser consolidation. The point is that these Web technologies were too difficult for browsers to maintain. The tech didn't get better. Instead, we had to minimize the # of containers in order to control the havoc. >> ... But you're dangerously close to comparing apples to oranges here... I'm not trying to directly compare layer tech here. Rather I'm comparing how well each layer's tools serve the developer and project. I'm not interested in a career move, thank you - lol. This thread is about best software strategies that have the responsibility of serving the world. Far more important stuff than me. It matters and is worth continuous re-assessment. >> No, the web stack has become popular because of the people from your first paragraph: the ones paying the bills. The ones who couldn't afford to lose customers by requiring a plug-in... Just not true. Historically, Web dev meant crazy amounts of code hacks in order to target different browsers. Again, it wasn't better tech - it was far worse and costly. Remember Flash, ActiveX, Silverlight, etc? Lots of successful sites and web apps used them to work around this problem. Just stop and think about this. Flash devs didn't have to adapt their projects to their host container. It just worked. HTML/CSS/JS required lots more effort because of their intrinsic deficiencies. My point isn't that Flash (or anything else is better), its that HTML/CSS/JS is not where it needs to be, yet it still exists! And the reason it exists is because it runs on port 80! It's that simple - HTML/CSS/JS is one big loophole into x-platform development. Without this loophole, it loses much of its strategic appeal. Again, I argue that devs really want to just use the tools they know and have their bits run everywhere. And 'everywhere' is a tall order because for today's consumers, this means total cross-platform on desktop, mobile, and web. Fast and fluid. >> Types? JavaScript is typed, always was. Ajax was always asynchronous - do you mean the syntactic sugar? Yes, I mean getting rid of the hacks and plethora of libraries needed to accomplish simple, age old software goals. Imho, the Web stack has a real opportunity now to get focused and become a tech stack that most devs can love because it offers a x-platform strategy (although, importantly not because of HTML/CSS/JS - but because of port 80). But it needs to get better. It needs to get closer to the efficiencies and focus that native devs have been experiencing for decades. Cheers!
- 6y ago