HNHacker News
TopNewBestAskShowJobs

zer0x4d

288 karma · joined September 30, 2022

submissionscomments
zer0x4d··on GitLab Outage
I run it on Digital Ocean but AWS should be fine too.
zer0x4d··on GitLab Outage
We self host ours too. 100% uptime ;)
zer0x4d··on Saving another 100TB of RAM
Incredibly happy to see this series of CF articles. I was always so proud of devs back in the days where RAM and processing were scarce and who had to get creative to fit even the most basic stuff in the budget. It seemed to me that after RAM and processing became abundant, most gave up on optimization and focused on shipping instead which meant now that even with several cores, a basic notepad or music player failed to work. In a way, RAM becoming more expensive has ushered in a new era of forced optimizations, which I'm really happy for
zer0x4d··on Where did all the public bathrooms go?
I've personally never paid for a yacht or someone else's wedding, I'm not sure what you're talking about...
zer0x4d··on Where did all the public bathrooms go?
I disagree. A lot of people do not care about public facilities. They do not believe in leaving things better than they found them. You've seen these people around, you know who they are. These are the same people that don't rerack weights at the gym or don't put the cart back at the supermarket. That attitude has nothing to do with income, housing, race, or activity they are interested in. It's simply a result of narcissism. The only way is stopping excuses and enforcing the public etiquette. The world will be much better off.
zer0x4d··on Scrap (2006)
Not lazy, smart -> Likely to become a millionaire

Not lazy, not smart -> Will probably make ends meet, but not a millionaire

Lazy, samrt -> Toss-up. Can either make it far or end up broke

Lazy, not smart -> Likely to be broke

zer0x4d··on Geolocating a random island using geometry and CUDA programming
It was cool, very fun 3 years of my life working as a part of that team :)
zer0x4d··on Geolocating a random island using geometry and CUDA programming
Super fun! Interestingly, this is how JPL was able to significantly reduce the Mars 2020 landing radius on Mars. Cameras onboard take pictures of the terrain and match that to maps to figure out where the lander is. https://www-robotics.jpl.nasa.gov/what-we-do/flight-projects...
zer0x4d··on Ask HN: Alternatives to GitHub
Thank you for building this, looks like it could be really helpful. We've been running our self-hosted GitLab with almost 99.99% uptime and a few runners but the configuration and update process has been a bit cumbersome. Will take a look at rocket runner.
zer0x4d··on GitHub Actions and Pages are experiencing degraded availability
I run a self-hosted Gitlab instance. 100% uptime with my own runners.
zer0x4d··on SwiftUI After 7 Years
The magic is when you use things like @State or @Published and system does bunch of things hidden behind the scenes that the developer has no idea about. Then, when issues arise, the developer is unable to debug because they have no idea how these things work and what they really do.
zer0x4d··on SwiftUI After 7 Years
There are lots of detail in the videos that are never mentioned in docs
zer0x4d··on SwiftUI After 7 Years
Yeah I don't really understand their insistence on these videos. I don't have the time to watch an incredibly hard to watch present babywalk me through the code, hoping I'd catch one modifier I missed that fixes the issue. Just write some docs for god's sake.
zer0x4d··on SwiftUI After 7 Years
SwiftUI was doomed from the beginning. Not only Apple completely blew the implementation, it was actually DoA by a bunch of super bad decisions that ultimately make it incredibly hard to work with and manage, especially on bigger apps.

1. It uses the builder pattern for views (familiar to those who used Java) but for some reason they decided to make it so that the order of the modifiers in the builder matters. Each modifier doesn't actually modify the main view but it modifies what the modifier before it decided to return. This makes no sense as the modifiers should each be modifying the main view to make everything predictable and easy to debug. I'm convinced no one (not even senior devs with 5 years of SwiftUI experience) understands how the ordering of modifiers works. It's just swap them until it does what you want it to.

2. The view lifecycles and code execution path seem random and hidden behind layers of "magic," making it incredibly difficult for developers to trace and debug issues.

3. It is practically impossible to set breakpoints for rendering and view construction, it's impossible to really figure out when re-renders happen and what drives them. I'm convinced SwiftUI apps are incredibly slow not because the SwiftUI implementation itself is slow, it's because, even Apple's own apps probably do a bunch of unnecessary re-renders and one no one seems to have any idea. This is unfortunately another design issue that can't be solved by just making SwiftUI more efficient. It requires simplification and tooling to help developers not footgun themselves.

4. Lots of issues start appearing later on in the development cycle because, for simple apps, bad SwiftUI design decisions and footguns have unnoticeable effects, until the apps gets more complex and things start breaking. Fixing these issues sometimes requires rewriting whole features or spending hours debugging.

5. There seems to be almost no documentation on Liquid Glass. It's laughable that after more than 1 year, Apple has simply refused to document or provide good examples for Liquid Glass, except for maybe couple pages that resemble the brain dump of an engineer that has never passed a writing class in college?

6. Stuff seems to be rapidly changing and breaking from version to version. It took days to make my app look and work the same in iOS 27 as it did on iOS 26, even though iOS 27 is supposed to be a minor bug fix release. We don't even use anything non-standard and don't do any hacks. This defeats the whole purpose of a simple UI framework that can be easily adopted to different platforms (this never used to happen with UIKit).

7. View debugger still has no SwiftUI equivalent. It used to make things so much simpler in UIKit when you could just see the view bounds, pick views apart and understand what's actually happening. SwiftUI has no equivalent other than `.background(.red)`. Terrible.

I don't know how Apple can salvage this beyond just undoing some of these terrible design decisions and making it 1. super simple to work with, 2. stop relying on magic, making things more explicit, and 3. providing actual 1:1 UIKit feature parity.

zer0x4d··on War prediction markets are a national-security threat
The author spends the first paragraph of the article talking about how n number of users bet x on a specific outcome and they won. They fail to account for the many others who bet on a different outcome and lost.

I watched polymarket like a hawk for weeks before the attack and am incredibly familiar with the numbers. Fact is, there were no indications on Polymarket that an attack was happening that morning. The chances of an attack was like 10 percent if I remember correctly.

zer0x4d··on Unifi Travel Router
UniFi website and marketing is just really really bad. They have amazing products but for some reason they don't really care about consumers and don't really know how to market to consumers. Just look at their website, it's impossible to find anything other than some super super specific networking stuff that you probably need a CCNP to even begin to understand
zer0x4d··on alpr.watch
Absolutely agree. Mistakes should be corrected immediately, protocol revised, and those responsible punished, if malicious acts are found. Otherwise, enforcement should be full stream ahead. Illegal immigration has hurt the US enormously and it's time that we enforce our laws.
zer0x4d··on alpr.watch
People love nothing more than selective application of law. In fact, to most people laws don't apple if:

1. they can get away with it, or 2. they don't agree with it.

zer0x4d··on Open-source Zig book
For me, personally, any new language needs to have a "why." If a new language can't convince me in 1-2 sentences why I need to learn it and how it's going to improve software development, as a whole, it's 99% bs and not worth my time.

DHH does a great job of clarifying this during his podcast with Lex Friedman. The "why" is immediately clear and one can decide for themselves if it's what they're looking for. I have not yet seen a "why" for Zig.

zer0x4d··on Apple's Software Quality Crisis
Techrot is real and it's there in almost every major big tech product. Google does definitely take the gold medal in this category though as I have never seen so many bugs in production software by a trillion dollar company as I have seen in Google's.

1. Maps crashes almost every ride on Car Play (this used to happen a lot back in 2023 and was fixed for majority of 2024. Seems like it regressed again)

2. Trying to expand reviews on Google Maps expands the wrong review (100% reproducible, not an edge case)

3. Firebase Auth has terrible reliability when it comes to SMS delivery and fail rate of like 5-10%.

4. Gmail keeps opening links with the wrong account (Click on Google meet link from an email in account number 2, as in .../u/2/... . Link opens with account 0 and now you gotta switch accounts again).

5. Gemini is famously unreliable and produces wrong results for seemingly simple queries.

And many more I can't recall on top of my head but surely exist.

zer0x4d··on Ask HN: Is anyone still using Dreamweaver?
An ode to Dreamweaver

Dreamweaver was how I learned MySQL back when I was 12-13 and got into web development. I don't remember how I came across it but somehow things, the way they were laid out at the time, made sense to me. This would ripple into a career that's making my living 16 years later.

I remember downloading XAMPP and installing it to get a local MySQL and PhpMyAdmin server. A few clicks in Dreamweaver later, I somehow had a connection file that would connect to my local MySQL server. I started playing around with it and creating different forms. The MySQL query generators on Dreamweaver were so simple that you could, with a few clicks, have a full on CRM.

I ended up coding a test score reporting system for my middle school class and the school somehow trusted me and started using it. This made me possibly the most hated person in the school because parents could now see their kids scores every day and there was no more "Oh the teacher hasn't given out the scores yet." But it was good times, and I was so excited about it.

Many years later, I now run a startup and have transitioned into using Node.js but MySQL is still my bread and butter. I still remember that day when I discovered the SELECT query.

zer0x4d··on Bybit loses $1.5B in hack
I can't believe someone posted that without knowing they actually used Gnosis Safe
zer0x4d··on Bybit loses $1.5B in hack
I'm not too sure but few things come to mind:

1. Upgrade protocol to include protections for well known cold wallets held by exchanges (ex: API call has to be made to the exchange's security endpoint to validate each transaction out of the wallet. Exchange staff would need to manually allowlist large transactions before they are transmitted).

2. Decentralized voting on reversal of transactions (90-95%+ vote needed to reverse to avoid 51% attacks)

zer0x4d··on Bybit loses $1.5B in hack
I'm a huge crypto believer but I can admit that we don't have a serious system if a person can just transfer over $1.5B from a well known crypto cold wallet to different accounts with nothing flagging it and no way to reverse it.
zer0x4d··on Google Pixel 4a's old firmware is gone, trapping users on buggy battery update
I can guarantee you every Pixel, Samsung, or Huawei phone had similar functionality built in but was never scrutinized.
zer0x4d··on Google Pixel 4a's old firmware is gone, trapping users on buggy battery update
Lol this was the most blown out of proportion "gate" ever and a nothing burger really. The issue wasn't what Apple did, as it is a very common practice in the industry and I bet almost every other manufacturer did it too. The issue was that they didn't notify the user.
zer0x4d··on Google Pixel 4a's old firmware is gone, trapping users on buggy battery update
Has there been a single Pixel with no boot loop, battery, reception, or otherwise some other major issue?

What is going on at the Pixel team??? They have probably single handedly cost Google millions of dollars

zer0x4d··on Why is Cloudflare Pages' bandwidth unlimited?
250M Requests

1.66M Unique visitors

24TB served

However, I do understand in their world, 24TB is chump change

zer0x4d··on Making an intersection unsafe for pedestrians to save seconds for drivers
1. Your 5 year old kid with her pink bike should not be on the street alone. This is just a matter of judgement, independent from other motorists. You should be behind her watching for cars. 2. If you want to ignore point 1, my argument still stands. The chances of a Dodge Ram 3500 ramming into her is far higher if she is on the sidewalk as opposed to on the street. A 5 year old doesn't understand traffic rules good enough to be riding on the side walk and watching for cars. Her best chances are to make herself as visible as possible (ie. by being on the road in a bright bike and protective gear).
zer0x4d··on Why is Cloudflare Pages' bandwidth unlimited?
I run a $3m/yr startup on a free tier Cloudflare account. To this day I have no idea why Cloudflare is not charging us for anything. I would have happily paid them for their service
Page 1 of 3Next →