Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: What's are your personal automations?
104 points by iameoghan on Dec 11, 2020 | hide | past | favorite | 155 comments
Hey HN,

I'm curious to know more about what automations people use day-to-day. Either cron jobs or other services?

Does it make your day easier?




I realise this might not be what the question has in mind, but we have a bread machine.

Just buying bread might be more 'automatic', but we've been evolving the process and recipe for the last 6+ months, and honestly the bread is now better than any but the best artisan loaves available locally, and hugely cheaper.

To save time, and overcome laziness, we pre-mix 'wet' and 'dry' 'kits' in batches of 6 or 10 loaves at a time, and divide into loaf-sized portions. Wet is water, sugar, honey, oil, salt, etc. Dry is various flours, oats, multigrains, etc.

When it comes time to make bread (usually the night before we want it), it's a simple matter of pouring a wet kit into the machine, sprinkling over a dry kit, some yeast, setting the timer and pressing 'start'.

The kids do that, and do most of the batch prep, which we/they've optimised for teamwork, and for example we've 3d printed scoops in the right measures for the recipe, to speed measurements.

So from my point of view, I almost have 'automatic bread' :)


You might have just convinced me to buy a bread machine...

To add a similar answer, only in the past couple of years have I had a nice rice cooker (we have a Zojirushi) that keeps the rice fresh for ~12 hours. It is irreplaceable at this point (My wife is Asian and rice is a part of pretty much every meal.) Best appliance I have ever bought, gets used every. single. day. and have rice ready-to-eat throughout the day.


We bought a bread machine almost three years ago. Since then we are yet to buy bread in a shop. The machine is amazing. It literally takes 3 minutes to prep. No fancy recipe. Spoon of yeast + 400g flour + spoon of sugar + spoon of salt + 20g of butter + 280ml of water. Quick program and fresh bread is done in 2h.

Highly recommend it. I don't want to advertise but we bought a well known Japanese brand after a lot of research.


Please advertise! Genuinly curious.



Only one you should consider the rest are junk


Zojirushi (which seems to be high quality as well) was mentioned but I went more mainstream and bought Panasonic SD-2511KXC. Looks like they don't make it anymore but there are similar ones available.


On my second Panasonic after over 15 years of making bread at home. Highly dependable and pretty much guaranteed a good loaf every time.


"You might have just convinced me to buy a bread machine..."

It also makes excellent pizza dough ...

"My wife is Asian and rice is a part of pretty much every meal."

Strangely, I am in a similar situation, and do not have a rice cooker. Time to go shopping.


Thanks for sharing, sometimes the best answers aren’t exactly what was asked


We used to have a bread machine years ago.

The best part was the smell of freshly baked bread.

The part I didn't like was the big hole in the loaf where the bread mixing paddle thing was. Has that been solved?


Indeed, we usually program it to be ready by morning - so we wake to the smell of fresh-baked bread, it really fills the house - no need for an alarm!

The paddles thing hasn't been solved AFAIK, I think they'd have be lowered and raised from the lid, rather than retracting through the waterproof pan. But anyway, with a dual-paddle machine, it's not such a big deal.


Sorry for the late reply, but what's your go-to bread machine recipe?


~750g multigrain

wet kit (optimised to fill a nominal 330ml bottle):

  water       301g
  oil          30g
  salt         10g
  honey        10g 
  sugar         9g (or just 20g honey)  
  cider vinegar 5g
  lime juice    5g
dry kit:

  white flour  400g (still experimenting to replace some of this with healthier options)
  quick oats    50g  
  wholemeal     30g (coarse)
  white sesame  tbsp
  black sesame  tbsp
  sunflower     tbsp
  flax          1/2 tbsp
  milk powder   12g
  ginger powder 1g or 1/4 tsp

  yeast ~8g
It may or may not work well for anyone else. The initial goal was to replicate the 'Alpine' loaf that we used to buy regularly. We've gradually evolved the recipe for our specific machine, flour, process, etc, and I think we've now actually surpassed the goal by some margin.


Champion! I am going to try this out this week, thank you very much!


Good luck! Let me know how it goes, especially if you have any suggestions or improvements.


I use a lot of automation these days, here's a summary:

- There's only one bakery in my area that has keto bread, but infrequently. I have a daily bot that scans the bakery page on the Uber eats equivalent webpage, then alerts me when bread is available.

- On my phone I get a notification in the morning. When I click it, it copies my daily journals markdown template, opens the note app. Then I paste and write.

- I have a bot that scans hacker news for keywords and notifies me. Which alerted me to this post. :)

- I have a bot that which scans reddit and twitter for keywords.

- I have a bot that watches Rotten Tomatoes for upcoming Sci-fi movies that are rated "Fresh". Then creates an RSS feed for me.

