Remix.run Logo
Craft software that makes people feel something(rapha.land)
166 points by lukeio 7 hours ago | 79 comments
mmooss 2 hours ago | parent | next [-]

> created solely for myself; I never had the intention of making it [...] mainstream

This is how many artists have worked. They make something for themself, and one day they show it to someone else ... or they just get the urge to share it more widely, often without the hope that anyone will really be interested. Or they keep it for themself.

I think Tolkien is in that group, for example. But don't get the wrong idea from an extreme outlier: much of the time, others aren't interested, or not many are. Sometimes, nobody is interested until after you've forgotten about it or passed away. Who cares? That's one reason you need to make it for yourself. Also, I think that otherwise it provides much less expression and insight into another person, which is at the core of art. There is a fundamental human need to 'externalize the imagination'.

alsetmusic an hour ago | parent | next [-]

Several years ago, I wrote an angry email to loved ones about something I’d seen in national news (USA) about my city. A friend replied saying that he thought I should submit it to a local paper. Ended up as an op-ed. Not a major claim to fame, but I was still pleased that someone cared enough about my words to publish.

nospice an hour ago | parent | prev | next [-]

> This is how many artists have worked. They make something for themself, and one day they show it to someone else

That model depended on personal wealth or (more often) patronage. Because the supply of wealthy patrons was limited, it meant that you had fewer artists pursuing their visions. Everyone else needed to find menial jobs.

Now, we democratized access to patronage, but it means that to support yourself, you need to deliver what gets you the most clicks, not what your soul craves.

I sort of wish we still had both models, but I think that wealthy patrons have gone out of fashion in favor of spending money on crypto and AI.

eikenberry 19 minutes ago | parent [-]

> That model depended on personal wealth or (more often) patronage.

"They make something for themself, .."

For the vast majority of people this means doing it on the side, in addition to their day-job. I've known a lot of artists in my time and we all have day jobs. You do art for yourself because you love to create, not expecting to make any significant money on it.

nospice 6 minutes ago | parent [-]

Right, which works great if your daytime job is being a professor at Oxford, but maybe less so if your only opportunity is farm labor or other physically exhausting job.

Today, more people have the opportunity to dabble in art than ever before.

samdoesnothing 20 minutes ago | parent | prev [-]

Kafka is another.

pedrozieg 4 hours ago | parent | prev | next [-]

There’s something refreshing about explicitly saying “this editor exists to delight me, and that’s enough”. The default script now is that every side project should either be open-sourced or turned into a SaaS, even if that pressure is exactly what kills the weirdness that made it interesting in the first place.

Some of the best tools I’ve used felt like they started as someone’s private playground that only later got hardened into “serious” software. Letting yourself park Boo, go build a language, and come back when it’s fun again is probably how we get more Rio/Boo-style experiments instead of yet another VS Code skin with a growth deck attached.

mghackerlady 3 hours ago | parent [-]

I'm very much for people open-sourcing their projects in terms of releasing the source code. Just don't accept patches or whatever, keep the repos closed

mirashii 2 hours ago | parent [-]

Unfortunately, and I think to great overall harm, GitHub does not let you disable many of the collaboration features. I was just having a discussion today with someone who would be fine open sourcing their code, but is uninterested in any contributions, questions, or community interaction. Since GitHub won’t allow that, their options are to host it somewhere themselves where nobody will see it, or just don’t publish it, which is ultimately what happened.

munificent 2 hours ago | parent | next [-]

I have a hobby game up on GitHub. The README explains that it's open source for people to fork it and file issues, but that I don't accept contributions. So far, it seems like that's been very effective.

We don't always have to solve problems with technology. Sometimes you can just tell people things.

matheusmoreira 2 hours ago | parent | prev | next [-]

> GitHub does not let you disable many of the collaboration

I wish they'd allow making issues and pull requests sponsor only. Could enable a business model.

Yokohiii an hour ago | parent [-]

It's weird that this thread argues to keep the fun in hobby projects and you ask for the exact opposite.

matheusmoreira 11 minutes ago | parent [-]

It's precisely because of the hobby nature of my projects that I want this feature. Support and collaboration are a lot of work. I have trouble conjuring up enough motivation to work on my projects as it is.

Yokohiii 4 minutes ago | parent [-]

Sponsors can have quite a bit more entitlement then the average github dude. But well, maybe if you lock it down for sponsors the stress level is overall lower.

Lammy 19 minutes ago | parent | prev | next [-]

I use an Action to auto-close any Issue or PR in my hobby repo for same reason: https://github.com/marketplace/actions/repo-lockdown

hnlmorg an hour ago | parent | prev | next [-]

Odds are, you’re not going to get any contributions even if you do want them. So they could just upload regardless.

And if the README explicitly says the project isn’t open to contributors nor feature requests, then you’re even less likely to see that (and have a very valid reason to politely close any issues on the unlikely scenario that someone might create one).

The vast majority of stuff on GitHub goes unnoticed by the vast majority of people. And only a very small minority of people ever interact with the few projects they do pull from GH.

mghackerlady 25 minutes ago | parent | prev [-]

The obvious solution is to just not use github but that's probably not super easy for people without the resources to just throw a tarball on a server somewhere and link people to it

Minor49er 5 hours ago | parent | prev | next [-]

> When programming becomes repetitive, the odds of you creating something that makes people go “wow” are reduced quite a bit.

Unless you're working on something with a lot of breadth, of course. A great example is yt-dlp which works on a huge number of sites. The wow-factor is high because it feels like it just works everywhere. That's only possible through a huge number of data parsers, many of which are not terribly different from one another

ozim 3 hours ago | parent | prev | next [-]

Yeah I make software that makes people feel something - rage - there are 2 types of software one that no one cares about and software that people use and voice their opinions about :)

elcritch 3 hours ago | parent [-]

I was looking for this comment. For example Microsoft Teams and Office 365 make me feel something, but it’s not joy.

mghackerlady 3 hours ago | parent [-]

I feel bad for the poor souls that are forced to work on software like that. It surely can't be fun

logicchains 2 hours ago | parent | next [-]

They might be sadists having the time of their lives. There are few better opportunities in life to get away consequence free with causing pain to a huge amount of people, than working on Microsoft Teams. Not only get away with it consequence free; they're even getting paid for it!

mcny 2 hours ago | parent [-]

I have not met a single softie who defended the decision to make ctrl shift c the shortcut to start a call in a group chat when ctrl shift v is paste unformatted.

Especially given that the teams client doesn't allow disabling or editing keyboard shortcut.

Microsoft employees may be lazy but unlike Facebook employees (I refuse to call it meta), I don't think they are evil.

wyre 2 hours ago | parent | prev [-]

H1-B visas? Their alternative surely isn't better.

devinprater 2 hours ago | parent | prev | next [-]

Emacs and Emacspeak make me feel something. A lot of something. This kind of "playground" feeling where I can dive into a manual that's just sitting right there. The the entire Emacs is a manual. C-h m and boom, all keyboard commands for that mode are right, feaking, there. No hidden bullcrap, no patchwork HTML tables to drudge through, nothing. And if something doesn't work with Emacspeak, I can Codex it into working. Maybe. Enough to get what I want done, done.

brailsafe 21 minutes ago | parent | prev | next [-]

This is what my nostalgia for native macos editors rests on. I've wanted to buy Coda despite VSCode and other derivatives being more productive, and where would editors now be without BBEdit, Textmate, Espresso/CSS Edit, which all did particular things very well, given the constraints at the time.

jesse__ 2 hours ago | parent | prev | next [-]

> created solely for myself; I never had the intention of making it [...] mainstream

This is a habit I picked up from two people I respect greatly as programmers; Casey Muratori and Jonathan Blow.

Those guys both built their own little lands; Jon went as far as building a new language, a 3D game engine in that language, and has multiple game titles in-flight in the engine.

I have a handful of projects that are similar in spirit. I'm largely the only, and target, user of these projects. It's joyful to work in an environment you control completely. No deadlines, no feature requests, no support tickets, no garbage collector, no language runtime .. just me and the OS having a party.

mmooss 2 hours ago | parent [-]

> Those guys both built their own little lands

Do you mean they created their own fictional geographic worlds (or parts of worlds)? That's amazing. Many - including Tolkien, I think - have started that way. Sometimes, the world finds out about it. Robert Louis Stevenson started with a map.

jesse__ 2 hours ago | parent [-]

Hah, I should have been more specific. They created programming environments that are entirely their own. Although Jon has created several games which include fictional geographic worlds.

jamesgill 2 hours ago | parent | prev | next [-]

I agree with the title, but disagree with this:

"When programming becomes repetitive, the odds of you creating something that makes people go “wow” are reduced quite a bit. It isn’t a rule, of course. You need to be inspired to make inspiring software."

The purpose of software for other people is not to make them go 'wow'; it's to help them with their jobs to be done. That's it. The software is always in service to the job the user wants to get done. Can that make them go 'wow'? Sure, but you can't..aim for 'wow'. That's the wrong goal.

As far as 'inspiration' goes, I'm with Stephen King: "Amateurs sit and wait for inspiration, the rest of us just get up and go to work."

For those that might disagree (hey, it's HN), I would ask: how do you know when 'wow' occurs? Here's a clue: 'wow' can only happen when something else occurs first. That 'something else' is described above.

robin_reala 2 hours ago | parent | next [-]

That’s overly reductive. You’re making a CRUD app? Absolutely. You’re programming a new effect for a laser setup in a club? Less so.

bandofthehawk 2 hours ago | parent [-]

Even in the case of a CRUD app, I think it's not bad to aim for a wow. Like "with this new feature, I'll no longer need to do x, y, and z repetitive tasks, great!"

9rx 2 hours ago | parent | prev [-]

> The purpose of software for other people is not to make them go 'wow'; it's to help them with their jobs to be done.

Aside from where you've only duplicated something that already exists (in which case why bother?), what kind of software would you be able to create to help me do my job that wouldn't also make me go 'wow'?

Any part of my job that I lack tools to help me with are the parts that seem impossible to have the tools for, so when you defy that understanding, 'wow' is inevitable.

Yokohiii an hour ago | parent [-]

> Aside from where you've only duplicated something that already exists (in which case why bother?)

If we had stopped reiterating on the wheel our cars would drive on wooden logs.

9rx 34 minutes ago | parent [-]

Of course, a wheel doesn't duplicate a wooden log. The wheel most certainly 'wow'-ed people when it was first introduced.

But if you release a wheel today, same as any other wheel you can already buy, don't expect much fanfare.

Yokohiii 16 minutes ago | parent [-]

My point (and that of the previous poster) is that "wow" isn't required as an initial property to do anything. Pretty sure the dude who made the first wheel just did something that was useful for him in that situation. He didn't think how he could do something to impress his peers. He maybe wasn't even aware he made the first wheel or something innovative.

Also if I'd dive into how F1 wheels are made, I'd expect I learn stuff that is fascinating and far from boring.

9rx 12 minutes ago | parent [-]

The question asked — paraphrasing to include the context you have added — is how you could create something like a wheel, or a novel adaptation on the wheel like an F1 wheel, without sparking 'wow'? It just doesn't seem impossible. You may not come with the intent to create 'wow', but it is going to happen anyway.

PTOB 5 hours ago | parent | prev | next [-]

In so far as it makes me feel the relief, awe, and pleasure of picking up a good tool, then by all means.

The mouse trail made me feel something else.

trashface 2 hours ago | parent | prev | next [-]

I've done this, but the product I made is prohibited by the terms of service of the application it works with, and that industry is litigious and authoritarian. So I'm never going to release it, or even talk about it.

css_apologist 2 hours ago | parent | prev | next [-]

i remember making the switch from atom to vscode felt so cold

i can’t explain what, it wasn’t just the colour scheme

atom was objectively worse on performance and a few other things i forget, but it felt so good to use

ChrisMarshallNY 3 hours ago | parent | prev | next [-]

I love that essay.

I tend to do things the same way. I write software that I want to use.

I do tend to go "all the way," though. Making it ship-Quality, releasing it on the App Store, providing supporting Web documentation, etc.

Makes me feel good to do it.

I always used to say "My dream is to work for free."

Livin' the dream...

amelius 5 hours ago | parent | prev | next [-]

I don't know what the article was about because I got distracted, but the mouse animation looks great!

bodhi_mind 2 hours ago | parent | prev | next [-]

I’m stuck on the opening sentence. Family went to sleep in the morning so rest of the day is free? I must be missing something but that doesn’t make sense.

Did the author chloroform them?

munificent 2 hours ago | parent | next [-]

I think English isn't their first language. I believe they mean "are still asleep".

apsurd 2 hours ago | parent | prev [-]

babies? nap time?

tarkin2 2 hours ago | parent | prev | next [-]

Making people something for software rather than helping them interact healthily with real people in their surroundings feels irresponsible at this point in time, given all the damage social media, short form videos, and the rest have done to the world at large.

PaulHoule 6 hours ago | parent | prev | next [-]

Love how the mouse trail effect is using O(1) memory no matter how fast you move the mouse so it won't blow up your browser.

queuebert 2 hours ago | parent [-]

Genuine question: What else would it do? The mouse trail is a history of coordinates, so that should be linear, right?

barrenko 2 hours ago | parent | prev | next [-]

Craft software that makes you feel something.

deadbabe 5 hours ago | parent | prev | next [-]

Dread is a feeling.

T_Potato 3 hours ago | parent | next [-]

Yes, that's a good one! Many skilled programmers working in corporations like to go for this one.

mcphage 5 hours ago | parent | prev [-]

There's definitely software that wants to make people feel dread. Mostly horror games and Atlassian applications.

aeblyve 4 hours ago | parent | prev | next [-]

I find that the software that evinces a feeling of admiration in me is itself as devoid of feeling as possible, RE the observation that aesthetics are created out of pure functionality.

The more "sentimental" or "egotistical" a piece of software is in itself, the less I like it. Taken to the limit, the title of the article commands us to generate Skinner boxes to maximize user engagement etc.

jrm4 4 hours ago | parent [-]

I don't think it's too reductive to suggest that what you're liking is also "a feeling," just a different one than you were thinking about?

aeblyve 4 hours ago | parent [-]

I think that would be too reductive. The objective productive factors of software are what give it actual value. The author could have chosen to write "produce useful software", but did not.

crumpled 5 hours ago | parent | prev | next [-]

Looks like they disabled the mouse effect thing everyone is talking about, for the articles. So if you want to see it, go to the homepage of the site.

runtimepanic an hour ago | parent | prev | next [-]

The Zelda example is a good reminder that emotion in software often comes from consistency and responsiveness. Those games feel immersive because the underlying systems behave predictably, inputs map cleanly to actions, and the world reacts without friction. That same principle applies to non-game software too: tight feedback loops and coherent internal rules make tools feel “alive” in a way users notice even if they can’t articulate it.

susam 28 minutes ago | parent | prev | next [-]

On the topic of sharing personal, hobby software and making it open source, let me share a small story.

I usually do not shy away from sharing my hobby tools and experiments. Even if I am the only user of something I built for fun, if I have the time and inclination, I try to package it properly with a README.md, LICENSE.md, etc. and share it on GitHub or Codeberg.

There was, however, one piece of software I hesitated to share. It was a small set of Emacs functions that let me use the comma key (instead of the Ctrl key) to type Emacs key sequences. For years it lived directly in my ~/.emacs. I hesitated because I felt the idea would seem outrageous to experienced Emacs users.

It didn't have a separate mode like Vim where the comma key would function as the leader key. The comma key acted as a leader while you were typing normally. So when you typed 'I like eggs,', the moment you hit the comma after 'eggs', my code would kick in and start reading an Emacs key sequence, with each comma standing in for Ctrl. For example, ',x,f' behaved like Ctrl+X Ctrl+F.

So how would you type a literal comma? In most cases, we don't type a comma by itself. A comma is usually immediately followed by a space or newline and the tool takes advantage of this pattern. So ',<space>' and ',<newline>' produce literal ',<space>' and ',<newline>'. On the rare occasions you need a comma by itself, you type two commas, i.e. ',,' to escape the special behaviour of comma.

Why did I feel some users might find this design to be outrageous? First, you could not type a comma in the usual way, since every comma triggered this leader key behaviour. Imagine mapping your comma key to Esc in Vim! It is disruptive. Second, why choose the comma at all instead of something less common like the semicolon? Third, having to type the comma twice for sequences like Ctrl+X Ctrl+F could seem awkward. Despite all this, I had reasons for each choice, and it worked very well for me for years.

About two years ago, I finally took a leap of faith and published it. I pulled the code out of ~/.emacs, turned it into a proper package, wrote a manual, shared it with the Emacs community and waited. To my surprise, the response was mostly positive. A few kind people sent pull requests that improved the package a lot. What started out as a quirky tool with unusual features ended up with a small community of users.

I have written more about the package here: <https://susam.github.io/devil/>. This tool was never meant for anyone but me, yet I find joy in knowing that there are some people out there who use this tool and the quirky and questionable design choices I made for myself work for them too!

militanz 3 hours ago | parent | prev | next [-]

Very interesting, I learnt Rust for the same reason: having fun doing something that I need and learning new things in the process.

Good luck for your new project!

dzink 3 hours ago | parent | prev | next [-]

That was the thought when I designed https://dianazink.com

beanjuiceII 6 hours ago | parent | prev | next [-]

rage after moving my mouse on that site...great work !

flemins an hour ago | parent | prev | next [-]

Does anger count?

rkomorn 43 minutes ago | parent [-]

Not if you want to stand out from the crowd.

ghjv 5 hours ago | parent | prev | next [-]

habitually move my cursor while reading things... so Feels Bad for sure

ranger_danger 5 hours ago | parent | prev | next [-]

Love the mouse cursor, it made me feel happy.

ZebusJesus 3 hours ago | parent | prev | next [-]

Boo is an interesting name for an editor what feature were you looking to make that others didn't have? I like your website by the way, the blue square that turns the mouse cursor into a tracer is a neat effect and makes interacting with your content fun!

smm11 3 hours ago | parent | prev | next [-]

Circus Ponies Notebook.

That was a look into a world we steered away from.

imiric 3 hours ago | parent | prev | next [-]

> I don’t really feel I need to follow people’s cake recipe for success.

That's great, but then what's the point of this article?

The author is seemingly offering advice about why and how software should be built, but then claims to not follow anyone else's advice. Cool.

Just do whatever makes you happy. If you want to work on proprietary editors and programming languages, go ahead. I would argue that doing that in the open would both improve the projects and make the world a better place, far more than blogging about them does, but this doesn't matter if you're optimizing for personal happiness.

torginus 5 hours ago | parent | prev | next [-]

The title sounds like the Chinese curse of software development.

Fun tidbit: Just to make sure I got it right, I quickly googled the phrase. Gemini's elaboration on the topic truly made me feel something. Gemini's answer:

A "Chinese curse" often refers to the phrase "May you live in interesting times," though it's not actually Chinese but a misinterpreted English saying, while actual Chinese curses involve direct insults like "Cào nǐ mā" (Fuck your mother(sic!))

swader999 4 hours ago | parent | prev | next [-]

I think with tools like Claude code you can more easily tackle niche areas that would benefit from custom crafted features and then using the app would feel like it was purpose built for the specific task at hand. Sure the code might not look hand crafted, but if it works and solves problems in the world...

Xenoamorphous 4 hours ago | parent | prev [-]

Kinda tangential but in the advent of AI I feel like there won’t be a niche for “handcrafted software”.

When quartz watches came up the makers of mechanical watches struggled. Quartz watches are cheaper, more accurate in many cases and servicing is usually restricted to replacing a battery. However some people appreciate a good mechanical watch (and the status symbol aspect of course) and nowadays the mechanical watch market is flourishing. Something similar happened with artificial fabrics (polyester, acrylic) and cheap made clothes, there’s a market for handmade clothes that use natural fabrics.

Nobody (well, barring a few HN readers) will ever care if the software was written by people or a bot, as long as it works.

tuveson 4 hours ago | parent | next [-]

Or maybe it's like someone saying homecooked meals and professional chefs are outdated because McDonalds exists. Homecooked meals are cheaper and healthier, and professional chefs still make better food. I don't think McDonalds is about to disappear, but I'm pretty sure those other categories aren't about to become obsolete any time soon.

cons0le 2 hours ago | parent | prev | next [-]

Watches are a horrible example. The rich buy them because they're a status symbol. Rich people aren't going to start retaining teams of software experts just for status.

"Mechanical watches" also aren't exploding at all. When people cite this, they're citing the overall watch market growing, because the market for million dollar watches is being driven by a very small group of collectors. Its also not sustainable, and will die down in ~10-20 years when these old guys finish dying. The average not rich person could not give less of a damn about mechanical watches. There's no great comeback on the horizon

nicbou 3 hours ago | parent | prev | next [-]

I disagree. It enables more people to build utility software without the pain of writing the boilerplate code for it. This should leave more room for their taste and expertise.

That's how it works for me. I'm currently turning a lot of raw data into a map of Berlin rents. I spend less time figuring out the map API, and more time polishing the interesting parts.

I don't care if a craftsman used hand tools or a CNC to build beautiful furniture. I pay for taste, not toil.

macintux 3 hours ago | parent [-]

I think you're agreeing, not disagreeing. I also misread the comment originally.

Emphasis mine:

> there won’t be a niche

jesse__ 2 hours ago | parent | prev | next [-]

This is a bad analogy.

> more accurate in many cases

It's laughable that LLMs can be considered more accurate than human operators at the macro level. Sure, if I ask a search bot the date Notre Dame was built, it'll get it right more often than me, but if I ask it to write even a simple heap memory allocator, it's going to vomit all over itself.

> Nobody [...] will ever care if the software was written by people or a bot, as long as it works

Yeah.. wake me up when LLMs can produce even nominally complex pieces software that are on-par with human quality. For anything outside of basic web apps, we're a long way off.

davidivadavid 4 hours ago | parent | prev [-]

So the proof for your claim is two counterexamples?

ares623 3 hours ago | parent [-]

I believe OP’s intent was that for software, normal users don’t see or understand what’s under the hood so how the software is built doesn’t matter.

Xenoamorphous 3 minutes ago | parent [-]

Exactly. I thought my last paragraph made it clear that software is not like the other couple of things.