skysight-inc/HackerNews huggingface dataset:
C++ solved this by shipping something that are not coroutines and branding it coroutines anyway. … They aren't coroutines, and by squatting on the name, make it borderline impossible that C++ will ever have coroutines.

I am not a C++ person, but I protest this characterization. You obviously know the categories and I suppose you know the history, but I will recount them so that everyone else understands my objection.

O.G. coroutines emerged in a world where subroutines were, by and large, not reëntrant. Function parameters, local variables, and return addresses were static, and there was no call stack in the modern sense. This is why the old timers said that coroutines were a generalization of subroutines; only the jump instruction of the call/return really needed to change.

Once call stacks became common, coroutines fit awkwardly, and people tried to adapt them in various ways.¹ The world has settled on two designs for reconciling coroutines to the call stack: thick and thin coroutines. Thin coroutines allow suspension within the body of the coroutine but not within subroutine calls; this way the size of the coroutine’s state can be known at compile time and its interaction with the stack is relatively clear. Thick coroutines (i.e., green threads) can be suspended within a subroutine call, and thus require their own slices of stack — either separate from the main stack or copied from and to it as the coroutine is suspended and resumed.

Thin coroutines are absolutely coroutines. They are truer to the original definition than thick coroutines are! They are more limited than thick coroutines, true; whether that makes them better or worse is a matter of design trade-offs. But they certainly deserve the name.

[1] Simula 67, to my understanding, treated objects as a kind of coroutine instance where function definitions in the coroutine body became methods that closed over its local variables.
No More Frame Drop: Seamless Image iOS Showcase App
Don't think I've ever heard anyone call it "GRAM" instead of VRAM.

Another cost saving tip: On API, do combo calls where possible to dual use the input tokens. e.g.

"""You are an AI assistant that summarizes text given.

After the summarized text, add the word END.

After that answer the following questions with Yes or NO:

Is the text about Donald Trump?

Is the text about Space?
"""

Down side is now you need code to parse the output pieces & error handling around that
you jest, but in fact you could.

https://wiki.libsdl.org/SDL2/SDL_ShowSimpleMessageBox
> SpaceX creates aspiration for the poor

> AirBnB allows the poor to live in an expensive city, cheaply

Yeah you're definitely trolling, not cool... or your definition of "the poor" includes people with net worth of $10M.
Thats even worse! Tradeinn orogramm are insidious, their purpose is to drain the marlet of second-hand goods, so to increase sale of new ones.

Every time you sell a second. hand conouter you are cutting their sale of new ones.
For anything business critical I usually assume that any "cloud" / "provider" / "registry" may go dark on me any second. Therefore, your own DNS VMs, multicloud, your own database, no cloud vendor locking (agnostic microservices) etc etc. And if you want full control - the on-prem / colo solution is still the king.
> If you look at an actual (snow)flake there's this recursive/fractal design coming from a central point, which kind of visually represent the conceptual structure underpinning a nix flake

Never thought about it that way, but it kind of makes sense. I thought the name was inspired by the Nix logo.
I really, really don't understand the obsession with the server source code. The client verifiably performs E2E encryption so who cares what the server does. Moreover, there is basically no way for external parties to verify what code is running on the servers. In the era of practically every free service selling out their users to the lowest bidder, it literally blows my mind the amount of hate Signal gets because of an old complaint about their server source (repo looks quite lively now).

The tech community is seriously guilty of letting perfect be the enemy of good.

For the record, I'm not a huge fan of the crypto wallet thing at all but I just don't use it.
> Python

> fast

This is only true if you are relying mainly on compiled extensions to do the performance-critical work. Unassisted raw python is super slow compared to Go or Rust.
Heh. Plenty of people would just shrug it off-- they have remote git repos or Dropbox/Drive/iCloud.

Better for them to start with the very simple exercise of "how much of my life will 2FA make inaccessible if I lose only my phone?"
> Is Rust's compile-time GC about something other than performance somehow?

AFAIK, memory safety and language features as RAII is also available in C++, for instance. About the reasons for slow compilation, take a look at https://www.reddit.com/r/rust/comments/xna9mb/why_are_rust_p...

Not having a GC is also about not having a runtime as you mention (e.g. nice for creating Python extensions and embedded systems programming) and also more runtime deterministic performance: on that, if I'm not mistaken that was the reason for Discourse switching to Rust and also, e.g.: "the choice of Rust as the main execution language avoids the overhead of GC pauses and results in deterministic processing times" https://github.com/apache/arrow-ballista/blob/main/README.md
I think this article is a nice summary of the languages, but the opening set up bugs me:

> Which is better, Rust or Go? Go or Rust? Which language should you choose for your next project in 2023, and why?

I blame the "rewrite everything in Rust" crowd, but there seems to be a resurgence lately of the idea that there is One True Programming Language you should use for everything.

I don't particularly fancy using an OS written in Go, and I don't want to work on web architecture projects in Rust. Similarly, I don't want to work with someone who is going to write shell scripts or basic utility tasks in Rust because the performance is faster.
Native English speaker here. It’s an extremely common expression in some regions. The main character of the Emoji movie is named “meh”.
>the real talent doesn't need to apply to job postings and submit resumes blindly.

I think there's a huge valley of difference between "no relevant job experience" and "real talent". I do a mix of job postings to stuff that looks interesting while also talking to my network.
Is there some plugin that removes GIFs from blog posts? IMHO an article looses a lot of credibility if I also have to look at some unrelated GIF in an otherwise very well written article.
Python is also used in those niches, let’s add that also to the list.
Sure they do for "serverless workloads"
There’s also wild flowers that grow in forest. Bluebells in Belgium are spectaculars

https://www.lonelyplanet.com/news/hallerbos-forest-belgium-b...
> Practically no consumers care except for other software engineers complaining loudly on HN, and meanwhile companies save millions by not handcrafting their CRUD apps in assembly.

And you know that because you’ve analyzed whole market and know opinion of users of every web software? Definitely not because you only live in bubble of other software engineers so you’re not exposed to complaints of common folk?
Except that requires IOMMU which is not always available nor is it always reliable on consumer motherboards.
>I really, really don't understand the obsession with the server source code.

You just used "closed server source code" as an argument against telegram? I also agree that it doesn't matter at all. But then why trashtalk telegram?
So true, 4-5 years seems reasonable to me, 3 years isn't much
I use a completely black background, I forget the notch exists plus I save a bit of battery.
If it doesn't have user IDs what's that QR code I can share?
Yeah, the Mac OS community was raised in Object Pascal and C++, Java came to be due to a mix of its initial hype, agreement with Sun, and fear that Objective-C would be too alien for the Mac developer community, due to its syntax and semantics.

Copland was going to be a microkernel based with C++ frameworks, as an additional note, similar in spirit on how BeOS turned out to be.

As that proven not to be an issue, and the community did indeed adopt it, they decided to cut down on costs of having multiple languages.

A bit ironic, as we are back to the Object Pascal / C++ days, with two similar inspired languages.
The demand for small phone is completely overblown online.
>Most software is written by glueing existing code together and using libraries. AI can do this reasonably well today.

>I think you're overestimating the uniqueness of your code. Is it really all original? You're writing everything from scratch with novel, never before seen approaches? I doubt that very much.

You can doubt that. Yes, of course.

One kind gentleman here introduced me to worst-case optimal join algorithms and I designed one myself. It uses Bloom filters represented as binary decision diagrams, really nothing fancy.

You can try asking AI to write you a Bloom filter represented as binary decision diagrams. I doubt you will get anything interesting and/or useful.

>There's a reason why design patterns exist. Many solutions can benefit from following existing patterns.

This is history repeating itself.

Functional languages do not require that much of design patterns. In fact, functional programming can hide complexity so well that uncovering it can produce exponential blow up in code size. And type systems greatly benefit writing complex systems. I know because I programmed in almost all kind of languages (typed, untyped, dynamic, static, Turing-complete, total, etc) and programing paradigms existing (including term rewriting systems).

I doubt you use Haskell for your work, which is functional and has rich and powerful type system.

The same will be with AI. You can proclaim it will change the world, but similar tools readily available for quite some time did not.

Returning to AI and VCS, the presentation that started our discussion shows a principal problem with VCS, at 7:06 or so. We can make a changeset that will provoke any merging/conflict-resolution algorithms into making a silent mistake. Pijul postpones this problem, I think, not rids of it.

AI does not report a problem, it hides it, and lies. Nobody, to my knowledge, was able to make any AI to admit it does not have a clue about thing it clearly has no clue about.

So if we certainly will have a mistake in our merging process, AI will certainly lie about it. The code after merging-with-AI shall be tested and reviewed, there is no short-cuts there.

So, why bother?
Tauri is somewhat similar to this, it's much lighter weight than Electron.
My friend has a huge 4,000 sq foot brand new house in the South for 1/3 the average price in London. You cannot find that type of house even in the richest areas in Europe.
How’s accessibility and access to native apis?
Why wouldn't there be?
On the contrary, decent developers should shame shoddy ones every chance they get. Maybe that would keep them from making horrible software that millions of people have to suffer every day.
Hetzner is really awful with admissions of new accounts.

I tried to register twice but got denied before I even got the chance to complete registration.

`After reviewing your updated customer information, we have decided to deactivate your account because of some concerns we have regarding this information. Therefore, we have cancelled all your existing products and orders with us.`

No support, no details whatsoever, I'm not sure if they don't want to serve customers outside EU or something else at play, since I didn't even get the chance to finish registering.

I've read similar stories on Reddit, where you needed to deposit $20, but I didn't even get to that step. They seem too strict.

I might have better luck getting hired there than open an account with them.
$4k / ($your-total-cost * 3). Assuming 3 years of ownership. Tools are not only a laptop but the idea, I believe, is valid.
Being a friend of Russia as a country of russians is one thing, and being a friend of the Putin regime is another.

I have nothing against the former, and everything against the latter.
That's a fair point, although there is a simple solution in Rust (and other RAII languages) to use heap allocation if what you want is moving big chunks of data (so only the pointer is moved) or in case you really want copies, reference counting (Rc/Arc in Rust).
Good on you! You have to be product/solution focused not tech glitter!

Jobs to be done and the fastest/cheapest way to get there!
So.... supply and demand doesn't work? Why is this field immune to normal market economics?
Flutter does something like this, rendering on a canvas directly and eschewing HTML, CSS and JS altogether. It works pretty well. With WASM in the future though I suspect many other languages will adopt a similar paradigm.
That’s super ironic that you’ve shown screenshot from a web application.
Best of luck running your own data center properly. It's a massive pain in the hoop.
Just compiled my 10 year old C project to test this claim. No issues (and it was written in C89, not C99 nor C11).

And couldn't compile my 9 year old Go project (a small supervisord clone) a few month ago (it was either in go 1. 2 or 1.3). Granted, it was a library issue (terminfo/ncurse, I can't remember which), but still.

I'm not a huge C proponent anymore (except as a learning language), but C is absolutely more stable than most languages, especially if you account for external libs.
That's.... Bizarre unless they think this is not exposed to the incoming legislation?
i hope someone makes a bot then it just tweets where thread is linked, company and ceo is tagged
Cheaper noise cancelling headphones would make me nauseous, however I got the Sony WH-1000XM5 headphones with 8 external mics to sample the surrounding noise and it was a game changer, super high quality, no more nausea.
This looks to be a project primarily by one person, which explains the website.
The arrogance to believe that their software is so well written already that the only way to improve their performance is by using handcrafted assembly.

