HN user

ARandumGuy

1,728 karma
Posts0
Comments302
View on HN
No posts found.

12 Fs across 34 students is not statistically significant. Comparing the spring 2022 vs spring 2026 rates only works if the composition of the groups is similar (e.g. same % of students that previously failed the course), which seems dubious given the dramatically different sample sizes.

That doesn't mean there isn't a problem worth investigating. If I was a dean I'd certainly have some questions if I found out that 35% of students failed a class. But without knowing the specifics it's irresponsible to draw any conclusions about these 34 students with the limited data we have available.

The main reason lithium batteries are used in cars and electronics is because they offer some of the best energy storage per kilogram. That's really important for something meant to be portable, but it's completely irrelevant for a large permanent installation.

_However_, for the use cases that most developers or agents are looking for

What use cases are those? How did you determine that these are the use cases most developers/agents are looking for?

For me, git has a ton of features that I rarely use. But when I need them, I really need them. Any replacement that doesn't cover these edge cases is fundamentally incomplete and insufficient, even if it works fine 99% of the time.

Sure, if you have a complete test suite for a library or CLI tool

And this is a huge "if". Having 100% test coverage does not mean you've accounted for every possible edge or corner case. Additionally, there's no guarantee that every bugfix implemented adequate test coverage to ensure the bug doesn't get reintroduced. Finally, there are plenty of poorly written tests out there that increase the test coverage without actually testing anything.

This is why any sort of big rewrite carries some level of risk. Tests certainly help mitigate this risk, but you can never be 100% sure that your big rewrite didn't introduce new problems. This is why code reviews are important, especially if the code was AI generated.

JSDoc is TypeScript 7 months ago

Yeah, sure, and with LLMs you can do this, and you can do that. But if we're talking about languages and their features, relying on IDE features feels slightly off-topic.

Refacoring tools (such as renaming properties) have been supported by IDEs for decades. And in Typescript specifically, the language is designed with these tools in mind, which are developed and distributed directly by the Typescript team. For all intents and purposes, IDE integration using the Typescript language server is a feature of Typescript.

And if somehow these tools don't work, the compiler will catch it immediately! This means I can refactor with confidence, knowing any type issues will be caught automatically.

It seems like you're vastly overestimating the time and effort it takes to change types in Typescript. In my experience it's something that takes basically no time and effort, and has never caused me any issues or headaches.

JSDoc is TypeScript 7 months ago

In your Typescript example, the solution would be to use your IDE to refactor hosts to hostnames, a process that takes like 2 seconds. You might have problems if the change exists at a service boundry, but in that case I'd just put the transformation at the service boundry, and keep everything the same internally.

Personally, I prefer to spend the extra time I get from dynamic languages to write proper unit tests that can actually ensure the absence of specific logic bugs, rather than further ossifying the architecture with static types while changes are still ongoing.

I'd argue static typing makes this much easier, because I know any input types (or output types from other components) will be enforced by the type system. So I don't need to bother writing tests for "what if this parameter isn't set" or "what if this function returns something unexpected". The type system handles all of that, which eliminated a lot of tedious boilerplate tests.

JSDoc is TypeScript 7 months ago

I don't find that dynamic typing reduces the number of places I need to update stuff. It just changes when the error occurs.

If I change the shape of some data (such as renaming object properties), I'll need to update all the code that used that data, regardless of the type system. Static typing just ensures that I catch those cases at compile time, not runtime.

IIRC Musk wanted to get an LBO, but wasn't able to find anyone willing to loan the money.

Keep in mind that a LBO is actually a good deal for the bank, because if the purchased company goes bankrupt, the bank can recoup their investment by liquidating the company.

However, that only works if there are assets to liquidate. This can include physical assets, valuable IPs, or favorable lease agreements. In other words, anything that someone else would want to purchase.

Twitter, being a website, doesn't have a whole lot of assets they could sell. Which meant that other collateral was required for Musk to secure financing.

The fact that there isn't a rail line from the airport to the strip is wild. It would simplify travel for tourists dramatically, and get a lot of hotel shuttles and taxis off the street. There's a reason why even cities with bad public transit usually have a line to the airport, and it's wild that Las Vegas doesn't have one.

You're right, and I realize my post implied that multiplayer was a complete non-starter on Linux, which isn't true. Kernel-level anticheat is mostly found in big, mainstream releases (especially competitive shooters). Of course, these games happen to be very popular, which gives them an outsized impact.

Personally, I know that the upcoming Battlefield 6 is making me question if I want to switch to Linux once Windows 10 support dies. For a lot of people, being able to play 99% of games on Linux doesn't matter if they can't play one specific game they enjoy. It's a situation that just sucks all around, and I don't see it getting fixed anytime soon.

The main hurdle for Linux gaming right now is kernel-level anticheat. Kernel-level anticheat is increasingly common in multiplayer games, and it does not play well with Linux. This makes it difficult to play new multiplayer games on Linux.

Of course it's easy to argue that kernel-level anticheat gives way too much system access for a simple video game. But it's currently the most effective form of anticheat, and I don't see it going away anytime soon.

But also that's been part of Wikipedia's website for years now, no special browser support necessary. And because it's tailored specifically to Wikipedia, it works great!

Page preview seems nice in theory, but I'm unconvinced it'll be that useful. Web pages just don't have a the level of standardization necessary to automatically grab a useful preview. And I don't think Firefox has a big enough pull to make that sort of standard.

But at that point wouldn't it be easier to just search the web yourself? Obviously that has its pitfalls too, but I don't see how adding an LLM middleman adds any benefit.

I've got to ask, do you play much chess? Because this post reads like you don't understand much about chess.

