

My point is that the colors make so little sense that the only thing that makes sense is to decouple the colors from any meaning.
This table is so lacking and flawed that I don’t even know why there’s so much discussion around it.
My point is that the colors make so little sense that the only thing that makes sense is to decouple the colors from any meaning.
This table is so lacking and flawed that I don’t even know why there’s so much discussion around it.
I used to call Uber the “Prius fleet”. These days it’s more of the Tesla fleet though.
At least, in all the places I’ve used Uber anyway. I don’t use it very often though.
As far as I can tell, the table is purely informational and not advocating for any features as being positive or negative.
Otherwise, yeah the colors make no sense.
With Hawaiian culture around volcanos and other natural landmarks, this is very fitting. It also wouldn’t be the first time the US completely disregarded their wishes.
Seconding this. Flatpak would be a lot simpler and would make me a lot more comfortable (assuming I had the time to test at all).
On Windows, either a .msi, or just zip the build output and send that.
GitHub also supports releases, so create a release on GH, then put your build artifacts there for people to download. Even better if it’s done automatically through a workflow (not that I care as a user, but it makes your job easier when publishing releases),
If they fled, you couldn’t deport them to the countries you want to deport them to though. What would you do if someone from Mexico fled to Mexico instead of being shipped to El Salvador? It’d be a travesty.
I don’t think it can be done by a village of 300 people
These things take an order of magnitude more companies today to build. Not only could 300 people not build the board inside one of the machines used for manufacturing, but 300 companies of hundreds to thousands of employees couldn’t either. Each component is usually created by one company that specializes in that specific component and only that component because of how complex these things are to manufacture individually.
For that to work, you’d need villages to specialize in what they produce and export, but then this leads to a completely different kind of society than what you two are discussing here.
For tool configs? I’m not really sure I follow. All my source code for the project goes in src/
or some other subdirectory, and the project root is a bunch of configs, a source directory, maybe some scripts, etc. It’s never really bothered me.
What has bothered me is __pycache__
directories. Whoever decided to litter those in every source directory all over the place… let’s just say I hope they learned to never do that again. I deal with enough trying to get Python to work at all (with the absolute hell it is to get imports working correctly, the random, but admittedly mostly documented, BS gotchas littered all over the standard library, packages with poor docs, no types, and every function worth calling taking **kwargs
, etc). Seeing my code littered with these directories isn’t something I really want to deal with as well.
A standard for build output might make sense to me. Maybe just throw cache stuff in .cache
and build output to .build
(with intermediate artifacts in there as well potentially). For configs, I wouldn’t really complain about it all going in .config
, but it also doesn’t matter much to me, and sometimes you end up having nested configs anyway in nested project dirs (thinking of eslint configs, gitignores, etc).
the highest possible value for a product
How do you calculate this?
the amount of people who has the product - the amount of people who want the product
As demand increases, the value increases, but at some point when demand exceeds supply (which is common), the opposite happens: the magnitude of the value starts to decrease (though that value is now negative).
For example, two sellers sell a product, and four people want it. Let maximum value be v_m
. Value is calculated to be v_m / (2 - 4)
= -v_m / 2
. If two more people want it suddenly (so 6 now), it becomes v_m / (2 - 6)
= -v_m / 4
, which has a lower magnitude despite the higher demand and static supply. This is contrary to how supply and demand actually work, where value generally increases as demand increases (if supply remains static).
Maybe value means something differently to me than it does to you though. Ideally supply would always equal demand (which makes your denominator 0, breaking the equation entirely since that would be undefined), but that would be really difficult to control.
Not really, no. Assuming that all currencies are going down the toilet and your software is supposed to sidestep it in some manner, then all you’re really introducing is basically an exchange for a new system of currencies. You end up in the same place in the theoretical future where barter is the main method of trading.
On the other hand, if you’re doing this just for fun, then there’s nothing wrong with that, and introducing it that way might get you a better reception. But this is not the future of trade, just a niche tool that some might find useful, which is perfectly fine.
This would still be true in a barter system.
You give your bank 2 chickens. Your account now has 2 chickens. To save people the effort of transporting chickens, you give someone an IOU (bank note) equivalent to 2 chickens, and they do the same for your gas or whatever. Now you have a system of currency and a method of exchanging each currency (chickens, gas, cows, etc) for each other.
Software is created on this system of currency, and defines conversion rates between each currency. Software defines the value of products relative to each other now.
Depends on what you need to match. Regex is just another programming language. It’s more declarative than traditional languages though (it’s basically pattern matching).
Pattern matching is something I already do a lot of in my code, so regexes aren’t that much different.
Regardless, the syntax sucks. It takes some time to get familiar with it, but once you get past that, it’s really simple.
To me, it seems like this article is overemphasizing code duplication as problematic. If multiple types of searches use some of the same fields, it’s okay to just copy them to each search type that uses them. This also allows each search type to be independently updated later on to add additional fields or deprecate existing fields without affecting other search types.
Fields that should always exist together should probably be moved to a struct containing those fields, if there’s some concept that encapsulates them. Paging fields, for example, that exist only on two of three variants can just live in their own struct, and those two variants can have fields of that type.
Code duplication is only really problematic when all duplicates need to be updated together every time. That does not seem to be the case here.
.NET is more of a runtime and SDKs than a framework, despite the terrible naming of .NET Framework (which is now an obsolete runtime anyway, new naming is just .NET).
ASP.NET Core (which also is named after the now obsolete .NET Core runtime hilariously) would be closer to the other listed frameworks.
This is awesome! More options at 2230 is great for Steam Deck users, and even some laptops (my Framework 16 for example) have 2230 slots where a 2280 would be too long.
If you don’t leave a voicemail, I assume it wasn’t important.
I get asked sometimes when I don’t leave a voicemail why I didn’t. It’s because I don’t really care if you call back. I called because of something urgent, but not important. Just text me instead.
I too want all AI chatbots to be unhinged Nazis. That way we might be able to all move off this chatbot bullshit and back to communicating and working with humans.
The distribution is super important here too. Hashing any value to zero (or h(x) = 0
) is valid, but a terrible distribution. The challenge is getting real-world values hashed in a mostly uniform distribution to avoid collisions where possible.
Still, the contents of the article are useful even outside of hashing. It should just disclaim that the width of the output isn’t the only thing important in a hash function.
Had this happen before with pattern matching.
I usually use whatever the formatter does by default. Most are reasonable by default, and I might prefer things a different way personally, but I find that my job is easier when everyone else’s code is checked by CI to conform to the formatter’s style rather than being an unreadable mess of random newlines and weird mismatched indentation.
The guideline that I follow is that if a tool doesn’t enforce a rule before the code can be merged, then it’s not a rule. Everyone, myself included (if I’m being particularly pressured on a feature), will overlook it at some point, whether intentional or not.
For early returns, I think most reasonably configurable formatters support optional braces in those cases. This of course is assuming that’s a thing in your language, since many don’t have a concept of one-line unbraced returns (Python doesn’t use braces, Rust always expects them, etc). For consistency and just to have a rule, I usually just brace them because I know everyone will if it’s enforced rather than it varying person-to-person.