Just changing their high level data structures alone would yield 10x improvements, easily.
They... did? Presumably because they wanted to?
No end consumers I know or even acquaintances of other people I know even know nor care about Electron. You might say that I'm in a bubble but at that point it's just the No True Scotsman fallacy.
Love nix and flakes, can easily describe my whole infrastructure in nix(even generating terraform files from it, manage secrets(agenix,agenix-rekey), and dev tools required to work on parts of the infrastructure(LSP's, deploy-rs, secrets decrypting using ssh key,rekeying secrets to public keys of machines), all in one flake, one monorepo (virtually split up with the josh project into multiple repos with shared history,works really well)

I love it, only thing I would love if there was a proper way for passing arguments to flakes for build /dev/run only dependencies and other ways to specialize the scope of the user using the flake and infrastructure attached to it :)
Genuinely feels like there’s a constant trickle of arguments from people looking to do all they can to shift the tides such that their skill set is more in demand. Or maybe it’s just an ideological obsession. I don’t know. I feel the same way whenever the “use C for everything” people catch a whiff of performance mattering and very strongly suggest that the only way to dig ourselves out of this mess is to move back to the One True Language.
Like someone else has said, I hear and understand what you're saying but I could not disagree more.

I write Rust professionally and what you hate about Rust is opposite to why I love it so much. Especially in larger projects, I have never in all my career had an easier time hacking and iterating. I'm infinitely more confident in writing a ton of lines that will work once I compile. In Python and Go, I could end up chasing silly bugs and waste time debugging and tracing to find that I made a typo or ran into a language quirk that gave me an unexpected nil pointer. That situation is almost non-existent in Rust, it's just me and the problem. Rust is honest and upfront about its quirks and will yell at you about it before you have a hard to find bug in production.

Those last two sentences aren't 100% true. Advanced Rust can be tough and you absolutely will fight with it. But to be perfectly honest, this gets rare over time and usually it comes from a lack of understanding. When you finally do understand, it's another tool to add to your belt that makes you a better programmer.
Rust is a low-level language with high level abstractions, while Go is a high level language with low level abstractions.
I think the correct analogy would be more like "stop living in Airbnb, just build a house and in the rare occasion you must travel, then use Airbnb".
No, the analogy would be: stop staying in the same airbnb for a year, just build a house.
I always have trouble thinking of computation in terms of “bits erased”. How many bits are erased when I sort an array? Or invert a matrix? Or compute a function like f(x)=1, which seems to maximally erase information, but doesn’t intuitively seem like it should cost a lot of energy.
I just use Flutter instead, works great for all 5 OS.
The fact that, in the official Rust Book, the author even don't know how to write Higher order function in Chapter 1 said something about Rust.

Just write down how to do good functional programming with currying, HOC right in chapter 1 and all is good. Don't treat reader as "zero-knowledge beginner".
Yes, that comment _is_ creepy and objectifying (regarding a woman as an ideal object rather than as a person).

If men want to be less lonely then they need to work on treating women as fellow human beings and not acting so entitled.
This seems like a movement of the goalposts. I'm not that concerned about electronic waste, and I haven't seen any great arguments why anyone really should be.

It's not replaceable in other brands, because approximately no one is making a laptop remotely equivalent to the M1/M2. Perhaps the Surface Pro, but even that isn't a good comparison.

Remember when Apple made the first Air and it was so far ahead of every other laptop out there that Intel had to invent the term ultrabook to describe it so Asus and Dell could clone it? Yeah.
Good active noise cancelling headphones mean you can listen to music at quieter volumes than you normally would.
See https://looking-glass.io/ to get around directly connecting monitors

But forwarding real GPUs limits the number of VMs and can cause stability issues if unlucky - PCIe device bugs, especially reset bugs, are not unusual. Had problems with e.g. a forwarded rx580 that would require a hard reboot of the host to fix...

Things like Intel GVT-g and VirGL are better solutions, when they can be used.
Good point, but I believe that was a serious problem 10 years ago, while these days virtually any decent motherboard properly supports IOMMU, consumer-grade boards included - e.g. any Asus motherboard should work perfectly.
wrong Wikipedia link? Should be: https://en.wikipedia.org/wiki/Stanley_B._Lippman
ChDB: Embedded OLAP SQL Engine Powered by ClickHouse
chDB keeps growing and now supports X64/ARM64 platforms, persistent query sessions to disk, UDF functions and more binding targets!
We're looking for more OSS friends, maintainers, contributors and developers to join the project! Up for grabs areas include:

- C++ core
- Go binding
- Rust binding
- Node binding
- CLI and Toolsets
- {your ideas}

If you love ClickHouse and want to take it with your anywhere, come build chDB with us: https://discord.gg/Njw5YXSPPc
Nope:

>We recently did some routine reviews of our customer accounts. We noticed some suspicious information in your account.

>We have some concerns regarding this information and we have decided to close your account.

>We do not share details about why certain accounts appear suspicious. Publishing this information would make it easier for people to create fake accounts and abuse our services.

>We apologize for the inconvenience.
It has been solved decades ago: it’s called a browser.
How do you know they care but have no choice? Are average people besides devs talking about how slow their web apps are?

For your small phone example, even Apple is cutting production of their smaller phones because not enough people are buying them. The entire premise really is overblown online.
Need something maintainable and safe at run-time, not easy.

I'd also argue that python and performance is totally untrue. Python is probably only second to bitcoin mining in terms of wasted CPU time and global CO2 emissions. Every python programmer that switches to go or rust is the equivalent of removing 15 cars off of the road after all.
>I'm not concerned about electronic waste.

Why not?
> Lightning has been getting a bit long-in-the-tooth (USB2.0 speeds are impractical […])

Lightning actually already supports USB 3.0, but Apple have only ever used that for supporting external accessories on some iPad models… models which now use USB-C instead, I think.
> Not really. I use unwrap and clone everywhere and I can do everything as if Rust were then a garbage collected language, and I can then test out different solutions, hack my way through, just as I would in Go or Python.

This part of the comment deserves to be highlighted and mentioned more. I think this exactly the way to "hack something together quickly" in rust.

After that, incorporating correctness seems to be as simple as grepping with each unwrap and "dealing with it".

With the above approach, Rust is a great prototyping language as well.
Having hacked on that codebase (the heirloom-vi project has replaced my personal ex-vi fork for my own use since) the heavy use of globals and assorted trickery means it's not the easiest thing to read.

For a simple but really rather elegant piece of code, I very much enjoyed reading the sources to abduco a while back.
Thanks.

V syntax looks somewhat clear.
https://news.ycombinator.com/item?id=5536734

Based on that.

And this -
https://news.ycombinator.com/item?id=2322031

Which has more links to older surveys.
Thus 40.
Electron’s bloat and power consumption wouldn’t bother me so much if the performance was actually good on a fast machine. But the experience is awful compared to a native app.
Flutter works pretty well for apps like these.
In my experience The Cloud™ requires a much larger skillset, ensuring that your ops department will never stop growing.
<small> used to be a formatting tag, but with HTML5 it became a “fine print” tag.[1] Formatting-only tags like <font> have long been deprecated and fallen out of use.

[1]: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/small
That hasn't been necessary for 15 years.
Yes, llvmpipe or lavapipe is awesome. It is fully Vulkan 1.3 compliant and the performance is more than adequate for GUI apps, simple 3d apps or running your gfx tests in a CI environment without a GPU.
If you’re good at one of them, you’ll probably do ok with the other one, but definitely not “really good, professional” work
Why does it have to be node and express? You can compile lightweight Go, C++, Rust binaries.
I don't think this is quite the same fashion, the original post looks like the geometry is being generated by the equations while Tupper's formula directly stores a bitmap image in the coordinates.
My wife looked up all of the moths and butterflies that are native and in decline. She made a list of all the nursery plants and food plants and filled the garden with them. It felt like magic to see a small blue, a peacock butterfly, cinnabar so many different types of moths I can't even name. The bird population went up at the same time but my wife also ensures that they've always got fresh water to drink and bathe in.
I wonder if Bevy might be a good alternative, it's in Rust which isn't a proprietary language.
Bragging rights.

"My AWS bill was $100k last month" is the new "I'm a manager with 10 direct reports".