skysight-inc/HackerNews huggingface dataset:
The page has been slightly changed since then, but it is still quite outdated. Python 3.6 (2016) has formatted strings, and new/old-style classes thing isn’t relevant at all since Python 3, but wasn’t that much of a deal with Python 2 at the end of its lifetime (~everything was new-style by then).
> 1. There is no way to remove devices drivers from the Linux kernel. That goal was seen as desirable in terms of improving reliability, how long devices were supported for and the time taken to roll out updates. Upstreaming driver changes was something phone manufacturers just didn't do and didn't want to do. Linux has no stable ABI for device drivers; and

Android's Project Treble was already supposed to (partly) fix that, and it didn't. Partly because of OEMs sure. But, and most importantly, because Google removed the support for versioned RPC merely 3 years after its introduction (audio HAL 2.0 introduced in Android 8, got removed in Android 12, simply reverting the deletion commit is enough to "fix" it).

What does this tell? This tells that Google themselves aren't structurally ready to support hardware for more than 3 years. Why would Fuchsia be any different? In all likelihood, they'll also deprecate versioned ABI every 6 months, and drop old support after 3 years, which will lead to the exact same state.

At this stage, this is a managerial issue, not a technical one anymore. If Google wants to do this (upgrade devices independently from OEMs), they first need to stop obsoleting code every time someone gets a promotion, and they need to actually try what they make, not just do things that are theoretically perfect [1]. (to the best of my knowledge, there is exactly one Google team who managed that, which is androidx/jetpack/android-compat)

> Upstreaming driver changes was something phone manufacturers just didn't do and didn't want to do. Linux has no stable ABI for device drivers;

Chromebooks have most/all drivers upstreamed, and yet they never upgrade their kernels in production.

[1] And I could go on how Project Treble is architecturally beautiful, but is missing few small points that would make it actually usable, which is what my opensource project does, but I feel my message is already too diluted
Hey, thanks for Appsmith. I've just started trialing it.

Got a question: is it possible to operate without something like docker, on Windows? The place I would like to deploy it is a VM, and nested VMs are not a good option with what I have available.
I've been trying to get my organization to use ODM, but finding it difficult. The problem is analogous to the issues that Gimp has to Photoshop or Linux to Windows -- ease of use. Additionally, even if you properly configure the software the quality still is not comparable to the big proprietary players in the photogrammetry field: Bentley Systems; Pix4D; Drone Deploy.

A major reason for the quality issues is that the major drone manufacturers work directly with the proprietary photogrammetry software providers in the field to optimize the algorithms to their drones. These drone manufacturers then promote these proprietary solutions. This puts ODM at a disadvantage as there is no short-term financial incentive for manufacturers to promote ODM.

Like other fields, the proprietary photogrammetry industry is increasing moving to implementing their solutions exclusively in the cloud. This is forcing folks to give up their data and building a data moat - a problem for my organization.

I hope ODM keeps developing and becomes as ubiquitous as linux. Its quality is getting close for my organization to consider its implementation. Keep up the great work!
Apple still allows it. But there is no documentation, so that alternative OS will be entirely based on assumptions ...
This is sadly already happening. In Europe, car garages need to update their diagnosis machines, or even pay[1], to get some keys from Renault to being able to do anything in their newer models. Even their low-cost subbranch Dacia need those keys. They say they do that to prevent attacks from the OBD port (used commonly to steal cars).

This not only is absolutely an anti-consumer practice, but also is probably a pretty temporal and ineffective solution to prevent your car being stolen[2].

Nowadays, is pretty common to need to program some kind of electronic module in the car for some parts replacements, and with that, they are preventing people and small and new car garages to do that kind of repairs. Heck, even the TPMS control module need to "re-learn" "where is who" when you rotate your tyres.

[1]: Usually diagnosis machines have a subscription-based system where they provide you not only new car models software packages, but also instructions about how to do part replacements.

