Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

One day its SQL, the other day its NoSQL. One day its Bootstrap, next day its material design.

I think you've been spending too much time in the SV echo chamber if you think those two examples are pertinent.



Where do you think the most successful web apps (like Slack recently) are emerging? From the SV echo chamber.

To be a talented full-stack web application developer for a successful consumer facing app, you sort of need to have an obsession with UI/UX design trends. Finished web apps that delight customers have an attention to detail that put them over the edge into the realm of being successful.

What you need to learn to become a top web app developer is actually punishingly brutal. People now expect all web apps to operate with the smoothness of having AJAX everywhere that you see with apps like Youtube, Gmail and Facebook. Web app developers who can actually build web apps to that level of quality are extremely valuable.

Web development is not easy if you really specialize in it. By that I mean people who have really accumulated best practices and knowledge over common core problems of the web. These are the people who within a month can return you an app fully loaded with user accounts, multi-tenancy, notifications, emails, subscriptions, the ability to upload documents, search, credit card payments, google maps, API gateways, chats etc.

In addition to having programming chops, a lot of their value actually comes from having spent time collecting good "widgets" of useful software they can use for new projects. These "widgets" allow them to build impressive experiences quickly. Examples include having an opinion about what a "joyride tour" javascript widget looks like, having an opinion about what makes a good date-time picker, mastering form validation, -- the list is nearly endless, but they all come down to the person having an informed opinion about what UI/UX paradigms are best from a human-computer interaction perspective, and knowing that these paradigms change quickly. A person who I would call an elite (front-end) web developer is somebody who builds their own widgets frequently just to see what works.

Such sideskills of a web developer only come from constant learning. In my opinion it is one of the most brutal sectors of software in terms of how quickly your skills fall out of date and how much you constantly need to be learning in order to remain competitive.


I wasn't making any value judgment on web development's difficulty. Bootstrap versus material design isn't some top-notch innovation like you portray it. It's a bikeshed issue. Most people use Bootstrap as a formulaic placeholder, and material design is a Google trend. It isn't any more relevant to the web development community at large than Microsoft's Metro is.

NoSQL is ancient, and the value of NoSQL is in specialized data models and workloads. Modern SQL databases remain general supersets in terms of functionality, but the value of NoSQL is tuning features for data structured outside the relational model. It's by no means a generic tool, nor necessarily innovative, as you portray it.

AJAX everywhere has been going on for quite a while. It's not necessarily relevant for all web-based CRUD and no, it's not expected universally. The boring truth is that most web apps are still best suited to standard server-side pages with more dynamic content sinks for certain parts of the app (though there's been a concerted effort to redefine "web app" as SPA). HTTP is a dumb file server, at the end of the day. Rest is very flimsy client magic.

Finally, there's nothing special about Slack. It's successful. It's by no means interesting.


Fair point, I bring Bootstrap up as an example of how frequently the actual frameworks relied on to build things on the web change. A better example of is the endless paradigms popping up to handle highly interactive javascript.

RE: NoSQL and SQL, I agree and I understand the nuance (my go-to database is PostgreSQL), I'm just pointing it out as "another thing" web developers need to understand.

And that's the point I was trying to make. When it comes to how many "other things" web developers must constantly be learning, I actually think developers in iOS or at the lower-level sometimes have things easier despite the stereotypes about web development being easy.

RE: Slack - Slack is interesting because it combines many elements of traditional web app design, and succeeds simply by executing on those elements extremely well. I believe web developers (particularly front-end ones) could learn a lot by studying how polished Slack's design and interactivity is.


When it comes to how many "other things" web developers must constantly be learning

The reason for learning many of these "other things" is precisely because of your limitations to the confines of the browser's VM, where all superior OS APIs must be poorly reimplemented (Web Workers, local/session storage, WebSockets, WebAudio, the file API, etc.) to get around the fact that the web was designed as a file server for static documents. In the process, the same-origin policy was gutted through cross-origin resource sharing and cross-domain messaging.

These same limitations partly inspire the massive framework churn, most of which are formulaic.


You're completely right that the problem comes from being trapped inside the browser's VM. Anyone building a highly interactive single page Javascript app definitely has their work cut out for them.

It's funny, but in some ways web development has actually regressed in terms of difficultly. 10 years ago before its death, browser plugins like Flash actually made a lot of inroads towards making it easier to build highly interactive web experiences.

The current shift towards Javascript has arguably left developers with a weaker set of tools for producing dynamic experiences than they had with Flash even if Flash really did need to die.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: