HNHacker News
TopNewBestAskShowJobs

mdasen

16,650 karma · joined April 3, 2008

"Just as most issues are seldom black or white, so are most good solutions seldom black or white. Beware of the solution that requires one side to be totally the loser and the other side to be totally the winner. The reason there are two sides to begin with usually is because neither side has all the facts. Therefore, when the wise mediator effects a compromise, he is not acting from political motivation. Rather, he is acting from a deep sense of respect for the whole truth."

~Stephen R. Schwambach

submissionscomments
mdasen··on Decoding Netflix's AV1 Streams
As someone who tried Roku, Android TV, and Fire TV before switching, better hardware offers a vastly better experience. The Apple TV's hardware is fast. The UI doesn't lag. Things feel smooth as butter. Yes, maybe the Apple TV doesn't need more, but more can be helpful.

In terms of AV1 support, YouTube often only does 4K with AV1 so that's an issue for people.

Personally, I'd love to see an Apple TV that was great for gaming. New Apple processors have hardware ray tracing and decent gaming performance.

I think it's also likely that Apple will try and make an Apple TV that will support next-gen Siri and on-device AI stuff. Yes, you can complain about Apple's AI delays, but Apple's probably looking toward an Apple TV that can support their AI models.

In some ways, "what benefit would a new <insert-thing> have?" Sometimes we don't know until we have it and people start using it.

mdasen··on Zed's Pricing Has Changed: LLM Usage Is Now Token-Based
I agree that tokens are a really hard metric for people. I think most people are used to getting something with a certain amount of capacity per time and dealing with that. If you get a server from AWS, you're getting a certain amount of capacity per time. You still might not know what it's going to cost you to do what you want - you might need more capacity to run your website than you think. But you understand the units that are being billed to you and it can't spiral out of control (assuming you aren't using autoscaling or something).

When you get Claude Code's $20 plan, you get "around 45 messages every 5 hours". I don't really know what that means. Does that mean I get 45 total conversations? Do minor followups count against a message just as much as a long initial prompt? Likewise, I don't know how many messages I'll use in a 5 hour period. However, I do understand when I start bumping up against limits. If I'm using it and start getting limited, I understand that pretty quickly - in the same way that I might understand a processor being slower and having to wait for things.

With tokens, I might blow through a month's worth of tokens in an afternoon. On one hand, it makes more sense to be flexible for users. If I don't use tokens for the first 10 days, they aren't lost. If I don't use Claude for the first 10 days, I don't get 2,160 message credits banked up. Likewise, if I know I'm going on vacation later, I can't use my Claude messages in advance. But it's just a lot easier for humans to understand bumping up against rate limits over a more finite period of time and get an intuition for what they need to budget for.

mdasen··on Cap'n Web: a new RPC system for browsers and web servers
This looks really nice. Are there plans to bring support to languages other than JS/TS?
mdasen··on Cap'n Web: a new RPC system for browsers and web servers
In C#, there's expression trees which handle things like this and it's how Entity Framework is able to convert the lambdas it's given into SQL. This means that you can pass around code that can be inspected or transformed instead of being executed. Take this EntityFramework snippet:

    db.People.Where(p => p.Name == "Joe")
`Where` takes an `Expression<Func<T, bool>> predicate`. It isn't taking the `Func` itself, but an `Expression` of it so that it can look at the code rather than execute it. It can see that it's trying to match the `Name` field to the value "Joe" and translate that into a SQL WHERE clause.

Since JS doesn't have this, they have to pass in a special placeholder value and try to record what the code is doing to that value.

mdasen··on I feel Apple has lost its alignment with me and other long-time customers
It's not just about emotion or loyalty. It's about built-up knowledge and the difficulty of switching.

When you're a long time user, you know how to do everything with what you're using - whether that's an operating system, a programming language, or something else.

The latest product isn't good and your suggestion is "don't buy it." OK, what do I do instead? Buy a Windows or Linux laptop where I have to re-learn a decade's worth of knowing-how-everything-works? Build up my natural flow in a new OS? Find whatever are the Windows alternatives for all the little things that I do on my Mac?

I'm not saying that companies owe things to their customers, but I think it's really simplistic to say that it's just an emotional investment and misplaced loyalty. People have a tool and then a company makes that tool worse. There are other tools, but it takes time to learn them, figure out their differences and how to get everything done with them, etc. Pretending that there's zero cost to switching is disingenuous.

For example: if you're a software engineer and someone made your main programming language bad, there's a high cost to switching to a new language. Even if you're excellent at learning new languages, you don't know which libraries are good, you don't know what various functions are named, you don't know what warts are in the build system (and how to avoid them), etc.

It's not just some emotional response or misplaced loyalty. It's that you've built up skills over many years that are tied to that thing.

mdasen··on macOS Tahoe is certified Unix 03 [pdf]
The UNIX specification is not the same as POSIX: https://en.wikipedia.org/wiki/Single_UNIX_Specification.

You might say "their exact view of what UNIX is isn't important and POSIX is," but POSIX is not the UNIX spec. You might think the Unix spec isn't important - and it really isn't today. Linux generally targets what is important and what users care about - and that isn't the UNIX spec. It is often the same as the UNIX spec, but not always and there are deviations.

mdasen··on macOS Tahoe is certified Unix 03 [pdf]
There are patches required. Many GNU utilities are very close to the UNIX spec, but not quite the UNIX spec - including glibc. But making a Linux distro that is UNIX certified would likely make it a worse Linux distro for most people since it would be less compatible with what everyone is assuming for a Linux distro. A lot of the differences are subtle edge cases, but do you really want that in your distro?

It's not just about going through a song-and-dance. It's about making an OS that has different behavior - often very tiny differences, but differences that would make the distro worse for most users.

mdasen··on macOS Tahoe is certified Unix 03 [pdf]
The Single UNIX Specification does specify the behavior of many command line tools like ed, grep, awk, etc. OpenBSD sometimes notes where their tools vary from the UNIX spec. It's usually very small ways that don't matter to most people, but it does put them outside of the UNIX spec.
mdasen··on macOS Tahoe is certified Unix 03 [pdf]
It's not just about paying for certification. You also have to replace a lot of things like ed, awk, grep, etc. with versions that are compatible with the UNIX specification. GNU utilities didn't target 100% UNIX compatibility and they have differences that mean that a command that works on UNIX might not work (or might not work the same) on a Linux distro using GNU utilities. glibc has slight differences from the spec too.

In order to get a Linux distro certified, you'd have to make changes which would make it less compatible with all the other Linux distros out there.

The reason why RedHat doesn't pay for UNIX certification is that their distros wouldn't be compliant. The reason why they don't make their distros compliant is that their customers would vastly prefer that RedHat use "standard Linux" tools than replace them with UNIX-compliant ones. Customers don't want a Linux distro that's subtly different/incompatible compared to what everyone expects in a Linux system. They'd rather it be not-UNIX.

Yes, you can modify a Linux distro to be UNIX. However, most Linux systems are not real UNIX - and you wouldn't want it to be real UNIX.

mdasen··on macOS Tahoe is certified Unix 03 [pdf]
I'd say that you care about it being UNIX-like, not UNIX®. You don't care that Linux isn't UNIX. You don't care that GNU versions of things like ed and awk are slightly off-spec.

In some ways, Apple's adherence to UNIX specifications probably makes macOS less useful for you. For example, I wish that grep on macOS was closer to GNU grep. When I look up commands online, I often find answers based on the GNU implementations. Those often work on macOS, but sometimes don't (or have subtly different behavior) because macOS is adhering to the UNIX specification rather than to what those utilities do on the vast majority of systems out there.

I don't think Apple would be removing UNIX-like tools from macOS even without certification. They know how valuable it is that most developers use their systems. Even Microsoft went so far as to implement the Windows Subsystem for Linux for developers. At this point, I think that UNIX certification makes macOS less compatible with the tools and help out there which generally targets Linux. Usually the differences are small, but they certainly can be meaningful.

mdasen··on macOS Tahoe is certified Unix 03 [pdf]
There isn't much downside, but it probably involves a small amount of money (paid for the certification) and it means spending time making sure that everything remains 100% within spec. There's lots of little edge cases where BSDs differ from the spec and it means that Apple needs to take care not to drift from the spec.
mdasen··on macOS Tahoe is certified Unix 03 [pdf]
That explains why they got it UNIX certified back then, but couldn't they stop advertising macOS as UNIX and stop getting it certified? They even changed the name from Mac OS X to macOS since then.
mdasen··on Delayed Security Patches for AOSP (Android Open Source Project)
Google sold Android to nerds as open source. We thought that mobile operating systems would be won by the "Linux of mobile OSs."

But Google has made sure that didn't happen and we're left with devices more locked down than the proprietary Windows ecosystem we were hoping to leave in the past - and with a company in charge looking to exert even more power over us than Microsoft did.

mdasen··on Are we decentralized yet?
> For a lot of stuff though ATProto is built in a way that you shouldn't have to host your own; you can implement your own algorithmic feed that reads from the Bluesky Relay's firehose, or your own frontend that still gets data from the Bluesky AppView.

ATProto isn't "built this way".

Twitter was also built in a way where you could implement your own stuff - and then Twitter took that away.

With Mastodon, there is one large instance (controlled by the non-profit Mastodon gGmbH). If they tried closing themselves off, their users would be losing access to the majority of people in the network. Plus, while non-profits aren't perfect, they don't have VC investors to answer to.

Bluesky could decide to stop publishing the firehose or restrict its APIs - just as Twitter did. Given that they control 99.55% of the network, they can close it off without worrying about their users losing access to anything. And Bluesky is a for-profit company that has raised around $30M in VC.

What you talk about isn't a feature of ATProto. It's a feature of being centralized and having a company willing to let you use their servers for free (at least for now). This was the case with Twitter for a long time. You could read the Twitter firehose and build your own apps and frontends getting data from the Twitter APIs - just as you can do from Bluesky today.

But unless there's a reason why shutting off the firehose/APIs would be bad for Bluesky, they can do that at anytime. It might anger some users (as Reddit and Twitter both did), but they control the network and network effects are powerful. For most Bluesky users, they'd continue using it because they aren't there for some open protocol. They're on Bluesky because Twitter became a nazi bar. Until we see real decentralization with ATProto, it's just a centralized network like Twitter or Reddit which hasn't shut off its firehose and public API yet. Hopefully that won't happen, but it certainly could.

mdasen··on The Lobster Programming Language
Yea, in the 90s significant whitespace seemed great because it meant that you got readable code. The amount of code that you might see copy/pasted with terrible formatting/indentation in other languages could make you want to scream.

Now, when you paste code and things are wrong, an auto formatter cleans it up for you. Before, you'd just end up with an unreadable codebase.

It's definitely an odd choice to make now.

mdasen··on Bell Laboratories Acquired by Berkshire Hathaway
As someone mentioned, this is a different Bell Laboratories, but even the AT&T spinoff isn't part of AT&T anymore. Bell Labs is now Nokia Bell Labs.

AT&T spun off their technology unit (Bell Labs and Western Electric) as Lucent Technologies way back in 1996. If you're old enough, you may have seen phones that said "Lucent Technologies, Bell Labs Innovations". Lucent was bought by the French company Alcatel to create Alcatel-Lucent in 2006. Alcatel-Lucent was bought by Nokia in 2016. So now we have Nokia Bell Labs. Since 1996, we've seen Bell Labs change hands once a decade so maybe next year we'll see a new owner of Bell Labs.

I kinda agree that it seems like a great trademark, but it just never went anywhere. AT&T flubbed its early lead in computing, Unix-like operating systems were pushed by others, and any association with the future that the Bell Labs trademark had just faded. Nostalgically, I love the trademark. But I wouldn't think that anything coming from Bell Labs was cutting edge tech that I wanted (as a consumer, sys admin, or software engineer; in the same way that Nokia makes some great wireless networking hardware, but they aren't making something that I want).

I'm not saying that AT&T and Bell Labs didn't have a huge impact on computing. Bell Labs gave us Unix and C. But it's been a long time since Bell Labs was associated with the next big thing in computing - or the next big thing that anyone wants if they're not coming from the standpoint of telecom infrastructure.

Sometimes companies that were incredibly important just fade away - and their trademarks with them. Motorola and Nokia were once synonymous with cutting edge mobile devices. Today, Nokia has exited the mobile device market and Motorola is a Lenovo brand and a tiny player. Yes, for some years HMD Global bought the rights to the Nokia name from Microsoft (who had the rights for 10 years), but that's now expired and the devices are now HMD branded. Bell Labs just kinda faded away despite us remembering it fondly alongside our Polaroid cameras and Nokia phones.

mdasen··on H-1B Visa Changes Approved by White House
I'm not the person who proposed the auction, but I read it as "let the companies compete for the H1-B visas in an auction," not about the workers buying their way into the US.

For example, if CheapoCorp is looking to replace reasonably well paid US workers with H1-B workers, they won't bid much for the visas. CheapoCorp isn't trying to get good talent from overseas. They're trying to save money, push down wages, have a workforce that they can mistreat (since they can't easily leave the company given their immigration status requires employment), etc.

