Live data from Hacker News

Who wrote this shit?

heltweg.org

281–290 of 300 posts

Re: Who wrote this shit?

#281
post #161

Earlier quoted context omitted.

> definitely introduced bugs for me I'm an avid TDD developer. Red-green*refactor*. The latter, often overlooked, is IMO by far the most important part of TDD. But the refactor is only possible because of the tests you wrote, asserted, and tested (testing the tests) in the red-green phase. It gets hairy when a refactor needs to also refactor the tests - often a sign that the tests were lacking in the first place (and…

One day I probably shift into TDD as well, as .. yes, I am not big on systematic testing. And that often hurt a lot.

TBH: TDD is not a silver bullet. And applying it religiously where it did not fit, has hurt me just as much as not applying it, where I should have.

Re: Who wrote this shit?

#282
post #265
post #244

Earlier quoted context omitted.

I disagree. There are lots of examples of standards that define what is "good enough." For example, NASA has different standards depending on risk categorization and the predefined threshold of quality gradually gets higher as the use gets riskier. A business application is held to a much lower level of quality than software for a robotic mission which is lower than a human rated development effort.

I can't tell what you are arguing about? We are laying out an approach to software development, refactoring, and a model for how to view old code that you some acroas that seems bad. You seem to be stuck on the term "good enough" and arguing semantics that don't make sense. Yes, sometimes there are standards. that you need to meet. Sometimes just meeting the offical standard is not "good enough", and you need to do m…

My point in a nutshell:

Good enough is usually an excuse for vague and ill-defined practice. If you don't have a well-defined "good enough" you probably don't have a mature process. If you don't have a mature process, you probably shouldn't be writing critical code. Hence my original comment that it's not a good mindset for high-risk applications.

Well defined "good enough" often looks like a standard. Those standards should be risk based so that one person's biases don't result in a different level of risk mitigation than another person's. That risk is what contextualizes what is "good enough". I'm sure if you asked the Boeing managers, they felt their CST-100 software was "good enough", but the relevant safety standards say it wasn't "good enough". Since both sides can use the term, it makes the term somewhat useless. Like you say, there is no singular "good enough" so the question becomes: Good enough...for what? Good enough to meet schedule, or good enough to not risk crashing into the ISS? My main issue is that "good enough" often means "undefined". When people say "good enough", I've found it often means "we don't know what we need, but I'm sure we'll know it when we get there." I think that can be a bad approach to software development when the risks are high because it opens one up to cognitive biases that lead to subjective and poor decision making.

If you're saying "good enough" is precisely defined and based on risk, then I agree. But that is not how I've ever seen the term used in practice. It's almost always a nebulous term which means you've only vaguely defined the risk. Poorly defined, subjective judgement belongs more to art than engineering, especially not safety-critical engineering. "clunky, cobbled together, expermental or just plain stupid" as the OP said, just doesn't cut it on critical applications, even if the developer claims it's "good enough" and doesn't strike me as a professional mindset.

Re: Who wrote this shit?

#283

Earlier quoted context omitted.

> But just in terms of "what would I rather have", a link to the ticket every time In practice over the past 20+ years, I've had to rely on commit messages far more than tickets, but a well-written ticket is defnitely awesome to have. When I ran Engineering for a startup, one of the things we invested a lot of time in was making sure commits had good messages, tickets had good writeups, and the two were linked. We re…

Just out of curiosity - how many different CVS did you use in the past 20+ years? I went through 5 different CVSs and the history was gone forever in each migration - but actually JIRA is still the same after 16 years )))

Obviously my experience is my own, but in many cases it was the ticket system that changed vs. the version control system, which is why history wasn't always there. A lot of my early experience was at startups and I think I saw a version control migration only happen once (VSS to Git). I've even seen a couple places that didn't even have a ticket system. Unsurprisingly, those no longer exist.

In any case, I think the "correct" answer is proper commit messages AND solid issue tracking. My preference for commit when looking in the past was more around trying to understand particular changes to specific files or lines of code, which are more easily navigated in source control. A good commit message helps narrow down things when there is a long history, but a link in that message to the actual ticket would be a dream since that would likely have the larger context.

All that said, I have spent some time at a FAANG and neither commit messages nor tickets were useful at all there. Commit messages were usually along the lines of "fix a bug" or "add a feature" and the tickets rarely had more detail than "fix X" or "add Y". That was more of a symptom of the "go forward" culture there. Little time was spent making it easier for the next person since that wasn't really rewarded in the performance process.

Re: Who wrote this shit?

#284

Feel like there has been increasingly more cuss / inappropriate words showing up on top page of HN. I recommend HN to my kids. Not that they are not exposed to these words online but I would rather not come this from their parent. Not sure how to feel.

I’m not worried about my kids seeing curse words. I am concerned about the downward pull normalizing unprofessional writing has on my profession. Does it make our whole environment less professional? Does it influence us to be unprofessional in other parts of our craft? Do outside observers view us as less a profession because of it? I don’t know the answers but I certainly worry about it. Though perhaps I’m just agi…