[2]: AFAIK, most stolen cars are really easy to stole (like the 80s/90s Honda's) or really valuable (and they provide tools, ECMs, or whatever they need to stole them).
Energy use from US cryptomining firms is contributing to rising utility bills
> I can't fathom optional parenthesis.

I think this kind of falls in line with the idea of Ruby giving you sharp knives[0].

Like you I used to have a love / hate relationship with this because it feels inconsistent to sometimes use parenthesis and sometimes not. In a world where you just want to run Python's Black code formatter and always use parenthesis, having to think about when to use parenthesis feels really tedious.

But I think nowadays I'm happy that they are optional because when you want them to be optional it creates a really nice aesthetic to your code.

For example with Rails you can do: `2.days.ago` and then there's also things that feel like a mini DSL such as `validates :title, :body` or `belongs_to :users`. These just look nicer without parenthesis.

With that said, I do use parenthesis more often than not but it's nice to avoid using them when it makes something look nicer visually.

[0]: https://rubyonrails.org/doctrine#provide-sharp-knives
Despite the attitude of some of the other comments, the code and stack are less important than you’d think.

If you can create an MVP with no-code tool, yeah it might be janky but it might also let you prove out your idea with paying customers with the smallest time and money investment.

Over time developing the software in house gives you control over the roadmap of features, and generally let’s you deliver a better experience.

Unless you want to hone your engineering skills and use this as nice side project to do so, you’re probably well served playing to your strengths and working on getting customers.

You’ll hit a wall with no code software at some point, that’s where you can sprinkle in some custom code.

No code is just someone else’s saas api at the end of the day. If you trust the service, and they have an API that does what you need it to, don’t get bogged down in it.

Maybe in the future you build the whole thing in custom code, but if you’ve got enough functionality to charge money for, the next question (at least from the lean startup approach) is to validate it with paying customers.

Good luck!
Or you use more than the 8GB of RAM and have to swap...

Although I also wouldn't be surprised if Apple "updated" the current 256GB M1 Air they still sell to use a single flash chip like the M2 models.
Maps does let you download areas for offline use. I'd agree that it's non-ideal for long trips, though in practice this has never been a huge problem for me.
I think there are no unbiased opinions. With every reviewer, you have to know that person and take that persons perspective in mind. Just depending what your typical usage szenario is, can make a huge impact on a review.

With Gruber, I do think he is honest. His strength is, that he can give a good view, what might have been the reasons for the design decisions Apple took - as any device is the consequence of design decisions. Of course, he also has a ton of experience in the Mac world, so he can very well compare to all the other Mac models.
That things look nicer now is highly debatable. More complex, but just perhaps. How many pages I've seen scrolling on HN showing how the proper "toggle button" needs to work and animate in order not to be confusing where a checkbox still looks infinitely better to me? Or overlay scrollbars, that save essentially no space (which is given to padding instead!!!), hide the position are more difficult to grab?

I still think the W95/Motif-CDE/late Amiga years had very decent UIs even by today standards. Especially on Amiga, everything was expected to be interacted with with minimal latency. Everything was absolutely super-responsive. The UIs were legible, functional, and had tremendous information density.

That is the total opposite of today.
https://xkcd.com/927
By coincidence I tried this last week; it really is pretty impressive.

The one thing I missed is some intros/guidance on how best to take photos to feed it; which angle, how much spacing, any tools to use in flight etc. I got pretty good results with my first run but was going to blindly experiment to see if I could improve it. Any tips?
>>> import calendar
>>> calendar.SATURDAY
5
There are domains where user experience is vital. Consumer apps that serve as nothing but entertainment, or fields with fierce competition for instance. And then there are domains where there is a problem that isn't solved or solved well.

I don't know anything about the market for copy writing, so I can't say whether this falls into one or the other but if it's the latter, starting out with no-code is a completely rational approach.
Even with reasonable amounts of swapping you are unlikely to notice huge differences. Only if you are thrashing the memory, you surely would. But then just getting more memory would be a very wise investment.
Fantastic title
> My 12 inch Macbook was my favorite laptop ever

If Apple could make a case back in the day to build that underpowered/overheating Intel-based 12-inch MacBook, you'd think the case would be pretty strong now to bring it back as an M-powered device.

That awesome small form-factor based on M-generation chips would likely be a superb machine. The 12-inch was ahead of its time - it really needed an M1/M2 chip in it!
We Look Like Our Names: Manifestation of Name Stereotypes in Faces (2017) [PDF]
And a few people liked the language, but a lot of users complained about the memory bloat this introduced (this was back when people cared about RAM).

So Vala is trying to be the best of two worlds, having C-like resource usage with some of the language niceties of C#. Probably wouldn't have happened if Mono didn't prepare the way for C# syntax in the GNOME bubble.
>"There is no catch"... but if I'm not mistaken I'll need to run Apple's operating system

Product works as advertised, news at 11.
> There’s only one kind of list container (an Array), and it’s mutable.

What are the other kinds of list containers in Python? I only know of `list()`/`[]`, but maybe I just don’t realize that some other thing I use is also a list container.
They're horses raised for meat. When a horse is registered the owner needs to declare if it will be raised for meat consumption or not, that has implications about the type of medicines that the horse can take.
I was around some people who have been immensely successful in Silicon Valley (think founders of $X B companies) and they all seemed to have one thing in common.

They had no qualms about blatantly ignoring a person talking to them. Or walking out of conversations without any proper manners.

In front of an audience, they seemed like normal, friendly and charismatic people. But when you actually spoke to them 1 on 1, their true nature came through.

Not sure if they are sociopaths, autistic, on drugs or simply elitist but it was an extremely unnerving experience.
Ask HN: Besides HN, how else do you find noteworthy things on the internet?
Not if you expected to buy a general purpose computer.
> Gruber's hyperboles can be entertaining for sure.

Perhaps Apple have finally released a device which is truly worthy of Gruber-level hyperbole!
What exactly do you mean by bias. What makes an opinion biased, in this case, as against an opinion you simply disagree with?

I suppose uncritical support would be an indicator, maybe that's what you mean by "regardless", but Gruber has never been shy about stating very clearly and forcefully when he disagrees with or doesn't like something Apple is doing. Just recently with the Safari UI redesign for example, or the problems with some of the desktop cameras.
FreePascal/Lazarus seem to aim mostly for the people already using its predecessors. I see little to no "evangelism". Even new niche languages like Nim or V seem to have more "momentum".

Clearly the timeline we deserve.
this is happening way too often all over the place, US + Europe, a lot of reckless people are creating fictitious content because they have a strong feeling about the country
HERE maps are downloadable.
It's a hard problem.

Offline means you're dealing with conflict detection, resolution, and caching strategies. Do you do multi-master? Have a single remote master but cache commands as a fallback? How do you test your solution?

And if you're dealing with the web, then you have to deal with IndexedDB which can sometimes be nuked by the browser, or have show stopping bugs (looking at you safari). There's also limited capacity compared to severside. Even if you use a library, under the hood they all use IndexedDB - there is no getting away from its limitations.

If anyone's interested in this stuff, I'd love to chat. I'm between contracts and trying to make an old app of mine work offline, lots of fun but also challenging.
Yea I think the main, major problem with no-code tools is that they are not as composable as real coding.

How that manifests is in a “difficulty cliff” - everything is very easy until that one thing that you absolutely need - it’s impossible - and since the components aren’t infinitely malleable there’s nothing you can do about it.

What happens if you launch and that impossible thing is something critical that your biggest, paid, customer wants?

A close number 2 is the janki-ness, and then the rest of the things you mentioned
Are maps created by the OpenDroneMap community catalogued anywhere? I may have missed the obvious answer, but only found docs about creating maps (which is, of course, extremely cool!).
Interesting. Any links to submissions that were flagged or removed (screenshots in that case)?
You're misinterpreting that quote as criticism of Python instead of praise. He's not saying that's the ONLY thing that Python is good for.

I've also been programming in Python extensively for at least 20 years, including web application servers like Zope and TurboGears, embedding and extending apps and tools with the Python/C API and SWIG like SimCity, Gnu Radio, Big World MMPORG, robotics, simulations, Blender, Houdini, user interfaces like Tkinter and PyGTK and Sugar, XML processing, OLE integration, BeautifulSoup web page scraping, image processing, character animation, speech synthesis, system administration, infrastructure as code, machine learning, etc.

Python is of my primary programming languages, and I love it.

It's a GOOD thing that mathematicians use Python instead of Bash!
> - slow, low capacity SSD

Low capacity, sure. It's hardly slow though — it is still likely going to be orders of magnitude faster than what the vast majority of people buying this machine will really need out of the entry level Mac.

As always, HN seem to look at things through a very specific lens. The Air has never been marketed as the purely performance machine for purely performance needs. That's what the Pro line is for.
I've been pretty impressed with Bubble's capabilities, and in particular it's API integrations make it seamless to ship a lot of common functionalities. I think you can get your MVP up with Bubble for sure, maybe the whole thing, but either way you can get it far enough to convince someone to give you money for some engineering muscle if you need it.

Best of luck :)
In essence, it's the 21st century equivalent of the "new money" industrialists of the 18th century. They weren't accepted by the established class either, and had to slowly bleed in over generations.

