skysight-inc/HackerNews huggingface dataset:
There's (at least) three causes of technical debt that aren't due to engineering negligence (but I agree in general that many sources of "technical debt" are self-inflicted):

1. Domain modeling shifts. Engineers get a sample of the business rules for the domain they're trying to model every time they build a feature, but it's an incomplete picture. And in fact sometimes the very nature of what the business is trying to accomplish changes. That can require fundamental shifts in how the problem is modeled.

2. Changes of scale. What was engineered to support 10,000 MAU will not necessarily tolerate 100M MAU. Scale can be insidious for tech debt because it's often a slower creep of a problem w/ a high cliff in the amount of effort required to solve for it.

3. Planning/communication failures. Sometimes a critical aspect of a feature is not fully understood or articulated. Or an important delivery date for a promise is overlooked. Depending on the nature of the company's business, an early stage company often doesn't have a choice but to deliver on things that weren't properly scheduled.
I somewhat agree, but every feature is not equal. And you usually start with the easy ones... So, even without any technical debt, it will probably go up, just less fast.
As someone who has been through many due diligence operations for either M&A or investment people lie out of their teeth when money is on the table.

A lot of really good talkers make it up the ranks and those are the ones you will speak to.

It takes a equally skilled but rarer archetype to navigate through the BS.

My point is: it’s a lot harder to find problems than you think. You find out the truth after close.
Maintenance also has a second aspect: Bitrot.

Because we get so much of our tools essentially for free now (languages, operating systems, browsers, mobile clients) we have to accept that we don't control the pace of their development and deprecation. So maintenance must permanently adjust to an existing, moving ecosystem.

The thing is, I have never met a manager that budgeted this fromt he get go. But I also never met a manager that did not understand the sentence: "We won't be able to ship/develop after day X because big OSS project Y deprecated our version" (think CentOS repository deletion).

It is our job to keep an eye on this and report it in the terms management understands: "We use Y for free so we have no leverage and Y stops working on day X, stopping all our activities."
At least in Europe (some?) Hulu content is on the Star section of Disney+, including Futurama.
CUPID – for joyful coding
It is essentially the same as financial debt, too much debt and you go bankrupt, but if you refuse to take some debt, you may lose opportunities.

The main difference is that technical debt is hard to quantify. Financial debt is obvious, you see the numbers, interest rates, etc... You see how much repaying your debts will save you money. Technical debt, you know it is there, but you can't easily put a number, you don't know exactly how much it will cost repaying it and how much "interest" it will save you when you address it.
Same situation for me. Hybrid means I need stay near office.

I commute to empty office daily
Thanks, I learned more! I had no idea.
even if you were to be "slow and careful" that doesn't garuntee you'll be on schedule, it could turn out later part of your architecture is not suitable for an area maybe due to requirements changing.

maybe you'll say, "requirements cant change!" on top of the earlier "deadlines should be reasonable!". IMHO that's fantasy, I've never worked on something where both these were true for 100% of a project
Agreed, and I also think measuring "rework" helps. For a car company, rework could be recalls or warranty claims. For a software company it can be outages or incidents, especially those with major customer impact.
The problem with me is many times I'm not aware that I'm introducing a debt while developing, only until it's reused or revisited that it's clear enough. Yes, even with code review process.

So even business users need to understand that there must be "maintenance phase" even for software, to pay tech debt, updating packages, patching / improving securities, etc.
I agree, it's definitely not improving.
> only differs by a factor of 4

how is a factor of 4 "only". It's absurdly high.
Left of the public? Maybe.
Left compared to other newsrooms? It's centre-right compared to most newsrooms.
Not sure I agree with the theme of this take. Technical debt can be significant and take months to address on a large codebase. This take also places a lot of blame on the devs who have to work on tech debt, where in reality, it's often another dev who wrote the original code(usually several years ago, and no longer at the company). Things are more complicated than "just deal with it and hide it under a rug".
KindaVim–Vim for the whole macOS–stable is out. free, or with sub. up to you
Seems fairly simple. Here's a step-by-step tutorial to solving Safari's issues, if some Apple developer finds their way here. You're free to use it, I don't even want any consultation fees.