- A bot that watches my side project and lets me know when it goes down.

- My entire side project is completely automated and a daily email goes out automatically (https://randomdailyart.com/)

- I get email reminders and notifications on my phone to remain in contact with people using https://www.monicahq.com/.

- Built a telegram bot where my SO and I can quickly add entries into a google sheet, for tracking who paid for what.

I'm sure there's more but that's all I can think of on the top of my head.


Just curious on what bot framework you use


I use a mix of huginn, n8n, rss-bridge, some custom code that runs via cron job, and I'm using puppeteer more and more.


Dang this is next level personal automation here

I haven't even set up a webscraper alert for a ps5


ive been thinking of an app link "monica" for a long time! gonna try it out right now, thanks for sharing :)


What do you host your projects on?


Everything is on a digital ocean box.


Most of my automation has to do with personal data backups/exports and various tools I've developed to process it and use [0]. That would be hundreds of jobs scattered across several of my devices.

I have a tool I wrote which is doing periodic searches for specified queries on different sites and generates RSS feeds with new results + HTML reports (so I can find people with overlapping interests, e.g. if the same person matched against multiple queries) [2]. Sort of like google alerts, but much better. So there is some daily scraping for that.

I'm using a somewhat hacky tool which 'compiles' a python spec for jobs to systemd and makes it very easy to maintain. [1]

As for making my day easier.. not always yet, but certainly makes it more fun. I live by the motto "Never spend 6 minutes doing something by hand when you can spend 6 hours failing to automate it" :)

[0] https://beepb00p.xyz/my-data.html#consumers

[1] https://beepb00p.xyz/scheduler.html

[2] https://github.com/karlicoss/axol


I automated my desktop environment configuration using Docker containers. I'm able to go from a headless tty to perfectly tailored desktop environment in ~2.5 seconds. First time start requires a ~40 min build, byut thereafter ~2.5s to start afresh. https://github.com/sabrehagen/desktop-environment

I did the same think for my production application environment. One command to go from no infrastructure to production grade cloud application deployment. https://github.com/cloud-computer/cloud-computer


I have done this[0] to varying extents for different distros, though I've been distrohopping a lot lately and the scripts haven't quite caught up. I have a similar set of scripts used to provision workstations and servers in my lab.

I find that having a fully automated setup makes tech problems much less stressful. If something breaks, I can just re-install the system from scratch and be up and running again in an hour or two. It also makes changing hard drives or setting up a new machines very straightforward.

0 - https://git.sr.ht/~charles/provisioning


Aaah, that’s the dream! The best part of Linux workstation is setting it up perfectly, in a way that completely blows away everything else on your personal workflows. And the worst part is doing it again.

I use mostly macOS now but I’ve been thinking about using my desktop for work now that WFH and all that, so I need to embark on the Linux journey and this looks like a great starting point.

I did try Nix once but it was hard to love.

Edit: and hey you package Notion :)


That's pretty interesting! I'm also using a CI-built Docker image add my development environment. But this one is less ambitious than yours by being CLI-only

https://bergie.iki.fi/blog/docker-developer-shell/


I don’t mean to sound snarky, but why? Is this for your personal desktop or something else?


My personal desktop. For repeatability.


That's remarkable! I don't think I've seen anyone else even try to run X itself in docker. Thanks for sharing:)


Does this mean your entire desktop environment is a Docker container? Or are you using the docker container to setup on the host?


No, not on the host. The containers run on the host and provide the environment. They are isolated from the host.


This is really cool, thanks for sharing. Very elegant.


    [ $1 ] || { echo "Notify what?"; exit; }

    curl -X "POST" "https://push.techulus.com/api/v1/notify/$PUSHKEY" \
         -H 'Content-Type: application/json; charset=utf-8' \
         -d $'{ "title": "Linux",   "body": "'$1'" }'
     
    echo;

I use this app[1] that notifies my cellphone, so I wrote this bash script that I call when a long task is done, so it notify me when I'm away.

1 - https://push.techulus.com/


I've found that paying people to provide you with good food saves tonnes of time: shopping, prepping, cooking, cleaning, garbage. Hotel buffet breakfasts or similar are a good solution. This is by far the most time efficient daily hack. Also good are floor cleaning robots. Not owning a car is great too, if you add up all the time doing parking/registration/license/insurance/whatever. Software... well, mostly just avoid closed source stuff where oodles of invested time winds up wasted when they arbitrarily mothball the product, close the cloud or deeply alter the interface without consultation. Keep documentation with code. Keep all code in a revision control system. Oh, and write less code. The less code you have to maintain, the better.


I found that finding a restaurant, going there, ordering, waiting, eating, paying and returning home consumes more time than cooking at home.


