[HN Gopher] Ask HN: Have you created programs for only your pers...
___________________________________________________________________
Ask HN: Have you created programs for only your personal use?
Curious to know if anyone has written programs for their own,
regular, & personal use. And if so what they are? E.g. A colleague
of mine tracks all of his homes energy use through a custom program
which disaggregates the energy consumption per device and outputs a
report to a tablet.
Author : smarri
Score : 128 points
Date : 2022-04-13 19:05 UTC (3 hours ago)
| luisbarrera wrote:
| I made a bill splitting app for my friends and I. Decided to make
| it into a company. https://www.producthunt.com/posts/splyt-pay
| BozeWolf wrote:
| For fun I made a tool to create 3d printable stamps (or tokens).
| Upload image, download stl, print, have fun.
|
| I will release it one day. The algorithm is super inefficient and
| can be 10 times faster. But I am the only user.
|
| View result (and save cpu cycles):
| https://powpowstamp.com/designer/bc807d49-3899-4969-a342-528...
|
| Upload a design (black/white outlines works best, see example)
| https://powpowstamp.com/designer/
| matheusmoreira wrote:
| Absolutely. Most of the software I've written is for my personal
| use. I enjoy automating and customizing things on my computer,
| usually by plugging in my own scripts into the programmable
| environments. I'm also extremely fond of reinventing the wheel on
| purpose.
|
| My biggest personal project is a streamlined android app I use to
| easily track my own job performance and statistics. I can back up
| my performance claims with real data, negotiate more valuable
| terms and identify optimization opportunities. It's helped me
| increase my profits by about 60% and also allowed me to work a
| lot less hours because I know how much time I need to accomplish
| each task and can optimize the use of my time accordingly.
|
| I don't feel comfortable publishing things on github without at
| least polishing them a bit first and I no longer have enough free
| time or motivation to do it. Sometimes I come across an
| interesting concept that I just have to implement to convince
| myself it works and that I'm not insane for thinking it. Usually
| lose interest after it's proven, finishing it is a lot of work
| and it just feels pointless.
| olivierduval wrote:
| An SMS sending server on an Android phone, to send me OTP code
| from my VPS
| nicoburns wrote:
| I have two that I use on my personal machine:
|
| 1. A minimal "docker-compose without docker" tool. That allows me
| to run a group of backend web services with a single command and
| multiplex the terminal output.
|
| 2. A browser chooser that I set as my default browser, and which
| pops up a UI that allows me to choose which browser (and if
| Chrome, which chrome profile) I want to open links in. Super
| handy for making sure links get opened in the browser (profile)
| that has the correct cookies for that account. There are other
| tools that do this, but they are either written in Electron
| (slow) or don't support chrome profiles, or don't support macs.
| jdrc wrote:
| yes, for my bookmarks. pinplz.com
| BrianHenryIE wrote:
| I have GoPros on my bike and often when I arrive to work/home I
| forget to turn them off and the batteries die, so I wrote an app
| so I can shout across the room, "Hey Siri, stop all cameras".
|
| I don't use it anymore myself and got a bug report last week.
| It's a couple of years since I've written any Swift at all, so
| I'm not mad keen on working on it, and I feel a bit bad that I
| have published it and it's not working. I never put the code on
| GitHub because the reverse engineering of the Bluetooth was
| somewhat incorrectly documented in the code and I didn't want to
| share bad information. Now GoPro have an SDK I could use.
|
| Similarly, I wrote a Siri Shortcut for checking where the nearest
| Jump (bikeshare) bike is (Python on AWS Lambda). Then Uber sold
| Jump to Lime and there is no API access for me anymore
| (Sacramento).
|
| https://www.youtube.com/watch?v=0RzahKxUYqc
|
| https://apps.apple.com/ie/app/stoppro/id1453312416
|
| https://gopro.github.io/OpenGoPro/demos/python/sdk_wireless_...
|
| https://github.com/BrianHenryIE/Bikeshare-Siri-Shortcuts
| ju-st wrote:
| - a Python script that turns my loudspeakers off when no audio is
| played by Windows (by toggling a smart plug over Wifi). Saves
| quite a bit of energy.
|
| - my TV loudspeaker is frequency corrected by a microcontroller
| (so that the sound is better) and is connected by Bluetooth
| (using an ESP32)
| BozeWolf wrote:
| Nice! I had the same idea for my dumb speakers, except that i
| somehow want to detect my chromecast-audio is not playing/is
| playing.
|
| I used to do this with a relay connected to 5v usb of my tv.
| But i got rid of my tv.
| dadro wrote:
| I combined a series of state collected freshwater bio/fisheries
| data into a web app that maps it out per lake. I use it for
| discovering and targeting specific fish species within a given
| area (town/county). I used it with much success during ice
| fishing season and have started using it for canoe trips to
| target bucket list species I want to catch.
| toast0 wrote:
| I wrote a PPPoE client with failover so I can keep the session
| even when one of my gateways fails or is rebooted (this lets me
| do regular maintenance without interrupting my internet
| connection); I put it on github[1], but I doubt anyone will use
| it. I hope there are few people left with the scourge that is
| PPPoE, and my OS choice means many people would need to switch
| OSes to use it, so yeah. Also, I don't care to make it easy to
| use or to promote it, really. (I've mentioned it once or twice
| and did a Show HN that got less than ten votes, which I kind of
| expected).
|
| I've also got my personal (network) monitoring software, some
| 'IoT' stuff to capture temperature and humidity data around my
| house, and I'm working on a ESP32 based alarm clock pulling data
| from iCalendar feeds.
|
| [1] https://github.com/russor/ppp_thing
| hkt wrote:
| Lots of small scripts. Probably my biggest thing is a typing
| program for my son which has videos my son likes as rewards for
| typing. Just bash scripts and a custom prompt, but it is software
| someone else uses so I consider it to be worthwhile. It is a form
| of speech and language therapy.
|
| (I'd release it but the videos are copyrighted - the clips might
| come under fair use, but I don't know the law well enough to be
| sure)
| racl101 wrote:
| Yes. Scratching your own itch is one of the funnest parts of
| scripting.
|
| I made simple script that converts DB ids output per line that
| you'd get from a query into a comma separated line with a one
| line bash script.
|
| e.g. converts:
|
| 1
|
| 2
|
| 3
|
| to:
|
| 1, 2, 3
|
| Since I do a lot of querying it is very helpful. To achieve the
| same thing in Excel is a fucking nightmare.
|
| The cool part is when I feed it like 50000 lines of input how
| relatively quick it does it.
|
| alias onelinify="paste -d, -s -"
|
| example usage (on macos): cat db-ids.txt | onelinify | pbcopy
| iostream24 wrote:
| Constantly. I make mini apps for all kinds of thing, but often to
| modify existing data of some kind in a brutal batch fashion
| tombert wrote:
| I have a fairly large blu-ray collection (~300 movies, ~15
| complete TV series). I rip them and serve them with Jellyfin,
| which works, but due to codec annoyances, I need to transcode
| them to run on web browsers, and the SBC I'm running Jellyfin +
| ZFS on is not really fast enough to transcode in real time.
|
| Since I have a ton of little SBCs sitting around my house, I
| decided to write a clojure app the queues up and transcodes my
| movies to H264. It uses Docker Swarm to handle distribution of
| nodes, RabbitMQ to queue up the movies, and core.async to handle
| local queuing within the application, and uses the Java NIO
| filesystem stuff to handle any kind of atomicity.
|
| It's hardly the "first" or the "best" at what it does, but the
| advantage of writing your own is of course that you can tailor it
| exactly to your setup, and of course it was fun to write.
|
| https://gitlab.com/tombert/distributed-transcode
| verit wrote:
| Every so often I want to derive a fraction from a decimal value,
| such as 0.571 => 4/7. The key point is I want good
| approximations, not exact values. That is, I rather get 4/7 than
| 571/1000. I had found a tool at one point that did it, but it
| stopped working, so I made my own.
|
| https://voces.github.io/dec2fract/
| smm11 wrote:
| I turned a photo gallery thing into an ecommerce site, tied to
| Paypal, on a Mac maybe 20 years ago. Lot of PHP mucking-about,
| with little idea what I was doing. No harm or foul, though, other
| than I could have picked a different gallery app that already did
| that.
| rco8786 wrote:
| A bunch! Budgeting software, fitness tracking, a small CRM for a
| private preschool that my wife worked at, a command line
| journaling tool, etc
| RapperWhoMadeIt wrote:
| I recently developed a command line chat app that I can self-
| host, to chat with my friends from the terminal and regain
| control over my chat data and metadata. I self host the back end
| in Linode and just for the lolz and "Unix portability" I wrote it
| entirely in C. I don't really expect this to be useful to anybody
| else than me and the couple of friends that also use it. I can
| now chat from the terminal during my working hours and my
| colleagues think that I am doing something mystical in the
| terminal or developing in Vim.
|
| You can check it out at:
|
| https://github.com/erodrigufer/papayaChat
| bayindirh wrote:
| I've written and still writing small tools to help with my work
| or personal computing life all the time. Some of them live long
| and become sophisticated tools, some of them stay as small
| scripts to help with mundane tasks.
|
| The most used one is a tools called Railgun
| (https://github.com/hbayindir/railgun/) for sending e-mails from
| command line via Mailgun.
|
| I've also built a backup tool for SMB shares [0], a simple time
| tracker [1], and a semi-sophisticated tool for helping me
| managing PXEBoot symbolic links[2].
|
| Currently I'm working on, albeit slowly, on a tool for organizing
| Pocket (https://www.getpocket.com) items.
|
| [0]: https://github.com/hbayindir/smb-backup
|
| [1]: https://github.com/hbayindir/Daily-Log-Analyzer
|
| [2]: https://github.com/hbayindir/Hex-IP-Toolkit
| christophilus wrote:
| Yeah. An app to let me control my 5k monitor's brightness in
| Linux. Tons of little utilities, like my blog generator. A
| Firefox send clone.
| scriptstar wrote:
| I built a Crypto prices chrome extension that shows the top 10
| Crypto coins and their prices. All right under my browser, so I
| don't have to go to any other website. It's so helpful, and I
| love it. I use it every day.
|
| https://chrome.google.com/webstore/detail/crypto-prices-in-y...
| soco wrote:
| A social media client to my and a friend presences: interacting
| with followers, more with the more important ones, proposing new
| ones to follow or some to unfollow (and doing that in bulk), and
| a few other handy shortcuts. It runs serverless crashing maybe
| once a month for always novel reasons and costs me like 60$ (AWS
| costs) and a few hours of programming every month.
| egypturnash wrote:
| I had a nice little Python hack that would watch the weather and
| set the color of a light in the foyer based on the weather, _and_
| override that with a dim red at night because I really did not
| want a bright blue light when I got up late on a rainy night. I
| never set up the lights after moving across the country so it's
| been dormant.
|
| (There are services out there that can set the color of a light
| based on the weather, OR on the time, but I've never found
| anything that can do both.)
| binkHN wrote:
| Latest one is written in Kotlin and compiled to a single
| executable.
|
| While I know many here dislike "crypto," it's used to calculate
| some details on some OpenSea NFTs I'm interested in. The details
| on each NFT are varied, but two of these NFTs can have their
| details combined to create a "more powerful" NFT. Don't think I
| should bother going into more detail, but the code calculates
| every permutation of the details for all the NFTs to identify the
| best combinations. Didn't take long to write and I did it for fun
| as I never compiled Kotlin down to a stand-alone executable and I
| wanted to give it a try.
| philmcp wrote:
| I have repetitive strain injury in my hands which made it
| difficult to play online poker (it's a lot of mouse moving and
| clicking i.e. folding)
|
| So I created a script which took a screenshot every 100ms, it
| scanned the image and checked the cards I had.
|
| If the cards were bad (e.g 2h7s), it clicked "fold" for me
| automatically
| sgjohnson wrote:
| Auto-folders are explicitly banned by basically all online
| poker sites.
|
| They are practically cheating. Of course if it folds certain
| hands a 100% of the time, then it's just horrible for you,
| because no hand is a fold 100% of the time.
|
| Even 72o is playable from the big blind if you're the one
| closing the action and the price is right.
|
| You should probably consider an autohotkeys script, or a mouse
| with macro buttons.
| runjake wrote:
| The vast majority of my code and most of my git repos are for my
| own personal use. Various utilities and glue code and one-offs.
| stevenjgarner wrote:
| I have written many web applications for my own use, where I do
| not have to take the extra effort to bulletproofing applications
| for unintended use (validation and verification requirements
| etc). Three applications stand out:
|
| 1) a web application to manage customer Q-tagged VLAN Ethernet
| circuits within specific color-coded optical fibers of municipal
| fiber-to-the-home cables (12, 36, 48 and 96 fiber cables). The
| application enabled fiber optic physical plant to be optimized
| for customer Ethernet circuits, reducing the cost of implementing
| customers considerably below industry average.
|
| 2) a double-entry bookkeeping system optimized for the monthly US
| Bankruptcy Court Chapter 11 financial reporting requirements to
| manage the same company as debtor-in-possession when our largest
| customer(s) filed bankruptcy during the dot com bust (circa
| 2001), forcing us to also file for protection. This enabled us to
| successfully double our customer base, double our revenue and
| retire all debt while reorganizing in bankruptcy.
|
| 3) a general accounting web application emerged from these
| experiences specializing in multi-currency accounting of
| businesses specializing in asset management (features that
| Quickbooks etc just do not have). This built on my personal
| situation of being a citizen of more than one country.
|
| All 3 of these were developed using PHP/MySQL and I have
| refactored them over the decades up to PHP ver 8 / MySQL ver 8
| running on the latest Ubuntu LTS server version. As I am the sole
| user (with a few personal assistants), I have been able to focus
| on the addition of features and capabilities rather than user
| support, security and general hardening of the applications.
| cryptocoder88 wrote:
| jms wrote:
| I made a command line music playing frontend. It has a list of
| all my music as a flat text file, then if I run "music" it
| shuffles randomly, or I can add a regex as an argument to pick
| the files from the list. It works surprisingly well - given my
| folder structure I can just type in "music <artist>" or "music
| <genre>" or "music <specific song>" and it just does it. It also
| has a flag for turning shuffle mode on or off.
|
| Very simple, but very comfortable for me.
|
| I also created my own TODO / dashboard app, where all tasks are
| on a schedule (do this every x days) and I can enter a value each
| time I complete a task. These then show up as graphs on my
| dashboard - helpful for tracking weight etc. I also graph a bunch
| of random things automatically in the same system (how many
| unread emails I have).
|
| It also tracks how many tasks are overdue so I can measure my
| general ability to get stuff done, and if it gets overwhelming I
| can tweak the settings so it just shows me a few things (or more
| realistically I tweak the task to either not need doing/tracking,
| or I slow down it's cadence).
| csours wrote:
| The most complicated one I created was a widget showing the
| status of the factory where I was working at the time.
|
| This wasn't strictly speaking for personal use, but I created it
| and I was the only one who used it as far as I know.
|
| The info was the same as the main status screen, but I made it
| frameless and always on top of other programs, and gesture aware.
| It was about 150 px by 700 px, with little blinkenlights for the
| statuses. It hung out on the right side of my screen and I could
| see at a glance whether things were running or not. There was a
| button to summon the main screen for more details.
|
| The main work was understanding how to handle windows, and UX
| refinements.
| hypertexthero wrote:
| Here are two things I use often that I pieced together using code
| made by people who can actually write good code:
|
| 1. HTML Form to File.txt, to quickly create a post for publishing
| with a static website generator like Hugo or Jekyll:
| https://www.simongriffee.com/work/form-to-txt/
|
| 2. Pasta Clock, for cooking pasta al dente, not al mush:
| https://www.simongriffee.com/pastaclock/
| conroy wrote:
| Not for me, but I wrote a small program that emails my dad the
| New York Times crossword every day so that he can print it out.
| He could just log into the website and print it, but email is so
| much easier for him.
| raybb wrote:
| I often write bookmarklets for my own use. For example a
| bookmarklet to take me from Amazon/Goodreads to the
| OpenLibrary.org page for the book. It as easy as grabbing the
| isbn and then navigating but saves me a decent amount of
| annoyance.
| chimen wrote:
| Yes. Typely [1]. Made it to aid in writing better articles for
| myself and some employees at the time. Decided to put it up there
| after a while and is now being used in many schools around the
| world. This is the only one that was made for me initially - I
| have a lot of other projects but they are made for aiding my
| businesses or to try new ideas.
|
| [1] https://typely.com
| ashilfarahmand wrote:
| Market Alerter - I created an app that alerts\emails you if your
| chosen stock meets some condition. There are many other sites
| that already do this. However, I wanted it to be able to
| expressions of one or more stocks. For example, if you want to
| monitor West Texas Intermediate (WTI) crude price or Brent crude
| price, you can do it easily. If you want to monitor the crack
| spread (WTI - Brent), existing solutions are limited. I made this
| to allow monitoring of combinations of stocks\commodities.
|
| Options Simulator - An extended family member asked me to create
| a small simulator to help forecast the outcome when making
| options trades.
| miketery wrote:
| That's neat! Did you use paid APIs or free yahoo ones? Are you
| sharing code?
| wvenable wrote:
| I had access to flight information through an API that my work
| pays for and I rarely care _exactly_ what day to arrive or
| depart. So I created an application that would dump all flights
| to a destination over a range of leaving and return dates. It
| dumped all the data into SQL database so I could filter on price,
| number and duration of layovers, class, etc. It was incredibly
| useful for really dialing into what I wanted (no layover over 3
| hours, less than $X, etc). Using Google flights is painful by
| comparison.
|
| Unfortunately I no longer have access to that API. The last time
| I flew I did this process manually and slowly discovered I should
| leave on a weekday and leave on a weekend for the best flight.
| nathants wrote:
| agr: like ag/ripgrep, but for search and replace. [1]
|
| set-opt: ensure settings in conf files in /etc. [2]
|
| s4: when i need to do distributed data processing and don't want
| to import an apache project. [3]
|
| bsv: when i need maximum performance data processing. [4]
|
| tinysnitch: for monitoring network connections to/from my laptop.
| [5]
|
| new-gocljs: when i need to start a new fullstack web prototype.
| [6]
|
| cli-aws: when i need to work with aws from cli or go, and don't
| want to import the cloudnative equivalent of an apache project.
| [7]
|
| aws-rce: when i need remote code execution on aws for great good.
| [8]
|
| 1. https://github.com/nathants/agr
|
| 2.
| https://github.com/nathants/bootstraps/blob/master/scripts/s...
|
| 3. https://github.com/nathants/s4
|
| 4. https://github.com/nathants/bsv
|
| 5. https://github.com/nathants/tinysnitch
|
| 6. https://github.com/nathants/new-gocljs
|
| 7. https://github.com/nathants/cli-aws
|
| 8. https://github.com/nathants/aws-rce
| nicoburns wrote:
| For agr, have you seen fastmod?
| https://github.com/facebookincubator/fastmod
| jonplackett wrote:
| Yes. And it's a strange one.
|
| I made a program to gender swap any text you put into it and then
| got a book deal to rewrite and illustrate Fairy Tales. It's been
| published around the world.
|
| https://genderswappedfairytales.com
|
| The idea is to shine a light on the original versions but it also
| creates a lot of never-written-before characters. A lot of brave
| princesses and lady-beasts, but also men desperately wanting
| children and being rewarded for kindness.
|
| I wrote the gender swap algorithm in Swift. It seemed like it
| would just be a simple auto replace type thing when I started but
| there's some weird things in English, for example with
| his/him/her/hers where they don't swap back and forth sensibly
| and you have to understand the context.
|
| It was his > it was hers.
|
| It was his sword > it was her sword
|
| So I ended up down this rabbit hole of natural language
| processing to break up each sentence into verbs, nouns etc to
| work out the correct words to use. Even tried training an AI to
| do it based on the finished swapped text but a whole bunch of
| rules worked more reliably.
| netsharc wrote:
| The Inclusive Coding Bot (a stupid Github bot that went around
| Github making pull requests replacing "he" with "they") guy
| should've talked to you...
|
| https://news.ycombinator.com/item?id=30877930
| linseed_213 wrote:
| Some of the popular restaurants in my town use a booking app
| called Seven Rooms, which does not have a "notify me" feature
| like Resy & OpenTable if there are cancellations on a date you're
| looking for.
|
| Made a bot to check for my desired dates and times and ping me if
| something opens up.
| monroeclinton wrote:
| I've been building my own window manager. I still need to finish
| a few things like a status bar/floating window system.
|
| https://github.com/monroeclinton/mwm
| noisepunk wrote:
| Not really a program, but I put a script on aws that texts me in
| the morning if it's a street sweeping day. Sometimes I forget to
| move my car anyway...
| Sohcahtoa82 wrote:
| I have a strange problem with my monitor that I solved with a
| program.
|
| Basically, I use a USB switch to switch my mouse, keyboard, and
| webcam between my personal desktop computer and the MacBook I use
| for work. I tried a full KVM switch at first, but every time I'd
| switch it to my MacBook, Windows on my PC would flip its shit.
| With the primary monitor disconnected, it would move everything
| to the secondary monitor, which was fine, except that when I
| moved the KVM switch back to my PC, it would move everything back
| to my primary display, whether or not it was originally on my
| primary or secondary. Additionally, since my two monitors are
| different resolutions, all my window sizing was wrong.
|
| I tried to get around this by plugging my PC into my monitor's
| Display Port and plugging the MacBook into an HDMI port and just
| telling my monitor to switch inputs, and for the most part it
| works, but at 1 PM every day, if my monitor is set to HDMI, it
| drops the DP connection, making Windows think it lost the
| monitor, putting me back at square one.
|
| So I wrote a simple program in Python that sits in my
| notification tray. I can tell it to save or restore all my window
| positions. So if Windows loses the monitor, after it comes back,
| I can restore everything to where it was.
|
| As a bonus, I also added a "Easy Copy/Paste" menu to quickly copy
| emojis like -\\_(tsu)_/- and tth_tth to my clipboard.
| neogodless wrote:
| Tracking Finances
|
| I originally wrote a web app to track my finances in 2003 using
| classic ASP and T-SQL. In early 2017, I rewrote it from scratch,
| still using T-SQL, but with C#.NET and jQuery. Lets me review my
| budget, ensure my net worth is heading in the direction I want,
| make sure all my payments get made, and ensure my account
| balances never get too low (with a light forecasting element.)
|
| Ideally I'd open source it, focus on the API documentation so
| anyone could write a back end, and iron out a few more front-end
| bugs, but since it gets the job done _for me_ , the motivation
| never quite strikes me.
|
| https://github.com/jcbeck37/fi-retorch
| random42_ wrote:
| How do you ingest the transactions? I'd love to be able to
| replace Mint!
| fjabre wrote:
| Yes I created http://lazyday.tv to help me find and track things
| to watch. Ive been making use of it for several years now and
| it's available to the general public for free. No sign ups
| required. No ads displayed.
| flobosg wrote:
| To name a few:
|
| * A script that emails me every day a list of new articles
| published by a selection of academic journals. Using an RSS
| reader for this turned out to be too messy.
|
| * A script that generates Spotify playlists based on my liked
| songs, optionally according to some criteria. The playlists can
| be sorted according to specific song features (higher to lower
| energy, for example).
|
| * A zettelkasten engine, including search, rendering, and backup
| of entries.
|
| * A system to generate and upload backups of my photos from my
| cameras' SD cards.
| swores wrote:
| I'd be curious to see the first script, if it's shareable?
| flobosg wrote:
| Sure! It is very rudimentary and some values are still
| hardcoded, but I could do bit of clean-up and then upload it.
| mathgladiator wrote:
| So, I'm building a SaaS for primarily myself at this point.
|
| https://www.adama-platform.com/
|
| In a few years, I intend to embrace marketing. However, now I am
| on the pathless path wandering. I'm writing a post about it, and
| I'm kind of fine if no one uses it. Sure, it would be amazing if
| others would see the neatness, but I'm not really in a space for
| responsibility yet.
|
| Perhaps, I'm going slow on building yet another deck builder with
| it (as I'm looking into which components to buy versus build for
| the IDE aspect), but I'm basically retired.
| joshstrange wrote:
| > A colleague of mine tracks all of his homes energy use through
| a custom program which disaggregates the energy consumption per
| device and outputs a report to a tablet.
|
| This might not be in the "spirt" of this post but your colleague
| might be interested in looking into Home Assistant. Don't worry,
| there is plenty of space for custom scripts within HA, but it
| might be a nice foundation for them to build on as it has energy
| monitoring stuff built in as well as a way to visualize it all.
| ggayan wrote:
| My main group of friends with whom I play videogames on a daily
| basis is on Telegram. We use voicechat and stream our gameplay on
| discord for others to watch/comment in a more private setting
| (other tools are too public). I wrote a bot that notifies on the
| telegram group whenever someone starts a stream on discord so
| others jump in and join the game/stream. Discord shares which
| game/activity through their API so we know exactly what someone
| is playing. I also add some personalized randomized spice
| depending on who is streaming and what they are playing to the
| telegram bot messages so we can laugh about it.
|
| Whenever the bot has gone down (I turned off the home server or
| whatever) my friends complain, so I know the bot is fulfilling
| its purpose :)
| lbutler wrote:
| I work as a water engineer, specializing in building hydraulic
| models so water utilities can simulate their network.
|
| A big part of that is calibrating them which can be time
| consuming, you look through hundreds of options. I create a few
| web based apps to help grind through these tasks but ultimately
| they were for my own use as a consultant to close projects
| quickly.
|
| I did pull out the engine as its own open source library for
| other to use, and that ended up helping me get my current role
| where I can now maintain it and be paid at the same time.
|
| https://github.com/modelcreate/epanet-js
| LeoPanthera wrote:
| Hundreds! Doesn't everyone? Most of them are just bash scripts,
| many of which have now reached a complexity so high that I wish
| I'd started writing them in a different language but it's too
| late now. The majority of the rest are Python.
|
| Off the top of my head, the most used ones are:
|
| * A replacement front-end for "tar" and various compressors
|
| * A script to synchronize my music library to a compressed
| version for playing in my car
|
| * A secure-but-readable password generator
|
| * A system to batch compress folders full of video files. (For
| ripped blu-ray discs, mostly.)
|
| * A replacement front-end for "ffmpeg", see above
|
| * A "sanity check" program for my internet connection to see if
| the problem is me, or Comcast
|
| * A front-end for "rm" that shows a progress bar when deleting
| thousands of files. (Deletes on ZFS are unusually slow.)
|
| And lots more tiny things.
| pdonis wrote:
| _> Hundreds! Doesn 't everyone?_
|
| I certainly have. Interestingly, one was the same "sanity
| check" program for my internet connection, because of the same
| ISP you mention. Amazing coincidence...I don't think. :-)
| brk wrote:
| Add another Comcast outage checker and logger to the pile.
| Used to call and hassle them for outage refunds regularly.
| inetknght wrote:
| Chalk me up to that too. And my brother. Originally I'd
| used Ping Plotter. When I went 100% Linux I stopped using
| that. My brother ended up putting together a Grafana board
| tied to influxdb & infping and monitors several friend and
| family internet connections complete with alerts.
|
| Here [0] is a screenshot of the Comcast cable connection
| from a year and a half ago. I have since switched to AT&T
| gigabit fiber. Here [1] is a screenshot from today.
|
| [0]: https://knightoftheinter.net/img/20201102143900.png
|
| [1]: https://knightoftheinter.net/img/Screenshot_20220413_1
| 71934....
| tessierashpool wrote:
| I've written one too, if you count a simple shell alias for
| ping google.com
|
| Comcast "service" has probably driven the creation of more
| trivial internet connection test programs than any college
| course in the world.
| lq0000 wrote:
| > * A replacement front-end for "ffmpeg", see above
|
| I have one of these too... It's kind of frightening how hard
| ffmpeg is to use _without_ some kind of custom frontend. I have
| probably dozens of bash /python scripts to invoke ffmpeg for
| different common tasks.
|
| - One to extract audio
|
| - One to extract all the individual streams from a container
|
| - A couple different transcoding scripts
|
| - One specifically for gifs
|
| - One to crop video
|
| - A few that I can't remember the purpose of... and can't tell
| from reading the source
| parentheses wrote:
| Links, please.
| edpenz wrote:
| > A secure-but-readable password generator
|
| I love pronounceable passwords, but there's research indicating
| that such generators typically produce lower than expected
| entropy. Do you mind sharing what algorithm you use?
| omaranto wrote:
| I think the generator from xkcd sounds pretty good.
| https://xkcd.com/936/
| heyoni wrote:
| Problem is so many websites have these arbitrarily low
| password lengths that usually max out at 20 characters.
| slowbdotro wrote:
| Not OP, but I prefer memorable passwords, thus, correct-
| battery-horse-staple style passwords in bash: (Install
| cracklib, or any dict file) #!/bin/bash
| pickaword() {
| WORDFREQFILE=/usr/share/dict/cracklib-small;
| WORDLENGTH=$1; awk -v wordlength="$WORDLENGTH"
| 'length($1) == wordlength {print $1}'
| "$WORDFREQFILE"|shuf|head -n 1; } [[ ! -z
| $1 ]] && numWords=$1 || numWords=4 separator="-"
| count=0 currentWord="" while [[ $count -lt
| $numWords ]]; do [[ $count != 0 ]] && echo -n
| $separator num=$((3 + RANDOM % 10))
| word=$(pickaword $num) echo -n "$word"
| count=$(($count + 1)); done echo ""
|
| Edit: code formatting is hard. Source is: https://gitea.slowb
| .ro/ticoombs/dotfiles/src/branch/main/bin...
| wiredfool wrote:
| I gave up on readable. with
| open('/dev/urandom', 'rb') as f: return
| base64.urlsafe_b64encode(f.read(12))
| stirfish wrote:
| Something like cat /usr/share/dict | shuf
| -n 4 | tr '\n' '-'
|
| (inb4 unnecessary use of `cat`)
| heyoni wrote:
| https://porkmail.org/era/unix/award
|
| (Sorry I had to)
| ahmedalsudani wrote:
| > Hundreds! Doesn't everyone?
|
| Raising my hand in agreement!
|
| A couple highlights:
|
| - Video syncing library before those became cool (2014).
| Originally built on top of firebase; now rewriting with my own
| backend. Very slow going :)
|
| - Twilio server + interface. I'm my own service provider
| (thanks to Twilio)
| [deleted]
| mfarstad wrote:
| I made a headless sqlite dbms (not nearly as feature rich as the
| real thing) for my own embedded development. It can show the
| values of any table, view specific cells, update cells with a
| text editor interface, beautifies json, and takes in SQL queries
| as well.
|
| Got some bugs with formatting complex lines of text, but it works
| well enough for me. I plan on porting to Rust one of these days.
|
| https://github.com/mathaou/termdbms
| doodpants wrote:
| Heck yes, all the time. While it seems like the major computer/OS
| vendors these days are trying to turn computers into limited
| purpose appliances, I was first exposed to computers as a child
| in the late 70's, when it was expected that anyone who owned a
| computer would also want to program it for their own purposes. My
| own personal projects tend not to be very large in scope, but can
| be quite handy. Some examples include:
|
| - A Pomodoro timer that has exactly the features and user
| interface that I want
|
| - A script to perform backups of select files and directories
| from a source drive to a specified backup volume
|
| - A "pixels-per-inch" calculator that allows me to compare the
| resolutions of displays that I may be interested in purchasing;
| by entering the width and height of a display in pixels, and its
| diagonal in inches, it calculates the density in pixels-per-inch,
| and the dot pitch in millimeters
|
| - Various user-friendly graphical interfaces to aid in solving
| different types of puzzles (think sudoku-like logic puzzles)
|
| - Programs to actually solve various types of puzzles all on
| their own (I've written over 70 of these in the last 10+ years!)
|
| - Various command line scripts for code management tasks (i.e.
| useful for sofware development itself)
| mark-r wrote:
| I have a pixels-per-inch calculator too, but mine is an Excel
| spreadsheet. Lets me see all the displays I've been interested
| in or own, even things like phones.
| arprocter wrote:
| For DPI I like this site: https://dpi.lv/
| slig wrote:
| >- Programs to actually solve various types of puzzles all on
| their own (I've written over 70 of these in the last 10+
| years!)
|
| Cool, are these open source?
| geocrasher wrote:
| I wrote my own dns lookup tool in bash because most of the online
| ones are terrible or can't be customized.
|
| I made my own IP finder site because most of the online ones are
| terrible (https://justyourip.com/)
| pul wrote:
| Ruurtjan from NsLookup.io here. Would love to hear your
| feedback, since you probably can name a thing or two to improve
| :)
| mark-r wrote:
| I've done many, but I'll highlight two today.
|
| The first is a background program to monitor my kids time on the
| PC. As their limit approaches it pops up a window with a timer
| countdown. When the countdown reaches zero, they're logged off.
|
| The second is for resizing images. I wasn't happy with the way my
| image editor did it, and I wanted to do a deep dive on some
| algorithms so I went for it. Gained some great insight while
| working out all the bugs.
| aynyc wrote:
| I have many apps and scripts over the years, but the ones still
| in use are:
|
| 1. StrongLift 5x5 tracker. This is a python CLI based script that
| tracks 5x5 (Strong Lift) program. I haven't used it in awhile,
| but a few friends still do.
|
| 2. HNews calendar style home page. I wrote this as a way to
| reduce my daily HN screen time but don't want to miss anything.
| So I created an app (django on raspberry pi) that downloads from
| HN API and group HN articles by date and point in a calendar
| style page. Pretty useful, but the code is still in Py2 and
| awful.
|
| 3. A crawler that downloads swim school class availability so I
| can sign my kids up.
| asdff wrote:
| Any time I find myself doing something twice on a computer, I try
| and think if it would be easy to write some tool and do it if the
| value makes sense. Usually these are teensy little utilities that
| might pull data from websites, wrangle text and handle common
| files in my life, let me know upcoming meetings and connect to
| them, or even just little hobbies like making a scraper and local
| database of recipes vs manually going to that js heavy website
| prone to link rot.
|
| All these exist on the command line, some are short functions in
| my bashrc, and some are more substantial written as discrete
| scripts and run via launch daemons. Not having to worry about gui
| or capturing each and every test case makes solutions fast and
| only a couple to a few dozen lines most of the time. I don't
| worry about awkard characters in my strings and all the esoteric
| regex and special cases that would need to go into a production
| ready script, because i simply don't use those characters in
| strings or do anything funky that stack overflow comments like to
| bring up as a potential pitfall. Makes it easy when I am my own
| client. plus it makes it easy getting all these programs to some
| new computer of whatever OS when all I need to do is pull a git
| repo full of these scripts to install.
| [deleted]
| distracted_boy wrote:
| I have written a bunch of applications but the most used
| application that I have written that I actually use for myself is
| my bookmarking application. So when I browse the Internet and I
| find something from the Internet I want to save, I share it with
| my Telegram bot that will send the link to my application via
| webhooks. The app will then fetch the website's contents and save
| the information to the database.
| alsetmusic wrote:
| This probably isn't quite what OP had in mind, but I put together
| a number of Python and Bash scripts to control my home media
| center. Then I used the iOS Alfred app to give them a front end
| on my phone as a remote. I also made them actionable with various
| flags so I could call them by typing them into the Mac Alfred
| app.
|
| Power on / off home theater device and set inputs Power projector
| on / off and set inputs Make calls to both at the same time
| working together Call AppleScripts to control music playing
| through the stereo from a connected Mac mini
|
| I also built a tool for a friend in Bash and AppleScript. It
| watches a list of his favorite streamers and then calls to the
| Downie video download app to begin recording their streams. He
| runs it on a headless Mac mini checking each person in the list
| every two minutes.
|
| Of all the things I've made for myself or others, these are the
| two that would most resemble a user-facing GUIable end-product.
|
| edit: a letter
| joseloyaio wrote:
| I created a "darkmode" pdf reader. It helps a ton with my eyes.
| Reading long papers on white background is something I don't like
| so I changed it.
|
| I created it for me but it is somewhat popular on github with
| hundreds of stars already.
|
| https://github.com/librepgp/NightPDF
| EvanAnderson wrote:
| Tons and tons of them over the years. I wish I'd kept better
| track of them because I've caught myself reinventing the wheel
| now and again.
|
| - When I was a kid using a DOS PC I'd write them in Microsoft
| QuickBASIC or Turbo Pascal and compile them to EXEs. (I used to
| drag a few particularly useful ones around with me until a few
| years ago when the prevalence of 64-bit Windows made running them
| on a stock Windows machine impossible.) I had stuff there like a
| random password generator, dumping files to VGA mode 13h (to
| visually look for patterns in data), drop the DTR on a serial
| port (to hang up a modem from the command line), search/replace
| on INI files, and lots of others I've forgotten.
|
| - I wrote a proto-Markdown text processor back in high school
| when I was taking notes on a vTech Laser PC4[0]. It took files
| from the vTech and rendered output files with Epson printer
| formatting codes, centered text, made headings, etc.
|
| - I regularly use a script I wrote to import my phone backups'
| SMS logs and dump them into my IMAP mailbox. I love being able to
| search all my email and SMS communication in the same interface.
|
| - I have a podcatcher I wrote bolted onto my (heavily forked) tt-
| rss[1] installation to download podcasts to a local webserver for
| archiving and playing.
|
| - My father persists in using a DOS accounting package for his
| business. A small program I wrote ingests check printing output
| from the DOS app (meant for dot matrix tractor-fed checks) and
| reformats it for sheet-fed checks in a laser printer.
|
| - Front-end scripts for lots of command line utilities so that I
| don't have to remember obscure options for common tasks.
|
| [0] https://oldcomputermuseum.com/laser_pc4.html
|
| [1] https://tt-rss.org/
| nicolaslem wrote:
| I wrote an expense splitting web app that works with multiple
| currencies and can export transactions in a format compatible
| with GNU Cash (that I use) and Excel (that my partner uses).
| Before that we were using an existing solution (Tricount) but its
| limitations regarding currencies and export meant that we always
| made mistakes.
| brundolf wrote:
| I made a desktop note-taking app for myself because I wasn't
| happy with any existing options, and it's been great:
| https://github.com/brundonsmith/writer
|
| - Plaintext
|
| - Single list of notes
|
| - Notes are auto-titled based on the start of the content, and
| auto-deleted when empty
|
| - Sorted based on recently modified
|
| - Pick a folder on startup, and notes are loaded from/saved to
| the folder as plain text files (one note == one text file). I use
| a folder that lives on my Dropbox so I get backup and syncing
|
| - Text is centered and finite-width when full screen, so line
| wrapping is natural
|
| - All UI except your text disappears when typing, and reappears
| when you move your mouse
|
| - Light/dark mode toggle
|
| - Made with Electron, so it's cross-platform and easy to modify
| visox wrote:
| Yes couple. Did some crawler for sports betting sites to find bet
| arbitrage, was fun
| AussieWog93 wrote:
| That's amazing. Did you actually turn a profit?
| [deleted]
| notacoward wrote:
| The only two programs I've written since my retirement were
| entirely for personal use: one to help with attribute-point
| assignments in an RPG, and one to pick apart GPS-data files
| (Garmin FIT) to show me views that neither Garmin nor Strava
| will. I'm fortunate that I have the skills to do this, but I
| think in the future such "personal programming" will be
| commonplace even for people who have never worked as programmers.
| Meanwhile, knowledge of programming plus one other field is often
| a ticket to stable employment with a good work/life balance
| (unlike tech itself which tends to lack such balance).
| alhirzel wrote:
| For sure, I have written tools for photo management (offloading
| from camera and getting them ranked and ready for a pass with
| Darktable). I have a financial management system, task
| management, a system for lecture slides (generating handouts,
| lectures) and exams (generating keys and blanks and different
| forms)... I figure half of HN does this! It would be an
| interesting poll question.
| DyslexicAtheist wrote:
| most of what I use is only for me. it's a hobby to tinker. it's
| mostly workflow tweaks or modules for i3/sway, security relevant
| things based on netfilter / ebpf ... what all these things have
| in common is satisfy my curiosity and learn about something new
| on the way, other times they start out as a tinkering in a new
| language are a total abomination begging me to be rewritten ...
| Patrick_Devine wrote:
| I was so bored at my last job that I wrote my own version of
| Minesweeper that works in your terminal. You can try it out by
| running: `docker run -it --rm ghcr.io/pdevine/bombitron`.
|
| It works pretty well w/ Linux, and also iTerm2 on macOS (if you
| enable mouse reporting events). It's a hot mess if you use
| Terminal (but no one uses Terminal, right?)
| DamnInteresting wrote:
| I have a few homegrown tools, the most notable is one I use to
| record narration for an audiobook-like podcast. I paste my script
| into the software, then it will go through the script one
| sentence at a time. I record and re-record it until I am happy
| with the take, then it moves on to the next sentence. When I'm
| done, I can download the audio as one merged WAV file.
|
| I occasionally think about sprucing it up to offer for public
| use, but it's the kind of task that never reaches the top of the
| to-do list.
| nilshauk wrote:
| Some weeks ago I wrote a couple of bookmarklets, one of which was
| this:
|
| javascript:(function(){ location.href =
| `https://nitter.net${location.pathname}` })();
|
| You can take this JavaScript snippet and save it as a clickable
| bookmark (hence the name bookmarklet) in you browser. I've named
| this "re-open in Nitter". I deleted my Twitter account a while
| back but sometimes I get handed a Twitter link. This snippet
| let's me quickly re-open the link in Nitter which is a nag-free
| way to browse Twitter without having an account. :)
| phoehne wrote:
| I wrote a set of python scripts to pull down economic and stock
| market data. It pulls down several different data sets mostly
| from the Fred API service at the Federal Reserve. Using Jinja
| templates and Matplotlib for graphs, it builds a set of latex
| files and spits out a PDF that I can review. That way I don't
| have to look at 4 or 5 different sites to get the overall market
| picture I want. Essentially my own newsletter... to myself...
| okay, is that healthy?
| roscrl wrote:
| it is healthy! i did something similar with
| https://econicles.com
| phone8675309 wrote:
| Yes - I wrote a full DVD authoring workflow to take weekly anime
| fansubs and produce finished DVDs for friends with either bad
| internet connections or who preferred to watch in their living
| rooms.
|
| This was before having an HTPC or media center was a mainstream
| idea.
|
| All you did was add in the video files sorted by file name in a
| subdirectory and add a main menu image template, a main menu
| audio file, and episode select image template (the layouts were
| static so that the same dvdauthor XML could be used) and it would
| stitch together a DVD with an intro video, main menu screen with
| subtitle, play, and episode select options, and generate episode
| select screens by taking thumbnails from the video files.
|
| Last time I used it was about five years ago before same day/date
| streaming of anime really took off. I still hack on it from time
| to time. I don't really have a use for the output, but it's nice
| to maintain it as the tools it use change/update and as I learn
| new things.
| smokel wrote:
| Many.
|
| One program that I am particularly happy with is a calendar
| generator for Scribus.
|
| The Python script generates a year calendar, which I then print
| as a book. It helps me to plan my art career by week, by month,
| and by quarter. The custom layout somehow makes me take all the
| planning very seriously. And there is a lot of room for
| sketching.
|
| Another recent project is a personal mind map, which I can extend
| to my own needs. It is heavily inspired by Kinopio, which,
| unfortunately, is not open source.
|
| I am always amazed that not everybody is using computers and
| programming in this way.
| dvh wrote:
| Text editor, RSS reader, electronic schematic simulator,
| perfboard designer, optics simulator, browser, git GUI client,
| music player, expenses tracking app, spreadsheet app (I needed to
| make simple manual edit in many csv files and waiting for office
| just took too long, so I made just editor and it launches
| instantly), numerous one time use chrome extensions, calculator,
| libv8 based shell, video editor, ad blocker, ...
|
| It usually reaches perfect usability for me very quickly, but to
| make it usable for others or make it publishable would take
| months.
| gdulli wrote:
| I used yt-dlp to download the metadata for the whole SNL youtube
| channel, over 6000 clips. I loaded it into a database and wrote a
| Flask app to let me browse through each episode quickly and
| choose which clips to download. Now I have about 500 of my
| favorite clips available locally on my Plex server.
| rhn_mk1 wrote:
| A backup solution. A bank statement scraper. An alarm clock. A
| GPS track extractor. A time tracker.
|
| More that haven't seen regular use or which are just
| configuration.
| sangupta wrote:
| A simple server to send notifications to my phone, and an app to
| view/receive. Now setting up alerts anywhere is super easy.
| asdff wrote:
| How did you go about rolling your own? I've used discord
| webhooks for this.
| sangupta wrote:
| A simple HTML app packaged via Phonegap for mobile. Server
| uses Google sign-in and rejects any sign-in apart from mine.
| Has a URL to generate an OTP token that allows connecting a
| mobile second in next 60 seconds. Once connected saves the
| device token in a free-mLabs DB (encrypted). Similarly,
| generate a webhooks URL for each service and wire. Hosted for
| free on Heroku!
| pengo wrote:
| Dozens, at least. Everything from: NAS apps that download
| television Electronic Programme Guides and automatically schedule
| recordings; to personal radio stations that integrate text-to-
| speech, calendar entries, local news headlines and the family
| Slack channel with the music on my home server. Utilities for
| managing the books I read and videos I watch, utilities to
| randomly insert quotes in my email signatures. And that's before
| we look at any of the work-related software.
|
| Mostly these are written in Object Pascal via Lazarus and
| compiled natively for the target platforms, or they're web apps
| written in javascript and/or PHP. Many use SQLite for data
| storage; some just use an .ini file if the data is simple and not
| too volatile; a few are written against a MySQL back end.
| bpye wrote:
| I have written these sorts of things, but I do try and put them
| up on GitHub if I think they'll be useful to other people. I
| wrote a tool unimaginatively named wsl-ssh-pageant [0] which I
| wanted because I use a YubiKey for my SSH key. It has been by far
| my most popular GitHub project.
|
| I do have other things as well, some on GitHub some not. A
| scraper to notify me when a local gym booking website changes for
| a time I'm interested in. A bridge between a BroadLink RM4 and
| HomeKit for some fans [1] - I wanted to avoid home-assistant. A
| script to grab my power consumption data. A shim to make gpg-
| agent compatible with launchd's socket activation protocol [2].
|
| [0] - https://github.com/benpye/wsl-ssh-pageant
|
| [1] - https://github.com/benpye/hkrm4
|
| [2] - https://github.com/benpye/launchd_shim
| sbehere wrote:
| I have created a personal finance tool that Works-For-Me and
| requires no sharing of login credentials with third parties.
|
| Something that scrapes financial transactions from bank and
| credit-card accounts in a fully automated way where possible, and
| semi-automated way where necessary, dumps those transactions into
| a database, automatically categorizes them, and creates
| dashboards for commonly used views and analyses.
|
| I've blogged a bit about it here: https://sagar.se/blog/where-is-
| the-money/
| alphabettsy wrote:
| A few. Working on replacing my Pi Zero W based garage door opener
| with an esp32 for fun. The Pi had a basic service that accepted
| HMAC signed Webhooks to open or close the door.
| soren1 wrote:
| I've been liberally trading cryptocurrencies for the past several
| years and ended up with a bit of tax nightmare, with thousands of
| trades across many exchanges. I found my self with little choice
| but to write my own capital gains calculator. At the time I
| needed it, I couldn't find a suitable open source solution, and I
| have privacy concerns about paid services. It's no longer just
| for "personal use", as I've recently published it on GH
| https://github.com/dleber/capitalg
| jrm4 wrote:
| I live by them; I probably couldn't name them all, they've become
| so embedded in my flow.
|
| Probably the most important part of my flow is the following;
| it's a method for doing a personal "inbox" GTD style, 100%
| reliant on email + zim-wiki. I have a script that, when called
| manually, searches for new "inbox-marked" emails (i.e. ONLY those
| sent from me to me), and copies them to my zim notebook
| (specifically, to the page corresponding to "today" in the
| journal) as an open checkbox item.
|
| Supporting that is-
|
| - Desktop: a little shell script that pops open a zenity window
| to send such an email
|
| - Smartphone: An android app called Blitzmail that does that and
| only that.(pops a window and sends to an address with no other
| interaction)
|
| This replaces a LOT of things for me and helps prioritize
| immensely, (i.e. strongly prevents "email inbox as to-do list"
| which is a bad idea)
| ericfrazier wrote:
| I write scrapers galore. Who needs APIs?
| frakt0x90 wrote:
| I once wrote a program to scrape the logs from some printers so I
| could keep track of how much paper and ink was being used. It was
| just for fun but I showed it to my teammates and we ended up
| turning it into a leaderboard of who used the least amount of
| resources. Then they replaced the printers and I didn't feel like
| redoing it.
| patch_collector wrote:
| I'm a consultant who fills out a timecard every week. I made an
| integration for Toggl (https://track.toggl.com) that summarizes
| my week, and makes it easier to transfer my time into the
| timecard. It's mostly for my personal use, though a few coworkers
| also use it.
|
| https://toggl.clayson.io
| fxtentacle wrote:
| Sure, all the time. Like when I automated sorting household and
| tax paperwork.
| Hithredin wrote:
| The most simple one, but so useful that time:
|
| This car cheap autoradio has no random nor memory. Everytime the
| engine start, the music restart from the beginning.
|
| Just coded at a stop a little python script for Nokia to
| randomize the name of the music files of the usb stick.
| sandruso wrote:
| A webapp which helps with freestyling into rap beats. It throws
| rhymes at you which u can use to keep it "flowing".
| ta04122022 wrote:
| ryandrake wrote:
| I wrote a Poker 'tournament clock' application for macOS that I
| use to run home games. There are many of these out there, mostly
| commercial software, but I didn't really care for any of the
| existing ones. I display it on my living room TV and it can be
| remote controlled over the network from a phone or Apple watch at
| the table. Never got around to releasing it, as it's mostly a
| hobby project.
| alexswensen wrote:
| I recently wrote a tool that allows me to copy AWS secrets to
| another aws account for testing. It ended up being far simpler
| than doing a copy-paste for doing it repeatedly. I plan to write
| a few more in the appropriately named repo.
|
| https://github.com/AlexSwensen/useful-scripts
| scythe wrote:
| One that I use pretty often is `sortedcitations.lua`, which sorts
| the citations in a LaTeX file according to their appearance in
| the text. There are lots of fancy tools and bibliography
| management, BiBTeX, etc, but in the vast majority of cases I just
| want a single file with the citations in the right order.
|
| https://gist.github.com/scythe/7cea80364bacf1f1ce6a67786bcbc...
| meichenf wrote:
| I have an ESP8266 running a tiny webstack on my local wifi that
| is wired to a low voltage relay that turns on my hot water heater
| (tankless). Combined this with a Apple shortcut so I can tell
| Siri to turn on the device (send a post request to the unit).
| Basically just a hacked together system to avoid using Homekit.
| It's been running great for 6 years with no maintenance so no
| complaints.
| weakty wrote:
| I'm always excited at the prospect of building new or better
| tools that help me learn the way I want to learn. It's the best
| low-stakes way for me to learn - especially if I'm not being
| challenge by work or am just curious about how a programming
| language works or other set of tools.
|
| My latest is a language learning application to help practice
| reading comprehension and vocabulary development. [1]
|
| [1] https://github.com/theiceshelf/trunk
| parentheses wrote:
| So many, I've lost count. Many are private or work-related, but
| these are the public ones:
|
| https://github.com/bigH/git-fuzzy
|
| https://github.com/bigH/auto-sized-fzf
|
| https://github.com/bigH/interactively
|
| https://github.com/bigH/dotfiles/tree/master/bin
|
| https://github.com/bigH/dotfiles/blob/master/aliases/git.sh
|
| https://github.com/bigH/dotfiles/blob/master/aliases/kubectl...
|
| https://github.com/bigH/dotfiles/blob/master/functions/fzf.s...
|
| https://github.com/bigH/dotfiles/blob/master/functions/core....
|
| So much shell scripting and use of `fzf`. I make things I enjoy
| and will be happy using and since I spend a lot of time in the
| terminal, it makes sense to make things like this for me.
| calderwoodra wrote:
| I created a phone app once to function as an alarm clock I could
| set for someone else. Kinda like a hotel "wake up call" except
| this would call, ring for 10 seconds, hang-up and repeat for like
| 20 minutes.
| mikelevins wrote:
| Sure. A list and inventory manager (actually for my mom). Several
| programs for generating and managing parts of fictional
| languages. Tools for creating and managing characters and teams
| in multiplayer games. A bunch of versions of a couple of
| programming languages. A wysiwig emacs-like editor. Several
| artificial life programs. A simple paint program. Probably others
| I'm forgetting.
| krstffr wrote:
| When starting my freelance career back in 2012 I had a pretty
| simple idea on how to track time using only google calendar and
| this tiny web app I wrote. Used it literally every workday since
| then, and even got a colleague (another freelancer) to use it
| with the quote "the first time tracker to ever work for me, and
| I've tried a lot!". He is still using it last time I checked.
|
| So I guess it is actually used by one more person than me!
| uKVZe85V wrote:
| Thanks for the story. Can you share a link, please? I've tried
| a bunch, too, and not fully satisfied.
| anfractuosity wrote:
| I switched from Lightroom to Darktable and with Lightroom it
| stored the images in folders "year/year-month-day/", so I made a
| little script that copies the .jpg/.cr2 files from my camera to
| the right directory based on their metadata. And then in
| Darktable just re-import this current years directory.
|
| I also created a very hacky script that uses the python paramiko
| library to ssh to different hosts and spawn a python interpreter
| which runs a python function remotely for things like grabbing
| uptimes.
| cracrecry wrote:
| All the time.
|
| I started using python scripts to invest in the stock market when
| nobody did that and earned some money.
|
| I modified a digital hygrometer and thermometer so I can register
| the temperature cycles inside and outside my house. I also do it
| with my plants in the garden.
|
| I reverse engineer all my GPS(garmin) clocks so I can store or
| upload GPS coordinates and tracks without some stupid and
| inefficient web app that the manufacturer controls for me.
|
| I reverse engineered and hacked the routers from old Internet
| providers and posted the instructions on the internet for others
| to replicate.
|
| I scan and OCR and process every single ticket and receipt... Do
| the same with books.
|
| I also have friends that do the same kind of things so it is
| kinda normal to do those things all the time.
| rahimnathwani wrote:
| "Do the same with books."
|
| I'm curious: do you remove the binding so you can use an ADF,
| use a book scanner, or just spend a lot of time on this?
| turtle-cpt wrote:
| I live in a city in Canada and it gets really cold waiting for
| the busses during the winter.
|
| For some reason my city doesnt have an app to track buses, so I
| made my own (with a lot of help). Wrote it in Python, it tracks
| the real time location of any bus number you enter. Took a long
| time, but it works and now I can ping a bus and see how far away
| it is before leaving the house.
|
| There's usually a handful of busses on a single route, so I
| sorted them by distance from my current location. It was easily
| the funnest project I've done
| scarecrowbob wrote:
| How complex? I wrote a bash script that mounts my encrypted store
| and opens my work applications. It's not exactly a big program,
| but it's a procedure that I execute pretty often :D
|
| I had a diary that I'd written in rails and used it for a couple
| of years. I'd written a fretboard calculator to visualize playing
| positions on my pedal steel guitar.
| mgax wrote:
| Yes
| eslav wrote:
| Certainly. Wound need to think a bit for a complete list, but two
| fun ones come to mind:
|
| Wrote an iOS app to help my kids learn to sing harmony (called it
| HarmonMe)
|
| Wrote a translator from English to phonetic symbols to help teach
| an ESL class
| valcron1000 wrote:
| A PWA for splitting bills among friends. When we get a receipt we
| usually split the cost based on what each of us actually consumed
| (ex. Bob got 2 beers, Alice 3, etc.). I couldn't find a simple
| app that could do that, so I wrote my own:
| https://github.com/emlautarom1/Billy
| luisbarrera wrote:
| I built one on iOS and web. There's no manual input either.
| https://www.producthunt.com/posts/splyt-pay
| mdp2021 wrote:
| Hundreds. Look, computers are tool builders and tools hosts, so
| when you need a tool you build it, if an adequate solution is not
| already available.
|
| And tools can be anything: organizers, information accessors,
| information processors, learning aids...
|
| As already mentioned, months ago I had to build a full word
| processor for Android. I just needed it and what was available
| was faulty. Worth mentioning because I had to laugh in front of
| the odd situation of having to build a Word Processor from
| scratch in 2021 - but there you go, you may need anything.
| spogbiper wrote:
| i spent many hours as a kid writing programs for my own use on a
| trs-80 that we owned exactly zero software for. turn it on and
| start writing code because that's literally all you could do lol
| kissgyorgy wrote:
| I self-host everything, and I wrote an authentication framework,
| which I call "Fancy Auth". It is configurable by YAML and works
| like a proxy in front of all my web apps. It's like a glorified
| Basic Auth, but can connect to LDAP, htpasswd files, can login
| with QR Code and Magic Link or via SSH.
|
| I plan to release it some day though.
| omoikane wrote:
| Last utility I wrote draws a calendar in the terminal, and
| highlights the current date and also the date of the next full
| moon. The full moon calculation is not accurate but good enough
| for me. I run this daily.
|
| https://uguu.org/src_aoba_pl.html
|
| I did that because `cal(1)` broke for some reason, and I felt
| like making some ASCII art.
| joaomeloplus wrote:
| - a search result tracker (https://github.com/joaomelo/attache) -
| script runner to substitute package.json scripts
| (https://github.com/joaomelo/sqript)
| tristor wrote:
| I don't know that I'd consider most of them "programs", but I've
| written hundreds of small helper scripts of various sorts over
| the years. Most of them aren't even published anywhere, not out
| of a desire to keep them from the light, but more because I write
| them, use them, and forget about them until they are rediscovered
| years (decades?) later.
|
| One of the simpler scripts I wrote that I actually published is a
| little helper to output WiFi signal strength on Macs into
| printable glyphs so that you can include it in your prompts on
| the terminal.
| kazinator wrote:
| I created an accounting system for self-employment activities
| that does everything: invoicing, tracking expenses and assets,
| capital cost allowance depreciation of assets.
|
| I have a web app called Tamarind (acronym for throwaway mail
| alias randomization is not defeatable). I can create randomized
| e-mail aliases there which instantly go live. Likewise, delete
| them. Each entry is associated with a memo field that can contain
| URL's (these get rendered into links). Also a date of creation.
| The UI lets you edit the order: selecgt entries by checkbox and
| move them up and down, or to the top or bottom. There is a regex
| search box. It can authenticate the user using SASL or IMAP4. It
| works by editing a mail aliases file; your mail server has to
| know to include that one. It can work with the main /etc/aliases;
| Tamarind will avoid modifying any parts of the file it doesn't
| know about, confining itself to the area between its markers.
| Arubis wrote:
| Define "program"! I suspect you mean "a persistent thing saved to
| disk that gets re-used", but a bash one-liner is its own program
| in a sense.
| deathanatos wrote:
| I wrote a mapping program that could display maps, my location on
| them, time estimates to a down-road position, etc.
|
| "Why not Google Maps?"
|
| Several reasons: Google Maps requires a cell connection. (They
| have offline maps _now_ -- they didn 't at the time I built the
| tool -- but my offline maps are far more controllable in what
| data I pull down. And if I need data I haven't got, and I have a
| cell signal, I can fetch it on the fly _and_ add it to the
| offline cache.)
|
| Google maps was much worse at the time about finding rest areas.
| They're better marginally better now, but it's still pretty
| tedious to do on mobile. (There's no general search for it; you
| can search rest areas and usually get rest areas + junk, but you
| also really want to also search at the same time for, e.g.,
| Flying Js, Loves. Contextual knowledge about the road would be
| good too, in case I'm on a turnpike. Also, still waiting for it
| to realize that, if I'm looking for gas, food, etc. ... I want it
| _downroad_.) Admittedly my own implementation could have been
| better here, but I also lack the nice datasets that Google has...
|
| OSM's map data is, in my opinion, better.
|
| The GPS device I have can acquire a signal pretty much instantly.
| The phone ... cannot. Useful in situations where we needed a
| quick answer, b/c things are happening at 60mph.
|
| Though, we did end up supplementing the program with the phone.
| (On-the-fly routing is better in Maps, b/c it's a really tough
| problem, and I didn't build an interface into OpenRoute or
| whatever its called.)
|
| OpenLayers is an _amazing_ library, too.
| Aloha wrote:
| the Next Exit is a phenomenal tool while travelling.
|
| https://thenextexit.com/
|
| I keep an older copy in my car for when I travel.
| justjash wrote:
| I've wrote a few, more like scripts to do something repetitive.
|
| Wrote a script to scrape pictures off an old website from the
| Wayback Machine.
|
| Wrote another program that scraped some data from a posted Apple
| Music playlist then used the data to generate a Spotify playlist
| with the same songs.
|
| I've written several other smaller things related to Arduino and
| lighting but nothing too special.
| rrab wrote:
| I've recently made an email testing tool like mailhog. I like
| mailhog but it didn't display recipients etc in a way that I
| liked.
|
| I am considering adding IMAP or POP3 to it to make checking
| emails in popular clients easier
| shayan01 wrote:
| Like many people of this community I have written multiple
| scripts and programs for my own use. Recently I was bored with
| Tinder, so I wrote a small CLI to automate the likes on Tinder.
| It's totally stupid and just likes everyone, but I found that
| it's easier to filter out uninteresting candidates afterwards
| instead of having to swipe manually in the app.
|
| Another recent thing (this one is open source, search for
| "5hay/notionbackup"): I wanted regular backups of my Notion
| workspace, so wrote a little program in Go that does that. I'm
| doing weekly backups and pushing it to my Google Suite with
| rclone (encrypted).
| bcrosby95 wrote:
| Yes. Off the top of my head:
|
| I've built a lot of "cheat" programs for games. Ranging from full
| on bots to something that just gives me information to act upon.
|
| I also built a very rudimentary market analysis program for Eve
| Online back when I played, to help me play the market and
| optimize what I would build/mine/etc.
|
| I have a simple chrome plugin that will auto-fill a form for me
| with random junk. This makes manually testing a UI with forms a
| lot faster.
|
| Back when I had a lot of DnD books in pdf form, I built a program
| that would let me create a set of bookmarks across all the PDFs.
| DnD likes to spread classes and spells across multiple books, so
| this made it a lot easier to find stuff.
| cecilpl2 wrote:
| I wrote a web tool that automatically syncs all my brokerage
| transactions from multiple brokerages (either using their APIs or
| web scraping). It also grabs daily closing prices of my stocks
| and relevant foreign exchange rates from public sources, and then
| presents me with a bunch of graphs that I find relevant. It does
| my capital gains tax calculations every year.
|
| It took me probably 6 months of hacking on it in my free time.
| BadCookie wrote:
| I'm curious: Why did you choose to do this yourself rather than
| use something like Personal Capital?
| cecilpl2 wrote:
| Personal Capital isn't available for Canadians.
|
| In fact, there existed no other alternatives at the time
| (~2017). Especially none that did things like adjusting the
| cost basis of each security based on the foreign exchange
| rate on the day of purchase, and tracking gain/loss correctly
| in Canadian dollars. I also needed it to sync with my work's
| group RRSP provider which doesn't offer a standard API.
|
| I don't know if this market has improved in the last 5 years,
| but I have a system I'm happy with now. :)
| BadCookie wrote:
| Thanks for responding!
|
| I have the same issue with having multiple brokerage
| accounts. I haven't signed up for Personal Capital because
| I read that they try to upsell you on wealth management
| services by phone periodically, plus I am uncomfortable
| giving my brokerage login credentials to them (or any other
| third-party service). So I was wondering if you were in the
| same boat!
| cecilpl2 wrote:
| Yeah I was definitely uncomfortable about giving
| brokerage logic credentials to anyone. Some brokerages
| can give you a read-only API key you can supply to an
| app, which is nice for systems like this. Maybe see if
| yours do that?
|
| Wealthica is a Personal Capital competitor. Maybe take a
| look at them?
| MisterBastahrd wrote:
| Not for myself, but I once developed an app that would export
| notes from my dad's Bible concordance app to google docs for
| backup. At the time, I knew how to use the LAMP stack, so that's
| what I used, LOL.
| sumitgt wrote:
| I wanted to record Jeopardy everyday.
|
| A Tivo subscription was too expensive, so I built my own DVR
| software to record from Locast. Worked like a charm until Locast
| shut down.
|
| I had to replace it with a bunch of cron jobs + shell scripts
| which record using a local TV antenna connected to a NUC.
|
| Puts out nice little mp4 files into a NFS which I can access
| anywhere in the world over Tailscale.
| Fergusonb wrote:
| I created a program that allows me to control the max charge
| level of my laptop battery on linux, and persists the change
| through reboot. Written in rust, and I use it several times per
| week.
|
| I designed it for my system, but it should work on any linux
| system with a battery, kernel version 5.4+, and systemd.
| asdff wrote:
| What do you use this for?
| Jtsummers wrote:
| Keeping your battery charged at 100% for extended periods can
| reduce the overall life. Apple recently(?) switched to
| charging phones and laptops to 80% and delaying the remaining
| 20% until it was expected to be needed (like for the phone,
| charging overnight completes before the alarm goes off, the
| laptop will finish charging at the end of the workday before
| I move from my desk to my living room). I don't know what
| Windows does, and Linux is too large a target to make any
| universal statement about how it might treat charging and
| batteries.
| POiNTx wrote:
| Clockify polybar integration. Clockify is a time tracker tool.
| Polybar is a UI bar for window managers like i3 or bspwm. I also
| have a version that works on wayland and interacts with Waybar
| but I haven't gotten around to cleaning it up and publishing it.
|
| I click on it when I start working and click when I stop working.
|
| https://github.com/woutdp/polybar-clockify
| tedyoung wrote:
| I created "Kid Money Manager", a tool to help manage my son's
| virtual account. He wasn't old enough to open his own bank
| account when I started, but we needed some way to track his
| "earnings" (returning bottles for their deposits or gifts from
| grandparents) and spending. It has both a Web UI and access via
| SMS text messages. We mainly use the text messaging--entering
| transactions at the store, etc.-- since I didn't want to write a
| dedicated phone app for such a simple interaction.
|
| Created it from scratch, live coding it on my
| (https://JitterTed.Stream) Twitch channel (and some videos on my
| YouTube channel at https://JitterTed.TV). Written using TDD in
| Java + Spring Boot, deployed on Heroku and open-source at
| https://github.com/tedyoung/kid-bank.
|
| I also recently wrote "Format Hero" (https://formathero.dev),
| because I could never remember which letters to use in Java's
| DateTimeFormatter. Was also a good demonstration of Hexagonal
| Architecture and, of course, I live coded it, TDDing all the way.
| Source is at https://github.com/jitterted/format-hero. Still some
| work to do on that one, but filled my immediate need.
|
| [edit: added proper links for Stream/YouTube]
| julianz wrote:
| Lots. - A script and small sqlite DB to download all of a large
| Youtube channel I wanted to keep. It meant I could just run "get-
| next-video" whenever I had a spare moment and it would go and
| grab another one. - A generator of sheets of math puzzles that
| looked like the ones my kid was struggling with at school, so he
| could practice (it worked!). - Currently working on something to
| track homebrew fridge fermentation temps.
| willcate wrote:
| I wrote a radio station-style audio playback system, because I
| didn't like the tiny few that existed for Mac OS
| mattlock wrote:
| I wrote this program for doing my vertigo exercises.
|
| ruby -e '5.times {%w(left center right center).each{`say
| #{_1}`;sleep 30}};`say exercise over`'
| lucasdicioccio wrote:
| I've recently written my own static-blog generator. On the one
| hand, I got irritated trying or figured out I would quickly hit
| limitations with the popular ones. On the other hand, the effort
| I would have spent searching for and evaluating the hundreds of
| existing other ones is on par with re-implementing my own.
|
| I've written about the motivations and the architecture here:
| https://lucasdicioccio.github.io/how-this-blog-works.html .
| chasd00 wrote:
| I created a program that outputs one of my kid's name if the day
| of year is even, the other kid's name if it's odd. I use it to
| determine who's turn it is to take a shower first. They'll argue
| with me and each other all day long but for some reason they will
| not argue with the computer.
| srcreigh wrote:
| has it been more than a year? How does Jimmy feel about going
| first on Dec 31 (day 365) and Jan 1 (day 1)?
| netsharc wrote:
| I guess it could be change to count whether if the number of
| days since Jan 1, 1970 up to today has been odd or even...
| politelemon wrote:
| Call it Shower Power
| ghewgill wrote:
| I do that too! One of my kids was born on an odd year, month,
| and day, while the other was born on an even year, month, and
| day. They know who is who and they don't argue with the
| calendar. (We do it by day of month and we find another way to
| decide if we need to on the 31st.)
| oh-4-fucks-sake wrote:
| Install a second shower-head and make them shower together.
| Parallel processing is your friend here.
| heyoni wrote:
| Imagine how messy async showering would be?
| amanzi wrote:
| Love this!
| perlgeek wrote:
| Lots of small little scripts lying around in bin/, some of them
| for extracting information or downloading stuff from certain
| websites, some for small admin tasks.
|
| Possibly the most useful for others is a small wrapper around
| pdftk that splits a PDF file into smaller ones based on the
| "bookmarks" (the chapter annotations that many PDF readers show
| as outlines in a side bar).
| xiphias2 wrote:
| I'm travelling around the world and writing program to help me
| categorize hotels / flights, show availability and weather for my
| trips.
| robotburrito wrote:
| I wrote a ridiculously hard version of the NYTime's Spelling Bee
| game because I didn't want to pay for it. It's not very good lol.
| btrettel wrote:
| Some recent small ones I wrote:
|
| - wgetcheck (Python): Downloads a file with wget and verifies a
| provided hash, for my convenience. Also automatically verifies
| internal checksums in zip, gz, and other archives, and verifies
| the size and MD5 checksum provided in a HTTP header. I'll
| probably next add verifying the provided size of the file to
| provide some sort of basic check for files without provided
| checksums. This all would probably be better done by a browser
| extension, so maybe I'll write one later.
|
| - freeze (Python): A script to update a hash file (same format as
| shaXXXsum) by adding new files and noting which no longer have
| matching hashes. Optionally sets the files as immutable [0] to
| prevent them from being modified or deleted. Intended to be used
| on files which aren't supposed to change or change infrequently.
|
| [0] https://en.wikipedia.org/wiki/Chattr (chattr +i)
| iambateman wrote:
| I'm building MoneyHabitsHQ.com out of a desire to use it myself.
| I felt like the existing budget apps were way too complicated.
|
| (That said, it's going to be made more widely available
| eventually, so idk if that counts to OP.)
| mavci wrote:
| Hacker News is part of my daily life. I try to follow the top
| stories every day when I have the opportunity. In order not to
| miss important stories on my busy days, I prepared a notification
| service. It was a very simple, ~40-line PHP script that sends me
| notifications for stories with over 200 points. I have been using
| this service for 7 months and I no longer worry about missing
| important stories.
|
| Finally, I made this service available to everyone so that it can
| be useful to others. I have also obtained the necessary
| permissions from the HN moderators to share such a service with
| you. So, I hope you will not miss important stories from this
| awesome platform with the help of this service.
|
| https://hnn.avci.me
| guessbest wrote:
| I made an app for tracking feedings for my baby girl that
| calculates oz per day. As far as I know, I am the only one that
| uses it.
| ghughes wrote:
| I have a fun one. The front door to my house had an automatic
| door opener, paired with a single-button remote control to unlock
| and open the door. The remote control was annoying to carry and
| use. (This was before IoT became a thing.)
|
| I pried open the remote, soldered on an extra circuit bypassing
| the push switch, and hooked it up to an Arduino. When a packet is
| sent over serial, the Arduino simulates a button push:
| const int basePin = 2; void triggerRemote() {
| digitalWrite(basePin, HIGH); delay(2000);
| digitalWrite(basePin, LOW); } void setup() {
| pinMode(basePin, OUTPUT); Serial.begin(9600);
| } void loop() { if (Serial.available() >
| 0) { Serial.read();
| triggerRemote(); } }
|
| This was paired with a tiny web server to do the serial write:
| #!/opt/bin/python2.6 PORT = 5525 import
| BaseHTTPServer, SocketServer class
| LoccaHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
| server_version = "LoccaServer/1.0" def do_GET(self):
| if self.path.startswith("/trigger"):
| serial.write('A') self.send_response(200)
| else: self.send_error(404)
| serial = open("/dev/ttyACM0", 'wb', 0) httpd =
| SocketServer.TCPServer(("", PORT), LoccaHTTPRequestHandler,
| False) httpd.allow_reuse_address = True
| httpd.server_bind() httpd.server_activate()
| httpd.serve_forever()
|
| Finally I threw together an iPhone app with the most basic UI
| imaginable: a static full-screen photo of the remote; tap once,
| it fires off a HTTP request, and the door swings open:
| - (IBAction)triggerRemote:(id)sender { NSURL *url =
| [NSURL URLWithString:@"http://10.0.8.48:5525/trigger"];
| NSURLRequest *request = [NSURLRequest requestWithURL:url];
| [NSURLConnection connectionWithRequest:request delegate:nil];
| }
|
| That's basically all of the code. Considering how much of a janky
| hack this is, it worked great.
|
| Ancient write-up with some photos:
| https://web.archive.org/web/20120103180640/http://ghughes.co...
| bdittmer wrote:
| At one point I had a gist with a bunch of links to a web server
| that controlled some home automation stuff. Add a link to your
| Home Screen and you're good to go! Easy to share as well
| betaanon wrote:
| I've created a multithreaded python daemon which every 5 minutes
| scrapes all currently online cammers on chaturbate and streams to
| file the ones I've marked as favorites. I've got a text file with
| tags for each favorited streamer so I can change which ones are
| being downloaded depending on mood.
| primitivesuave wrote:
| I created a program that prints QR codes onto sheets of peel-and-
| stick labels. When someone scans the code, they are directed to a
| simple web app that manages food sharing with my four roommates.
|
| We noticed that we buy a lot of the same things (bananas,
| avocados, eggs, etc), so we implemented a system where anyone can
| stick a QR code onto something they want to share, and anyone
| else can scan it to record what they took. For example, this
| morning I pulled a carton of eggs out of the fridge, scanned it,
| recorded that I took 3, and a Splitwise expense was automatically
| updated between me and the person who bought the eggs (much
| easier and less awkward than handing someone 75 cents). Everyone
| is logged into the application via Splitwise OAuth, and all
| products/expenses/debts are automatically simplified within
| Splitwise and updated via the API - so the app is pretty much a
| wrapper over Splitwise specifically for granular sharing of food.
| tdhz77 wrote:
| It's like Web 3.0 for your fridge... make a market for
| anything.
|
| A roommate taking 3 eggs from me doesn't bother me. Firing off
| a text, "Hey, I took 3 eggs" is all I need.
|
| We really just don't like to share these days. That's the
| problem we are now solving it appears.
| yurishimo wrote:
| Yea. I might set something like this up if I had awful
| roommates or some special reason why we couldn't share.
| Otherwise, a shared fund for pantry items seems like less
| hassle for the same outcome.
| sergnio wrote:
| For you Elden Ring fans I created a little rune calculator app
| for me and my friend. I thought to throw it on reddit, and
| several thousand users later I'm happy I did!
|
| I've spent <10 hours on it and did it to learn some next.js &
| preact, and as a bonus, people have been using it.
|
| https://golden-rune-calc.vercel.app/
| neriymus wrote:
| I was addicted to refreshing websites - twitter, reddit, etc etc.
| So I wrote an extension to essentially pull new posts for me
| every 10 minutes - its actually saved so much of my time.
|
| https://github.com/neriymus/Fetcher if anyone's interested
| touchngthevodka wrote:
| I spent a week or two creating a trading tool for the popular
| video game EVE Online. The tool identifies regional arbitrage
| opportunities between large market hubs and allows me to
| prioritise the movement of goods to maximise profit while
| minimising time investment. It also helps me update orders
| efficiently.
|
| As it provides a decent competitive advantage I have no plans to
| publicise it, although it is on Github as a portfolio piece.
| urbandw311er wrote:
| All the time. Most recent was a little node app to quickly create
| Google Meet meeting links. For example when using MacOS Calendar
| and wanting to schedule in a video call. There isn't an official
| Google Meet API so you have to create a Google Calendar event via
| the API and then add the meeting to that.
|
| This was wrapped in a MacOS Automator workflow, which in turn was
| wrapped by a keyboard trigger in BetterTouchTool. So now, when I
| hit Cmd Shift M, a Google Meeting link is created and pasted
| wherever my cursor happens to be!
|
| It makes a little boing noise too when it pastes the URL which
| never ceases to please me.
| Bilal_io wrote:
| I use Tutanota as my email provider. They're horrible with spam
| management, and that's because they encrypt data and can't see
| what I am sending/receiving. So I am almost done with a chrome
| extension that helps me manage those spam emails, it lets me bulk
| report to Tutanota, add spam rules for the email and domain, and
| delete. I'll be open sourcing it and sharing it on HN once done.
| seligman99 wrote:
| A few come to mind:
|
| A command line calculator. While it's on github, is really just
| made for me because I wanted something to do quick math and
| convert different units.
|
| A note/todo app. Started it's life as just a text file in a git
| repo, but now has a web front end, a simple TUI front end, and a
| little backend so it can add repeating tasks or tasks future days
| when they come along.
|
| I also have a little python script running to control my exterior
| Hue lights, turning them on at sunset and such. Just added a
| thing today that turns on the lights in my office to full
| brightness when I open Zoom. It's nice, but every time I go down
| the rabbit hole of home automation, my SO rightly gets annoyed at
| the silliness of it all.
| Ocha wrote:
| I created a program to use locally for testing emails. It creates
| intermittent latency and errors on SMTP side and helps you catch
| code that cannot handle SMTP/network issues (no retry,
| synchronous code). Now I offer it as a hosted solution and use it
| myself with every project I develop. If interested project name
| is Mailsnag and it can be found at https://mailsnag.com/
| hprotagonist wrote:
| lots.
|
| many of them live in my emacs config...
|
| also, a TUI noaa weather interface, piles of little bespoke
| automations, etc. None of it's portable, none of it's really
| meant to be.
| logbiscuitswave wrote:
| Oh, sure. All the time. Sometimes if you need some solution to a
| problem you need to invent it yourself.
|
| Back in the day when I had a Windows phone, I used Microsoft's
| Zune player to sync it - but I used iTunes for my actual library
| management. This was a problem because all my playlists and
| ratings were in iTunes and there was no clear migration path. I'm
| pretty obsessive about organizing and cataloging my media files
| so this was something I couldn't let stand. Unfortunately while
| iTunes had a decent SDK, Zune had none (at least not a public
| one).
|
| I basically had to reverse engineer Zune's APIs to figure out how
| to synchronize things like playlists and star ratings between the
| two platforms. It was all a big ugly hack -- on the one side
| using iTunes' documented but limited COM APIs, and on the other
| using Zune's completely undocumented but thankfully also COM-
| based APIs so I could at least try to infer some functionality
| behind them via reflection. It was a precarious hack as well.
| When it worked, it worked well enough, but any time the Zune
| client software updated, parts of their API would change or break
| and I'd have to try to figure out how to hack around them again.
|
| All these years later, iTunes still has a COM SDK but it hasn't
| been updated since 2004 so it's stuck only supporting some of the
| most basic iTunes features for automation.
|
| I can still use it for some CLI tools that I have where I can use
| keyboard shortcuts to set star ratings on songs without having to
| manually go in iTunes while using it. That way if I have a
| playlist going in the background I can just press one of a set of
| programmable keys to launch this little CLI tool to rate a song
| on the fly without otherwise interrupting what I'm doing. Sadly
| the SDK doesn't support the newer heart ratings, or things like
| checking/unchecking songs from playlists.
|
| I guess what I'm discovering from writing this post is I seem to
| spend a lot of time trying to automate all my weird scenarios
| around media management.
|
| Lately I've been working on a project in my spare time to control
| a BLE-based robotic cat toy. The company that made it stopped
| supporting it and delisted their applications. This was a very
| expensive toy that I didn't want to stop working because of the
| whims of the company. It was a big challenge - I had to reverse
| engineer their protocols, reverse engineer their applications,
| and write something new to replicate the functionality. Just to
| amp up the difficulty I also decided to build a standalone
| ESP32-based device that I can use to control the robot without
| even needing a phone. It's been a big challenge working with lots
| of unfamiliar technology but it's also been a lot of fun learning
| and experimenting with these new (to me) things.
| ricg wrote:
| Quite a few. Some I use regularly:
|
| - Text snippet app to reply to support request emails. Use this
| to reply to about a dozen emails each day. I have over 300
| snippets.
|
| - App to got through a folder with my bank statement PDFs and
| produce a number of transaction and investment reports
| (calculates IRR and other metrics).
|
| - An app to simulate all possible portfolio combinations for a
| given set of assets (this was before https://portfoliocharts.com)
|
| - An egg timer that you can start before you set the time right
| after you put the eggs into the water. Those seconds are
| precious. Wrote this as a gift for somebody.
|
| - App to generate monthly invoices for my app sales.
|
| - A nice frontend to manipulate csv files.
|
| While I was looking for an apartment, an app to look for new
| listings and notify me right away (often the nice apartments
| would already be gone by the time the daily email reached my
| inbox).
|
| A workout timer. Simple app that tells me the time every 15
| seconds. Throws in the occasional Tony Horton quote for
| motivation.
|
| Oh, and a personal notes app, of course!
| spike021 wrote:
| I wrote a Mac utility "app" to display currently playing track
| notifications using the system notification pop-ups a ways before
| Spotify or Apple Music had it. People had previously done it with
| Growl, but I was no longer using that and wanted it to "just
| work" as part of Mac OS(X).
| CameronBanga wrote:
| I needed to hire a Ruby on Rails engineer a few years back, and
| didn't have much experience with Rails. So took a weekend to
| scratch an itch and created a web app where I could input a URL
| to a YouTube video, and the app would then pull the audio from
| the file and add it to a podcast RSS feed so that I could listen
| later on my iPhone in Overcast.
|
| It was super useful for a while, and never turned it into
| anything more. Was handy for just listening to conference talks
| and other content where the video wasn't very important.
| sam_lowry_ wrote:
| Sounds like NewPipe
| CameronBanga wrote:
| Yeah, I was using it for basically the same purpose as the
| background player. But wanted on iOS, and then just used as
| an excuse to play around and get a bit more familiar with
| Rails. :)
| paultannenbaum wrote:
| I have a few, but the ones I get the most use out of is a scraper
| that checks two very popular campground in CA right at midnight
| when new reservations open up, and reports back what is
| available. I have plans to automate the purchasing of the sites
| if they meet certain criteria, but alas always busy with paid
| work.
| na85 wrote:
| >Curious to know if anyone has written programs for their own,
| regular, & personal use. And if so what they are?
|
| I wrote an algorithmic trading bot in Common Lisp. Basically it
| uses statistical arbitrage to buy low and sell high.
|
| It runs continuously so I'm not sure if that fits the spirit of
| your question.
|
| Aside from various random shell scripts, I also wrote a python
| script that would alert me via push notifications when my plants
| need watering.
| ffhhj wrote:
| I made a domain scraping tool that found a nice 3 letter domain,
| a few graphic editors for game design, html+js+php minifier, file
| copiers to backup only certain files, and other automation tools.
| Mc91 wrote:
| I have written some programs...
|
| An old IRC channel I was on migrated to Slack, so I wrote a
| Python script that logs it in an IRC log-like format, like I use
| to do on the IRC channel.
|
| I wrote an Android app that tracks my movements if I am moving,
| and sends it to a server. I wrote it all in about a week in 2018.
| Have not had time to update it but it works well enough. Have not
| done much with the data yet, but it has been useful when I am
| trying to remember when I went somewhere and for things like
| that.
|
| I use other things, but they're mostly open source programs that
| I modified slightly for my purposes.
| eddywebs wrote:
| Yes ! A simple todo list that remembers the state no signup
| required >> https://eddywebs.com/todo
|
| Best software comes from ones own need.
| khaledh wrote:
| I've written a quick and duty Django app to organize computer
| history literature (papers, manuals, books, etc). Every document
| includes an embedded pdf and is tagged with authors,
| institutions, and topics. It supports cross-references between
| documents. I also added a feature to mark a document as read and
| when it was read.
|
| It has helped me wrap my head around certain areas of computing
| without getting lost in a pile of pdfs.
| ricardonunez wrote:
| Several over the years. Most recent one csv reader to work on
| geojson files. A pomodoro time tracking, I want to make this one
| a product. Local real estate Data visualizer, stats, charts, also
| want to make it a product.
| snide wrote:
| My entire linux Desktop feels this way! It's my favorite part of
| working in a barebones Linux distro like Arch. I've got to build
| everything from the ground up. Need a screenshot program? OK...
| let's pull in Flameshot. Where's it going to host that image?
| Well, let's create a watch folder and shuttle everything off to a
| GCP static bucket.
|
| Window manager? I3... heh, let's build a bunch of scripts. Vim?
| Well... man, that's a whole ecosystem of tooling I an hack
| together and write against.
|
| I do this as a designer. I'm actually not a fantastic programmer,
| I just like the flexibility of building tools that are specific
| to me. My entire desktop feels like a love letter to building
| cool things the way I want.
| nyolfen wrote:
| https://i.imgur.com/CVpc7nD.mp4
| abledon wrote:
| i usually fork open source worktools and tweak the UI so it has
| snappier hotkey interactions
| jinglejelly wrote:
| I wrote a web app in Django to automatically transcribe audio
| interviews, annotate the transcriptions and extract audio
| fragments. I started building it to help my wife with her MA
| thesis, as an alternative to expensive social sciences software
| like nvivo. Unfortunately, she finished her thesis before I
| finished the app! I later used it to make a few radio
| documentaries and I was going to try marketing it but it was too
| much work to get it slick enough. In fact, even I was put off by
| its lack of slickness and eventually stopped using it.
| itsthecourier wrote:
| joshstrange wrote:
| I have a couple but the first that comes to mind is a tiny little
| mac app I wrote that "jumps" my mouse between monitors. I use it
| because I have 2 monitors in vertical orientation, one in
| horizontal between them, and another smaller monitor above the
| center monitor. Here is some ascii art of it:
| +----------------+ | |
| +------------+ | | +------------+ |
| ! | | ! !| | ! | | ! |
| | ! !| | ! | | ! |
| +----------------+ | | | |
| +-+----------------+-+ | | | | |
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| +--------------------+ | | | ! |
| | ! | | ! | | !
| | | ! | | ! |
| +------------+ +------------+
| ! = Where my mouse would get stuck
|
| My little app helps to keep my cursor from getting "caught" on
| the 2 vertical monitors. By default macOS treats the parts of my
| vertical monitors that go above/below the middle monitor as hard
| stops/walls so it's annoying if my mouse is too low/high that I
| have to stop what I'm doing, drag my cursor up/down, then
| continue moving across the monitors. Likewise, the only way to
| get to the top monitor is to first go to the center monitor then
| go up. I hated feeling like my mouse was running into walls
| constantly so I wrote this app. If my cursor hits any of the old
| "walls" then my app moves the cursor up/down until it lines up
| with the bottom/top edge of the center monitor. Also if I'm
| hitting a wall at the top of the vertical monitors it will jump
| me over the "gap" to the to top-center monitor.
|
| I looked for (and paid for) a couple of apps out there that claim
| to do this or something similar but none of them worked for me. I
| had never really written any Swift code but I was able to cobble
| together enough code to make it work and in around 200 lines of
| code I got exactly what I wanted. I wrote this over 2 years ago
| and I haven't had to touch it since. In fact the first time I
| rebooted I got confused at why my mouse was getting stuck because
| I had grown so used to it (added my little "app" to login items
| and everything has been smooth sailing ever since).
|
| EDIT: Added "!" to the diagram to show all the places my mouse
| would get "stuck" previously. I left out the ones on the center
| monitor since they are harder to explain where I'd get stuck
| going up (the edges since the bottom monitor is higher resolution
| that the top one).
| smarri wrote:
| I love that you included the ASCII art!
| vax425 wrote:
| I made myself a Chrome extension called Headlamp that puts a red
| dot by each link, button, text box, etc., and clears them as I
| click or type while I'm testing a web app.
|
| When I hand off a build to a client, if all the red dots are
| gone, I know I've at least TOUCHED everything.
|
| If I'm working with another engineer, we can both see the dots in
| our browser and collaborate to clear them all while we test.
| Trufa wrote:
| Nice! Can you share it?
| vax425 wrote:
| Sure! It's not really bulletproof yet and could use some more
| features, but I'd love to get your feedback and bug reports.
| I'm thinking about turning it into real product...
|
| https://headlamptest.com
| swores wrote:
| Cool product, it's something I'd personally be interested
| in if free or one-off license, but as someone who just
| dabbles now and then (but including sometimes for business
| stuff) it's nowhere near worth the monthly cost for me. $50
| one-off would frankly be possibly more than the value I'd
| get, but I'd definitely buy it in the hope it would be
| useful. (Appreciate, I'm not everybody and just because
| that's where I fit it doesn't mean your pricing needs to be
| aimed at me.)
| vax425 wrote:
| Thanks for the feedback!
|
| It's free to use for now. I'd like to bill heavy
| corporate users someday. Not sure what the criteria will
| be for that.
| testplzignore wrote:
| > Headlamp is like having a second manager on the team.
|
| I'm not sure I would use that endorsement...
| vax425 wrote:
| Good point! Wrote that many years ago. It's a side
| project I'm resurrecting.
| bradly wrote:
| I created a program that I could point at any directory and it
| would copy all the photos to my external backup drive. It would
| organize them by year and month from either the metadata or the
| filename. It would ignore duplicates based on file size or
| timestamp. I had a low-resolution filter to make sure I wasn't
| getting thumbnails.
|
| I had photos on all sort of old phones, old laptops, and various
| external drives for both me and my partner that I wanted to
| organize to make sure nothing is lost. This program allowed my to
| just run through everything and let to do all the hard work.
| pklausler wrote:
| I have been editing code for the last 15 years in an editor that
| I wrote for myself only.
|
| Most recently, I wrote a "wgrep" program that scans an input of
| 5-letter words and extracts those that could be a Wordle
| solution, given a guess and its result on the command line; and
| another program that determines the best Wordle guess from a list
| of remaining words (where "best" means "minimizes sum of squares
| of counts of words with the same outcome").
| Dedime wrote:
| I wrote a quick program in Go to move a certain file from my
| Downloads folder to my Google Drive folder, when the file is
| detected. It's to help me backup with Tiddlywiki.
| lmc wrote:
| I had been accruing bookmarks in Google Bookmarks since 2008,
| then saw it was going to be shut down[0]. I liked the workflow
| and the core features seemed simple enough, so I made a cheap
| clone - Strudel Bookmarks [1] (I was planning a move to Austria
| at the time). The code is terrible so I never open sourced it.
| Took it as an opportunity to try a couple of pieces of tech
| out... much respect to Hasura[2].
|
| [0]: https://9to5google.com/2021/07/20/google-bookmarks-
| closure-m...
|
| [1]: https://i.redd.it/uvrv7qsqtct81.png
|
| [2]: https://hasura.io/
| trafnar wrote:
| I made a video player for studying languages (Chinese in my case)
| its fully keyboard driven and allows marking areas of the video
| to be looped, so I can play through the video and efficiently
| mark all the areas with speech, then loop through those and
| navigate between them. I can also write a note for each marked
| area, which I use to transcribe and translate the video content.
|
| I'll make it public in the near future.
| Insanity wrote:
| Yup, a couple.
|
| Most recently:
|
| A webapp to track my runs, a service which creates backups of my
| google drive photos to AWS S3, a streaming app to monitor my
| puppy when we have to leave him at home (with raspberry pi +
| webcam).
| syngrog66 wrote:
| yes, tons. this was esp more common before the rise of the whole
| "everybody must have a GitHub portfolio" culture and
| handheld/spoonfed coding bootcamps & tutorials etc etc
|
| vast majority of my own code has never been seen anywhere.
| portion only by clients/employers because done for them. very
| tiny slice in FOSS projects
| rollcat wrote:
| I wrote judo[1] because I was frustrated with Ansible. I wanted a
| very basic tool that could do 80% of the work in 1% of the code.
| It has one or two bugs, but I've been using it for personal and
| work stuff since 2016 and I'm not looking back.
|
| [1]: https://github.com/rollcat/judo
| savanaly wrote:
| I created two web apps to help when playing the boardgame
| Gloomhaven. Both were coded in Elm and were done partly because I
| had a need for them but mainly just for the joy of coding in Elm.
| I'll link the github repos of both, the demo is linked in the
| README for each.
|
| The first app is Battle Objectives [0] which I made so that my
| group could play with some "enhanced battle objectives" I found
| online. The fan-made enhanced battle objectives are freely
| available on Boardgame Geek but I didn't want to print out and
| cut out all the cards so I coded them into an app. I linked this
| app on BGG but didn't think it was getting any use from anyone
| outside my personal Gloomhaven group. But I also found out while
| writing this post that someone forked Battle Objectives to
| translate it to German so I guess someone was using it! [1]
|
| The second one is Hitdeck [2] which I made to automate the tedium
| of reshuffling my hitdeck and of rebuilding it to add and remove
| cards as the game went on.
|
| Edit: I almost forgot I coded a complete emulation of a solo card
| game called Friday [3] [4]. I enjoyed the card game a lot but
| it's well suited to many fast paced rounds and I got tired of
| having to shuffle all the cards so I made an app to emulate all
| of that. It's unfortunately just for me because I never got
| around to adding a tutorial or anything so unless you already
| know the rules of Friday you'll be pretty lost trying to play.
|
| [0] https://github.com/tristanpendergrass/battle-objectives
|
| [1] https://github.com/ToM-Korn/kampfziele
|
| [2] https://github.com/tristanpendergrass/hitdeck
|
| [3] https://boardgamegeek.com/boardgame/43570/friday
|
| [4] https://github.com/tristanpendergrass/legendary-barnacle
___________________________________________________________________
(page generated 2022-04-13 23:00 UTC)