HNHacker News
TopNewBestAskShowJobs

ragnot

492 karma · joined October 10, 2020

submissionscomments
ragnot··on DARPA Moves Forward on X-65: Plane with no moving control surfaces
"It's reading a quadruple failure - that can't happen! It's, it's got to be instrumentation."
ragnot··on You Don't Need More Resilience. You Need Friends. and Money
I think people are downvoting you because of the way you delivered the message rather than the content of the message.

As I've gotten older, I've realized it is actually more healthy to view professional contacts in this manner (but not necessarily family). It helps compartmentalize their behavior (which is intrinsically self-motivated) to just being "how the game is played".

ragnot··on US begins review that could eventually lead to PVC ban
So what are we going to use for Drain-Waste-Vent plumbing? Go back to cast iron with oakum and lead?
ragnot··on Tech management has bestowed glory upon me
Every time this happens to me I keep thinking of that "How many times do we have to teach you this lesson old man?" meme.
ragnot··on You are never taught how to build quality software
> - Who gets to define testability?

I do (just kidding!)...Testability is the ability to add testing at a later point. There is no hard definition of this, but if you can't test at least 75% of your public facing functions then I'd say you don't have testability. Remember testability means you can have a tigher feedback loop which means that you don't have to test in production or in the physical world. This means you get where you want to go faster.

> - I want to add a coffee maker to my crash test dummy; is the lack of room for the filter and water tank a sign of a bad design? Or not flexible enough for my feature?

I know you are joking, but imagine for a second that your business did in fact invent a brand new way to test crashes and that coffee makers were the key to breaking into that market. If the dummy can't accommodate that then...yes! It is a bad design, even if it was previously a good design.

> - (cue meme) "You guys have organizational structure?"

Remember: there always is an organizational structure, with or without a formal hierarchy. You want to match your software to the real one.

> - Who gets to claim the impedence mismatch? What are those consequences? Wait, where are the dependencies defined again outside of the software?

There are no "the company blew up" consequences with this type of failure mode. Instead you get a lot of "knock on" effects: high turnover, developer frustration, long time to complete basic features and high bug re-introduction rates. This is because software is inherently a human endeavor: you need to match how it is written to how requirements and features are communicated.

ragnot··on You are never taught how to build quality software
Appreciate the questions!

> why is testable software higher quality? Does it add value to the software? I'd venture that untestable software has the same value (if not more) than testable software (due to time-to-market). You can write software that is 'obviously correct' and "high quality" at the same time, without any tests.

Note I said testable software, not software with tests (there is a difference!)...I'd agree that software with tests (which is by definition testable software) has a huge developer cost to it that may not always be in the best interest of the company (like you said, time to market might be important). But in my experience, writing code in a way that can be tested later is only marginally more costly (time-wise) than writing code that isn't. A good example of this is writing modules that communicate with message passing and have state machines over direct function calls. The former has a slightly higher cost for dev time, but you can always retro-fit tests to it once you've achieved market penetration. You can't always do that with direct function calls.

> Why does software that can adapt to new features increase the quality? If that is the case, we must argue that WordPress is extremely high-quality software. Or SAP.

This is a good point that you bring up. I think what we are getting at ultimately is that quality and value are distinct entities. Software can have high value without being high quality. In my mind, being able to provide the business with new value-producing functionality without causing a spike in bug reports is my (admittedly vague) standard.

> How does architecture influence quality? If that is the case, then there isn't any need for different architectural styles since there should be "one true style" that has the best quality software.