Do you just never cook for yourself? What service/method do you use?

I would love to reduce my cooking to weekends/whenever I feel like it, but I've had a really hard time finding a cheap, healthy, and sustainable way to do this. I always feel like I'm paying a more money to eat something that's not that great for me and tearing through gas/one-time-use plastics doing so.


Often cook, love cooking but don't cook every day. Most days if a meal is consumed at home it's either cold (salads, something with-or-on bread), really quick (soups), or zero-prep (fruit or nuts).

Breakfast is usually at a nearby hotel which covers 2/3 daily meals and associated coffee. Got a deal going so executable at less than walk-in expense, with zero lock-in (turn up or nay), transferable so also good for meetings on occasion. Heaps of fresh fruit, bit of protein, veg, coffee. Would be hard to match for cost let alone time at home.

My view is to look at quality food like insurance and invest in your health, or do the maths on the time. It's worth it.


May be you should keep a watch at https://whatscookin.us.

Its a community meal sharing app. They are almost in production. I was a contributor there sometime back.


I could see money, but how much time are you spending on registration/license/insurance? Registration is 5 mins a year paying online, license is in person every 15 years and online every 5. Insurance is just a bill I pay. Perhaps it's more work in other states?


A cron job that runs on a server and sends me a daily digest email. It’s composed of a number of modules that each check one thing and report a message and a “severity”. The glue code then orders them and send the email. Currently it checks:

Twitter follows/unfollows for me, my wife, and my Twitter bot

Stock movements for the few stocks (RSUs) I have

Confirmation that several daily backups (db dumps etc) were successful

Upcoming SSL cert and domain expirations

New GitHub stars

Disk space left on my personal server (running out tends to make it crash)

I know that looks like a lot of stuff, but the goal is for the script to programmatically determine which ones cross the threshold into being actionable/important and to hide/de-prioritize the unimportant ones for me so I can confidently ignore them and focus on any important ones.


someone here said that the nyt frontpage is available in pdf format.

I now download this url and email it to myself as an attachment:

  now = datetime.datetime.now()
  nyt_url='https://static01.nyt.com/images/%04d/%02d/%02d/nytfrontpage/scan.pdf'%(now.year, now.month, now.day)


Nice! I'd like to see that.


Journaling.

I have a shell script that that creates a new markdown file for that day, which I write my journal entry into.

Another script compiles a year's worth of journal entries into an epub.

Another workflow I made is similar, but for tasks. So every day I run a shell script that copies the last day's tasks to a new file with the new day's date, forcing me to evaluate what was done the previous day (if anything). Some days are great, some days not so much.

The tasks also show in my browser's new tab page to further reinforce.


What editor do you use for writing in the markdown files?

I've tried org-journal in Emacs but I could never get over the learning curve of Emacs + org-journal.


I've been using Obsidian recently and I love it. There are all kinds of interesting ways you can graph your posts too.


Wow, can't believe I haven't heard of Obsidian. Thanks for sharing. I'm going to check it out.


I've tried Obsidian, but after getting used to the inline workflow of Typora I just can't use anything else, even if I'd love to have the graph feature that Obsidian provides.


Vim. Actually this workflow is what finally got me to start using vim, and now I use vim for everything.


I use the following in Bash.

    function notifyme() {
       MSG=${1:-'Terminal is done'}
       TITLE=${2:-"Done!"}
       osascript -e "display notification \"${MSG}\" with title \"${TITLE}\""
    }
I use it like:

bin/start-unit-tests; notifyme


I wrote https://notica.us to do something similar. It needs a web browser open, but works over SSH and to your phone.


I do something similar, but it is networked so when a compile is done on my dev machine, my main desktop shows a notification using terminal-notifier.

It's very old and very hacky. There are probably apps that do this so much better.

  /Applications/terminal-notifier.app/Contents/MacOS/terminal-notifier -group not -title "$t" -subtitle "$st" -message "$m" -execute "$HOME/bin/gospace 1"
gospace ends up doing:

  osascript -e 'tell application "System Events" to key code 18 using option down'
which presses option-1 which switches to space 1


This is really nice!

Here is an attempt at fish port:

   function notifyme
     set MSG $argv[1] "Terminal is done"
     set TITLE $argv[2] "Done!"
     osascript -e "display notification \"$MSG[1]\" with title \"$TITLE[1]\""
   end

disclaimer: this is first fish function I ever write so might not be the best way to do default values; I'm using hack from https://unix.stackexchange.com/a/88682


Too late to edit, but was rereading this and i forgot that I made optional args too. For example i sometimes leave my self next instructions

   notifyme "Now you can commit and push code"
   notifyme "Now you can commit and push code" "Tests complete"


This is so simple and so cool!


