HackerLangs
TopNewTrendsCommentsPastAskShowJobs

danudey

9,541 karmajoined 17 yıl önce
You can find me as <my HN username> on twitter, skype, instagram, @me.com, and so on.

Submissions

Show HN: A user daemon to provide an age-bracketing API

github.com
2 points·by danudey·4 ay önce·0 comments

comments

danudey
·dün·discuss
Is it a competition? I wonder if the Zig people feel as though it is, because I doubt the Rust people do.

Rust's big tentpole is "no memory management bugs, everything must be provably safe", whereas Zig is very proud of "no memory management, you have full control but you have to exercise it". I don't feel as though these are competing for the same audience or mindshare.

I've used Zig a big (while trying to contribute to ghostty, at least), and it's an interesting language that I like the aesthetics of but I don't want to use. I use Rust for things because it's so specific about what it wants from you and won't let you go off-script, and frankly I find that very beneficial for myself as someone coming from Python, Javascript, PHP, etc. where you just let things fall out of scope and it's not your problem anymore (usually).
danudey
·dün·discuss
Saying 15 years of content updates feels disingenuous when most of those years, at least lately, feel like minimal updates from a company that's out of ideas and doesn't want to change anything that might have a chance at annoying some people.

It seems like every year is "a new mob and a new biome", which is... not much. If you sign into Minecraft from five years ago I doubt you would notice many changes at all.

To be fair, Minecraft is a huge thing to be a steward of, and they're doing dual-development across Bedrock and Java, but... it's obvious that this isn't what they want to be doing and I think at some point they just need to make a decision what they want to be, let everyone know, and start making it work.

Also, with regard to Mojang account - I tried to get mine converted. I followed the steps, they didn't work. I opened a ticket, no one responded. I worked on it for six months and couldn't get any reply from them until it was too late. Now I've lost that account, not because I didn't care but because they didn't seem to.
danudey
·dün·discuss
I lost my original minecraft account because I wasn't able to get in contact with them. I had the original purchase information as required, but it wouldn't accept it. I contacted the e-mail address they said to get in touch with but heard nothing. No matter what I did nothing happened and now my old account is gone forever.
danudey
·evvelsi gün·discuss
I don't necessarily disagree, but two other points to consider:

1. Every test that is written is another use case that wasn't tested before. 100% test coverage is often impractical, but the more tests you have the more of the code you can be confident about.

2. Every test you add is another regression that can't happen in the future; if you test the index rebuilding code and validate the output then you know that you aren't going to make a change that breaks the index rebuilding code. If you have a legitimate change you update the tests, but if you're not expecting the change then you know there's a bug somewhere.
danudey
·evvelsi gün·discuss
sqlite is the pathological case though; it has ~590 times more SLOC in the test suite than in the actual sqlite project.

https://sqlite.org/testing.html
danudey
·3 gün önce·discuss
It's not unique to postgres, as others have said; the same thing can happen with e.g. MySQL poolers/proxies/etc., since the behavior of the connection can be changed dynamically and it persists for the lifetime of the connection.

Example: legacy client A connects to MySQL via the bouncer and says 'I want all of our conversations to use latin-1, not utf-8'. This changes the character set that MySQL parses queries with and returns responses in. The legacy client does some queries and then disconnects.

Now a new client connects to MySQL, and the bouncer just assigns it to the still-open connection from before. The new client is fully UTF-8 compatible and since this is the default for our database it doesn't explicitly say so; it just assumes that UTF-8 is the way to go. Unfortunately, the database server is still thinking in latin-1, meaning that if this new client sends UTF-8 data it will be parsed as latin-1; latin-1 is a subset of UTF-8, meaning that queries will actually work fine unless they need to use a character outside of latin-1, in which case they will get an error, or corrupted data, from the server.

The only solutions around this are:

1. Ensure that every client is using the same settings; if your database is for a single app that uses the same ORM, then this is automatic.

2. Ensure that every client is always explicit about everything it might need to change e4very time, so that every UTF-8 client explicitly sets UTF-8 connections even when that's the default; clients that need utf8mb4 ask for it explicitly and clients that can't handle it ask for something else. One way of ensuring this happens is to configure the server (or the bouncer) to use defaults which are not valid for anyone, or which are going to cause errors frequently and not rarely (e.g. setting the default character set to 7-bit swedish, which would cause frequent errors).

3. Use a bouncer which can either disallow these changes or detect and revert them after the original client has disconnected. I'm not sure if this exists for MySQL at least.

4. Use separate bouncers for each application that might be different (extension of #1); in other words, instead of having a bouncer or set of bouncers for each pool of database servers, you have them for each application; your web app gets one, your legacy reporting tool gets one, your ODBC connector gets one, and so on.

It's kind of a huge mess in theory; in practice, a lot of installations fall into the #1 case so it never matters, but that makes the occasional instance where it does matter extremely difficult to debug.
danudey
·7 gün önce·discuss
For people who use car share services, this is a godsend. It feels like every other trip we take is in a new vehicle we've never used before, but all we have to do is plug the phone in (which we would do to charge anyway) and when we bring up maps to check the route to my in-laws' place it already has the address saved, my playlists available, etc.
danudey
·7 gün önce·discuss
I remember reading somewhere that the boxes are not sized to the items they contain, but to a combination of 'items they contain' and 'space we need the box to take up on the truck'; i.e. if you have five items of one unit size in a six-unit-wide truck they will slide around (and potentially get damaged, fall over, etc), but if you put one of those items in a two-unit-size box then the boxes will not slide around, meaning that while the box is inefficiently sized in isolation it is optimally sized in a logistical context.

I'm not sure how true this is, nor how reasonable it sounds since I don't know what the inside of an Amazon delivery truck looks like, but it sounds like the sort of thing that could be true in some circumstances.
danudey
·7 gün önce·discuss
The reason everyone hates them is that they've been committing genocide for decades and have refused any sort of peace process. All the countries around them have offered to guarantee Israel's security in exchange for just letting the Palestians live their lives free of oppression but Israel is not willing to give up its land grab because the narrative that 'everyone is trying to destroy us' is what keeps the right wing in power and allows the population to look the other way.

Even the US was concerned recently that Israel was planning not just to sabotage the peace talks with Iran but to assassinate the Iranian representatives:

https://www.israelnationalnews.com/news/429561

The only reason Israel has its back to the wall is that its 'never again' attitude has extended to any concept of solving problems that doesn't involve military force, and since they've had the backing of the US that means they've been able to get away with anything they wanted so far. It's the asshole little brother whose big brother will beat you up if he ever runs the risk of facing the consequences of his actions.

If Israel had any desire to live in peace with their neighbors then maybe they would, but either they don't want peace except through victory, they don't want peace if it means giving up the ability to continue their ethnic cleansing of Palestine to build more settlements, or they want peace but they don't believe that anyone else wants it (despite everyone else trying to work towards it except them).

If they hadn't been so focused on aggression, genocide, and apartheid for the past 70 years maybe this all could have been solved, but the narrative that they're the only bastion of democracy and freedom in West Asia/North Africa and that's why everyone wants to destroy them doesn't hold up to the barest of scrutiny.
danudey
·7 gün önce·discuss
> Wouldn't it be fair to think of AI as just another search ability?

If you're asking it questions, yes. It's like search but with a simulation of understanding and information synthesis far faster than a human can perform it.

If you're having it write your code, no. It's like a junior developer who has no awareness of the bigger picture, of incompatibilities, of understanding that hasn't been contained and can't be derived from the codebase.

> If you can just search with GPT and tell the difference, wouldn't that be enough?

The situation the satire is describing is an individual who is unable to tell the difference. The way the scenario is laid out, everything she's 'accomplished' has been to prompt ChatGPT and publish its answers with some degree of editing; it's clear that she, as an individual, is not an expert, does not understand the thing she is presenting, and does not know any of what she has purported to know. This is also a sadly common refrain these days.

> I can't imagine memorizing thousands or tens of thousands of lines.

It's not about memorizing thousands of lines of text; it's about demonstrating to the panel that you have an understanding of the thing you're claiming to have an understanding of.

I work with a lot of software and infrastructure at work. I can tell you how it all (or most of it) works together and interacts. I could not reproduce the configurations of any of the software from memory, nor recite any of the code, but I have an understanding of the system, how it works, what it was designed for, and what choices were made and why.

The professor in this article does not have any of that understanding. It would be as if I had Claude deploy a cluster of X, Y, Z components, configure them, and get them online, and then put on my resume that I had done it. It was accomplished as result of me, but if I don't understand the system then there's no difference between me doing it and the CEO doing it, or my son, or someone from Taskrabbit.

So yeah, it's not about memorization, it's about understanding.
danudey
·7 gün önce·discuss
Put another way: if all that you're doing is prompting the AI and giving me the result then I have no use for you. If you're not contributing insight, understanding, experience, or creativity then it's far cheaper for me to prompt the AI myself.
danudey
·8 gün önce·discuss
I mean, one answer is that docker configuration on your local dev machine can go one of two ways:

1. You have to use `sudo` for every `docker ...` command; or

2. You add your user to the `docker` group and now anything that can run as your user can use docker to read or write any file on your system, making docker into the best local privilege escalation option out there.
danudey
·8 gün önce·discuss
Even security code. Fortinet, a vendor whose entire thing is security for your network, is consistently getting caught out with default passwords, backdoors, etc.

https://community.spiceworks.com/t/hard-coded-password-backd...

This sort of thing leads to every kind of exploit, like

https://www.linkedin.com/pulse/half-worlds-fortinet-firewall...
danudey
·9 gün önce·discuss
Most people that one would describe as evil do not see themselves as evil, but rather see what they're doing as justified. Saying you're not going to be evil means literally nothing.

Don't be the bad guy, ok, but if you think your goals are noble enough then crossing lines becomes acceptable. Google sold everyone on the "we're going to change the world for good and improve everyone's lives and make all information accessible and free" line, and in doing so justified everything else they did - privacy invasion, monopolistic behavior, etc.

The fact that they said "don't be evil" should have been a massive red flag for everyone, not a green one.
danudey
·16 gün önce·discuss
Would be nice to see logs from the CI runs building the images, to see the hashes of inputs and outputs. Useful, I guess unless the logs were tampered with also.
danudey
·17 gün önce·discuss
He released the product with Google branding making it look extremely like an official Google project, and then it went viral and blindsided everyone who would have been involved in creating or approving this kind of tool internally.

If I released a tool personally that I hadn't told anyone at work about and put my company's logos all over it and it went insanely viral then I would expect an extremely uncomfortable conversation with my manager, his manager, HR, and at least one lawyer.
danudey
·17 gün önce·discuss
It sounds like a big part of why he was let go is that he created a work-related product, possibly using his '20% time' meaning he created it while at work, and then released it with Google branding and logos, all of which without clearing it with anyone at the company, while his name is attached to the company.

In other words, he created an extremely official-looking product and released it in a way that made it look extremely official and blindsided everyone when suddenly there's a viral Google Workspace tool released by a Googler with Google branding that wasn't released by Google.

I'm not saying he should have been fired, necessarily, but he demonstrated _extremely_ poor judgement in doing this the way he did and put his manager and everyone else in an extremely awkward and uncomfortable position.
danudey
·22 gün önce·discuss
Ubuntu 26.04 has a bug in their pc-kernel snap causing it not to ship firmware for some devices (like my iwlwifi chipset), and because it mounts read-only directories into /var/lib/firmware/ you can't install the updated firmwares from apt either. Unless you're willing to do something like unpack the .deb file manually and extract the relevant firmwares from it, your wifi card won't work.

This isn't an issue with the hardware being too new or anything; it all works and the firmwares are all available, but Ubuntu's kernel snaps don't ship them and they make it much harder to get them yourself either.
danudey
·23 gün önce·discuss
I feel as though it would be a lot easier and cheaper to open up a new gmail account than to create a new Apple account, add a gift card, sign up for iCloud+, and then create private relay e-mails to use for signing up.

Is there something about gmail that makes it less suitable for the fraudulent use cases than iCloud+ private relay e-mails? I presume you're thinking of the 'create many anonymous e-mails' feature in that regard, which makes some degree of sense. I wonder if iCloud+ throttles e-mail creation.
danudey
·23 gün önce·discuss
Well:

1. They kept existing designs, since even Jobs wasn't so crazy as to demand a complete re-architecture of existing laptop models on a whim; plus they probably also had contractual obligations/pre-purchase arrangements

2. They switched to nvidia, but from everything I know they also hated working with nvidia (IIRC Jobs accused nvidia of stealing Pixar tech)

3. AMD is a different company than ATI (technically), and Apple of that era was different than the Steve Jobs temper tantrum era.

But yes, relevant details.