By contrast, if a company is looking to hire great engineers or scientists from overseas because they're in a growing industry with a shortage of workers, they would be willing to pay a lot more to get the H1-B visas. They're not looking to save $20,000/year on someone's salary. They want top talent.

When companies are trying to replace their workforce with lower-paid foreign workers who can't complain (lest they lose their job and with it their immigration status), that's not what the H1-B system was designed for. It certainly is how some companies are using it. If you're on an H1-B and lose your job, you have 60 days to find a new job or you're gone. That's going to make you a much more compliant employee. You have little leverage to negotiate raises, you aren't likely to quit even if they're overworking you, they can pass you over for promotions and you'll quietly accept it.

But if the employer is competing in an auction for H1-B visas, they're more likely to be companies that are seeking out top talent rather than seeking out workers they can underpay and mistreat.

mdasen··on Claude Code is all you need
It might be that we have multiple features in our codebase and Gemini seems to struggle understanding that it needs to be aware of #[cfg(feature = "x")] and also that if it's trying to run things, it might need to specify the feature.

And yes, when they guess APIs, it's highly annoying.

mdasen··on Claude Code is all you need
I guess what seems surprising to me is that Gemini 2.5 Pro scores well above Claude Sonnet on Aider's leaderboard, even beating Claude Opus 4.

I have been kinda wondering if there's something that just isn't as good between the CLI and model because the Gemini CLI has been a mostly frustrating experience - and it's kept me from wanting to pay for Claude because I don't want to pay money for the same frustrating experience. But maybe I should try Claude and see.

https://aider.chat/docs/leaderboards/

mdasen··on Claude Code is all you need
Is Claude Code better than the Gemini CLI? I've been using the Gemini CLI with Gemini 2.5 Pro and haven't been impressed. Maybe these LLMs aren't as good with Rust codebases? I'm guessing there are a lot more people looking to use these tools with JS and Python.
mdasen··on In the long run, GPL code becomes irrelevant (2015)
I think that the SCO threat to Linux also came at a time when Linux was pretty immune from such a threat. If it's the early-90s and there's two options in their infancy and one had AT&T (one of the 5 largest companies) threatening it, you'll go with the other. In 1993, you're not using BSD or Linux and making a choice between them. The legal threat weighs heavy there.

When SCO sued IBM, people were already using Linux including one of the biggest and most trusted names in computing (at the time): IBM. Migrating away from something is a hard choice. Likewise, Linux had IBM's army of lawyers defending it (yes, BSD was defended by UC Berkeley, but the school could have easily folded over a project that wasn't part of the school's core mission). SCO also wasn't much of a threat - they were a dying company trying to win a case against the biggest names in the industry.

It's a lot easier to spread FUD against something no one is currently using that has a viable alternative. In 1993, Linux and BSD may have been equal, but AT&T's legal threat carried weight. People choosing one or the other weren't already using one. By 2003, 25% of the internet was powered by Linux. People were already using it and weren't going to be scared away by the claims of a dying corporation while powerful companies were defending Linux.

You say yourself that if something wasn't Linux compatible, it wasn't valuable and so everyone had to be chasing and reimplementing Linux compatibility. But if BSD had been established for a decade and Linux was chasing BSD compatibility in 2003 and then SCO sued BSD, BSD would still have maintained dominance.

When a company claimed ownership matters. Which company claimed ownership matters. "How big" the OS was when the challenge came matters.

Frankly, reset Linux adoption to 0. Have everyone use BSD for 2-4 years. Then reintroduce Linux. You won't end up with Linux dominance. You'll end up with BSD dominance. Linux had a multi-year head start. As you note, once you become the dominant target, everyone else is chasing you. If BSD had a multi-year head start, Linux would have been chasing BSD and the roles would be swapped.

mdasen··on I want an iPhone Mini-sized Android phone (2022)
The Zenfone 10 is closer to an iPhone than an iPhone mini.

iPhone 16/Zenfone/13 Mini (in mm)

Height: 147.6/146.5/131.5 - the mini is 15mm shorter than the Zenfone which is only 1.1mm shorter than an iPhone.

Width: 71.6/68.1/64.2 - the mini is 3.9mm thinner than the Zenfone which is 3.5mm thinner than an iPhone

Depth: 7.8/9.4/7.7 - the Zenfone is significantly thicker than the iPhones.

Volume: 82.4/93.8/65.0 cubic cm - the Zenfone is physically larger than an iPhone 16 by a decent margin.

The Zenfone simply isn't close to an iPhone mini size. It's larger than an iPhone by volume and the depth does matter when holding it. If we're talking about front-edge to opposite front-edge, we're talking about 87.2mm for the iPhone vs 86.9mm for the Zenfone and 79.6 for the Mini. The Zenfone saves you 0.3mm in grip-distance over an iPhone, but a Mini saves you 7.6mm in grip-distance.

Heck, let's look at weight. A Zenfone is 172g, iPhone 170g, iPhone mini 141g. The Zenfone is the heaviest of the three.

One of the big limiting factors for Android phone manufacturers is the battery. iOS is a ton more efficient. The Zenfone is thicker to accommodate a 4300mAh battery compared to the iPhone 16's 3561mAh (21% larger battery). And the Zenfone's battery is kinda small by Android standards.

People often don't think about the challenges of making a small phone. The electronics don't shrink. If you need a certain square mm for those electronics, they take up a larger percentage of the interior on your mini. You don't need as large a battery because the screen it is powering is smaller, but not proportional to its size - you're still drawing the same power for all the electronics. So you have a smaller percentage of interior space for the battery and you need a larger battery relative to the interior space - or you need to sacrifice battery life as Apple did with the mini.

For example, the iPhone 13 mini is 84.4 sq cm and has a 2438mAh battery. The iPhone 13 is 104.9 sq cm with a 3240mAh battery. The iPhone 13 is 24% larger, but can accommodate a 33% larger battery - because the electronics take up basically the same space regardless of form factor.

So to make an Android mini, you'd be sacrificing a lot of battery life. The Zenfone is not a mini. Its grip-size is basically identical to an iPhone. In every way, it's much more an iPhone than a mini.

mdasen··on Repaste Your MacBook
Same. One difference might be how much stress we put on the machine. I believe thermal paste does degrade faster with more heat and Christian says that he throws a lot at it: video editing, code compiling, CAD models.

It might make a difference how much usage is being put on the machine leading to degradation of the original thermal paste faster or slower.

mdasen··on Upgrading an M4 Pro Mac mini's storage for half the price
M as in Mac
mdasen··on Linda Yaccarino is leaving X
If she were trying to time it, this timing seems weird. This is literally the day after Grok kept posting anti-semitism, praising Hitler, and calling itself MechaHitler. This might not be the least graceful moment for an exit, but there were so many more graceful exit times.
mdasen··on The Hollow Men of Hims
The link on "adrafinil" has a utm_source=chatgpt.com
mdasen··on Apple introduces a universal design across platforms
You can turn off the current transparency (just search for transparency in settings)
mdasen··on O2 VoLTE: locating any customer with a phone call
> Disabling 4G Calling does not prevent these headers from being revealed, and if your device is ever unreachable these internal headers will still reveal the last cell you were connected to and how long ago this was.

So it seems like that won't do anything.

mdasen··on OpenAI reaches agreement to buy Windsurf for $3B
The article also doesn't say that it's $3B in cash that OpenAI is spending. They might be giving Windsurf $3B worth of OpenAI shares - paying an inflated value for Windsurf with their own inflated value.

OpenAI just had a fundraising round that put them at $300B. Maybe they're just giving Windsurf 1% of OpenAI. Maybe they're even giving less than 1% - if OpenAI was worth $300B at the end of March and $150B last October, maybe they're worth $400B now. Maybe Windsurf is getting 0.75% of OpenAI that's "valued" at $3B.

mdasen··on Backblaze: Mounting Losses, Lawsuits, Sham Accounting, Insider Selling
It might depend on who you are. I think Backblaze is well known on here because they've been around for longer and their hard drive stats posts are well liked.

If you're a less technical CTO, Wasabi seems to do a lot more traditional marketing on things like sports games: https://ibb.co/21qNkM9b (NBA, NHL, Premier League soccer). I'm not saying that makes them better, but a lot of people with purchasing power are going to be seeing Wasabi around.

Wasabi has also been pushing value-add services on top of their storage with Wasabi AiR (https://wasabi.com/cloud-object-storage/wasabi-air). It's basically an AI-powered database of your content. If you're running a place generating lots of content, having a system automatically tag and make searchable all those images and videos is a really nice value-add. Being able to search for a video clip containing a specific person in your library junk pile of video can be nicely useful for a lot of organizations.

It could just be that different people get their brand awareness from different places.

← PreviousPage 4 of 34Next →