I use email for many automations. Email is very flexible, lots of services directly integrate with email and for all the other stuff there is zappier. Some examples

* mailing something to todo@mydomain will put it in my todo list (i.e automatically forward actionable emails, jira tickets etc)

* mailing a link to videodl@mydomain will run youtube-dl on the link and then upload the video to onedrive. I also have a companion apple shortcut that does this from the share sheet without even opening the mail client.

* sending a pdf to pdf@mydomain will send it to my ereader

* article@mydomain will parse the link, remove ads and reply with the html contents of the article

For the backend i run an instance of n8n.io which can listen for emails via imap and run custom scripts based on the email address


I really like this. I too use n8n a lot.


One of my favorite automations is a slack bot I made to send me a message when a process finishes: https://github.com/spohngellert-o/SlackProcessTrackerBot

As a data scientist I often run code that takes hours, and getting a slack message when it finishes is super helpful, and it has often helped me catch when a script finishes too early due to some error.


I do the same thing, but I use the Twilio CLI to send me a text so that I can get up and walk around if the process is blocking other work. (:


Home Assistant automations have been incredibly useful/powerful, and make life a little more convenient. I have a few set up:

- Play a chime/alert over my Sonos system if a door gets left open for longer than a minute (https://labzilla.io/blog/homeassistant-door-chime).

- Turn off my window air conditioners when I leave my apartment for more than 15 minutes, and turn them back on again when I'm within a block of my apartment (or if it gets above 80 degrees).

- Automatically turn on lights when I come home.

- Play a chime/alert over the Sonos when laundry is finished (I use a SmartThings button to trigger a timer; one tap = 30 minutes wash, double tap = 45 minute dry.)

I also have a few cron jobs to move automatic backup files from my colo server to my NAS at home. I use healthchecks.io to automatically alert me if the job fails to run.


As a heavy web radio listener, I set up a Jenkins server to switch between radio stations according to the time of day. Time is in UTC:

- BBC4 (UK) from 12.45am ~ 1am

- KZOO (US) from 1am~6am

- RDB (Madagascar) at 6~8am

- FM Miki (Japan) on weekdays or BBC2 (UK) on weekends from 8am~12pm

- RDB (Madagascar) from 12pm~2pm

- Radio Vaovao Mahasoa (Madagascar) from 2pm~4pm

- BBC4 from 4pm~7pm

- ABC Radio (Honduras) from 7pm~9pm

- FM Miki (Japan) on Mon,Wed,Fri or FM PiPi (Tue,Thu,Sat) from 9pm~12.45am

That, in addition to scraping the news of the day from various sources and versioning it in a git repository:

- Yomiuri Shinbun (Japan)

- La Gazette de la Grande Ile (Madagascar)

- Madagascar Tribune (Madagascar)

- The Guardian (UK)

With this, I can listen to my favorite English, Japanese, Malagasy and Hondurian radio without turning any button. The programs being easily recognizable, I effectively no longer need an alarm clock or even a clock to know the time of day provided that I am within the transmission range (yes I have built a very low-power FM radio to overcome bluetooth range limitations).


That's very unusual! I like it! You should definitely do a raspberry pi radio with such feature and sold it on etsy or somewhere.


A dishwasher is great if you can fill over 50% of it. Will save you couple minutes and effort.


If washing the dishes by hand would take more than 3 min the dishwasher wins on net water usage, regardless of how full it is. It’s marginally more to factor in energy usage.


Coolest hack is 2 dishwashers and alternating them.


I never found the perfect note taking and/or scheduling software. So I wrote a Python script which combines several tools which together give me what I need. My entire life revolves around it, can’t imagine living without it anymore.

Getting that sort of system sorted out is maybe the most productive thing you can do because it is meta-productive.


Would you mind going into a little bit of details about the tools you use and how automation helps? I am very interested in this.


I would like to know too :)


can you explain a bit more about this? sounds very interesting


I used to have a Twilio phone number hooked up to a Lambda function so that people could press the buzzer box at the front of my apartment building and it would automatically send back the required DTMF to unlock it, then text me to let me know someone had been buzzed in.

Other than that, just some bespoke Tasker automations and some hotkeys on my computer. Reading through this thread makes me feel like a rookie, though.


While I was having a home built I made a script that monitors the local council building consent website and email me every time an inspection had been completed.

During a friendly weight loss challenge I wrote a script that pulled my weight from a smart scale and inserted a rolling weekly average into my column in our shared spreadsheet.

I made a website that scrapes motogp to build my own No Spoilers website with absolutely no Javascript and a far better layout than their silly horizontal scrolling cards layout.

I wrote a script to pull data from John's Hopkins and give me daily coronavirus updates in a more digestible way (since deprecated because I'm in NZ and would rather put it behind me).