1. Go to https://caniuse.com

2. Work through the list of features

3. Make red squares go green
Never in the history of software has that line done anything but gone up. Software naturally gets more complex as it grows to handle new features, new edge cases, more users, more backwards compatibility, etc.

This line going up is inevitable and natural. The slope needs to be managed obviously. But the only way this line stays flat is if your company is failing.
Monorepo Explained
I’m an immigrant in Ukraine. I love this country very much. Speak the language, understand the culture, etc.

After checking out your page, I’m absolutely appalled. I’ve forwarded this to a personal friend who works in the immigration department here.

Ukraine isn’t your playground to pimp women to men who aren’t successful with them in their own countries.

Btw you’ve probably seen me around Kyiv in bars/clubs/whatever. I’m the guy always wearing designer + an iced out rolex
> Sex is a multidimensional spectrum. "Sex" categories are, in fact, genders--social constructs.

Sex is not a multidimensional spectrum. There are two sexes: male and female, this is statistically observable as a binary. Deviations from this binary are not "third" or "fourth" sexes. It's not a social phenomenon.

The reason why people seem incapable of saying this today, is for political and legal aims (if you can't change legislation that refers to "sex", change what the word means), or a misguided attempt to be progressive.
Padlet (YC W13) is hiring senior Elixir engineers in San Francisco
Sure, but would you be happy with your buddy installing special limiting power plugs in your home which prevents you from ever powering any technical tool ? That's exactly what is happening here.
My solution was just stopping my keys from jingling and poking me while running, I put my keys in a rigid key holder/organizer thing like a Swiss knife for keys
Correct, Laravel + Octane is now recommended instead of Lumen.
Utilising the Software Development Toolchain for Hardware Design
I'm reminded of legal requirements regarding bourbon whiskey in the United States.

https://en.wikipedia.org/wiki/Bourbon_whiskey#Legal_requirem...
ah the famous "give us dev estimates, but yours are too long, lets go with shorter anyway" makes people afraid to estimate high
Yeah I can see why that is controversial.

The assumption seems to be that a single developer has agency and is aware of and solely responsible for everything that's going on in the codebase that they may or may not have written.

I've been in a situation where I joined a new company and the code base wasn't looking good but my job as a new hire wasn't to redesigh and rewrite the guts of it. My job was to implement new features, one after another, usually without enough specification to even begin to estimate how long it's going to take when everything they eventually turn out to want is accounted for. The project was already very late. I tried to spend time fixing the foundation and pointing out its problems (including complete lack of tests) but I was told to stop because the customer wasn't paying for that time. The problems I pointed out went ignored.. until they messed things up in production a couple years later.

I'm gonna say they chose rubbish against my advice, and they eventually got what they wanted. Rubbish on top of rubbish, with lots of bugs and slow development.
good question, arch build scripts require very miniminal dependencies, I wouldn't be surprised if it's very easy to install from a BSD

https://github.com/archlinux/arch-install-scripts
I'm never thrilled with these types of essays, but it may be my own personal stuff.

I feel as if we are constantly looking for ways to be "better than you," and I always interpret these types of statements as people reinforcing that the way they do things is better than others, and, by extension, they, as humans, are better than others.

In my experience, we usually have some kind of balance. There's things that each of us are good at, and things that we are not. Sometimes, the things we're good at, are valuable to others, and we can make money, or achieve status. For example, software development, top-shelf athleticism, or strategic management thinking. Other things, maybe not as valuable (monetarily or status-wise), such as being an excellent parent, a great teacher, or a true Servant pastor.

I'm a great geek, but a really, really bad athlete. I'm not an especially good dancer, and I have not exactly left a trail of broken-hearted beautiful women in my life. I am not a captain of industry, and I have not done a TED talk.

So, no, I'm probably not actually "better than" anyone else, even if I do fit the criteria for "first principles thinking."
Dependency confusion tops the PortSwigger annual web hacking list for 2021
Unfortunately it does not work in reality. There will be another guy who is ready to do "fast and dirty", and he will be give the responsibility and probably will lead the team in future.
Breaking a contract is not illegal. Seems to be a common misconception.
I believe it depends which control mode the plane is in, eg normal law vs direct law
"AFAB" is an appropriation from literature describing DSDs, where sex was to some extent "assigned" in the case of ambiguity.

Applying it to the population at large is absurd, but has become popular within some social circles.
It has to be moderated by comprehension. If a leader doesn't understand what interest rates are, they'll borrow money every time it's available. A startup needs to borrow enough to succeed, but not so much to be bankrupted by debt payments. Same for technical debt; enough to move fast, but not so much the software (or staff) collapses before revenue.
The issue is with non-technical people who see that the hacked together mess of a proof of concept "works" and insist that you can just build straight on top of that without any work to make it into an actual working codebase.
We redirect on login - the login link is available from either domain, and once you login the first time, we prompt to ask where you want to go in the future. Most people choose to be taken to the app, but some stick to the marketing site. And the link to your app is always in the main navigation once logged in.

It is fairly simple code, so I'm not sure this is a problem that needs a productized solution.
Ask HN: Are you concerned about 'harvest now, decrypt later' attacks?
The term refers to the sort of obvious, especially in hindsight, idea that public or leaked encrypted data that today is impractical to crack can be 'harvested', and decrypted whenever the harvester has quantum capabilities; even if the original data source is updated to use a quantum cryptography/a quantum-resistant algorithm in the meantime.

(Or I suppose it applies equally well to any contemporarily sufficient encryption, (I'm sure there's been post-war decryption of ciphertexts collected but not cracked during, for example) it needn't be about quantum specifically, but that's where we are and what the term seems to have been coined for.)
These conservation laws apply to open systems (which biological platforms are). All ready at the cell level the primary concern is how to "efficiently" do energy cascades which sometimes have unintended (irreversible) side-effects. So cells get "garbage collected", there are other more system level irreversible changes, some intended (memory) and unintended, which I guess are indeed ultimately unsalvageable, which is why reproduction is a thing (pristine copy of genome in new cell).
I like this because even though relatively niche, it's more substantial than merely turning the lights on and off when entering the house.
One side clearly wanted WWII. Not sure about the first one.
Currently enjoying 'powdertoy' after randomly coming across it in the software manager.

Seems to include both the process of computation and the output into one package some might call art. Here's a neat example.

https://www.youtube.com/watch?v=REMQJESm1C8

https://powdertoy.co.uk/Browse/View.html?ID=1761441
Ask HN: Why is cryptocurrency so hated here?
Could someone explain why CryptoCurrency is hated by most of the HN folks? I'm aware of the tech, and I must admit I'm not too excited regarding the financial implementations as they stand, but the distributed ledger system is pretty interesting, isn't it?

What's the hate all about?
People should stop wanting "characters from their strings" especially in the sort of high level software you'd attempt in Java - and Java was in a good position to do that the way we've successfully done it for similar things, by not providing the misleading API shape. Reserve char but don't implement it is what I'm saying, like goto.

Compare for example decryption, where we learned not to provide decrypt(someBytes) and checkIntegrity(someBytes) even though that's what People often want, it's a bad idea. Instead we provide decrypt(wholeBlock) and you can't call it until you've got a whole block we can do integrity checks on, it fails without releasing bogus plaintext if the block was tampered with. An entire class of stupid bugs becomes impossible.

Java should have provided APIs that work on Strings, and said if you think you care about the things Strings are made up of, either you need a suitable third party API (e.g. text rendering, spelling) or you want bytes because that's how Strings are encoded for transmission over the network or storage on disk. You don't want to treat the string as a series of "characters" because they aren't.

The idea that a String is just a vector of characters is wrong, that's not what it is at all. A very low level language like C, C++ or Rust can be excused for exposing something like that, because it's necessary to the low-level machinery, but almost nobody should be programming that layer.

Imagine if Java insisted on acting as though your Java references were numbers and that it could make sense to add them together. Sure in fact they are pointers, and the pointer is an integral type and so you could mechanically add them together, but that's nonsense, you would never write code that needs to do this in Java.

K&R C claimed that char isn't just for representing "ASCII" (which wasn't at that time set in stone as the encoding you'll be using) but for representing the characters on the system you're programming regardless of whether they're ASCII. 'A' wasn't defined as 65 but as whatever the code happens to be for A on your computer. Presumably the current ISO C doesn't make the same foolish claim.
I would like to add to your insight that different situations also benefit from different approaches; and sometimes different approaches to the same situations produce interesting results.
California agency sues Tesla for alleged racial discrimination and harassment
I thought SMS apps just split the text in 160 character chunks, and merge them on the receiving side. Isn't that how it works?
Especially considering Spain has some experience with literal dictatorship.
There are some companies that develop various kinds of animation tools. This is pretty niche, but this probably also means that there's also not a lot of people competing for jobs. If you can, get a job that is not on the front lines in VFX or game development. That way, you get some insulation from the crunch and pressure present in those studios.
Was there any country that MMS ever took off and was actually used in practice, beyond proof of concept?
Cloudflare Tunnel uses Wireguard under the hood.
I only saw that behavior in younger devs.

The average dev just does their job. Same as with the average person in every industry.

Sure, it's nice to do a cool feature, but most people don't work at interesting projects to start with, and they simply have to churn on. There isn't much difference between a new feature or maintenance in boring projects.
That's not what wikipedia thinks: https://en.wikipedia.org/wiki/Dragon_32/64
It existed before, and its diagnosis is increasing.
FWIW, if I'm not mistaken, the accident rate for general aviation (=not military, not commercial/scheduled airlines) is higher in EASA land than FAA land, one reason being that FAA regulation is fairly pragmatic and goal oriented.

If you read German, you can check out the magazine Pilot und Flugzeug, it reports frequently about rather insane regulation in Europe (for general aviation).

https://www.pilotundflugzeug.de
Or just use a Tor Onion Service.
Do you have sources for this? Especially the part about fudging the numbers? Anecdotally I believe this is true, but have not seen the admission.
Restartable Sequences in Glibc 2.35
Fyi and fwiw Texel[1] is one of the major Islands of the Netherlands and a big tourist draw.

[1]https://en.wikipedia.org/wiki/Texel
Rsync Explained
hype and no dominant use cases as of yet.
I was full time infosec from 1998 until 2015 then moved into an adjacent role that is still technically infosec but is more infrastructure/platform controls. This is the first time i recall ever seeing the term.

Based on reading the two sentence synopsis in Google results it’s largely indistinguishable from the more familiar “formal methods” or “formal verification”.
It doesn't even require management to be unreasonable/intransigent/whatever. It's perfectly rational to write a prototype feature in a quick and hacky way, and then invest time in making it clean and extensible after you've validated user demand.
True, it is there now, but it says the cover is fake. It actually was on the cover of at least the BG and CZ editions of Forbes.
Mine is a simulation game that I'm working on in the spirit of having a forever project[0].

I've been working on pieces of it on and off for years and as it stands it's very incomplete. More of a collection of systems and interesting mechanics that I've been trying to figure out how they fit together.

For some reason I always find it difficult to make games, I can build complex systems spanning multiple servers that interface with clients, but the second the "what do I build next" becomes less a problem to solve with existing constraints and more an artistic decision, that the two sides of my brain decide they aren't really able to agree >_<...

My creative side suddenly becomes the worst kind of client wanting all kinds of weird stuff that it thinks are cool and my dev side goes, great, but that's super vague, how does it work? What do I need to build?

"But this would be really cool!"

"Ok, but you're going to have to make some choices here so I can start implementing something, what do you want this or that?"

"Ahh, I don't want to pick and also now that you've said that, that makes me think of this other thing that would be interesting, can we fit that in there somehow?"

"How?"

"You are the one who knows how to build stuff, you figure it out!"

~Brain locks up~

Last June I decided to try and figure out how to make a game or bust, I didn't really care what, just that I made something, so I took part in the GMTK 2021, that went ok so I decided to try and take what I learned about focus, scoping and getting a small playable thing up and running asap and made a new project[2].

It's super rough, you've been warned =)...

