top | item 44600204

(no title)

trchek | 7 months ago

I gotta say I’ve heard this take a lot, and I find it regrettable because I think everyone doesn’t understand what they’re missing, this is a pretty human trait. It’s pretty impossible to just know it all and to not know it so much that you’re just miles from even realizing you aren’t even close.

I’ve definitely first hand seen a lot of FAANG engineers (yes even them, some with PHDs) not realize something I had learned from experience during my first year working with computers and I’m certain I was missing things they learned early in university. In the end, together we solved some hard problems in spite of the unknown unknowns that each of us carried.

discuss

order

leptons|7 months ago

>I’ve definitely first hand seen a lot of FAANG engineers (yes even them, some with PHDs) not realize something I had learned from experience during my first year working with computers

I have a close friend that's the smartest person that anyone who meets him knows, no question about it. He's got a PhD in Physics and has also contributed a huge technical achievement to a FAANG company, that everyone uses every day. He's great at a lot of stuff, but not everything. We work on side-projects sometimes, and I'm the self-taught guy in this scenario. I know that I bring just as much to the table as he does, just in different ways. If either one of us tried to do the things we do together, alone, the result would be less than 1/2 as good. Recognizing this and letting each other shine has served us well.

I can only think that teams made up of a mixture of people with different backgrounds would do better than a team of all CS graduates, or a team of all self-taught developers.

tomasGiden|7 months ago

This! When you are doing something simple (as in there are known best practices) you do want people to have the same formal education. They’ll talk the same language and everything will be smooth. Nobody wants a self taught surgeon or pilot on the team. There is a best practice for washing your hands and you want your surgeon to know it.

But when you are in the complex domain (as in there are no known good practices), what you want is many different viewpoints on the team. So getting people with different backgrounds (different academic background, tinkerers, different cultures, different work experience etc) together is the way to go.

Same with the discussion about remote work. People do not seem to get that they’re no best way but it depends on the type of work. If it’s simple or complicated, let people stay at home to concentrate. If it is complex, give them the opportunity, and the knowledge it’s good, meet up by a whiteboard. And what’s best may of course differ from day to day.

wakawaka28|7 months ago

It's safe to say that everyone you meet knows something you don't, regardless of background. But in the context of this discussion, it is pretty obvious that self-taught people on average have nowhere near the hundreds of hours of experience solving theoretical problems. Not having that background will actually set people back when it comes to solving hard problems that occasionally (or often) arise. Watching self-taught programmers talk smack about degreed professionals is like watching a couch potato make sweeping generalizations about how sedentary people who don't go to the gym are more physically capable than people who do, because the people who don't are not limited to performing certain exercises.

trchek|7 months ago

I gotta say still pretty regrettable take, if you will humor I am happy to explain why I say that.

First let me say I definitely value the hundreds of hours you would have spent on hard theoretical problems and while I wasn’t exposed to your curriculum, I regret I don’t have that.

However, I myself have definitely spent a substantial number of hours on distributed algorithms that were only available as published research (didn’t have a choice and that understanding I gained has been proven out), and my extended family is filled with PhDs, so I’ve been casually reading research papers since I was in my teens, this didn’t seem weird. A lot of my peers with and without degrees didn’t engage in this practice.

To explain further, I’ve also spent I can’t even tell you how much time on benchmarking and establishing performance bottlenecks and near as I can tell, no one has in university, or at least they’re not teaching it well enough, because it is shocking how badly this part of performance is understood. Let’s call it applied practical performance enhancement of software deployments.

In the end, I just can’t fully be in board with what you’re saying. Yes I wish I had that degree nowadays and I wish I could take 4 years out and go back and do it again. But I seriously did gain a lot of valuable experience that was hard won with that extra time and near as I can tell is super duper rare, especially because people keep hiring me for it.

noduerme|7 months ago

>> it is pretty obvious that self-taught people on average have nowhere near the hundreds of hours of experience solving theoretical problems

What makes you think that? Simple example: I'm self-taught. Failed pre-Calculus in high school, twice. Ten years in as a freelance programmer, I decided to build the first Bitcoin poker room, and therefore had to write my own poker hand evaluator. I had no example to work from. No logic flow-chart. I had to come up with the logic to parse, rank and show winning odds on anything from 5- to 7-card stud, hold'em and omaha hands. I had to dive deep into Monte Carlo methods, statistics, etc. Meanwhile, I'm writing a HUD for Star Citizen. I'm reading and learning about avionics, working out my own procedural generators in mixed 2D/3D. And this was just one year of my life as a developer. Working 16 hours a day, 7 days a week. Couch potato? Forget about the fact that I was getting paid, not paying tuition to sit in a classroom. These were problems I had to solve, and the work output was immediately in production, and the results were immediately visible.

Talk about sweeping generalizations...

parineum|7 months ago

The more apt comparison seems to be somewhere closer to an athlete that played sports with his friends all day instead of weight training for that same sport and getting instruction.

Most people excell with guidance and instruction but there are plenty of people who excel on their own and occasionally, because they don't know any better, end up doing something nobody ever thought to do or were taught was impossible.