Probably a bunch more I'm forgetting about.


Got tired of having to find GitHub code line link every time I wanted to share code with someone. Wrote a vscode extension to spit out the GitHub line link: https://marketplace.visualstudio.com/items?itemName=colo-lab...


I automated the computer-tasks related to my human context switching.

This resulted in an application called Cleave, that lets users persist OS state as a "context" - saving and loading open applications, their windows, tabs, open files/documents and so on.

Started because of frequent multitasking heavy work with limited resources. Made it because I wanted to switch between studying, working, reading, looking for an apartment, etc. without manually managing all states or consuming all resources.

As a person that used to have multiple virtual desktop, each with multiple apps with multiple windows, which had multiple tabs, etc. it has certainly made it easier to focus on one task at a time, knowing that I can resume another task from just where I was.

Open Beta (macOS) as soon as I finish license verification and updates, but I keep getting sidetracked...

https://cleave.app


I have an Amazon Lambda that I can email links to and it downloads the text with Readability-like format simplification and sends to my Kindle. Use it all the time. Love it.


This is really cool. Do you have the code for this?


I do, but it’s in my “real name” GitHub and I’m not willing to out myself here. ;)

Sorry. Google I guess?


I made the exact same thing haha. I use it all the time now. Would love to compare notes.

How did you make the text readable from the links?


I forked Python “newspaper3k” and hacked bits of it to work better on sources I like.


Thanks so much, this looks very cool!


6 years ago, I made a tool to automate staging server deploys on git push, and then open-sourced it.

https://github.com/adnanh/webhook

And someone used it to automate their robot vacuum cleaner when they press the amazon dash button :)


I use it to automate deploys. Thank you.


I have few but most time saving is about things that takes more time.

For examples I have automated visual creation for social media using https://bruzu.com and IFTTT/Zapier.


> bruzu.com

Good idea, well executed, short memorable domain name. Solid work, motyar.


Thanks, have you tried? where you think you can use it?


I have a cron job on my laptop that loads iptables rules that drop all outgoing packets except to work-related sites (chat, e-mail, issue tracker, code review, plus a handful of reference sites) during my work hours.


Hi! Take a look at https://sparrowhub.io you'll find a lot automation utilities here for different cases


For myself, I automated creation of language flashcards.

So I can just type a word/phrase in English, and then it will automatically fill in the target language translation, pronunciation, audio recording, and word-by-word breakdown to show what every word in a phrase means.

Before I would have to use Anki, and switch back and forth between Anki and various dictionaries, and have to create my own audio recording. Just removes a bit of friction myself learning (Chinese).


How do you automate the pronunciation? I’d be curious to know what your process is like.

I have wanted to automate my flash cards with Forvo pronunciations (rather than TTS) for awhile but haven’t been able to figure out how


This is amazing. Can you share the code?


How did you do that? can you show us a way ?


That sounds very useful, I'd use this