The gameplay is still sort of non-existent, performance is pretty bad, there's still a lot of existing pieces from those old projects that I need to work out if I should add into it and code quality is kind of all over the place as I'm still really trying to work out how to build stuff like this and I know if I let my dev side have too much leeway it's going to take over and I'll probably no longer be able to figure out what my creative side wants to do.

It's a fiddly balance that I'm still trying to figure out.

I've intentionally not said anything about the game itself, you're welcome to ask me for details, but there are also bits of info littered about here and there[3].

- [0]: https://web.archive.org/web/20130124211012/http://www.dev.gd..., original HN discussion [1]

- [1]: https://news.ycombinator.com/item?id=5096009

- [2]: Itch: https://folcon.itch.io/fruit-economy, GH: https://github.com/Folcon/fruit-economy

- [3]: https://news.ycombinator.com/item?id=22791490
Sorry to answer this late, I saw your comment just now.

But I have to completely disagree with your view. The reason I recommend "The Prince" is, because Machiavelli confronts the reader with what actually happens in the real world and not what people think is morally acceptable.

This whole book is rational. It asks you what you want to achieve (or conquer) and gives you a guide on how to achieve it. Without any illusions of moral and what else human kind "invents" to prevent them from achieving certain goals (or prevent them from doing the necessary).