In fact, you still regularly hear the disparaging words "new money" today.
I don't know about that; the corporations certainly think they won, but I'm more inclined to believe they already killed the golden goose. There's no money in top-40 payola; the time to the grocery store soundtrack has never been shorter. The average age of cable TV viewers gets a year older every year, and there's much less patience for sitting around watching ads than in the 90s or 00s. Big corps are trying to win loyalty by loudly believing all the right things, only to find that they're alienating more of their customers than they thought. It's cool to be a foodie and do your own cooking, so fewer people are buying ever-shrinking prepared meals. Everyone's hugely cynical and expects a sales pitch around every corner.
Culture is an incoherent wasteland largely because the big corps lost control.
Hey, JCOF author here. I didn't notice this had made it to HN before now.

* JCOF allows for streaming serialization if you want, you can just use the key-value object syntax and use inline strings everywhere. You won't get much size improvement over JSON when using a streaming approach, but you can even do a half-and-half approach; maybe you have a set of strings which you know you're using a lot, so you put those strings in the string table, then you do a streaming encode of the rest of your data, with string references to the string table. You could even do the same with object shapes, where you hard-code a couple of object shapes you know you use a lot, and use the JSON-style key-value syntax for other kinds of objects. Basically, you can choose where you want to be on the efficiency vs streaming curve.

