4 ms·
It only takes a quick glance at sites like Stack Overflow to see that things like character encodings, the difference between the external representation of a s
by Pinus 4y ago
It only takes a quick glance at sites like Stack Overflow to see that things like character encodings, the difference between the external representation of a string and its actual content, different quoting rules in different contexts (CSV versus XML versus JSON versus ...) is a complete mystery to many people trying to work as developers.
In print, code is often represented in a monospace font, materials intended for beginners sometimes indicate stuff that you are actually supposed to type with little keycap symbols, etc. Have there been any programming languages (with associated IDE:s) where strings were represented by typography (or colour, or whatever) rather than by surrounding them with some sort of quotation marks?
- boltzmann-brain 4y agoThis is like if civil engineers were allowed to build bridges without any formal education. I'm not even talking about a full 4-year course, the majority of stupid moves in programming can be taught away in a course that's a few weeks of learning, especially once you've had a bunch of experience already.
- Nitrolo 4y agoAs someone who codes a fair bit at work without having a CS degree, is there any such course online you could recommend? Like a coursera course titled "How not to be dumb at coding"out something of the sorts.
- Karellen 4y agoThe set of search results for "falsehoods programmers believe about" could each be a single lesson in "How not to be dumb at coding 101" https://duckduckgo.com/?q=falsehoods+programmers+believe+about https://duckduckgo.com/?q=falsehoods+programmers+believe+abo...
- DangitBobby 4y agoThankfully most code isn't mission critical and bugs aren't life threatening. The things that are seem to be held to a higher standard.
- rippercushions 4y agoYou can't just blame the devs here. Having worked with software that had to be able to render every language under the sun, I'm more familiar than I want to be with encodings, fonts, rendering etc, but language support in eg. Python is a train wreck and even getting "special" characters in and out of HTML can be a real minefield.
- ryandrake 4y agoAt some point we have to at least gently blame the overall developer community. We've had actual decades to figure this out. Joel's The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)[1] manifesto was written almost 20 years ago! 99% of programmers shouldn't be treating text as anything but opaque blobs of data that, when sent to a rendering function, become readable by users. Don't try to take text blobs apart and make assumptions about their binary structure. We should not be looking under the hood and trying to divine things like how many letters are in them (what's a letter?) or trying to manually transform them in some way (case, splitting, concatenation, input sanitization and so on). Use tried and true libraries for these. Same for when you need to transform it into some particular encoding. The only safe question to ask of text is "how much memory does this thing use?" It is truly a minefield, but it's a minefield that developers are expected to understand and navigate. "Text in different encodings are scary outliers that we shouldn't support" is pee-wee league level software engineering. 1: https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/ https://www.joelonsoftware.com/2003/10/08/the-absolute-minim...