Architecture has to match how the software teams communicate with each other. Like actually communicate, not how the org chart is made (see Conway's Law). So my point is then that if there are two separate teams, your code should communicate between two "modules" that have an interface between them. Just like real life. It would be silly to implement a micro service architecture here. That's why Amazon's SOA design works for them: it matches how teams are organized.

ragnot··on You are never taught how to build quality software
I'll take a stab. Quality software is software that is testable, able to adapt to new features and is architected to match the current organizational structure of the software team so that communication and dependencies don't have an impedance mismatch.
ragnot··on Email the President (Clinton Era)
It's funny, I had that exact feeling when I opened the page but I couldn't put into words. Thank you for that.
ragnot··on Nuclear Conversion for Starship
Might be a stupid question: would this result in radioactivity just flying through space as we try to propel spacecraft with it?
ragnot··on U.S. GDP grew at a 4.9% annual pace in the third quarter, better than expected
Great data...thank you
ragnot··on Billing Engines Don't Solve Pricing Problems
Guess they need a pricing engine.
ragnot··on Memory Order in C++ (2022)
From my understanding, SeqCst on x86 is free since the underlying CPU has a strong memory model anyway. Only on other platforms do you get the performance benefits.
ragnot··on Memory Order in C++ (2022)
This paper will help a lot: https://www.aristeia.com/Papers/DDJ_Jul_Aug_2004_revised.pdf

tl;dr: Remember that the "new" operator does two operations: allocates memory and fills in the memory with the data. Now, if you have two threads (A & B):

- A allocates memory and then gets pre-empted

- B will pass the null pointer check and attempt to use the non-filled in memory block

ragnot··on Memory Order in C++ (2022)
As someone who has done a lot of atomics programming: stick with sequential consistency unless you are using the variables in a very well known pattern (i.e. the double locking pattern, ring buffers, etc).

Additionally, atomic doesn't mean lock free. But if they are lock free [0] you can use atomics in shared memory across a process barrier which is a lot of fun. Another good resource on this is: https://preshing.com/20120612/an-introduction-to-lock-free-p...

[0] https://en.cppreference.com/w/cpp/atomic/atomic/is_lock_free

ragnot··on Show HN: A C++11 Hierarchical State Machine Library
Visual programming of state machines is always better. However, the biggest problem I've found isn't necessarily the state machine code generation, it's that the actions and guards often have custom code written within them that depend on other hand written code. Making sure that they can be tracked by the generating application is difficult.
ragnot··on A room-temperature superconductor? New developments
Someone call Tom Cruise, the entity is real!
ragnot··on Ask HN: Is the market bad, or am I having the worst luck job hunting?
It's a great attitude to have. Just be aware that if you ever want to become a manager or higher it will work against you. If you just stick to technical positions you'll be fine (until ageism rears its ugly head).
ragnot··on Ask HN: Is the market bad, or am I having the worst luck job hunting?
Bingo
ragnot··on FedNow Is Live
I'm glad the US is finally catching up the rest of the world...India already has the Unified Payments Interface (UPI) [0]. Additionally, I think fears of this turning into a CBDC are overblown. Banks already have to settle transactions between banks through reserve transfers via the Fed...this will just help automate that process so we can send money from bank account to bank account. Like a Zelle or Venmo, but government backed!

[0] https://en.wikipedia.org/wiki/Unified_Payments_Interface

ragnot··on Ask HN: Why Delaware and Not Dubai?
Could you explain what these backdoors are?
ragnot··on The military is using e-girls to recruit Gen Z into service
Genius except that if China lands in the US then nukes fly. No winners there.
ragnot··on What If Friendship, Not Marriage, Was at the Center of Life?
Honestly, if my wife said I wasn't the number one person in her life then I would find that pretty disrespectful. She is my number one after all.

It seems like we've failed a whole generation of adults with good examples of what a relationship should be like.

ragnot··on Kissinger's killing fields
Got any more reading for that?
ragnot··on Tech companies keep falling for the forever fallacy
A part of me thinks that many have failed to educate themselves about the realities of life. People are dicks (generally) and if they can step on you to better themselves they will. It's why capitalism works.
ragnot··on Leaked government document shows Spain wants to ban end-to-end encryption
The type of person you are replying to has most likely never lived in any sort of authoritarian regime. People like them play these games...almost like the equivalent of a child saying "I'm not touching you".

What happens in authoritarian regimes is that the law is used to justify the actions of the ruling body, not the other way around. So if you just so happen to blast random static and act suspicious, you'll be taken, beaten and either admit to a crime or a law will be made or amended to justify it. And then you'll admit to it.

The price of freedom is constant vigilance. You are correct in saying we could not endure a total strong encryption ban.

ragnot··on Fuck being productive
This is fantastic advice. Another way to think of it: "The days are long but the decades are short"
ragnot··on IRS files $44B claims against bankrupt FTX
Uncle Sam is the ultimate repo man.
ragnot··on IRS files $44B claims against bankrupt FTX
Software engineers have been re-inventing concepts again and again since the 1970's. It isn't that much of a stretch to believe that they would do the same thing to finance.
ragnot··on Jamie Dimon warns panic will overtake markets as U.S. approaches debt default
Where would you even go if the US defaulted? It's such an armageddon level event that I don't know how you even begin to hedge it.
ragnot··on The four times the United States government defaulted on its debt (2021)
Japan doesn't. It is essentially a US vassal state when it comes to international disputes.

For China: Where would they put that money? They can't keep it in the Yuan because it strengthens their currency which destroys their export economy. So they have to buy other currencies to reduce demand for their currency while strengthening others. Which currency can they go to? The answer: USD. It's the only one that can support their scale.

Sure can they make up another currency? I think they've been trying to do a BRICs currency for a while now. However, you can be sure if that gains traction that the US will start doing something about it, either covertly or kinetically. It is that much of an existential threat to the US.

← PreviousPage 2 of 5Next →