Live data from Hacker News

Please stop the coding challenges

blackentropy.bearblog.dev

441–450 of 493 posts

Re: Please stop the coding challenges

#441

> When was the last time you had to debug an ancient codebase without documentation or help from a team? All the time. 300-400k SLOC in C++. Legacy in the sense that there were no tests of any kind. Little-to-no documentation. Solo developer at the tiny company. Fix bugs and add features while keeping the system available to the tens of thousands of users. A more recent example: here’s a patch for a critical feature…

When was the last time you needed to do it in 4 hours? :)

Re: Please stop the coding challenges

#442
post #260

Earlier quoted context omitted.

> Solo developer at the tiny company. > Fix bugs and add features while keeping the system available to the tens of thousands of users. Don't tens of thousands of users warrant more developers? Or having enough of a budget to work on tests, or other things to improve the developer experience and be able to work without lots of stress? That's unfortunate.

I think I managed about 10k users with my mac shareware games in 2009/10, and that didn't get me ramen profitability let alone modern pay scales. So not necessarily any budget for more than they did.

Single dev codebases have a really hard time growing to 400kloc though

Re: Please stop the coding challenges

#443

Earlier quoted context omitted.

I'm a senior developer and my github is half guitar tabs. I'm not interested in peacocking. Maybe it's because Hackaday refused to put my name on the article with my senior design project years ago and I just don't want to play the game.

That's a great signal (that you have a hobby playing guitar). If the other half is also interesting, it sounds like a great portfolio.

I appreciate it. After thinking about this I think I just need to get over my hangups about duplicating things already done or things that aren't really important.

I just take tabs and rearrange them for personal use. Learn from my mistake and just post whatever to your github, if you fret over its usefulness or purpose you might just never grow your portfolio at all. This was a mistake. You don't have to have some gnu front-page exploratory project.

If you want to shred guitar look up Troy Grady to grok efficient mechanics that won't break your wrist (we type alot for work as well)

Re: Please stop the coding challenges

#444
post #351

Earlier quoted context omitted.

This goes beyond software interviews and is just how the world works. "I want to work for your company" "Ok, prove yourself" "Sorry, I don't have time" How do you expect that conversation to go from there? If you don't have time then make time. It isn't anyone's problem but your own.

That's not it though. Pretend I was hiring a restaurant chef and the industry standard test was "run a mile in 4 minutes", a test that 98% of all candidates fail! So professional chefs practice by jogging daily so they could prove themselves during the famous "run a 4 minute mile" weeding test so they can be hired to prepare meals for people. That's what we're talking about here. I've had to write out the mathematica…

Hiring professional chefs is actually a great parallel. "Chop an onion" or "make a french omelette" are basic tests that even the most experienced chefs being hired for top positions will have to go through.

"But this isn't relevant to my job, a subordinate will always do this kind of stuff."

"We are a fine dining dinner restaurant, I'll never need to make an omelette."

Doesn't matter, make a damn omelette. If you can't, you aren't suited to be a head chef, or any other kind of chef.

Knowing basic data structures and algorithms and having problem solving skills is absolutely critical to a software engineering job. In fact it is the entire job.

Re: Please stop the coding challenges

#445
post #315

> When was the last time you had to debug an ancient codebase without documentation or help from a team? All the time. 300-400k SLOC in C++. Legacy in the sense that there were no tests of any kind. Little-to-no documentation. Solo developer at the tiny company. Fix bugs and add features while keeping the system available to the tens of thousands of users. A more recent example: here’s a patch for a critical feature…

Real. Engineers who don't think they have this problem, are engineers who see their dependencies and the lower layers of their stack as ossified black boxes they "can't" touch, rather than something they can reach into and fix (or even add features to!) when necessary. IMHO the willingness to "dig your way down" to solve a problem at the correct layer (rather than working around a bug or missing feature in a lower la…

That's I'd the company you're at will let you take the time to "do it right". Usually that's not the case. They want features yesterday. You try and fix something properly by going down to the correct layer? "You shouldn't be doing that."

Re: Please stop the coding challenges

#446
post #302

Earlier quoted context omitted.

Don't understand one thing: I can read any code of any legacy code base, sure. What I cannot do is to asses if the code is supposed to do its job (e.g., the business logic behind it). Is the code I'm reading supposed to calculate the pro-rated salary according to the "law"? Just by reading the code, you cannot know that. You need help, either from other developers who perhaps know the codebase of from product experts…

> What I cannot do is to asses if the code is supposed to do its job You can, to a degree. If you can get the system under test you can make an assertion about how you think it works and see if it holds. If you know what the "law" is you can test whether the system calculates it according to that specification. You will learn something from making those kinds of assertions. Working Effectively with Legacy Code by Mic…

There's also the likely chance your business doesn't have good documentation on how features should work, there are no tests and the thing you're testing is fairly custom tailored to your business that you need to have someone with knowledge of the product and history of it to tell you "oh yes that's supposed to happen that way".

Sure if there is a law written down or past written regulations your business follows, that's easy. You've got docs.

Re: Please stop the coding challenges

#447

Earlier quoted context omitted.

Yeah from the title I thought this was going to be about leetcode problems, but this is truly something that comes up regularly. Where are these dev jobs where _don't_ have to figure out some mysterious issue in a barely maintained GitHub repo semi-regularly?

> Where are these dev jobs where _don't_ have to figure out some mysterious issue in a barely maintained GitHub repo semi-regularly? Oh, my job is one of those. Our code is in Perforce.

This is the most Software Engineer answer. Emphasizing only the distinctions that make no difference :D

Re: Please stop the coding challenges

#448
post #441

> When was the last time you had to debug an ancient codebase without documentation or help from a team? All the time. 300-400k SLOC in C++. Legacy in the sense that there were no tests of any kind. Little-to-no documentation. Solo developer at the tiny company. Fix bugs and add features while keeping the system available to the tens of thousands of users. A more recent example: here’s a patch for a critical feature…

When was the last time you needed to do it in 4 hours? :)

More recently than never, unfortunately.

Re: Please stop the coding challenges

#449
post #303

Earlier quoted context omitted.

How are you defining bad code? Imo unreadable and undecipherabe code is one subset of bad code.

I would argue, that in that vast majority of cases, the readability of code is the single most important metric.

If I encounter third party code that is terminally broken, I don’t really care how readable it is, except insofar as I can probably tell it’s terminally broken faster if it’s more readable.

Re: Please stop the coding challenges

#450
post #444

Earlier quoted context omitted.

That's not it though. Pretend I was hiring a restaurant chef and the industry standard test was "run a mile in 4 minutes", a test that 98% of all candidates fail! So professional chefs practice by jogging daily so they could prove themselves during the famous "run a 4 minute mile" weeding test so they can be hired to prepare meals for people. That's what we're talking about here. I've had to write out the mathematica…

Hiring professional chefs is actually a great parallel. "Chop an onion" or "make a french omelette" are basic tests that even the most experienced chefs being hired for top positions will have to go through. "But this isn't relevant to my job, a subordinate will always do this kind of stuff." "We are a fine dining dinner restaurant, I'll never need to make an omelette." Doesn't matter, make a damn omelette. If you ca…

[deleted]
Post reply on HN