skysight-inc/HackerNews huggingface dataset:
Well of course it’s hard since they made all their software available for free to corporate communes. Instead they should charge anyone earning > idk 1 million in revenue a fee. I know these freeloaders (amazons, microsofts, and apples) expect our hard earned money and code for free but i think it would be fair to make them start paying.

Then you’d get more indie software developer success stories.
One the flipside here, you can argue that, every time you get another "1", this is great for the economy. You now have someone who's making their own money, leaving a salaried job spot open for another person.

A lot of these indie hacking ventures probably wouldn't exist at all if the person making them decided not to. If that is, or for the subset of indie hacking companies for which it is true, it means this is growing the economy.
That's not really true, is it? Surely Git does have an internal concept of diffing changes, specifically so it knows whether two commits can be merged automatically or if they conflict (because they changed the same lines in the same file).
While I admire the can-do attitude and independent mindset, stories like this strike me primarily as how unscalable doing something like this is.

I mean, it only works because not more then 1-2% of developers even try to do something like this, since it's really hard to ensure you have enough edge in understanding user needs, building and being able to find a distribution chanel, and there simply isn't enough revenue to support many more developers to sell their niche products.

I hate this conclusion, but most developers have to rely on salaries, since only a few companies have captured revenue streams big enough to justify a full time job.
alacritty is fast but kitty is faster. glad to see us racing to the top in this space.
This is something college is good for, FWIW. Everyone is expected to be young and inexperienced and it's set up to build experience at a reasonable pace, with supportive external validation.

I always feel like the "school is useless" meme ignores all this stuff.
The paper is well written, but unfortunately for me at least, very verbose and fails to get to the point quickly enough.

Anyway, my takeaway is that "Polycentric Interstate Federalism" is very similar to what has happened so far with the European Union, and it would be fair to say that it has not been a resounding success.

Did I miss something important? Would you agree?
The "different kind of switch" you talk about doesn't exist on any OS of the past 30 years.
I always enjoy reading success stories of developers of small apps.

At the same time, I can’t shake the feeling that we’re seeing only a cherry picked part of the picture. There is no mention of advertising spend or customer acquisition costs. The trend among indie hackers is to talk about MRR without mentioning a single expense, then to interleave it all with “follow me on Twitter” so you’re inspired to join their audience. This is a bit cynical, but I’ve been following accounts like this for a decade and it’s depressing to watch how many of them pivot into trying to sell me courses and/or private community access based on their success.

Audience building (which he readily talks about in the article) becomes a conflict of interest for real information because it incentivizes big numbers while hiding costs. Maybe his apps are growing entirely organically and it’s pure profit. Or maybe he’s spent huge amounts of money on ads or marketing to get more installs to grow his user base as fast as possible. He mentions spending 16 hour days between coding the app and promoting it.

The thing is, we don’t know how he got the users, and he won’t tell us because admitting anything other than MRR would only detract from his story. And as any small business operator knows, getting the customers is the hardest part.

I wish him the best and enjoy following these success stories, but having seen enough of these I always take the isolated MRR numbers with a grain of salt. It’s not the full picture. This isn’t unique to this developer. It’s the trend among social media “indie hackers”: They know people are hungry for success stories and want to learn the secrets of how to build a successful indie company, so they build narratives to make themselves look like the person who will share those secrets. But then the more you read and the more you follow, the more you start seeing how they’re leaving out all of the actual secrets and keys to success, such as how they’re marketing their apps and getting downloads.
And be sure to return to your field (office as they call it these days), peasant.
TIL communism is when organizations do things.
People seem to love their Prusa machines… I've seen that brand mentioned by people who run 10+ machines for small-scale production runs.

Can you add any color about why you chose Prusa, and how you view them within the broader market? Are they the Honda CRV of the 3D printer world?
The solution to receiving an unsatisfactory reply on a support ticket is not "lower your expectations", regardless of how that business may be structured.

If we lower our expectations of software, we'll get exactly that, shitty software.
We’re discussing trusted CAs typically bundled with operating systems or browsers here. They have to follow the baseline requirements and at least maintain a semblance of innocence. Directly compromising clients with a typically untrusted root cert is out of scope, and you don’t need an evil CA in that case anyway.
Technically true, but nobody ever does this because it is a massive waste of CPU cycles.

Both OS and "green" threads are meant to switch when doing i/o.
Then you've never met a well-socialized tarantula; they sing and dance all the time. Usually in 6/8.

(This etymology is hilariously absurd: https://en.wikipedia.org/wiki/Tarantella )
He was Communist Vietnam born and raised.

Funny enough, this type of entrepreneurship is more common in Vietnam than the US (I have lived in both, now in Vietnam).
> 19% of students at schools that use filtering technology say they were even aware of students who were “outed” for LGBTQ+ as a result of the filtering.

I am very skeptical this 19% should be taken at face value.
Just accept that there exist people who get fulfillment out of looking for the low hanging fruit all the time. And spending lots of time on marketing.
HN: "It's okay to make something nobody wants = damn right! Do it for the craft and the process and the learning and the joy."

Also HN: "A guy makes 45K/mo by building tiny time-saving apps, starting with ones he himself wants = what a sad world of frivolous side-hustles!"
I have three kids. I think cameras in the classroom that can give parents a view into what's going on is a great thing. Especially in classrooms with children who have disabilities. But surveilling them on their phones, putting cameras in the bathroom, that's a step too far.
I think there is a lot of money to be made in building "human accessible" frontends to AI tools, so I'm not surprised that his ChatGPT wrapper product does well.

Setting up Midjourney, for example, is such a convoluted mess, where you have to create an account on another service (Discord) before creating a Midjourney account, then understand the different chat channels and figure out where the best place to use the app is (private DM with Midjourney bot.) And that's all before even generating an image! Even their website looks like someone's art project, not a cutting-edge image generation service: https://www.midjourney.com/
15-30 eye witnesses?
> it doesn’t matter if I split that into 50 10-line commits if I need to merge in the monolith at once

That is a misunderstanding of how to use this feature. It is not meant to break changes
down into useless divisions. It is meant to allow the grouping of changes into logical
units. Logical units that help human comprehension.

This is very important when communicating with people who have never seen your code
before. It allows you to include a narrative description (commit message) with each
logical group of changes that is directly connected to the source code implementation
of just that descriptive piece. It also allows you to connect a chain of those logical units into a progression toward a greater, cohesive goal.

You may dismiss all this as irrelevant to your particular environment, and that is fine.
But Git provides tools that are directed toward it, and they're quite powerful and useful
for those who understand and use them correctly.
> IMO, the most common is not "a satisfactory reply" but rather "no reply".

what point are you trying to make here? that he should shut up and be a good consumer? how dare he expect support from a product he paid for, from a guy making 500k a year, am I right?
Responses like yours are always so strange to me. Perhaps I misunderstood your response but it feels very much like a defense of the status quo. As if the PC was expecting too much to get support for software they paid for and that their raising of the issue in the comment was unwarranted.

How do things ever get better if everyone just accepts everything that ever happens without complaint?
I like it, use it, and teach it.

- It's both fast for prototyping and also scales well for large applications.

- Compiles very fast with DMD and supports many platforms with LDC and GDC.

- CTFE (compile-time function execution) is a big win.

- standard library has enough of the common things (json, sql, csv, curl, sockets, etc.) that I need for my domain. Other stuff I can usually find a package or C library to read in if needed.

- most of the defaults seem right to me in the language versus C++ (variable initialization, struct as value type by default, explicit casting, module system, thread-local data, etc.)

Ecosystem does need a boost but I think that's actively developing, so code-d plugin for VSCode is a good place for most to start (I prefer VIM). Ecosystem seems to be slowly and steadily growing otherwise.

I can post links to more video tutorials if useful (disclaimer: I made them :) ).
India fails to re-establish communication with its Moon probe
I seem to haven't learned that yet, as I still use Coffeescript heavily and I'm happy it exists.

It's only one data point, but if it makes even just a few people happy, it already has enough reasons to exist.

> a new thing to learn and an extra nuisance to use if its toolchain sucks

> if you're asking people to deal with the hassle of a new language it better be for a good reason

I think the biggest confusion here is that you feel that someone is asking you to use the language, or that the creators of the language are pushing it in people's faces.

Couldn't be further from the truth. The creators build a language for their project (Scrimba.com) and had the nice idea to share it with us. If we find it compelling, we are allowed to use it, give feedback, and contribute to its development if we want it to grow.

I personally can only feel gratitude towards these people.
Confusingly, they seem to be using the term “tag” for what is really an HTML element or component.

(E.g. “<div>…</div>” in HTML is not a tag, it’s an element delimited by one starting and one ending tag.)
>if you feed it a manual it will learn to recite the manual, it wont learn how to perform the actions in the manual.

This claim doesn't track with LLM-based agents. For example: https://towardsai.net/p/machine-learning/meet-webagent-deepm...
I use D for a game

What i like:

- fast to compile

- C like syntax

- modules

- slices

- metaprogramming

- compile time type introspection

- independent devs

What i don't like:

- maintainers seems to run in circle, they are scared to improve the language therefore they do nothing to improve it

- no vision

- they no longer seem to view D as a system language

- lacks features to enjoy D as a true "betterC" language

D is nice if you like C but hate headers, they unfortunately chased high level languages for too long, and it shows (EH and GC), language became depend on the two too much, making them unable to capture the system programmers

What's sad is even the high-level languages managed to catch up, as you've mentioned with Go, C# NativeAOT and Java's GraalVM

Web Assembly for example, to target it you have to create a object.d and copy paste bunch of Type Info and hooks... it's been like that for years and they didn't bother improving it, how can you be taken seriously.. system side of things got neglected

Then you have the allocator API that still is marked 'experimental', you can't ignore Exception Handling for your errors

Years after years, whenever you try to mention those issues, they always find ways to either ignore or to remind you that you should fix things yourself

Overall D is a nice language, there are much better languages if you want to target system level stuff, and there are much better languages if you want to target high level stuff

The fact that people mention using D instead of Python is just sad.. relegated as a mere alternative to an interpreted language

The language lacks leadership, it needs a reboot, 3rd time is the charm, just like Python right? ;)
Nanofluidic device generates power with saltwater
Vincent van Gogh the Letters
Compare the current situation with Japan’s rise in high tech. Japan voluntarily accepted the Plaza Accords, that somewhat slowed them down, and I believe that lead to a few decades of economic stagnation for them.

The Chinese are resisting similar treatment but they have other problems that will slow them down, demographics of not enough young workers being a good example.
I made the switch to hledger about two years ago and I have struggled using the command line to input my transactions. Right now I use my text editor (nvim) and a snippet engine for my common / recurring transactions. This may be a little more work than just setting everything up to work automatically, but I like it. For reporting, there are some tools which can help with that, I used to use hreports [0], but have since switched to my own script, which exports the data from hledger and queries it itself.

A good (although opinionated) resource for learning how to use hledger is the manual, which goes in depth about different accounting and modeling concepts [1].

[0]: https://hreports.readthedocs.io/en/latest/readme.html

[1]: https://hledger.org/dev/hledger.html
This whole analysis reads like the economic version of flat earth theory to me, but I thank you both in advance because I am about to go down a research rabbit hole on "corporate communism."
Indeed, and this has been an area where music education has gone back and forth. Historically, the popular Suzuki teaching method started with playing by ear (and being told where to put your fingers) exclusively. Today, "Suzuki" teachers generally add reading to the curriculum, not right away, but fairly early.

An amusing bit of reverse psychology, the kids who learn to read can begin to have more fun on their own than just playing the boring stuff from their lessons. This motivated both of my kids.

These days, the person who is utterly helpless without a sheet in front of them is a rare exception, except maybe on piano. But there are two things "wrong" with the piano: Not just the notation, but the focus on playing it as a solo instrument. In my view, in addition to reading and ear training, the other component that needs to be started as young as possible is playing with other people. The Suzuki method does emphasize this quite heavily. It's hard to do with pianos.
The ones who choose 3 are the peacemakers--annoy the 2's and 4's equally.
Corporate communism? I wonder what’s that, let me check, oh it’s some US conservative talking point.

Wait, isn’t a politburo the executive committee of a communist party? How can that be corporate and own the media?

Wait how is selling apps capitalist success? What capital is winning here? I guess the corporate capital of the company owning the App Store. Or is it the capital that the app making guy is building up?

I guess when you use your own language, the things you say sound very alien, and can’t be used to communicate. You could be saying anything so you’re saying nothing at all.
Can you expand on this? Notation like "=" can be written using language but we define an exact meaning for the operator regardless, unlike language.
Middle class does not exist in South Africa. Look up their Gini index. If you think wealth inequality in the U.S. is bad, it’s 10 times worse in South Africa
> The thing is, we don’t know

In the first paragraph:

At the moment, my total revenue across all products is about $45K/month at ~90% profit.
The question isn't what "slight changes to syntax" the language makes now -- it's what the language can develop into over time. Python 30(!) years ago wasn't the same as Python today.

A small community of people might be interested enough in a language to keep it going until it develops into something interesting, or they might not. It's pretty near to classic darwinian evolution. You don't have to pay attention to every new language, and that's okay. If others do, and it grows into something you're interested later, pay attention to it then. For now, you can ignore it.
This is a good reframe. To summarize a key idea from that article for other readers (though the whole post is worth reading), the author recommends thinking of low-priority but arguably important work as "snacking" and a distraction from the most important tasks.

This is clever, as it's likely easier for people to admit that they are "snacking" versus "procrastinating," especially if the task they are snacking on seems vaguely productive or helpful.
Circle of Protection
Looking at this, I’m reminded of early clang, which was often 5 or more times faster at compiling C++ than gcc, while handling maybe 95% of C++ code.

While clang is still in my experience faster than gcc, it turns out handling that last 5% correctly can knock a lot off your performance. Of course with terminals it might turn out you don’t need that last 5%, or you really can get all the way and keep the speed, but this isn’t the first project dedicated to making “the fastest terminal”.
Fossil provides a mechanism called "shunning" for removing content from a repository.

Every Fossil repository maintains a list of the hash names of "shunned" artifacts. Fossil will refuse to push or pull any shunned artifact. Furthermore, all shunned artifacts (but not the shunning list itself) are removed from the repository whenever the repository is reconstructed using the "rebuild" command.

https://fossil-scm.org/home/doc/trunk/www/shunning.wiki
A distinction without a difference. Private addresses are those that aren't globally routable by definition.
You're right of course. I read "citizen" and interpreted "has the right to work".
Yes, you would only create products you really believe in and find useful to society. But you then would need to compete with the Tonys of the world, who try selling ice to eskimos or simply ads, malware and online casinos.
Show HN: AI Mechanical Keyboard [video]
Hey HN,
I made an LLM powered mechanical keyboard.

Turn the knob and it uses LLMs for autocomplete. Click the knob and it sends custom instructions.

I made this keyboard so I could use LLM autocomplete in apps that didn't have this feature.

Would love to hear feedback, answer questions, or discuss potential use cases.
If you give the chess manual during runtime it could work, plenty of examples of that working. If you give the chess manual during training time it wont work, which means that the LLM can't understand what it is trained on. But you could argue that the LLM can understand the data you give it during runtime, it is harder to argue against that, but it is pretty easy to say that it doesn't understand itself ie the data encoded in it.

Maybe you need two models to understand things, since the models wont understand itself but a model can understand the data encoded in the next model. This isn't an unfixable problem, but it is a problem that has to be solved.
In 186 BC the tarantella went underground, reappearing under the guise of emergency therapy for bite victims.

What the...
Rebasing to squash commits or even split commits up before/during making a PR makes sense to me and I do it all the time just to clean up my mess. The order of development and the state of the repo over time isn't faked, this is just labelling and granularity.

What doesn't make sense to me is rebasing instead of merging. If master has a lot of changes and you want to pick those up, you can merge in which case history reflects reality - each commit has an actual state of the repo that you had on your machine.

Or you can rebase, in which case all of the commits on your branch now contain code that no-one ever had on their machine, not tested, never run, maybe it doesn't compile, maybe it's nonsense.

Both result in the same diff from master so are equivalent for submitting a patchset.

It's really hard for me to see the value of trashing your history like that. People like linear history but history actually is not linear sometimes.
That's a ridiculous claim. Can you really not think of a single situation in which it makes sense to keep track of big pieces of data alongside (or even instead of) source code? The fact that many VCS don't handle large binary data nicely doesn't mean there's never a good reason to do so.
Go for it, 1% of the time it works all the time. If you fail, you just weren’t good enough.
I think what you have experienced is very real. Code (and most forms of expression) are a way to externalize your state of mind.

I've seen it with my own emotional states but also with coworkers when they are going trough a rough time.

This is also why it is difficult to understand others ppl code. And it gets easier as you build a relation/get to know them better. The better you know someone, the easier and faster you can understand their code.

I feel like that is why coding standards, code reviews etc make a codebase more maintainable. You strip the code emotions away or at least reset it to a common level across the team.
You are only angry because you too want to escape and are externalising the frustration of not finding a similar path. At least thats what i learned about myself when i had a similar reaction seeing such success stories. Then it struck me - this is it. This is the way for indie success. Build stuff that makes sense to a niche market. To me the product is irrelevant. But the fact that the author escaped is absolute bliss.

Also arent most products just useless things relying on other ecosystems?
For python, I'd say spaces are objectively better than tabs.
Although people wonder why anyone cares about performance in terminal emulators, it's more about caring about inefficiency in terminal emulators. There are some legit cases where performance actually does come into play, like with high-throughput. Sometimes it's not even necessary, such as when terminal emulators do more work than they should processing data that won't be displayed; those things have the potential to impact the experience even when there is plenty of CPU and GPU to spare, like on a desktop machine. However, it's not just performance. It's also energy usage, particularly on small things like the Pinephone.

Linux being an OS where the terminal is as powerful as it is, it's really good to see a high level of attention to detail going to terminal emulators finally. Terminal emulators should be extremely robust and extremely efficient; and finally, they're getting pretty close.
I occasionally used to start a sync, go get coffee, chat with colleagues, read and answer my morning email, browse the arxiv, and then wait a few more minutes before I could touch the repo. In retrospect, I should have setup a cron job for it all, but it wasn’t always that slow and I liked the coffee routine. We switched to git. Git is just fast. Even cloning huge repos is barely enough time for grabbing a coffee from down the hall.
It’s like biology, there is continuous evolution. New mutations, new selection.