Ask HN: Is there any software you only made for your own use but nobody else?
Just wondering if any of you has created any software that is meant for your use only and will never see the light of the day for anyone else.
What does it do? How did you make it? How much time you spent making it? How often do you use it?
483 comments
[ 494 ms ] story [ 4408 ms ] thread- Python-based pipe-objects-not-strings shell with cluster and database support deeply integrated. Twenty years later, it has turned into Marcel (https://marceltheshell.org), and I’m still the only one using it AFAIK.
- Backup utility for Linux, with characteristics of Time Machine. Been using it for five years, it keeps daily, monthly, yearly full backups, relying on hard links for files that don’t change. Handles both local and remote (to my Raspberry Pi).
I found no free optical design software that would run on Mac, so I coded something up to do some paraxial ray tracing ( maybe more, I'd have to dig up the code) and (this is the good part) draw lens diagrams from the specifications.
Pretty simple, but it was fun to do. Very little available for Linux either. Physics and optics people want to have fun, too.
Much of it was just parsing the input data.
I do recall a design and/or analysis program written in Basic, but it wanted a particular basic interpreter, and I forgot if it had porting problems. Must have. I don't recall using the program.
Oddest bit was something I did on my own for Sun flex office. I would get the list of scheduled occupants and their office choice and overlay that on a map of the office suite, for a "who is where" map.
On a "real" work task, I learned how to write graphics commands in Illustrator 3 format. I may have used that on this project.
But more generally, tacking the AI header code to the file made it valid Postscript/Illustrator format.
Someone once told me that apparently some local sports reporters' weekly tips are used with some seed money and the proceeds are given to charity and I was intrigued enough to spend a few days building something that could test that out.
https://www.robinsloan.com/notes/home-cooked-app/
I forked it back in 2005 because the maintainer wasn't interested in the direction my patches were going. My version has diverged dramatically from the current version.
I have no idea how many hours I've put into it over 19 years. It has needed surprisingly little care and feeding (which I'd attribute to it being a simple PHP app).
I've used it nearly daily in the last 19 years.
[0] https://tt-rss.org/
Edit: I also maintain a set of scripts to import my SMS from phone backups into my IMAP mailbox. Having a single place to search for my written communication is wonderful.
Initially the changes were for handling enclosures. The developer had no interest in supporting them. I wanted to use tt-rss as a podcatcher. That necessitated adding some database schema (tracking enclosure URLs) and UI (a "request download" button in the entry list and entry detail panes for those podcasts where I only download selected episodes, a "download all enclosures" checkbox in the preferences UI for podcasts where I want every episode downloaded).
I also added schema for multiple users to sharing the same database. It was basically per-user preferences and read/unread flags. My grand intention was to add "social" features and eventually a suggestion algorithm. The developer's reaction re: "social" features was, basically, "Why?". (I see that the project has since gained multi-user support...)
I never did much with my multi-user schema. I never even switched my production copy over to it. Amusingly, I've ended up running three separate instances support my blog reading, podcatcher, and TV computer (Youtube feeds). If I'd finished the multi-user work I could be using that instead.
That was the end of my interaction w/ the developer.
In later years I added virtual feeds for the podcatcher and tt-rss itself to report errors downloading or parsing feeds.
Edit: I'd heard about the developer being uncivil. He never was to me, but the reputation is apparently justified: https://community.tt-rss.org/t/how-to-contribute-code-via-pu...
I think it can be easy to get caught up in the software is for business mindset and forget that there is an infinite number of use cases for things you could build that can just be for fun or personal/small community benefit.
The most recent is a Chrome extension that plays a "server down" tone any time the word "critical" appears on our system monitoring web page (Netdata). It plays that tone when the number of "critical" words goes up, and plays a "server up" tone when the number goes down. It's dead simple and works to give me audio alerts so that when I'm hyper-focused on something, I can get pulled out of it by the "server down" tone. It's gone over well with my coworkers as well.
It uses an on-device model for language detection and results are sub 0.3s thanks to groq
If someone wants to try: https://testflight.apple.com/join/GBxPMw2h
For instance, I wrote a tool that tells me how many simultaneous users I need to simulate X number of real users who are hitting the server only intermittently.
If you write tools for your own use, unless they are really big you tend not to bother with coding style conventions. The important thing is being able to code it up quickly.
I used to write everything is Perl, but I’ve switched to Python. It’s a great rapid prototyping language, and basically everything I do is a prototype.
It allows me to launch vscode projects and devcontainers I often work on very quickly. Saves me so much time!
I open sourced it 8 years ago but it was not the original intention. I wrote it for myself. https://github.com/akalenuk/16counters
I wrote it in MASM32. It's therefore a tiny .exe file of about 7 KB. I spent maybe a few hours initially, but I've been adding features one-by-one for several years. I use it a few times a month.
My solution also manages SSL via Cloudflare and integrates with Stripe for simple fixed-price subscription billing models. The idea here is to be able to iterate on product ideas quickly without spending a day each time figuring out authentication and billing.
I did set up a marketing site at the time so that others could use it, but I don't have any users, and I'm happy to maintain it just for my own projects (half a dozen now).
It took me 2-3 weeks to make so on net I have probably not saved much time, but it really helps reduce the friction of launching things which I think is valuable.
[1] - https://github.com/oauth2-proxy/oauth2-proxy
- My blog, which has lots of weird pages for stats, time jumps, old games/tools/utilities. - Flight tracker app. - Home control app (because HA was a pain to keep updated). - Wood working tool helper for my dad.
And more. It's liberating.
I built a pretty simple web app that tracks a bunch of vendors and emails me when items matching my filters come in stock!
I originally thought more people might use it, but I have basically 6 teachers.
Hit me at elliot@edusign.com if you have some time, I might be interested in what you are doing!
I think it took me like an hour to make and I use it several times a week.