This audience is at a particular peak of glibness and superficiality this week. It's interesting to think about what kind of place it would be if there were a couple artificial norms of decorum, like "no swearing" (I'd find that difficult to adhere to, at least at first). It might be better; sometimes rules like that can subtly remind people that there's a minimum threshold of thoughtfulness required before chiming in.

Re: Who wrote this shit?

#285
Do not do this to the CTO about their own code is a lesson I learnt painfully many years ago. And today as a technical lead there's far too much wince-worthy code I come across that I was personally responsible for a few years back. Onwards and upwards.

Re: Who wrote this shit?

#286
post #282
post #265

Earlier quoted context omitted.

I can't tell what you are arguing about? We are laying out an approach to software development, refactoring, and a model for how to view old code that you some acroas that seems bad. You seem to be stuck on the term "good enough" and arguing semantics that don't make sense. Yes, sometimes there are standards. that you need to meet. Sometimes just meeting the offical standard is not "good enough", and you need to do m…

My point in a nutshell: Good enough is usually an excuse for vague and ill-defined practice. If you don't have a well-defined "good enough" you probably don't have a mature process. If you don't have a mature process, you probably shouldn't be writing critical code. Hence my original comment that it's not a good mindset for high-risk applications. Well defined "good enough" often looks like a standard. Those standard…

You have a highly specific definition of good enough that doesn't match my experience with it's usage. Every time I have discussed whether something is "good enough", the discussion centers on what the relevant risks, needs and priorities are. Indeed, adherence to relevant standards should be part of the "is it good enough" discussion, but following standards alone doesn't absolve you as a devolper from assessing the current contextual needs and risks.

Indeed, blind adherence to standards is bad as standards are not perfect and are designed to fit a general use case. You need your developers/engineers to think about the full context and asses whether their design will hold up under real life conditions and not just those that were prevalent when the standards were created.

Re: Who wrote this shit?

#287
post #286
post #282

Earlier quoted context omitted.

My point in a nutshell: Good enough is usually an excuse for vague and ill-defined practice. If you don't have a well-defined "good enough" you probably don't have a mature process. If you don't have a mature process, you probably shouldn't be writing critical code. Hence my original comment that it's not a good mindset for high-risk applications. Well defined "good enough" often looks like a standard. Those standard…

You have a highly specific definition of good enough that doesn't match my experience with it's usage. Every time I have discussed whether something is "good enough", the discussion centers on what the relevant risks, needs and priorities are. Indeed, adherence to relevant standards should be part of the "is it good enough" discussion, but following standards alone doesn't absolve you as a devolper from assessing the…

I think you might be subjectively reading too much into it to make a point that doesn't need to be made.

Look at the actual wording of the post I originally responded to:

>"But clunky, cobbled together, expermental or just plain stupid. But always just about 'good enough' to solve the issue at hand."

Can you imagine a discussion about relevant risks and priorities that uses that definition of "good enough"? I can't, especially with safety-critical code.

I'll give another example: The NTSB report of the uber autonomous driving accident gives a good breakdown of events. Through that report you can see the developers programmed a delay (they call it an "action suppression") due to nuisance braking etc. It's hard for me to imagine a code engineer programming a delay on a static delay time-sensitive safety critical system if they understood the risks (even if the mitigation was the human driver, they didn't seem to have a good understanding of human factors engineering). Yet someone along the way thought the software was "good enough" for production. It's speculation on my part, but I doubt you'd find a good FMEA or hazard analysis on that system. This is my big worry as SV mindsets get into safety critical systems: the general "move fast and break things - because it's 'good enough'" doesn't translate well to systems where lives are at stake. That is what I was responding to: the over generalization that clunky code (in the OPs words, not mine) is 'good enough"

Re: Who wrote this shit?

#288
post #4

My favourite is when you're a solopreneur working in your own repos and still asking yourself "who wrote this shit?!"

I am working on a fairly ambitious project. It is in the stages where we are nearing the end, and the tofu is getting firmer. I had an issue, last week, where a bug was caused by an omission I left from an SDK that I wrote, maybe, eight years ago. It was a simple thing. I didn't add a "RefCon" to a server interaction, so I couldn't attach a reference context to a callback. This is a classic pattern, that I've used fo…

Actually, it was about fiver or six years ago. It was an early Swift project.

https://github.com/bmlt-enabled/BMLTiOSLib

Re: Who wrote this shit?

#290

Earlier quoted context omitted.

Well now I want to know what is!

>Well now I want to know what is! Let's submit ideas! I'll start He wanted to learn about using Machine Learning to predict how often his pet dog would need to go to the bathroom

My cat goes to the bathroom with me all the time. He doesn't poop with me too, but he often follows me in, and we just hang out together.
Post reply on HN