Earlier quoted context omitted.
I've seen this argument before and I don't think I agree. Surely there's a lot of times when I program that are heavy into thinking, but there's also a lot of mechanical work. Refactoring? Typing speed will help you. Going to try out a new approach? Typing speed will help you to see whether it's true or not. Everything else being equal, typing speed will help you try out stuff faster.
All else being equal sure typing faster is only going to make you more productive but a slower typer who is better at solving complex problems is always going to be more valuable than a fast typer who is not as good. I don’t think I’ve ever encountered a programmer that was too slow to simply be productive and valuable to a business which makes it questionable advice for anyone to follow.
They don't even know the fundamentals
51–60 of 323 posts
Re: They don't even know the fundamentals
#52> “Yes, every programmer should know how their hardware works as one cannot write an efficient software without that knowledge 4, and I wouldn’t be able to do my job if I didn’t know anything about computer internals, yak, yak, yak…” I agree that you don't need to know anything about von Neumann Architecture and the likes in order to be a Web Dev. But I wouldn't want to hire someone who doesn't have basic knowledge a…
Re: They don't even know the fundamentals
#53> For the majority of programmers out there, something being RESTful means that you can feed it chunks of JSON over HTTP. The minority, who have spent some time reading about it, will complain that it’s a design principle defined in the Roy Fielding’s thesis and it has nothing to do with JSON or HTTP 3. How many of you have actually read his thesis? All of it? No skipping? I've been railing about this for years. Plea…
Probably pick a different hill to die on. The meaning of "REST" in common parlance is now just HTTP+JSON, nothing more. At best, the url might represent a noun.
Re: They don't even know the fundamentals
#54> “Yes, every programmer should know how their hardware works as one cannot write an efficient software without that knowledge 4, and I wouldn’t be able to do my job if I didn’t know anything about computer internals, yak, yak, yak…” I agree that you don't need to know anything about von Neumann Architecture and the likes in order to be a Web Dev. But I wouldn't want to hire someone who doesn't have basic knowledge a…
- interviewer asks candidate to determine the complexity of some algorithms
- candidate is nervous, has a minor brain-fart and flubs a couple of them
- interviewer evaluates candidate as lacking basic CS knowledge you learn in 1st year of any CS course
Ok in this case we're talking about big-O, but it could really be anything.
Re: They don't even know the fundamentals
#55Re: They don't even know the fundamentals
#56“Atomicity, something, something, Durability?” My exact response after reading the first quote. It is indeed fundamental, and something I am mindful of with every database query I execute. But I haven’t thought about the exact definition and its mnemonic in over a decade.
Not being able to give any explanation or sign that you've at least heard of it is a completely different story from not being able to recall what the letter C stands for (consistency IIRC?).
As the saying goes: If you think you understand something, and you can't explain it to someone else, that you probably don't really understand it.
Re: They don't even know the fundamentals
#57> There is another fundamental that is ignored by a lot of computer users. I think everyone who spends a lot of time behind a computer should learn how to touch type, since typing is still the main way of interacting with your computer. I sort of agree, but anyone typing out code at 120WPM isn't programming, they're writing. Programming is an intellectual activity, not a physical one so learning to touch type is wort…
The keyboard is a tool.
To me, it feels disrespectful for a person to expect these high wages when they don't even make the moderate effort involved in learning to use this tool efficiently.
In my experience, this usually signals that a person isn't actually interested in continuously improving, feels overly entitled and they tend to be a nightmare to work with.
Most places I've worked require substantial pair programming or at least working through problems together on a regular basis.
If you can't type, you're going to waste a lot of people's time and they may be too polite to say anything, but it's frustrating for everyone around you.
A carpenter who claims to be experienced, but can't work a hammer efficiently would be ridiculed on a job site.
I'm not proposing we ridicule anyone, but being unwilling to type and claiming to be competent at a job that requires an enormous amount of typing does have a ridiculous look (to me).
Of course, I have worked with people working through a variety of disabilities, including dyslexia that make touch typing basically impossible. I'm not talking about them here.
I'm talking about people who just refuse to make the effort for whatever reason. It's a bad look.
PSA for newer players: Regardless of how you may feel about this subject, failing to demonstrate at least moderate typing skill in an interview is often a hard pass unless there's some explanation requiring an ADA accomodation.
Re: They don't even know the fundamentals
#58Yes, you can write some storage solution or yet another database without knowing ACID terms but you will still end up somewhere in the CAP triangle. Using common terms like these makes it easier to communicate with other engineers and makes it more obvious that a lot of things have already been solved and perhaps there’s a library that you can use. In the same spirit you should not write your own cryptographic algori…
Drop P and you'll end up with both consistency and availability, right? Right?
("This is a trade-off we are ready to accept")
Re: They don't even know the fundamentals
#59> It turns out my day to day work doesn’t require deep knowledge about database internals and I can mostly treat them as a black box with an API 2. Because of such attitude of the previous dev team my client ended up with DB integrity ruined. Previous guys somehow didn't know they should use transactions when updating/deleting stuff in the DB, because hey, it's just API you call, who cares of mambo-jumbo happening be…
Same thing here, our legacy codebase avoided using transactions, and to this day, after migrating to a new codebase, we still get reports from clients here and there about errors which stem from inconsistent data
Re: They don't even know the fundamentals
#60Don’t ask questions that can be answered with a web search.
> Don’t ask questions that can be answered with a web search. These days, that’s equivalent to saying “don’t ask questions about what the day to day job requires one to know”. Sites like stackoverflow contain answers to problems that people encounter in their day to day jobs, and if you eliminate those as potential questions, then what should you ask? And what is the value in asking some obscure question, other than…