Earlier quoted context omitted.
You're right but you or more precisely that interviewer is also wrong. Understanding the way your storage works is crucial, yes. But you ensure people understand it not by asking "Explain ACID to me" but by asking to design a certain system and observing them figuring out requirements and asking questions. You then ask follow up question about consistency and reliability, you probably even can ask about benefits of u…
> I totally fail to parse any written explanation of liskov substitution principle Off the top of my head, "all child classes should be usable interchangeably when dealing with an interface/base class". I guess that's too imprecise to qualify as "written explanation"?
They don't even know the fundamentals
281–290 of 323 posts
Re: They don't even know the fundamentals
#282This promulgation and advocacy of laziness and know-nothing-ism is frightening and all too commonplace nowadays. The ACID example was a bad one, granted, but everyone seems to be giving up after identifying that. I also think that this post is not about interviewing. I am much more concerned with the line the author takes about knowing how a digital computer work is even necessary. How have we arrived at this point?…
This describes exactly the Boeing and MCAS fiasco. In fact, not only did Boeing hire do this, they outsourced the work overseas. People overseas are capable of doing great work, but they do the work exactly the the spec and nothing more. If you don't have an internal engineering process to account for situations unique to software, there's no way you can ensure that what they deliver is fit for purpose.
> Furthermore, I know a slew of extremely bright, tenacious, and committed young people who are ruthlessly pursuing excellence in engineering.
Those types of kids are going extinct. The kids coming up now are entirely smart-phone raised. An actual computer is an afterthought, they can't even explain what a file is. We're headed for the software engineering dark ages.
Re: They don't even know the fundamentals
#283Earlier quoted context omitted.
I think you misunderstood his point, I think what he's saying is that even good back end devs are horrible at designing UI and you need different people with different specialisations on a team.
I'm horrible at designing UI too. That's simply not the job of building modern interfaces across multi-disciplinary teams. I care far, far more about data-structures, eventual-consistency, data-design, and types than CSS and divs. These days getting the design to look nice is my two-hour reward for nine days of data-stitching hell, writing backend-for-frontend lambda functions, and negotiating API contracts that actu…
Re: They don't even know the fundamentals
#284Earlier 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.
I'm a developer who is also a pretty fast typist, and I have to say that's not my experience. I wouldn't want to hunt and peck, but my sense is that higher than, like, 40 GWAM probably yields diminishing returns. Language might make a difference there. Writing C# with a QWERTY keyboard, you still have to interrupt a normal typing flow for your parentheses, braces, etc. I suppose it's helpful if you're writing long co…
It helps a lot with most programming languages. Snippets for if, while, and for can also help with the {}.
Re: They don't even know the fundamentals
#285Re: They don't even know the fundamentals
#286> 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…
I think the best analogue is blindness: it dramatically reduces the bandwidth of the information channel from the computer to you, but there are highly productive blind programmers. Hunt-and-peck programmers are in a similar situation.
Re: They don't even know the fundamentals
#287> 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…
Do someone really needs to learn touch typing? It comes naturally when you are using computer daily.
People can practice a skill for a long time, but if they don't focus on improving, they tend to just harden their existing habits.
Re: They don't even know the fundamentals
#288I've found bad interview questions fall into one of three camps: 1. The interviewers aren't subject matter experts themselves but are hiring managers, so they've taken their questions from someone else. 2. The company gets far more good candidates apply than they can hire, so the process is less about removing bad candidates and more about having some arbitrary way of whittling down good candidates. 3. The interviewe…
In an interview, they gave me access to their codebase and asked me to fix an actual (small) bug. The interviewer showed me where the codebase was, how to replicate the bug, all of that took less than 10 mins. Then he left, told me to give a shout once I am done. Took me about half hour to do it, another 10 mins to explain what I did to fix the bug. There were no other questions - no white board stuff, no algorithm q…
They tested it after I left (a >100x improvement apparently) and called me the next day to ask when I could start.
Re: They don't even know the fundamentals
#289To me non-ACID means you can never use any logical reasoning to have an idea of what there is recorded in your database at any given moment. ACID means you execute a piece of code in a transaction and if something goes wrong it fails altogether returning you to the pre-transaction state. Am I wrong?
Furthermore, many real-world databases do not fully provide ACID guarantees, and yet you can reason about the database anyway.
Re: They don't even know the fundamentals
#290I still think any programmer using any database should know what “data consistency” you sacrificed for using “Read commited” instead of “serialisable” and how hacker can use it to steal million of dollar of your e-commerce company