• 232 Posts
Joined 2Y ago
Cake day: Jan 20, 2021


Iterative development is how software development was done initially. Then there was a misunderstanding and Waterfall was invented. The DOD spread the idea that you should be finished with the design before you start implementation. I think in practice barely anybody really did Waterfall because of common sense.

Maybe Agile can be understood as the correction (or over-correction in many cases). What the movement celebrates as huge innovation is mostly a regression toward the mean.

A different twist is to pick a fantastic universe and then make it „realistic“. See rational fiction.

This is hard because being realistic is often different than feeling realistic.

The question is how to turn it into a technical implementation.

We assume the situation is at least two people discussing and a moderator stepping in. Now the mod needs a button which makes the two write a shared conclusion. Lemmy could provide the means to write a “joint comment”, where both can edit and both need to sign it off. How to incentivize them though? The button probably needs to block the thread, post, or accounts until the joint comment is published.

The gold standard for me would be “adversarial collaboration” as described by Scott Alexander here and here. The first describes a conflict about psychic psi powers research. The amazing twist is that both sides wrote a paper together. The second article describes a similar collaboration about fact-checking. Essentially, this is “debate until they reach an agreement” with the additional requirement that they publish a joint statement afterwards.

So, if you are in an intense discussion with somebody, the best you can do is to write a blog post together. It requires both of you to present the evidence in a neutral way and derive conclusions such that you both agree with the reasoning. The process will make you work out where exactly you disagree (the quality of the sources? different values? missing knowledge?).

Is that realistic though? Such a collaboration is much more effort than a reply to a comment which triggers me. It is the best way to make progress in the overall debate.

Is that the goal here though? We don’t care so much about the result or progress of a debate but only to keep it civilized so everybody feels welcome to continue. An “unproductive” discussion is ok as long as all participants are nice to each other.

I’m thinking in incentives a lot.

  • Apple wins if I buy more Apple stuff, so they are incentivized to pull me into their ecosystem. This means they will neglect integration with non-Apple services.
  • Google wins if I click on more ads, so they are incentivized to show me more desirable ads. Getting private data is crucial for this.

If you are willing to go through the hassle of flashing your own OS, then buying Android hardware is the way. However, if you just want to buy something that works out of the box as much as possible, then Apple wins the privacy aspect in my opinion.

I just bought a used iPhone SE 2020 for 300€. The screen of my old Pixel 2 broke and its support ran out recently. Still a great phone otherwise. As a long-term Android user I miss a few things like SyncThing on iOS. However, with a strong focus on privacy, I’d say iOS wins over Android.

Pretzels are our default snack on the go. We just grab a few at the bakery and off we go. Mostly a southern Germany thing though.

For warm meals, we have Maultaschen. Simmer in broth for a few minutes and it’s ready. In other parts of the world, there are variations of stuffed pasta.

Comparable and bigger projects do use other languages: Hacker News (Arc/Lisp), Lobste.rs (Ruby), Reddit (first Lisp, then Python).

I’m not sure if we really disagree. If I were to start something like Lemmy, Python would give me a quicker start because I have some Django experience. On the other hand, your argument to use a strictly typed language is a good argument as well. Since Lemmy is growing nicely, you certainly did not make a wrong choice. Way to go!

I have used D. It certainly isn’t perfect and has some historic baggage even though it is not mainstream.

As a language, I’d say it is strictly better than C/C++ but of course the ecosystem is not as big and mature. D spoiled me and I miss many features whenever I use C++ at work. You could describe D as C++30 without the baggage.

Rust is for serious systems programming. In other domains, the rigor imposed by its type system is not necessary and something like Python is fine. The strength of D is that it can cover it all. You can write D in an easy going way and then it looks like Python in terms of lines-of-code and boilerplate. You can also make D code more strict with annotations (maybe even to Rust borrow checker strictness in the future). Best of all, you can transition from easy to strict and also do that only partially for critical parts of the codebase.

Overall a great language but it seems not that much better than alternatives that it gets the big adoption it deserves.

If you want a quick and effective start, T-Nation is not a good place to look. However, if you want to see all the conflicts to get an impression about the range of opinions it is fine.

The title is the summary.

There is no surprising data or anything in the article. It is a nice discussion starter though.

My guess is that Fortran does not need header files unlike C/C++.

The difference between C and C++ is interesting here. C++ enables you to build abstractions to lower error risk (bounded integers, range checked containers, …) but C++ is also much more complex and that increases error risk.

Rust is used in safety-critical software? Citation please.

AstraZeneca seems to make a very rare illness (thrombocytopenia) less rare. As it affects mostly younger women, giving those another vaccine instead is an appropriate measure to me.

I’m currently reading Large-Scale C++ Software Design by John S. Lakos, 1996. It is superficially outdated. For example, it doesn’t use UML notation but invents its own for no good reason.

Its big selling point is that it covers “physical design”, which is about files, folders, and dependencies between them. I rarely see that it other books but it is important.

You can find some videos from John Lakos at CppCon where he summarizes the key points.

As a german citizen, this reads like it’s from a parallel universe. There are countries who do worse than Germany, but calling us a “success story” feels unreal.