Machiavelli ignores, on purpose, what we call "good" and "bad". He focuses solely on what is purposeful in a given context, which is what I love so much about it.
And it's easier though if you have different skillset than feature development.

Essentially the features, flows and output are fixed and defined, so you don't need to think about that. Your skills at performance optimization, refactoring, unit testing and debugging really shines here.
I note that open source companies like Collabora go all-in on Plan B, self-hosted OSS, but owned hardware instead of rented. Not sure if RedHat is the same though.
Datadog FY2021 Earnings Result
I've heard of horses taking their blackout/drunken owners home before. CHECKMATE DRIVERLESS VEHICLES
I had to look up MMT as I hadn’t come across it before. Its Wikipedia article¹ introduces it as:

> Modern Monetary Theory or Modern Money Theory (MMT) is a heterodox macroeconomic theory that describes currency as a public monopoly and unemployment as evidence that a currency monopolist is overly restricting the supply of the financial assets needed to pay taxes and satisfy savings desires. MMT is opposed to the mainstream understanding of macroeconomic theory, and has been criticized by many mainstream economists.

> MMT says that governments create new money by using fiscal policy and that the primary risk once the economy reaches full employment is inflation, which can be addressed by gathering taxes to reduce the spending capacity of the private sector. MMT is debated with active dialogues about its theoretical integrity, the implications of the policy recommendations of its proponents, and the extent to which it is actually divergent from orthodox macroeconomics.

¹ https://en.wikipedia.org/wiki/Modern_Monetary_Theory
I don't know the history of bagel baking. Though it seems odd to me that bagel bakers would be allowed to keep bagel recipes away from bakeries they work at. My suspicion is that the group we're discussing did not act as a labor union at all, but rather as a trade association trying to control the bagel market on behalf of bakery owners.
They would probably make something like FitnessKit similar to HomeKit, so that your iPhone can adjust settings on your fitness device. Fitness device makers can then make apps to give you exercise programs and track your progress. It might already exist. I don't know.
We need your help in fighting the US EARN IT Act