The issue with "solving" chess isn't that there isn't an objectively best move in every position. The issue is that calculating that move is functionally impossible for most positions. That's because chess gets exponentially more complicated the more pieces there are on the board. For example, there are around 26 million positions with 5 or fewer pieces, and over 3.7 billion positions with 6 or fewer pieces.

And most of those positions are distinct. This isn't like a Rubik's cube, where there are a lot of functionally identical positions. Any experienced chess player can tell you that a single piece placement can be the difference between a winning position, and a losing position.

And this complexity is what I love about chess! I love the fact that I can enter positions that no one has ever encountered before just by playing some chess online. I love the fact that deep analysis is possible, but that the sheer size of the possibility space means we can never truly solve chess. Chess strikes a perfect balance of complexity. Any simpler, and evaluating the best move would be too easy. Any more complicated, and evaluation becomes so difficult that it's hardly worth trying.

Which isn't to say that we can't build computers that are very good at chess. A person hasn't beaten a top computer in decades. Magnus Carlson is probably the greatest chess player to have ever lived, and you can run software on your phone that could easily beat him. But there's a wide gulf between "can beat every human alive" and "plays objectively perfect chess."

Any consumer facing AI project has to contend with the fact that GenAI is predominantly associated with "slop." If you're not actively using an AI tool, most of your experience with GenAI is seeing social media or Youtube flooded with low quality AI content, or having to deal with useless AI customer support. This gives the impression that AI is just cheap garbage, and something that should be actively avoided.

But that's just more cherry-picking. You can always find some past success to push whatever point you're trying to make. But just because shopping carts were a huge hit doesn't mean that whatever you're trying to push will be.

For example, it would be wrong for me to say that "hyperloop got a ton of hype and investments, and it failed. Therefore LLMs, which are also getting a ton of hype and investments, will also fail." Hyperloop and LLMs are fundamentally different technologies, and the failure of hyperloop is a poor indicator of whether LLMs will ultimately succeed.

Which isn't to say we can't make comparisons to previous successes or failures. But those comparisons shouldn't be your main argument for the viability of a new technology.

People using the Nokia 3210 were very much not anticipating when their phones would get good, they were already a killer app. That they improved was icing on the cake.

It always bugs me whenever I hear someone defend some new tech (blockchain, LLMs, NFTs) by comparing it with phones or the internet or whatever. People did not need to be convinced to use cell phones or the internet. While there were absolutely some naysayers, the utility and usefulness of these technologies was very obvious by the time they became available to consumers.

But also, there's survivorship bias at play here. There are countless promising technologies that never saw widespread adoption. And any given new technology is far more likely to end up as a failure then it is to become "the next iPhone" or "the new internet."

In short, you should sell your technology based on what it can do right now, instead of what it might do in the future. If your tech doesn't provide utility right now, then it should be developed for longer before you start charging money for it. And while there's certainly some use for LLMs, a lot of the current use cases being pushed (google "AI overviews", shitty AI art, AIs writing out emails) aren't particularly useful.

The thing that any "voting against their best interests" critique misses is that most people are willing to vote "against their best interest" if they feel like it's the morally correct thing to do.

Like, I'm an adult who never intends to have children, but I still support robust public education. I could make some arguments about how paying taxes for schools is somehow in my best interest. But the reality is I support public education because I think it's the right thing to do, not because I think it will personally benefit me.

The thing is, conservatives and Republican voters don't lean that way because they're just too stupid to vote for Democrats. It's because they have a different moral framework. And that's something that can be hard to reconcile and address. Changing someone's political views requires changing their entire worldview, which is incredibly difficult.

That's because the regenerative braking is applied on the brake pedal, not by lifting up the accelerator. My '14 Prius has a dashboard option to show how much of the regenerative breaking capacity is being used, and it's very easy to stay well below that limit by just gradually slowing down. The friction brakes are only really used when you suddenly stop, which is something you want to avoid anyway.

This is something that's always baffled me about Teslas. I have a Prius, and regenerative breaking being tied to the break pedal is easy and intuitive. It also means I can easily lift my foot of the gas pedal to coast. IDK it just seems like a much better design to have one "stop" pedal and one "go" pedal, vs one "stop" pedal and one "go/stop" pedal.

The initial beta design had so many obvious issues that it's wild that it made it as far as it did. Hell, the readability of many UI elements was obviously terrible in the initial reveal, where you'd expect everything to be shown in the best possible light.

Obviously Apple can improve things for the final release (and it seems like they're taking some steps in that direction). But these issues should have been identified long before the beta was released, and the fact that they weren't does not inspire confidence.

Any cost/benefit analysis of whether to use AI has to factor in the fact that AI companies aren't even close to making a profit, and are primarily funded by investment money. At some point, either the cost to operate these AI models needs to go down, or the prices will go up. And from my perspective, the latter seems a lot more likely.

Tesla's stock price has always seemed completely irrational to me. Tesla's market cap is over double Toyota, BMW, Mercedes, VW, GM, and Ford combined. All while selling far fewer cars then any of those manufacturers.

For this market cap to make sense, Tesla would have to eventually become the dominant car manufacturer worldwide. And that just doesn't seem like a reasonable prediction, given that legacy car manufacturers are starting to figure out EVs, and newer EV-focused manufacturers are making huge strides.

I don't know when (or even if) Tesla's stock price will fall back down to Earth. The old saying is that the market can remain irrational longer then you can remain solvent. But I do know that Tesla's stock price is not a good indicator of how well they're doing as a car manufacturer.

In general, the people who like EVs hate Elon's politics, and the people who like Elon's politics hate EVs. This significantly reduces the amount of people who want to buy a Tesla.

This is the risk when you tie your brand to a single person, especially someone who loves being in the spotlight. Whenever that person does something controversial, that reflects poorly on the brand.