A hacked-together app that I use to curate my Spotify playlists while driving (using my car's steering wheel buttons)

E.g. double-clicking pause/play removes the currently-playing song from a playlist, while letting the song finish adds it to my "liked" playlist

(I also have an IFTTT trigger that continuously pulls songs from r/listentothis into a Spotify playlist, so I can use that curator to save any interesting songs I hear on my drive)


How do your buttons interact with your app? Does the car expose an API or something?


I created a script to tarball my git server's git directory, encrypt it, and backup to Google Drive if new commits were made that day.

inb4 "just use GitHub"


Thoughts on `git bundle`?


Never tried it, didn't know it existed...don't know how it works with untracked files, so it seems safer to just continue tarballing the whole directory like I'm doing now.


I'm pretty proud of this `getvoicerecorder.sh` script that I use to pull .wav voice recordings from my phone, convert them to .mp3, and delete the originals from the phone memory (assuming you have Android Debug Bridge adb tool installed):

    #!/bin/bash

    # On the computer
    MYHOME=$HOME
    MYDESKTOP=$HOME/Desktop
    DEST_DIR="Voice Recordings `date "+%Y-%m-%d"`"

    # On the phone
    VOICE_RECORDER_SOURCE_DIR="/sdcard/EasyVoiceRecorder"


    # 1. make the dest dir and cd into it
    cd $MYDESKTOP
    mkdir "$DEST_DIR"
    cd "$DEST_DIR"
    # list files that will be downloaded:
    echo "The following files will be adb-pulled, converted, and saved to $DEST_DIR"
    adb shell ls "$VOICE_RECORDER_SOURCE_DIR"

    # 2. PULL
    adb shell "cd $VOICE_RECORDER_SOURCE_DIR; tar -cf allwavs.tar *wav"
    adb pull $VOICE_RECORDER_SOURCE_DIR/allwavs.tar allwavs.tar

    # 3. PROCESS
    tar -xf allwavs.tar
    for f in *.wav; do
      echo "Converting $f to mp3...";
      ffmpeg -hide_banner -loglevel panic    -i "$f" "${f%.wav}.mp3";
    done
    # set timestamp to match what was on the original .wav files
    for f in *.wav; do
      gtouch -d "$(date -R -r "$f")" "${f%.wav}.mp3";
    done

    # 4. cleanup
    rm *wav
    adb shell "rm $VOICE_RECORDER_SOURCE_DIR/allwavs.tar"
    rm allwavs.tar
    echo "Deleting all .wav files from phone..."
    adb shell "rm $VOICE_RECORDER_SOURCE_DIR/*wav"

It's part of a general authoring workflow: whenever I want to write something in a conversational tone (as opposed to dry/technical/academic tone), I go for a walk-and-talk, then transcribe the dictated text + edit. Works really well for intros and conclusions in particular, and blog posts.


If a 1-liner run manually counts, feast your eyes on nearly a kilobyte of awful bash:

    for i in raw-* ; do cat $i | expand | egrep '[A-Z]{3} +[0-9]{4}|/2021' | sed -r -e 's!08/(..)/2021!aug\1!g'  -e 's!09/(..)/2021!sep\1!g' -e 's!10/(..)/2021!oct\1!g' -e 's!12/(..)/2021!dec\1!g' -e 's!01/(..)/2021!jan\1!g' -e 's!05/(..)/2021!may\1!g' -e 's!03/(..)/2021!mar\1!g' -e 's!02/(..)/2021!feb\1!g' -e 's!06/(..)/2021!jun\1!g' -e 's!04/(..)/2021!apr\1!g' -e 's!07/(..)/2021!jul\1!g' -e 's/([a-z]{3}[0-9]{2}) - ([a-z]{3}[0-9]{2})/\1\2/' -e 's!([a-z]{3}[0-9]{2}[a-z]{3}[0-9]{2}) +([0-9]{2}:[0-9]{2} [AP]M)!\1 N/A     \2!' -e 's!Live Online!Lve!' -e 's!Online Course!Onl!'  -e 's!Hybrid Course!Hyb!' -e 's!Face-to-Face!f2f!' -e 's!Directed Study!dir!' -e 's/(..):(..) ([AP])M - (..):(..) ([AP])M/\1\2\3\4\5\6/' -e 's/Palm Bay/PalmBay /' | while read where crn c1 c2 c3 type name ; read dates days time ; do printf "%s %-4s %s %s %-4s %-5s %s %s %s\n" $dates $days $time $type $c1 $c2 $c3 $crn "$name" ; done | sort | uniq | sort -k 5 > not-$i ; done
It chews on the results of a class schedule search: https://www.easternflorida.edu/academics/class-schedule-sear...

The problem being solved is that I have had as many as 4 kids taking classes at once, and that becomes impractical without coordinated schedules. Getting the data into plain text, with exactly one line per class, makes it easy to use grep for picking out possibilities.


how does while with two reads work?


It deals with two lines of input. Probably the ";" should have been "&&" instead, so that either failure will end the loop.


Housekeeping service, automatic workstation -> synology nas -> backblaze b2 backup system, shared instacart cart with my wife so that our groceries are tracked where we actually order them.

I've found that a lot of personal automation stuff on the computer just isn't worth it. I try to keep things simple and that reduces the need for automation altogether.


I got sick of opening the same tmux/terminal format every time I had to restart, so I wrote this:

    #!/bin/bash
    
    function command() {
            CMD="$1"
            xdotool type "$1"
            xdotool key Return
    }
    
    function key() {
            KEY="$1"
            xdotool key $KEY
    }
    
    function clear() {
            for n in {1..10}; do
                    key BackSpace
            done
    }
    
    function name_panel() {
            NAME="$1"
            key ctrl+a
            key comma
            clear
            command $NAME
    }
    
    name_panel 'cmd'
    
    key ctrl+a
    key c
    name_panel 'srv'
    
    key ctrl+a
    key c
    name_panel 'make'
    
    key ctrl+a
    key n
    
    echo "Now type ssh-add to log in..."
    ssh-agent bash


there's a tmux plugin to restore a session you save; https://github.com/tmux-plugins/tmux-resurrect


I feel like I should point out that tmux is quite happy to take commands directly on the command line: `tmux new-window -n srv` will make a new window named "srv", `tmux next-window` will move you forward one window, etc. Hit prefix-? to list the commands bound to each key when you're running.


Thanks! I had this strange feeling someone was going to tell me something exactly like this after I posted. I'm glad I did though, it's good to learn new things.


:)

