HN2new | past | comments | ask | show | jobs | submit | TexanFeller's commentslogin

> They ALL suck including Google Search.

Kagi is the ONLY search engine I know that currently doesn’t suck and I highly recommend it to anyone who will listen. I would cancel almost any other subscription before Kagi.


> Since if Kagi does search as well as the Google of old, and I can adjust its searches to prioritise results from known good (to me) sites, then that probably is worth paying for

As I was saying in another thread Kagi is what Google would have been if they had kept improving instead of transitioning to enshitifying ~10yrs ago. If I had to pick I’d keep it over Netflix.


I’ve also been using Kagi for the past ~2 years. At first I would always also search Google to see if I was missing out on better results, but after a couple of months I no longer bothered because Kagi did better 99% of the time. It’s worth the cost, I’d keep it over Netflix if I had to choose.

TLDR Kagi is what Google would have been if they had kept improving instead of transitioning to enshitifying ~10yrs ago.


It only took me a couple of weeks to go from "I can't ever imagine paying for search" to "I will never use free search again". Kagi is the best bang for buck of any subscription I pay for.

App stores may reduce many of my freedoms, but they also provide me with some other freedoms by limiting the power of big tech companies over me, and the tradeoffs are different for my phone compared to a PC. For example Apple uses their big stick to ensure that apps can't simply refuse to work if you enable privacy setting that limit them. If Facebook refuses to work until you give it full access to your photos and exact location even when the app isn't running the realistic outcome will be that everyone will just give them what they want rather than not using the service. I remember years ago on Android that Google Maps would refuse to work if I didn't allow it to access my location when it wasn't running, and I never want to go back to that world.

> For example Apple uses their big stick to ensure that apps can't simply refuse to work if you enable privacy setting that limit them. If Facebook refuses to work until you give it full access to your photos and exact location even when the app isn't running the realistic outcome will be that everyone will just give them what they want rather than not using the service

Apple also stops you from installing third-party apps for the service that circumvent those and other limitations. In an open system you can intercept the app's requests and feed it fake responses, spoof your photo album, GPS, whatever. They can try to detect spoofing, but at the cost of making their services flaky for normal users. This is a cat-and-mouse game that the mice (that's you) win. Except you can't play it on an iPhone, because it breaks the service's (probably illegal) Terms of Service, and Apple will use their Big Stick to ensure nobody can commit acts that risk their partners' business models.


You probably picked the worst example as Apple gave Facebook a pass a few times as Facebook is too big to fail.

So let's give Google more power.

One of the main reasons I use Postgres is I've rarely(never?) seen an article like this posted about it. Every time I've touched MySQL I've found a new footgun.


MySQL is the PHP of databases. It was free, easy to setup and had the spotlight at the right time. The bad decisions that are baked into MySQL are plenty and really sad (like the botched utf8 defaults, the myisam storage engine, strange stuff around replication and mucu more)


InnoDB became the default storage engine over 15 years ago. MyISAM is barely used by anyone today.

What "strange stuff around replication" are you referring to?


I don't have all the details anymore. But one of the non obvious things for me was that foreign key cascades where not in the binlogs. I also think that some changes in the database layout could lead to strange things on the replicas.


> foreign key cascades where not in the binlogs.

True, but that's finally solved now.

> I also think that some changes in the database layout could lead to strange things on the replicas.

I've been using MySQL for 23 years and have no idea what you're referring to here, sorry. But it's not like other DBs have quirk-free replication either. Postgres logical replication doesn't handle DDL at all, for example.


I appreciate you carrying the torch for MySQL here, since most opinions are based on setups over a decade old, with little to no bearing on how it runs today

It still blows my mind that they called that crappy partial buggy characterset “utf8”. Then later came out with actual utf8 and called it “utf8mb4”. Makes no sense


They should have addressed it much earlier, but it makes way more sense in historical context: when MySQL added utf8 support in early 2003, the utf8 standard originally permitted up to 6 bytes per char at that time. This had excessive storage implications, and emoji weren't in widespread use at all at the time. 3 bytes were sufficient to store the majority of chars in use at that time, so that's what they went with.

And once they made that choice, there was no easy fix that was also backwards-compatible. MySQL avoids breaking binary data compatibility across upgrades: aside from a few special cases like fractional time support, an upgrade doesn't require rebuilding any of your tables.


Your explanation makes it sound like an incredibly stupid decision. I imagine what you're getting at is that 3 bytes were/are sufficient for the basic multilingual plane, which is incidentally also what can be represented in a single utf-16 byte pair. So they imposed the same limitation as utf-16 had on utf-8. This would have seemed logical in a world where utf-16 was the default and utf-8 was some annoying exception they had to get out of the way.


OK, but that makes perfect sense given utf-16 was actually quite widespread in 2003! For example, Windows APIs, MS SQL Server, JavaScript (off the top of my head)... these all still primarily use utf-16 today even. And MySQL also supports utf-16 among many other charsets.

There wasn't a clear winner in utf-8 at the time, especially given its 6-byte-max representation back then. Memory and storage were a lot more limited.

And yes while 6 bytes was the maximum, a bunch of critical paths (e.g. sorting logic) in old MySQL required allocating a worst-case buffer size, so this would have been prohibitively expensive.


This still makes no sense. The UTF-8 standard was adopted really in 1998-ish and the standard was already variable using 1 to 4 bytes. MySQL 4.1, which introduced the utf8 charset, was released in 2004.

Even if there were no codepoints in the 4-byte range yet, they could and should have implemented it anyway. It literally does not take any more storage because it is a variable width encoding.


> The UTF-8 standard was adopted really in 1998-ish and the standard was already variable using 1 to 4 bytes.

No, it was 1 to 6 bytes until RFC 3629 (Nov 2003). AFAIK development of MySQL 4.1 began prior to that, despite the release not happening until afterwards.

Again, they absolutely should have addressed it sooner. But people make mistakes, especially as we're talking about a venture-funded startup in the years right after the dot-com crash.

> It literally does not take any more storage because it is a variable width encoding.

I already addressed that in my previous comment: in old versions of MySQL, a number of critical code paths required allocating worst-case buffer sizes, or accounting for worst-case value lengths in indexes, etc. So if a charset allows 6 bytes per character, that means multiplying max length by 6, in order to handle the pathological case.


> In my view nonnegative real numbers have good physical representations: amount, size, distance, position

I'm not a physicist, but do we actually know if distance and time can vary continuously or is there a smallest unit of distance or time? A physics equation might tell you a particle moves Pi meters in sqrt(2) seconds but are those even possible physical quantities? I'm not sure if we even know for sure whether the universe's size is infinite or finite?


I am not a physicist either but isn't the smallest unit of distance planck's length?

I searched what's the smallest time unit and its also planck's time constant

The smallest unit of time is called Planck time, which is approximately 5.39 × 10⁻⁴⁴ seconds. It is theorized to be the shortest meaningful time interval that can be measured. Wikipedia (Pasted from DDG AI)

From what I can tell there can be smaller time units from these but they would be impossible to measure.

I also don't know but from this I feel as if heisenberg's principle (where you can only accurately know either velocity or position but not both at the same time) might also be applicable here?

> A physics equation might tell you a particle moves Pi meters in sqrt(2) seconds but are those even possible physical quantities

To be honest, once again (I am not a physicist) but Pi is the circumference/diameter and sqrt(2) is the length of an isoceles triangle ,I feel as if a set of experiment could be generated where a particle does indeed move pi meters in sqrt(2) meters but the thing is that both of them would be approximations in the real world.

Pi in a real world sense made up of the planck's length/planck's time in my opinion can only be measured so much. So would the sqrt(2)

The thing is, it might take infinitely minute changes which would be unmeasurable.

So what I am trying to say is that suppose we have infinite number of an machine which can have such particle which moves pi meters in sqrt(2) seconds with only infinitely minute differences. There might be one which might be accurate within all the infinite

But we literally can't know which because we physically can't measure after a point.

I think that these definitions of pi / sqrt 2 also lie in a more abstract world with useful approximations in the real world which can also change given on how much error might be okay (I have seen some jokes about engineers approximating pi as 3)

They are useful constructs which actually help in practical/engineering purposes while they still lie in a line which we can comprehend (we can put pi between 3 and 4, we can comprehend it)

Now imaginary numbers are useful constructs too and everything with practical engineering usecases too but the reason that such discussion is happening in my opinion is that they aren't intuitive because they aren't between two real numbers but rather they have a completely new line of axis/imaginary line because they don't lie anyone in the real number plane.

It's kind of scary for me to imagine what the first person who thought of imaginary numbers to be a line perpendicular to real numbers think.

It literally opened up a new dimension for mathematics and introduced plane/graph like properties and one can imagine circles/squares and so many other shapes in now pure numbers/algebra.

e^(pi * i) = -1 is one of the most (if not the most) elegant equation for a reason.


Planck's length has absolutely no known physical significance. It is just a combination of fundamental constants that happens to have the dimension of a length.

The so called Planck system of units, proposed by him in 1899, when he computed what is now called Planck's constant, is just an example of how a system of fundamental units must not be defined. To explain exactly the mistakes done by Planck then requires a longer space than here.

Unfortunately, probably because most textbooks of physics do an extremely poor job in explaining the foundation of physics, which is the theory of the measurement of the physical quantities, most people are not aware that the Planck system of units is completely bogus, like also a few other similar attempts, like the Stoney system of units.

Thus far too often one can see on Internet people talking about the "Planck units" as if they would mean something.

Unlike with the "Planck units", there are fundamental constants that really mean something. For instance, the so called "constant of fine structure", a.k.a. Sommerfeld's constant, is the ratio between the speed of an electron and the speed of light, when the electron moves on the orbit corresponding to the lowest total energy around a nucleus of infinite mass.

This "constant of fine structure" is a measure of the strength of the electromagnetic interaction, like the Newtonian constant of gravitation is a measure of the strength of the gravitational interaction. The Planck length and time are derived from the Newtonian constant of gravitation, and they are so small because the gravitational interaction is much weaker, but they do not correspond to any quantities that could characterize a physical system.

For now, there exists no evidence whatsoever of some minimum value for length or time, i.e. there exists no evidence that time and length are not indefinitely divisible.


Sounds like you’re talking about the presumed free speech rights of corporations, which is part of this debate. I think corporations should have much more limited speech than an actual person and the concept of corporate personhood in general needs to be walked back significantly.

Yes it’s important for news organization and such to have unrestricted speech, but that seems solvable by keeping them in a separate category and excluding corps that engage in other lines of business. I don’t want say Google to be have full censorship and editorial privileges just because one of their many products surfaces news.


I can spam or send misinformation here just fine without being a corporation. And it's legal speech. Should platforms not be able to moderate this?

> news organization and such to have unrestricted speech [...] by keeping them in a separate category and excluding corps

This is an misunderstanding of "freedom of the press". The "press" is a reference to the printing press as a device itself. News organizations (which are usually for profit) have the exact same rights to free speech as anyone else. The natural analogy is printers and the right to publish information online.


Ofc I wouldn't us it for extremely high scale event processing, but it's great default for a message/task queue for 90% of business apps. If you're processing under a few 100m events/tasks per day with less than ~10k concurrent processes dequeuing from it it's what I'd default to.

I work on apps that use such a PG based queue system and it provides indispensable features for us we couldn't achieve easily/cleanly with a normal queue system such as being able to dynamically adjust the priority/order of tasks being processed and easily query/report on the content of the queue. We have many other interesting features built into it that are more specific to our needs as well that I'm more hesitant to describe in detail here.


Very few things dna start at an extremely high scale event processing.

There’s also an order of magnitude higher events when doing event based work in processing.

This seems like a perfectly reasonable starting and gateway points that can have things organized for when the time comes.

Most things don’t scale that big.


So perhaps don’t use kafka at all? E.g. Adyen used postgresql [1] as a queue until the outgrew. In this case it seems there are a lot of things that can go south in case of major issue on the event pipeline. Unless the throughput is low.. but then why kafka?

[1] https://www.adyen.com/knowledge-hub/design-to-duty-adyen-arc...


RDBMS are pretty well understood and very flexible, more still with the likes of JSONB where parts of your schema can be (de)normalized for convenience and reducing joins in practice. Modern hardware is MUCH more powerful today than even a decade and a half ago. You can scale vertically a LOT with an RDBMS like PostgreSQL, so it's a good fit for more use cases as a result.

Personally, at this point, I'm more inclined to reach for a few tools than to try to increase certain types of complexity. That said, I'm probably more inclined to introduce valkey/redis earlier on for some things, which I think may be better suited to MQ type duties without an actual MQ or more complex service bus over PG... but PG works.

Especially for systems that you aren't breaking up queues because of the number of jubs, so much as the benefits of a logical separation of the work from the requestor. Email (for most apps), report generation, etc... all types of work that an RDBMS is more than suitable for.


Probably not worth using a sledgehammer (Kafka) for an ant.

Lots of ppl do resume building only to realize rolls like Kafka at start vs scale can be very different.

It’s best to learn events from the ground up including how, when, and where you may outgrow existing implementation approaches let alone technologies.


I became fascinated by Lean last week while watching Terrence Tao stream his proof work on Youtube. At least on the surface his thought process and workflow looked very similar to what I do in my IDE when programming, especially when coding in a very strongly typed language like Scala with FP style.

If I can work through math proofs in an IDE with Lean helping check my work I might finally get around to diving into the higher level math I’ve always wanted to. Could open some doors to us working folks that don’t have an instructor to review our proof attempts.


Even worse for me, some of my coworkers were doing that _before_ coding LLMs were a thing. Now LLMs are allowing them to create MRs with untested nonsense even faster which feels like a DDOS attack on my productivity.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: