- An inability to work without frameworks. Lots of devs know React/Angular/Vue/whatever, but have a tenuous grasp of vanilla JavaScript
- Lack of computer science/algorithm knowledge. True of myself, and a lot of self taught developers.
- Lack of CSS knowledge. Quite a few devs know a decent amount of HTML, a decent amount of JavaScript (including one or two frameworks) but haven't brushed up on their CSS knowledge in a while. So they'll not know modern additions to the language, or in the worst cases, not know stuff like Grid or Flexbox.
- Accessibility in general is often a knowledge gap, especially given how many devs have an unfortunate mindset of 'every HTML element is a div'. Or thinking that buttons and links are interchangable.
- Browser compatibility is often downplayed a bit too. Quite a few devs know little about browser support for features, with some forgetting that browsers other than Chrome exist.
- And obviously, any sort of deeper knowledge of the tech stack or other aspects of system development. HTTP, server configuration, dev ops, etc are often a black box here.
* Time zones and datetime processing between the server and multiple browsers in different time zones and locales, especially with daylight savings time. An offset is not a time zone. This is probably the #1 category of bugs I've had to fix in my career.
* Async issues and races, especially on slower connections (like how to combine different fetches in parallel in the UI when they all get sent at once but come back out of order)
* SVGs are basically tiny programs that happen to look like images. They're not just vector shapes.
* CSS animations. And flexbox hell. And CSS selector inheritance / priority overall.
* Basic computer science algorithms. I'm guilty of this too, having been a web dev for two decades but never learning what a binary search was until last year. I wouldn't be able to make a graph database or write the algos on my own.
* How to use the IDE debugger to step through code and watch variables etc. It's usually just a bunch of console logs
* Typescript generics, inheritance/extensions and more advanced features
* Haven't seen OOP in a good half decade or longer. It's all a bunch of scattered functions now.
Personal pet peeve: only the latest versions of browser are supported - in the moment some new css/html/js feature is available, it is integrated in the website at lightspeed.
On it's own, this wouldn't be a problem of course. My problem with this is that there is no website on the web today that was technically impossible 5 years ago. Still, a 5 years old browser is unusable today due to this. (thinking primariy about ipads, which come with not updateable browsers)
Not sure if this is knowledge gap, or just simply unwillingness to write code that works on the widest range of devices...
I think this depends on who your customers are. If your customer is a regulated utility that may be required to use equipment that has been "licensed" for certain purposes, making sure websites work with older versions of browsers is very important. On the other hand, if you're targeting high-ish net worth end users who may be expected to always run the most recent browser version on the most recent hardware, then it would make sense to always target the most recent features.
Correct. Safari is baked into the operating system, like the Camera or Notes app. But unlike those, it becomes obsolete in the moment OS updates stop coming due to its secondary-OS nature. It has been like that since the very beginning.
inability to work without frameworks, inability to write clean code, inability to use only JPGs or PNGs, inability to create backward compatibility.
for me, the highest degree of skill is when a site looks just awesome and at the same time can open in a browser from 20 years ago in exactly the same way and without errors as in a modern one
Privacy: one developer I respected for his technical skills couldn't believe Scarlett Johansson was upset with Sam Altman & OpenAi (allegedly) copying her voice.
It seems to me like the challenge for that generation isn't remaining private, but getting seen. There's so many people showing off on social media these days that the average normal non-"creator" person must seem so invisible...?
- An inability to work without frameworks. Lots of devs know React/Angular/Vue/whatever, but have a tenuous grasp of vanilla JavaScript
- Lack of computer science/algorithm knowledge. True of myself, and a lot of self taught developers.
- Lack of CSS knowledge. Quite a few devs know a decent amount of HTML, a decent amount of JavaScript (including one or two frameworks) but haven't brushed up on their CSS knowledge in a while. So they'll not know modern additions to the language, or in the worst cases, not know stuff like Grid or Flexbox.
- Accessibility in general is often a knowledge gap, especially given how many devs have an unfortunate mindset of 'every HTML element is a div'. Or thinking that buttons and links are interchangable.
- Browser compatibility is often downplayed a bit too. Quite a few devs know little about browser support for features, with some forgetting that browsers other than Chrome exist.
- And obviously, any sort of deeper knowledge of the tech stack or other aspects of system development. HTTP, server configuration, dev ops, etc are often a black box here.