* Nested objects aren't difficult; an object can go in any place where a value can go, just like in JSON. This object can be either a "shaped" object where the keys are listed in the object shape table, or it can be a "keyed" object where you write out the keys inline (as either literal strings or references to the string table).

* JCOF is human-writable; you can write a document which looks a whole lot like JSON. This is a valid document: `;;{"people":[{"name":"Bob",Aage":36},{"name":"Alice","age":40}]}`. But optimal JCOF is mostly unreadable. So it's less human friendly than JSON, more human friendly than binary formats; it's a trade-off.

I think JCOF hits enough interesting, unexplored points on enough relevant curves that it has some value. It also ends up being smaller than any of the binary formats I've tried like MessagePack and CBOR (even with the string references extension), while being text-based. It's obviously not going to replace JSON, but it's useful in some cases.
Just over a drink a day could have a negative impact on your brain
> “In the largest study to date, we found drinking greater than 7 units of alcohol weekly associated with iron accumulation in the brain. Higher brain iron in turn linked to poorer cognitive performance. Iron accumulation could underlie alcohol-related cognitive decline.”
There definitely was a time, and I noticed I myself let go of it. Recently I watched an old clip of Bill Hicks where he calls out Leno for doing a commercial! I can't imagine anybody calling someone out over a commercial today and having an audience.

