Settings

Theme

Ask HN: What are some knowledge gaps you commonly see for web developers?

6 points by pcloadletter_ 2 years ago · 17 comments


CM30 2 years ago

From what I've seen:

- 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.

  • barrenko 2 years ago

    I've got half-my-mind to simply abandon all framework and language learning and chasing, and just do / learn HTML and CSS properly.

    • solardev 2 years ago

      Nobody would hire you for that though.

      But HTML and CSS aren't really that hard. A weekend of focus and you can probably become proficient in both.

solardev 2 years ago

* 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.

* Basic graphics (Canvas, geometry, WebGL) and mapping (tiling, projections, cartography)

* Workers, server sent events, WASM

* CORS. God, I hate CORS.

* User-first design, instead of hostile adscape pop-up hell holes with exploding cookie jars and international surveillance

* Basic network stuff, like HTTP and DNS and caching (at least among the frontend folks)

* Basic UX/UI stuff, beyond just copying what the designer gives them without really understanding why

* Forms validation, autocomplete, error highlighting, client vs server validation, normalization (of phone numbers, addresses, etc.)

* (With React) States and contexts, now that lifecycle management isn't as important with functional components

* Next.js client vs server stuff and rehydration

* Mobile responsiveness and uncommon viewport sizes (this is STILL an issue!)

* Why we use frameworks and libs instead of raw HTML and vanilla JS

* Time zones, time zones, time zones. And CORS.

not_your_vase 2 years ago

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...

  • basementcat 2 years ago

    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.

  • solardev 2 years ago

    > thinking primariy about ipads, which come with not updateable browsers

    Wait, what? That's news to me. Their Safari doesn't auto update like other browsers do?

    • not_your_vase 2 years ago

      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.

Turboblack 2 years ago

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

beardyw 2 years ago

HTTP. Even the most basic "what happens in a redirect" has caused panic.

YakityYak 2 years ago

Privacy: one developer I respected for his technical skills couldn't believe Scarlett Johansson was upset with Sam Altman & OpenAi (allegedly) copying her voice.

  • dansult 2 years ago

    My sense is that is more and more common especially for the generation entering the workforce now.

    • dinkleberg 2 years ago

      I suppose if you didn’t grow up with privacy it’s hard to understand its importance, which is a real tragedy.

      • solardev 2 years ago

        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...?

ttymck 2 years ago

What Kafka is well-suited for and how difficult it is to operate.

cranberryturkey 2 years ago

interviewing vs. on the job

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection