←back to thread

741 points chirau | 4 comments | | HN request time: 0.805s | source
Show context
theLiminator ◴[] No.44358222[source]
uv and ruff are a great counterexample to all those people who say "never reinvent the wheel". Don't ever do it just for the sake of doing it, but if you have focused goals you can sometimes produce a product that's an order of magnitude better.
replies(7): >>44358352 #>>44358435 #>>44358583 #>>44358604 #>>44360352 #>>44361046 #>>44362201 #
mort96 ◴[] No.44358604[source]
Honestly "don't reinvent the wheel" makes absolutely no sense as a saying. We're not still all using wooden discs as wheels, we have invented much better wheels since the neolithic. Why shouldn't we do the same with software?
replies(5): >>44358832 #>>44358840 #>>44358965 #>>44361544 #>>44363481 #
simonw ◴[] No.44358965[source]
When asked why he had invented JSON when XML already existed, Douglas Crockford said:

The good thing about reinventing the wheel is that you can get a round one.

https://scripting.wordpress.com/2006/12/20/scripting-news-fo...

replies(1): >>44359814 #
idle_zealot ◴[] No.44359814[source]
You can get a round one. Or you can make yet another wonky shaped one to add to the collection, as ended up being the case with JSON.
replies(2): >>44360171 #>>44360730 #
1. simonw ◴[] No.44360171[source]
What makes JSON wonky?

Personally the only thing I miss from it is support for binary data - you end up having to base64 binary content which is a little messy.

replies(2): >>44360686 #>>44362261 #
2. idle_zealot ◴[] No.44360686[source]
Quoted keys, strict comma rules, very limited data types, are the main ones. There are a host of others if you view it through the lenses of user-read/write, and a different set of issues if you view it as a machine data interface. Trying to combine the two seems fundamentally misguided.
replies(1): >>44379739 #
3. Myrmornis ◴[] No.44362261[source]
Lack of comments seems like a big one seeing as it's so widely used for "configuration". It's a big enough downside that VSCode and others have violated it via ad-hoc extensions of the format.

The comma rules introduce diff noise on unrelated lines.

4. collinmanderson ◴[] No.44379739[source]
I consider JSON's very limited data types to be part of what makes it so good.