Remember, just because someone tells you a better doesn't mean there was anything wrong with your way (if nothing else, sending actual keystrokes is a universal-ish API rather than having to learn each program's specific interface, if they even have one). But yeah, knowledge-sharing is a perk of these threads, too:)


https://github.com/torqu3e/Bonafizy

Not really automation now with WFH but I had it hooked to a cron or tasker to turn the kettle on 5 minutes before the morning alarm goes off. Am quite proud of my ingenuity solving for my laziness :)


I have a few:

- A site which has an RSS feed of my Twitter feed. On entry per day.

- Automated backups of Notion and Dropbox to Backblaze

- Notification for likely missing data in my Spotify logging app. (I download all my play data from the recent plays api)

- GitHub actions to download each new Instagram post.

- Scripts to process my personal finance data into a database which backs a grafana dashboard


Downloading recent plays data from Spotify seems interesting.. what do you do with it? Personal custom "wrapped 2020"?


Pretty much! Only I have the data all year round.

It's public, judge my music as you like! https://music.charlieegan3.com/

Repo here: https://github.com/charlieegan3/music/ all runs on GitHub actions.


I’ve mostly given up on tech stack automation for my daily life. But I live and breathe on Reminders.app.


I use Retool. A single user is super cheap.

Building simple apps that track anything (workouts, personal things, baby health things). It's super easy to connect my data and actions to practically anything I want.

It beats the pants off having to wait for company X and company Y to integrate their services.


Not quite automation in the traditional sense but I built a pseudo KVM which allows me to switch between my work and personal MBPs. With the press of a button it will switch my 32" 4K monitor's input to the 'other' device as well as my apple bluetooth keyboard and trackpad.

It connects to both laptops through bluetooth and has a LiPo battery making it completely wireless. I 3d printed an enclosure that lets me mount it out of sight underneath my desktop (think up-down controls for a standing desk).

This lets me easily switch between computers through the day without plugging in/re-pairing/etc.

It's still needs a bit of refinement but overall, it's quite nice and makes switching devices painless.


Hah I just tweeted a pic of one earlier today [1]

My main one (using Integromat) loops through my unfinished Todoist tasks at each day at 00:01 and then:

- If the task doesn't have a due date it adds one. For each task without a due date it adds (i + 1) days. It's a crude method but I don't often have a huge amount of tasks without due dates.

- If the task is overdue it sets the due date to today and adds a "+" to the end of the task name so I can easily see how long I've put it off

[1]: Screenshot of this @ https://twitter.com/CohanRobinson/status/1337125370399690753


Might steal this one, thanks!


You don't need, but have, my blessing! Go for it :)


Old school: a timer plug to control a window fan in an out-of-sight-out-of-mind location. It keeps us from having to remember to turn the fan in the guest room on and off to get cross ventilation over the summer.


I used Alexa routines & Philips hue to setup a "grow clock [1]" type thing for my Childs room. When the light is red, you're supposed to go back to sleep, yellow you can get up and play quietly in your room, green come and wake up mummy and daddy.

I've set up similar automations to dim the nightlight after 10pm and automatically switch off during the day time.

[1] https://www.amazon.com/Gro-Company-Gro-Clock-Sleep-Trainer/d...


Side note: I have the highest rated review [1] on Amazon for the Gro Clock so I was slightly disappointed not to see it on the US site. It even got a comment underneath from the man who invented it.

[1] https://www.amazon.co.uk/gp/customer-reviews/R126KGC1KEZQHY?...


I really love email since I can come to it when I please and I don't have a notification I have to leave unread on my phone. I setup a Lambda job that runs twice a day (morning and lunchtime) that takes the top pages from HN and sends them in a nice email format (just headlines, comment count and author) so I can look at the ones I want.

Recently I've made another script that looks at all the new posts from my RSS reader (Miniflux) over the last 24 hours and sends them to me in an email. Just the title and site name so its easy to parse/glance over.


I enjoy keeping fish, and have a 25g freshwater aquarium I built to be compatible with an off the shelf aquaponic grow bed. When everything is balanced, it needs no water changes or cleaning.


I use Tiller Money to automate my various bank and credit card transactions directly into Google Sheets, where I then track spending, net worth, debt, etc. Saves several minutes each week.


Ring has been a fun! One of my holiday todo's is to finally sit down and program the IFTTT integration for my Amazon plugs to turn my garden lights on when my Ring Doorbell detects motion.

If you have someone you'd like to get interested in IoT and/or programming, it's probably the best feedback loop between effort and reward you can find -- up there with learning to program HTML/CSS/JavaScript and refreshing a web app on local


> or other services?

Automatic monthly purchases of low-cost index funds.

This way I don't have to worry (too much) about over-spending on other items as I've taken care of future-me.


Probably the most helpful automation in my life is the automatic door on the chicken coop. Swings open in the morning and closes automatically at night.


Speaking as someone with no clue about chicken farms, do the chicken naturally go back in the coop at night? Does your automation risk locking chickens outside the coop?


I hope you have an alarm clock/rooster


I use the native Apple Shortcuts app to get my health data from my watch (calories burned, steps, etc.) and send it to my personal db for a dashboard


I use Streaks habit tracker, Apple Watch and Shortcuts. Streaks can pick up health data to keep my on track for my weekly sleep and exercise goals. And I’ve set up Shortcuts so it increments a counter in Streaks to keep track of when I open Instagram or Twitter. That stops me from mindlessly checking social media but allows me a couple of visits in a day without it breaking the streak.


I use to spend a lot of time on Reddit looking for conversations that were relevant to my business. Promoting our products in the context of those conversations usually resulted in sales leads.

I built a tool earlier this year that streams comments from those forums, analyzes them, and pings me when a relevant conversation is found. I generally keep it running throughout the day in my local Terminal.


Would you mind sharing this tool? Or at least more info about how it's built? I'm using huginn to do something similar but it's a bit janky.


> Would you mind sharing this tool

It's not online. I suppose I could spin it into a web application if the demand was there.


I wrote a small Go CLI ( https://github.com/bbkane/grabbit ) to download reddit images weekly and hooked up my Mac to rotate them between monitors. My monitors are usually full of work, but when I switch apps or wake my mac from sleep I see lovely wallpapers!


Every week I'm disavowing bad backlinks, blog spam created by saboteurs to manipulate Google rankings.

I have a script that compares the new links to the old links (last week), then I check those sites if they are real or spam. The new list is added to the disavow list.

The script makes life easier, because instead of going through all links I can only go through the new links.


I use a mobile app that I created to launch programs and games on my computer from any room.

Very useful to launch just the programs I need in the morning from the bathroom and closing them when I'm finished.

In that way I can easily keep work and private workflow separated. I plan to release it next year, check out RemoteMeow on twitter or reddit.


One-line cron job using rclone to sync ~3 TB of photos with the other side of the world. Super simple and reliable.


I'm boring because I just have a few simple IFTTT things on my phone that send notifications to remind me of things depending on some condition (e.g. weather or location). The problem is that they are super ignorable and I tend to forget they even are there a lot of the time.


a very simple cronjob which creates a ~/data symlink, that points to ~/works/data/$(date -u '+%Y-%m-%d')

why? I have to deal with a bunch of files at $job. easier when they're all at one place, and I have a clean slate everyday.


I wrote a discord bot my gf and I use to update a shared ledger file. It syncs to a git repository every 5 min if changes detected. It can report on current owed money between us or monthly recurring payments eg. Gas, electric, rent.


Almost all of my personal automations actually make my life more difficult.


That means you're doing it wrong. Unless you do it to have a hobby, in which case you're doing it right.


I'm going to assume this xkcd is relevant here: https://xkcd.com/1319/


https://hndigest.com/

I receive the top 100 HN links by email every week.

It reduces the amount of time I visit HN. Of course this time is an exception.


If you're purely a lurker then I can see this as a win.

On the other hand, you'll be too late to get involved in any of the discussion.

It makes me a little sad that if I don't participate in comments at just the right time then I can expect that nobody will ever respond to my comments.


I usually lurk around here, so I made myself an automated weekly digest of the best AskHN threads, like this one. Found it useful so I ended up making it public as a newsletter around a year ago.


I have my coffee set to auto-brew at 6AM. :-O Such a life hack. No, it's not wired up to some stupid web interface, and I like it that way.


Me too. Life-changing. The smell permeating the house just as you're waking up is wonderful.


brname () {

  a=$(git rev-parse --abbrev-ref HEAD 2>/dev/null)
  if [ -n "$a" ]; then
    echo " [$a]"
  else
    echo ""
  fi
}

PS1="\u@\h:\w\$(brname)$ "

credit: daniel.haxx.se, https://news.ycombinator.com/item?id=25043731


You’d like https://ohmyz.sh/. This feature comes with the git plugin.


A croned node script that parses the AWS RSS status page every 10min and alerts with some sounds + notifications (zenity).


came here hoping to find someone bragging about their newegg bot than can beat scalpers.....alas...i think newegg is botting their own website with an api we do not have access to...and then resells the cards on amazon....plausible deniability to infinite profit


auto-deleting my various e-mail alerts with a google script. I think this functionality should be accessible to everyone


Every morning, while my wife is booting from hibernation (Unix aged lass, not so trivial), I automatically make coffee to be able to log onto her and start the day.


ctrl+c, ctrl+v




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: