News for hackers. Stuff that matters.
Re:Self-Taught Engineers Often Outperform by brettgriffin on Thursday July 17, 2025 @08:02PM (#44599721)
I'll concede that most CS curricula are so far removed from practical development (intentionally) that it is not an immediate indicator of performance, but to suggest that 85% of CS grads can't figure out a problem in unfamiliar territory seems ridiculous.

If there is a virtue to CS degrees, it's that most engineering tracks require an immense amount of coursework in hard sciences that require a high intellectual aptitude to complete.

I'm really struggling to believe that a majority of people can work through that material and then can't do the type of work that most developers do. And in the most difficult realms of development, I think you'd find a majority of the developers have advanced degrees in CS.

I think having a deep interest in software is more likely to traits you're describing (and described in the article). Some people who have that didn't study CS. A lot did.

Re:Self-Taught Engineers Often Outperform by tesrx on Thursday July 17, 2025 @09:17PM (#44600178)
I'm just curious: if you swap the arbitrary 85% out for a more generalized statement, would you agree or disagree with the OP's comment?
Re:Self-Taught Engineers Often Outperform by hirvi74 on Thursday July 17, 2025 @09:47PM (#44600358)
I am not certain having a degree vs. being self-taught is the deciding factor in what is likely attributable to personality and motivational differences.
Re:Self-Taught Engineers Often Outperform by austin-cheney on Thursday July 17, 2025 @10:22PM (#44600560)
Most of my big corporate world experience comprises CRUD apps like these tasks:

* query a database

* run a web server, typically spring boot or a C# equivalent

* run some ridiculously large browser framework like Angular or React

Typically the end goal was just put text on screen and you need an entire army of developers to do it. Any suggestions that deviate from common patterns were met with hostility by other developers and ignored by product owners. The name of the game was hiring and firing.

Almost no corporate developers were doing anything that could be called engineering. Most of the people that were interested in actual engineering were writing open source outside of work.

Re:Self-Taught Engineers Often Outperform by kazinator on Thursday July 17, 2025 @10:34PM (#44600630)
CS curricula being far removed from practical development implies that the coworkers you are sorrounded with who *are able to do practical development are all in fact self taught, whether they have CS degrees or not.
Re:Self-Taught Engineers Often Outperform by ludicrousdispla on Friday July 18, 2025 @07:18AM (#44603414)
Yeah, I think that most CS graduates that are good at coding are also self-taught (and probably started in grade school.)
Re:Self-Taught Engineers Often Outperform by sfn42 on Friday July 18, 2025 @02:13PM (#44608035)
University teaches theory, practice is necessary for a well rounded engineer. Most students only do what's required. Good students do more than what's required.
Re:Self-Taught Engineers Often Outperform by rachofsunshine on Thursday July 17, 2025 @10:38PM (#44600650)
The thing you're missing here is that these two statements are not contradictory:

-- CS grads are, on average, better programmers than non-CS-grads.

-- The average CS grad is not a very good programmer.

My company does a standardized interview with a straightforward coding problem that is only a few steps above fizzbuzz level. In just the past few weeks, we've had candidates who:

-- Had to look up basic syntax (defining a function) in the language they chose.

-- Duplicated a reference a few minutes in and could not figure out the problem in the remaining twenty minutes.

-- Couldn't extract the 2nd element of an array of five elements.

These same candidates, on other portions of the interview:

-- Knew nothing about common data structures (something that at the very least a CS degree should help with)

-- Couldn't handle an intermediate SQL query fix involving a simple normalized schema

-- Couldn't tell you anything about internals or security, and

-- Didn't seem able to describe how they'd build a CRUD app.

All of these candidates had CS degrees from respectable-to-good universities.

Anecdotes are not data, but high-level data says the same thing. Our coding problem is very similar to the practice problem shown at [1] (though slightly harder). It doesn't require any tricky lateral thinking, deep language features, esoteric algorithms, dynamic programming, weird race conditions, or any of the other usual trivia BS - it's as straightforward a task as we could design.

And if you look at how much progress people make (see [2]), it's not much. The vast majority of people we interview have CS degrees, and two-thirds of them still get ~nowhere.

Meanwhile, the best interview we've done this month was with a guy who has been the sole developer for an ag business in rural Arkansas for the past decade. He has no degree and his previous two jobs were a sandwich shop and running a website for his church.

(Specific details slightly fudged for the sake of candidate anonymity, but not in a way that materially affects the point.)

[1] https://www.otherbranch.com/shared/practice-coding-problem

[2] https://ibb.co/CpznhK8m

Re:Self-Taught Engineers Often Outperform by userbinator on Thursday July 17, 2025 @11:37PM (#44600958)
It's results like this which put to rest the "myth" that "10x" programmers don't exist according to some people. In fact, it's been my experience that "100x" or even "1000x" programmers exist. (Fabrice Bellard is a prominent example of the latter.) For your given practice problem I'd probably spend more time reading it and writing the code than thinking, unless I'm asked to use something like an APL-family language in which case the majority of the time would be spent reading the problem description.

(Full-disclosure: mostly self-taught with several decades of experience.)

Re:Self-Taught Engineers Often Outperform by typewithrhythm on Friday July 18, 2025 @01:15AM (#44601442)
Depends, maybe Its more a matter of description, but I would call the lowest quality engineer I've seen employed a "0.1x" engineer, before I would describe a good one as a 10x.

Just because it's a kind of visualisation of a distribution, the elite are not that far ahead of the competent, but there is a very long tail of shitters out there.

Re:Self-Taught Engineers Often Outperform by bluecalm on Friday July 18, 2025 @03:48AM (#44602276)
Now take that good one and compare them to a guy like Thibault Duplessis (Lichess author), look at his GitHub and commit history for Lichess and you will quickly realize that even with your 0.1x starting point 1000x engineers are out there.

The guy single handedly created the best online chess site out there outperforming whole commercial teams in every area (performance, interface, features, whatever you choose). His work ethic is legendary and he pays himself below entry level salary (for US standards).

Re:Self-Taught Engineers Often Outperform by MichaelRo on Friday July 18, 2025 @02:06AM (#44601690)
Compared to someone who's basically a zero in programming, any amount of knowledge pushes the ratio to infinity. The average CS graduate doesn't know shit because universities need volume to survive so basically once in, you are spitted out eventually. And faking projects and cheating on exams is rampant, with the complicit involvement of teaching stuff because they don't care and incentives are biased towards turning a blind eye.

So 90% of CS graduates are useless, which it why, thank God, the inflationary pressure towards programmer jobs is far lower than the droves of new arrivals would suggest.

Therefore the top 10% are 100x by default compared to the middle because the middle is really a liberal arts graduate, not a computer programmer.

Re:Self-Taught Engineers Often Outperform by astura on Friday July 18, 2025 @08:31AM (#44603976)
> universities need volume to survive so basically once in, you are spitted out eventually.

This just isn't true, I mean, my university has a graduation rate around ~65%

People who know the least amount universities talk the the most confidently about them.

Re:Self-Taught Engineers Often Outperform by 9rx on Friday July 18, 2025 @10:21AM (#44604930)
> People who know the least amount universities talk the the most confidently about them.

Well, duh. Nobody is going to waste their time talking about something they know well. What would be the point? They already know about it. Anywhere you find people talking about a subject, you know they have limited understanding. That's why they are talking about it — seeking more information to expand their understanding.

Re:Self-Taught Engineers Often Outperform by Mawr on Saturday July 19, 2025 @07:00AM (#44614414)
Your statement is meaningless, as you did not define what the x in 100x is and what being a "programmer" entails.

Is x the average?

Is a programmer someone who just implements the requested features, or, like bluecalm commented below, someone like the Lichess creator who apparently does all of "performance, interface, features,", etc.?

What metric are we using here? Revenue?

Re:Self-Taught Engineers Often Outperform by hirvi74 on Thursday July 17, 2025 @11:34PM (#44600936)
I have a degree in computer science, and I have been a professional full-stack developer for almost 9 years. I could probably not solve the problem in your first link in 25 minutes. I know exactly how I would solve it, conceptually and what data structures I would use, but I am not sure I'd get the adjacent mines part correct on the first attempt.

Then again, this is nothing like the type of problems I work on a daily basis.

Re:Self-Taught Engineers Often Outperform by AnonHP on Thursday July 17, 2025 @11:48PM (#44601013)
(Not GP) After looking at the page and the problem description, I agree. The time limit of 25 minutes is way too short for this considering that the person may already be stressed and find it difficult to understand that big wall of requirements and implement it in this time span. It doesn’t matter if one is a self taught programmer or has a CS degree.

I don’t know if they’re looking for superheroes or people who can put in the work.

If the GP is reading this, I’d suggest increasing the timer a lot more (like one hour, what’s the big deal anyway?) and splitting the requirement and steps into smaller chunks. The “optimize for speed” remark in the instructions is also a bit confusing.

Re:Self-Taught Engineers Often Outperform by userbinator on Friday July 18, 2025 @12:04AM (#44601089)
I respectfully disagree that this problem needs anywhere close to an hour; and having the problem already broken down into rather simple steps is a significant amount of handholding.

As for being stressed -- if this is too much, how will you do when asked to solve even harder problems with tight schedules and/or demanding customers?

Re:Self-Taught Engineers Often Outperform by 9rx on Friday July 18, 2025 @12:40AM (#44601263)
> if this is too much, how will you do when asked to solve even harder problems with tight schedules and/or demanding customers?

Isn't the whole reason you are joining a team is so that you have a support network when such situations arise? The period of acting alone to join that team is a temporary aberration and is to be recognized as such.

You may as well be the business selling to those demanding customers if you have what it takes to handle going at it alone. It will be far more profitable. But if you don't have it...

Re:Self-Taught Engineers Often Outperform by userbinator on Friday July 18, 2025 @01:12AM (#44601423)
Not if the team expects you to pull your own weight, because they will be busy doing the same.
Re:Self-Taught Engineers Often Outperform by 9rx on Friday July 18, 2025 @06:43AM (#44603181)
What, then, is gained by joining such a team? You're just taking a pointless pay cut.
Re:Self-Taught Engineers Often Outperform by LambdaComplex on Friday July 18, 2025 @12:41AM (#44601272)
I've solved plenty of hard problems at work, but none of them have ever looked like "count the grid squares adjacent to a given grid square while taking the grid's edges into account so the program doesn't blow up because you tried to access an invalid index."

And if I did have to do something like that at work, I promise my manager would give me more than 25 minutes to do it.

Re:Self-Taught Engineers Often Outperform by userbinator on Friday July 18, 2025 @01:10AM (#44601412)

    sum += (x > 0 && y > 0 && x < x_limit && y < y_limit) ? a[y][x] : 0;
That took less than a minute of thought; or you could use a common technique in image and video processing, which is to make sure that the edges are always present but filled with appropriate values by defining your grid to be slightly bigger than the active area.
Re:Self-Taught Engineers Often Outperform by what on Friday July 18, 2025 @01:57AM (#44601643)
And it doesn’t do what’s asked? Congrats.
Re:Self-Taught Engineers Often Outperform by userbinator on Friday July 18, 2025 @02:53AM (#44601953)
I just concentrated on what would be the hardest part, the "edge" cases (literally.) Wrapping that in a loop that goes through the appropriate indices is not much more work. There is a sibling dead comment to mine which has the rest.
Re:Self-Taught Engineers Often Outperform by peterfirefly on Friday July 18, 2025 @06:20AM (#44603060)
Should probably use

  >=
Re:Self-Taught Engineers Often Outperform by userbinator on Friday July 18, 2025 @09:42PM (#44611778)
You're assuming closed instead of open intervals.
Re:Self-Taught Engineers Often Outperform by peterfirefly on Sunday July 20, 2025 @09:00AM (#44624810)
I was assuming zero-based arrays.
Re:Self-Taught Engineers Often Outperform by jay_kyburz on Friday July 18, 2025 @02:04AM (#44601684)
oops doesn't count the edges. Take another minute.

-- joking -- :)

Re:Self-Taught Engineers Often Outperform by stouset on Friday July 18, 2025 @02:42AM (#44601891)
I agree with your assessment of the problem. It’s already been broken out into discrete chunks that are all simply solvable in short order. Even finding neighbor squares is reasonably straightforward (generating all 8 candidates is basically trivial, then pass them through a filter for each of the four edges).

But your take on the stress component of an interview is way off base. There’s a huge difference in having stress on you to deal with other people’s problems vs. your own. An interview candidate may be in financial trouble and may have been struggling for months to find employment in a terrible job market. This is existential stress on a completely different level than a customer wanting a feature yesterday.

Re:Self-Taught Engineers Often Outperform by Mawr on Saturday July 19, 2025 @06:49AM (#44614355)
> As for being stressed -- if this is too much, how will you do when asked to solve even harder problems with tight schedules and/or demanding customers?

There's no such single "stress". It's all different. Being yelled at by mom is "stress", and so is being held at gunpoint. Not the same kind of stress.

Making the slightest mistake or wrong impression during an interview pretty much ends it right there and by extension kills your chances of employment. Your entire future career and financial stability for the next 5-10 years hangs in the balance at all times during an interview.

Not comparable in any way to "the customer is being annoying today".

Re:Self-Taught Engineers Often Outperform by tuesdaynight on Friday July 18, 2025 @12:21AM (#44601175)
Yeah, I don't think this thread is about the interview process. It's just for the self-taught developers to feel superior. Or maybe I became too cynic, who knows.
Re:Self-Taught Engineers Often Outperform by Jensson on Friday July 18, 2025 @12:24AM (#44601187)
If you just had "implement mine sweeper" sure, but the page does tell you exactly how to implement it so you don't even have to think to solve it. Just write the 5 functions they tell you to write and done, each of those are a few lines.
Re:Self-Taught Engineers Often Outperform by rachofsunshine on Friday July 18, 2025 @01:05AM (#44601383)
It's a bit off the main topic of this thread, but the problem isn't designed to be finished in time. From the page:

> Very few people will finish the full problem. You do not need to complete every step to pass our interview.

A problem that an average candidate completes doesn't have a lot of differentiating power on the high end, whereas a problem where an OK candidate finishes 2-3 steps and a great one finishes 4-5 carries a lot more information.

Re:Self-Taught Engineers Often Outperform by bcrosby95 on Friday July 18, 2025 @01:16AM (#44601449)
I don't think how far a candidate gets on this particular test determines if they're OK or if they're great. I posit that a great one could finish 2-3 steps and an OK one could finish 4-5.

Because like many people have stated, this is just a hand holding test. You're basically seeing if they can code. So you're testing how fast someone can take a list of 5 steps someone else gives you and translate it into code in under 30 minutes.

And I'll tell you, I've never, in my life, worked on code with a series of 5 requirements and submitted it for review after 30 minutes. That would be bonkers, because I'd probably spend at least an hour sussing out all the ambiguities and contradictions.

Re:Self-Taught Engineers Often Outperform by rachofsunshine on Friday July 18, 2025 @01:51AM (#44601620)
"Basically seeing if they can code" is the goal, yes.

> I don't think how far a candidate gets on this particular test determines if they're OK or if they're great.

It doesn't with certainty, but measurement of this kind is always subject to some degree of error. The point of interviewing (especially at the early stage where this interview is applied) is signal, not certainty, and we do seem to be picking up on signal:

-- # of steps completed on the coding task is the strongest single signal of success at later final interview rounds. Candidates who have gotten offers (not from us, to be clear, so this is uncorrelated error) average ~1.1 more steps completed on our coding problem than candidates who don't. That's after we filtered a lot of the weaker results out, so it's sampling biased in slower candidates' favor. This is a larger gap between offers and non-offers than any of the other nineteen individual internal scores we record for each interview, iirc.

-- # of steps completed correlates with results on the rest of the interview in a way that is aligned with reasonable psychometric measures of quality, same as most of the other parts of the interview (see e.g. [1]).

If your point here is just that interviews involve somewhat artificial work and are prone to error - well, yes. Everyone involved in testing as a field already knows that and is working around it.

To use your concrete example, creating a problem involving "sussing out all the ambiguities and contradictions" for an hour would be asking a lot more work from candidates. If we did that, I bet we'd have people complaining about the lengthy workload of doing an interview (or simply not doing it, which would be fatal to us as a business). I would also worry that that's a much fuzzier skill to measure, particularly in a cross-organizational way. It's not that, in isolation, you could never create an interview to test ambiguity-resolution, it's that (at least in my judgment), it would be impractical for us to do so given what we are trying to do.

And finally, to this:

> I posit that a great one could finish 2-3 steps and an OK one could finish 4-5.

See [2].

-------

[1] https://bsky.app/profile/otherbranch.bsky.social/post/3lpcdl...

[2] https://news.ycombinator.com/item?id=43006330

Re:Self-Taught Engineers Often Outperform by itronitron on Friday July 18, 2025 @02:21AM (#44601756)
So as an applicant, I would be left with the nagging feeling that I didn't finish the problem, and knowing myself and seeing the time constraint I choose to avoid those interview processes.
Re:Self-Taught Engineers Often Outperform by LambdaComplex on Friday July 18, 2025 @12:47AM (#44601301)
I just gave it a shot; I would definitely need more than 25 minutes.

> I am not sure I'd get the adjacent mines part correct on the first attempt

Yeah, getting to that point was easy. Solving that problem is where I got stuck. I'm sure I'd get it eventually, but getting to that point and figuring that out in 25 minutes is asking a bit too much.

Re:Self-Taught Engineers Often Outperform by userbinator on Friday July 18, 2025 @01:22AM (#44601479)
Perhaps that is suited for candidates with image processing experience, because looking at surrounding pixels is a common pattern in image and video codecs. I suspect APL-family experience/thinking style will also help significantly (if you haven't seen it, I recommend watching this video: http://youtube.com/watch?v=a9xAKttWgP4 )

The floodfill part (the last one), on the other hand, is the one that stands out in difficulty compared to the previous parts.

Re:Self-Taught Engineers Often Outperform by peterfirefly on Friday July 18, 2025 @06:23AM (#44603073)
Really? We had informal flood fill competitions in my high school... If you understand recursion, it's easy. If you don't... there's so many other things than flood fill you just can't do. And the generalization of saying "oh, that's just a work list" is easy and enables even more things.
Re:Self-Taught Engineers Often Outperform by TimByte on Friday July 18, 2025 @03:16AM (#44602089)
Most senior devs I know would rather take a clean, iterative approach than brute-force a perfect solution under a timer
Re:Self-Taught Engineers Often Outperform by stdbrouw on Friday July 18, 2025 @06:24AM (#44603083)
> Then again, this is nothing like the type of problems I work on a daily basis.

I thought it'd be fun to take a stab at it in Python, which I haven't used in a while, but only barely still remembered that I could accept command-line input with the built in `input` function, something I don't think I ever used after writing my first lines of code 15 years ago. Then I figured I'd use just lists instead of a numpy array but had forgotten that [[0] * 4] * 4 would just create 4 references to the same list. And that pretty much derailed the whole thing for me, even though I was sure I'd get it done in 25 minutes or under :-)

Re:Self-Taught Engineers Often Outperform by WalterBright on Friday July 18, 2025 @12:46AM (#44601299)
Computer science isn't about building CRUD apps or SQL queries. Just like mechanical engineering isn't about operating a milling machine.
Re:Self-Taught Engineers Often Outperform by nobodyandproud on Friday July 18, 2025 @02:18AM (#44601743)
I wish I were home, so that I can code and time myself for the fun.

Alas, it’ll be a few weeks and by that time I’ll have forgotten :)

Re:Self-Taught Engineers Often Outperform by ben_w on Friday July 18, 2025 @05:51AM (#44602886)
> [1] https://www.otherbranch.com/shared/practice-coding-problem

Minesweeper?

Huh.

No wonder the PhD candidate who was supervising us was surprised I did that as a fun little side project in my first or second year at university.

Still, I'm not absolutely sure I'd have gotten to the end of step 5 (correctly working flood-fill) within 25 minutes despite having implemented the whole game in Java, REALBasic, and JavaScript over the years.

On the other hand, that's probably good. 25 minute coding challenge where you're not even expected to get to the end as per the instructions* is much better than "take this, do it over the next week, might take you 8 hours, we'll spend an hour talking about it" as I've been seeing.

* "Very few people will finish the full problem. You do not need to complete every step to pass our interview."

Re:Self-Taught Engineers Often Outperform by radicalbyte on Friday July 18, 2025 @06:09AM (#44603000)
That matches my experience: but it's to be expected as most CS degrees are applied Math not Software Engineering. You have to respect that.

The thing which makes SEs good is being smart and having passion. Self-taught selects for that. For young people, take a smart young person and put them through a CS degree whilst working. They'll be instantly productive and with a little guidance can be successful. Over time they become exceptional.

That was my path.

Re:Self-Taught Engineers Often Outperform by clmckinley on Friday July 18, 2025 @12:10PM (#44606389)
This was my first thought when i read the headline. Many people were told to get CS degrees because they will get a job, not because they love it. The cost of quitting a degree or not using a "valuable" degree is relatively high, especially for people who are inclined to coast. Most people who start college also graduate, even if they aren't prepared or love their program, so we have lots of bad cs graduates.

On the other hand, most people I know have at least dabbled in learning to code. In this case the cost of quitting is very low and the cost of getting good is reasonably high, so it self-selects for people who excel at it and love it.

That said, if you only compare people with similar aptitudes, my experience is that people with formal training are better.

tl;dr: The most important thing to me is comparing past work, interview and personality. If you have a CS degree with no personal projects, you won't get a job offer. If you don't have a degree but have active projects with good code then I don't care if you have a degree. That said, I have been getting hundreds of applications for every entry level job I post so I can normally find someone who has both.

Re:Self-Taught Engineers Often Outperform by t_mahmood on Friday July 18, 2025 @03:01PM (#44608538)
Where can I get more of these small programming challenges?

I love small problems like this. I couldn't get all the steps in 25 minutes, but I think I was not that bad. (I was in stage 4 before time ended, got distracted about taking input with Rust, heh)

I think, working with these small problems would give my ADHD brain a boost before I start my daily works. If more detailed problem, I would spend the whole day on it, smaller would not give me much push.

This was just right!

Re:Self-Taught Engineers Often Outperform by hirvi74 on Thursday July 17, 2025 @10:56PM (#44600752)
> "If there is a virtue to CS degrees, it's that most engineering tracks require an immense amount of coursework in hard sciences that require a high intellectual aptitude to complete."

I do not disagree with you at heart, but I think there are so many pervasive issues with modern education that I am not certain a high level of intellectual aptitude is necessary anymore. Hell, I somehow have a computer science degree which I honestly do not deserve considering how little I understood (and still do not understand). Then again, I didn't go to some prestigious university for the astute either, so take it for what it is worth.

Nevertheless, I feel like I learned a lot of information and was exposed to many topics at a surface level of understanding. However, there is little I learned that I couldn't have learned by just reading the textbook. In fact, most of my assignments and tests came directly from textbook or were similar enough.

I was trying to brush up on data structures and algorithms last year. Not because I was looking for a job, but because I always wished I understood DS&A on a more fundamental/mathematical level. I like details and understanding the 'why' or 'how' more than the 'what.'

I remember watching lectures of a professor on Youtube (Dr. Skiena at Stony Brook University). All I could think was how there is likely a slim chance in Hell that I would have made it through his class nor Stony Brook.

Overall, I think most of the difference is down to desire and motivation. Many of my fellow students at the time, cared little about computer science or programming. Most did just enough to get the piece of paper so they could start making 'real money' as they often would say. If one is capable enough to teach themselves how to program, then I do not doubt those individuals are capable of learning computer science to a level equivalent to me. Sure, they might not obtain a PhD level of understanding, but then again, the vast majority of bachelor degrees do not either.

Re:Self-Taught Engineers Often Outperform by JKCalhoun on Friday July 18, 2025 @08:34AM (#44604001)
> Hell, I somehow have a computer science degree which I honestly do not deserve considering how little I understood (and still do not understand).

I still take on faith that a kernel is some black box, some thing that just … works. It seems to manage memory, threads to some degree, the file system…?

Re:Self-Taught Engineers Often Outperform by MangoToupe on Friday July 18, 2025 @06:10AM (#44603005)
The intellectual aptitude to get high marks is wildly different than the sort of type to solve problems.
Re:Self-Taught Engineers Often Outperform by jdjnofk738373 on Friday July 18, 2025 @11:13AM (#44605585)
> If there is a virtue to CS degrees, it's that most engineering tracks require an immense amount of coursework in hard sciences that require a high intellectual aptitude to complete.

> I'm really struggling to believe that a majority of people can work through that material and then can't do the type of work that most developers do.

In practice, the way maths and sciences are taught to CS students is without demand for any ingenuity. Most of the time, students don’t prove theorems, they only perform rote calculations according to an algorithm. The few proofs that do show up are things like a few very basic proofs by induction, where students are basically given the algorithm how to solve such a problem beforehand. Statistics, same story – fit a problem to one of the template solutions you were given earlier. Physics, same story.

That’s what for me explains why in my experience maths graduates have been better programmers than CS graduates (as work colleagues). And why some people in this industry hold it as a badge of honour that they can’t invert a binary tree.