How do you do, fellow web developers? A growing disconnect.
How do you do, fellow web developers? A growing disconnect.
How do you do, fellow web developers? A growing disconnect.
Yeah, that tracks.
At work someone estimated adding a section of static content to a page that uses React as 3 story points.
They were searching for components that would style the header and paragraph elements just as they wanted them, but were coming up short.
Instead I simply added it with html elements and a couple of lines of CSS.
5 minutes. Done.
đ
One can argue that any programming is computer science,
One could argue that, but I think it would be a weak argument.
Keeping within the subcategory of software, I think of computer science as the theoretical side and programming as the practical side. The same distinction is sometimes made in other fields, like physics.
Seems to me that the author saw a show written by people with a narrow and shallow understanding of the field. For better or for worse, it happens on TV all the time. If he wants to demonstrate a widespread disconnect in the software community, there are probably better examples out there.
Yeah, computer science is the more about theoretical side of computation and the analysis of algorithms. For example, proving that a certain algorithm is a solution to a problem and has a particular time complexity. Thatâs more mathematics than practical programming.
(disclaimer: I haven't read the article, I'm just replying to you because your comment was interesting)
I think your theoretical vs practical framing is useful, but as a (non-computer-)scientist, I find it fascinating to consider how a biomedical scientist uses programming compared to someone whose background is much more grounded on the compsci/IT/programming side.^[1]
[1]: I sometimes joke that, compared to many of my scientist colleagues, I am an exceptional programmer, and this says a lot about the average quality of the code that scientists tend to write when they don't have much dedicated training or experience in programming
I thought ambagious was a typo of ambiguous. New word day!
Holding their hand through one page in vanilla JS is a great investment in your junior dev if this is an issue
When they said that it wouldn't be a "get off my lawn" post, I was like "oh no, it's 100% going to be that", but then I read, sympathised and... I'd actually offer to get the people in the examples off the author's lawn on their behalf, because they were just so disappointing.
Though, to be fair, this was pretty much a problem in the superficiality of the frontend development circle that maybe was taught just that from the beginning, so they conflate notions of computer science with the language they use most, because there was no formality in their approach to learning, which is sort of a good thing IMO, because it's way more effective at making you productive fast and knowing where to put your hands. Just that, after that, one shouldn't pretend to have the understanding necessary to pronounce on topics they actually haven't dug into, they, as I, and anyone for that matter, should delve into them first to know what they'll be talking about.
What the author identifies as "developer disconnect" I think is ultimately a product of the popularisation of coding beyond the academic setting, when you learn on your own, you can have several holes at the base of your knowledge, holes that would be glaring to someone that took a more standard path to learning, but that weren't limiting enough to impede their advancement and that is hardly ever addressable, because still, when you're on your own, you have the (blessed) choice to skip everything you don't care about, until you need it at least, if you ever do
I long ago stopped getting caught up in "that discussion" about recent trends despite a stream of people lobbing leading questions to get the ball rolling. Because I also try to not do so more rudely than necessary, I have developed several diplomatically worded (or at least ambiguous enough to float opaquely off to the side of the offense spectrum) ways of essentially saying the following: The simplest and cheapest way of [A] learning the "computer science" end of software is by becoming proficient in Lisp, [B] learning the "engineering" end of software by becoming proficient in Forth, [C] learning how "busywork" is a dangerous and demoralising thing to confuse with "actual work" by maintaining some Java code, [D] learning how insidious and self-sabotaging "expert beginner syndrome" is by reading a lot of the relevent code-reviews and blogposts when maintaining Javascript & Python projects, [E] learning how mob-mentality and populism can lead to selective blindness and architectural stubbornness by working with large volumes of C & C++ code, [F] learning how it is all really abstraction-layers over something akin to an old-shool phone switchboard by working with Assembler, [G] learning how the only work with longevity is that which stands on the shoulders of giants by using Fortran libraries, [H] learning how the mere act of developing using languages with baked-in discipline can be inherently educational by using DbC/TDD/BDD/dependent-type/formally-verifying/etc based languages (SPARK-Ada, Haskell, Eiffel, ACL2, Rust, etc), and then [I] learning how - after a certain level of experience - the languages, frameworks, and tools become less important than the engineers's mindset and the work that happens both before and after the fingers hit the keyboard...by finding semi-performant techniques for implementing masochistic things like a VM and a network stack in Bash script (as hobby tasks, not for real use). If they are coming from a more hands-on/hardware background I also recommend [J] how eye-opening it is to maintain your own customized LibreCMC image flashed onto an open router (the older/smaller the HW the better, because you have to be increasingly creative with your kernel & OS configs), and [K] how educational it is getting a RISC-V working on an FPGA. I top it off by saying that [L] despite coding on-and-off since my start with z80 assembler on an Amstrad in the mid-80s I still feel like a beginner with so much to learn, and [M] that fact is by far the part I love most about the field (not just field of "work" but of "mental endeavour") - far more than status/seniority/raises. I find I don't get bombarded so much with JS-framework-du-jour zealotry and expert-beginnerism after that.
I swear this isn't a get off my lawn post
Proceeds to spend 5 paragraphs complaining about what people call the original Javascript. He has some valid points, but this is very much an older developer complaining about the new generation of devs.
new generation of devs
The new generation of devs sadly has a lot of people that only can type what they want to achieve into ChatGPT and blindly copy whatever code snippet it comes up with. But they can't develop. Nor do they understand code written by others. They're the reason things like NodeJS's is-even package exists.
Published 8 years ago
I didn't know that the new generation of developers were that far along in their careers already.
I dunno some of these feel like fundamentals that any web dev should know.
You're gonna have headaches down the road if you don't know hiw static html works.
I heard of some people having trouble getting their head around React. I didn't, and I thought it was because I had a pretty good foundation in functional programming. React's magic is transparent if you understand things like first order functions and immutable data.
Now I wonder if the disconnect was even more fundamental.