https://www.youtube.com/watch?v=i8aj3BA3cGg
Thanks. This was a helpful comment, especially the CONtinuous/disCRETE thing.
XML-RPC Specification (1999)
Google Maps is literally free and here you are complaining it won't work when you don't have internet... But it will: https://support.google.com/maps/answer/6291838?hl=en&co=GENI...
I'm not sure how Vaex works, but for what it's worth, OctoSQL doesn't load whole Parquet files into memory.

It will only read the columns that are used in your query and will read those columns page by page (Parquet columns are organized into pages on disk) and process pages record by record. It won't ever buffer the whole thing if it's not necessary for the query as a whole.
I have a similar background, but how is:

> I would never consider that the American dream though, because it was all paid through the welfare state of the country that I live in, and not because of any particular fortuitous circumstances.

Not the American dream? Education even if subsidized by the state (more so 30 years ago) still involves a lot of work, we still had to study hard while getting through our part time jobs to cover living expenses.
I’m guessing they’re implying tuple, it’s pretty common to consider that type as “immutable list” (although personally I very much dislike this categorisation)
You essentially got the concept right, concrete is essentially artificial stone that can be initially poured into a mould and once set has characteristics similar to some types of stone.

Concrete is a mix of elements with different sizes (granulometry), like sand, gravel, (crushed) rock (of various sizes), with one or more binding agents, it is a "conglomerate" (in quite a few languages concrete is properly called the equvalent "cement conglomerate", in English "conglomerate" designs a natural rock that shares the same kind of structure:

https://en.wikipedia.org/wiki/Conglomerate_(geology)

Cement is just the most used binding agent, usually very, very fine.

As a comparison, what is usually called asphalt is another kind of conglomerate where the binding agent is bitumen.

Cement by itself has very good hardness but it is fragile and/or brittle (and it has very relevant shrinking when setting).

Mortar is cement+sand, it is a sort of midway between the two.

Stone (it depends on which kind of stone we are talking) is ultimately a sort of natural concrete where the particles (that may also be monogranular) have been "assembled" by pressure (and heat) over countless time.

Typically stone is quarried from very huge monolithic deposits, or it comes in large slabs, that are cut to make (transportable) bricks or samller slabs, that you then assemble with mortar.

Chiseling is not involved in building with stone (anymore) if not for decoration/aesthetic reasons.

Whether casting concrete or assembling stone elements in - say - a wall is faster or slower it is hard to say, it greatly depends on the structure, on the available tools/equipment and local costs for the one or the other and for the labour, usually concrete is cheaper because the components cost less, the tools and equipments are readily available and there is less labor involved, but it depends on the specific place/country.

In the case of reinforced concrete, the advantage is that you can make much thinner structures with same or better structural strength than masonry.
Why isn't this in the file's metadata?
Sometimes I hope he has been drawing more comics all this time, to be published some time in the future, all at once in a great book. Probably not, but who knows...
It has partial support for it, and Swift 6.0 roadmap has a plan for it.

https://www.infoq.com/news/2020/01/swift-6-vision/

Additionally its async/await and distributed actors story is much better than Rust's current story.
I struggle to understand what you are saying here.

What do you mean when you say "this memoization is now required for the correct functioning of the app"? I agree that there can be some issues with scroll restoration in routing, but it doesn't seem like a big issue to me and certainly doesn't seem to reveal some fundamentally flawed architecture.
array.array
The rise of air conditioning (2018)
I’m in the Netherlands and there is a horse butcher (paardenslagerij) around the corner of my house. Has been there since the seventies.

The sausage is quite good, but much fatter than I’d expected. It’s also quite expensive which can make sense because scarcity, but not make sense since the demand must be fairly low.

Based on total anecdata, I see mostly pensioners going here. And me.
Thanks. That's largely the sense I've had.

Motivation / utility is a question that's occurred to me more than once.