Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: What non-work task have you automated?
586 points by Kevin_S on Oct 11, 2017 | hide | past | favorite | 704 comments

I have a house plant that is watered automatically, but not based on any pre-determined schedule. I have the plant's livestream and its moisture level available publicly on pleasetakecareofmyplant.com and the decision to water is crowd sourced on reddit.com/r/takecareofmyplant by way of a daily vote.

I'm truly amazed that this has been going for over a year now and the internet hasn't murdered it

Some have tried, but it would take some coordinated effort over several weeks at this point to over or underwater the plant. I've found that the folks who consistently vote take it relatively seriously to the point they have discussions about optimal schedules and for the most part stick to them.

I'm glad that these people exist but on the other hand It's hard to imagine what they do in everyday life that this topic is so interesting to them, that they want to feel this responsibility for the plant.

Communities can form around the weirdest of things, and when they do, social ties keep the original reason going.

That's a beautifully succinct explanation of the Internet.

They've also done a lot to enrich the whole community. The daily plant gifs and a monthly voting graphic overview post have been put together by folks in the community.

How did you end up getting people interested/wanting to participate? I feel like that's the biggest hurdle.

this is extremely wasteful

automated gardening would be far more productive, and make significantly more progress

go and write an automated-voting-bot in the with optimal schedule for the plant

fight fire against fire :)

sounds like bitcoin lol

What moisture sensor are you using? That's always been a sticking point for me, where soil moisture sensors just don't work, unlike air moisture sensors.

It's very simple -- something like https://www.amazon.com/Moisture-Humidity-Compatible-Atomic-M...

Due to the volume of the pot, it would be difficult to get a true moisture reading, so I place the sensor directly under the spout in order to have noticeable changes.

we do this for a ag product


which can use a number of different sensor makes, but http://www.decagon.com/en/soils/volumetric-water-content-sen... seem pretty good

Associated HN discussion currently on the front page:

Please take care of my plant | https://news.ycombinator.com/item?id=15453974 (100+ comments)

And the link: http://www.pleasetakecareofmyplant.com/

This couldn't backfire. I like it.

The worst case scenario was me trying to keep the plant alive, so it was really all upside.

This is fantastic. I had a similar idea but it was for a friend of mine. She constantly made the wrong choices in life and I'm positive things would turn out better if she crowdsourced all of her decision makings.

Very cool! Can you share the hardware setup you have?

Yeah, there are some affiliate links on the main page of the website, then a link in the header to 'how it works' shows a bit more. All of the code is mostly on github. (I was still learning how to use git for this project, so its not perfect)

If you have any more questions feel free to post them in the sub and I can explain more!

Very clever, I like the project. I'm a fan of the pin too.. can there be a fridge magnet version?

haha I can snip off the pin and super glue a magnet to the back of one if you want. They haven't been selling well enough to recoup the initial production cost so I'm hesitant to expand the product line.

Do you have limits to prevent over or under watering?

Yeah, so it's not water on demand. That was my original idea but obviously that posed some risks to the dryness of my floor and the relationship with my landlord.

How it functions is a daily yes/no vote that triggers a watering event for that day.

Edit: Oh, but to I think the real question -- No. It's not my plant anymore as far as I'm concerned. The community can care for it as they see fit. I won't interfere, except to add features, or put up seasonal decorations :)

Sounds like that would defeat the entire purpose, as well as prevent anyone from caring whether they participated.

this is extremely wasteful

automated gardening would be far more productive, and make significantly more progress

1. My former spouse wouldn't answer the home phone when I talked with the kids during the divorce. I wrote an app that texted her and logged the attempt for reporting to the guardian ad litem.

2. She also wouldn't answer the door when during kids pick-up. The same app texted her when I was outside.

3. To disprove her allegations I wasn't involved in the kids school and activities I used Android's Locale app to trigger geofenced log entries.

4. Python and Matplotlib came in quite handy automating timeline generation from PDF docs. Never got that one quite perfect though.

I'm not sure I could have prevailed in getting more time with my kids without the time savings automation gave me. I've seen other fathers stopped cold in Court who were less prepared.

This is awesome. You should turn this into a sevice or App -- call it DivorceBot or CustodyBot or FatherTime ?

Considering that close to a MILLION Americans get divorced every year, at a 50% rate i.e. half of marriages are ending up in divorce in the US.

Source: https://www.cdc.gov/nchs/nvss/marriage_divorce_tables.htm

I saw on a reddit discussion that this has already become a service some courts use. I can't remember the name and it might not have been even mentioned ("PM me") but it exists already.

Nicely done! Amazing how slanted family court is that one has to go to such measure to subvert such deceit.

May you and your children be blessed.

Did you have to prove your system was logging real data?

You might be able to use https://opentimestamps.org/ to provide evidence over time (i.e. proving it wasn't fabricated all at once).

Still, that doesn't prove that the individual points weren't fabricated at the time.

Another question is if this will be admissible in the court.

There isn't a blanket reason why it wouldn't be. In a particular case it's up to the judge, and the judge's decision probably depends on the quality of the experts that can be found to explain it.

I am not a lawyer but it would seem if you attest to the fact that it is reliable data it would be admissible. Lying under oath and fabricating evidence is still against the law.

> To disprove her allegations I wasn't involved in the kids school and activities...

There don't seem to be any criminal charges here.

That doesn't mean you don't get sworn.


"I was on Mars on 13/10/2017"

Still a lie, even in the blockchain

The SMS part would mean you could in theory subpoena the telco for proof of that part if it came down to it.

They accept paper logs as well. Infact many judges just order paper logs

It was enough for the GAL to make a positive recommendation, and that seemed to be what the Court was after (the recommendation).

What is your email address,rrggrr? Or rather would you email me if you do not want to make it public? See my update email address in my profile.

I have a system built on top of Calibre's "recipe" scripts which scans a set of RSS feeds every day at 3am for new articles, scrapes and cleans the full content where necessary, bundles them into .mobi ebooks, and sends them to my Kindle's email address. Amazon's network wirelessly delivers them overnight, and I wake up in the morning with a fresh batch of reading material. It's like a personalized newspaper subscription.

Similarly, I have a self-hosted instance of Tiny Tiny RSS set up with an array of custom scraping plugins to pull all the web comics I follow into one feed, which I consume with the Android client. I'd push this through my Kindle delivery system, but then I'd be stuck reading black-and-white versions of color comics.

Along the same lines, there are a few YouTube channels I subscribe to whose content can be enjoyed nearly as well in audio-only form. As a university student, I do a lot of walking most days to get from place to place, and I fill that time listening to audio content. The same server which runs my news- and comic-gathering systems also watches those YouTube channels, pulls down new videos, converts them to audio, and publishes the results as podcast feeds which I can subscribe to through Pocket Casts on my phone.

This is cool.

I wonder how effective it is though these days, I'd say 70% of my RSS feeds are either truncated forms of a full article (with a 'click here to continue reading!' link), or just summaries.

That's what the scraper scripts are for. For each site that does this, I have a bit of code which visits the article URL and pulls out the full content.

This is re-implemented by so many. (HN user megous https://news.ycombinator.com/item?id=13226170 Dec 2016.) It would be nice to find a way to share this work, but the variety of tools used often make the customizations too custom (or maybe this is just the most common reason why creators feel there is no reason to share?).

Is anyone aware of any repositories where the customization required to obtain the important content is maintained by a community?

Most site also display data in a much easier way if you identify as googlebot

That’s a great way to kill your page rank.

This is why I gave up on RSS. I wanted to read content quickly without having to navigate to a website.

I think your project is very very cool, and I was thinking maybe we can work together on this. We created a very similar thing, but instead of scraping RSS, we scrapped some well structured pages like newspapers and blogs.

If you are interested in working together please reach me out!

You can check what we did here: https://eink.news

I used to use Youcast (https://github.com/I3arnon/YouCast), which allows Youtube channel or playlist to be consumed as Podcast. I used it with my iPhone podcast app to watch and listen to my favorite Youtube channels when I was off the internet.

Which youtube channels are you referring to? The weather is getting nicer and my walks are getting longer, would appreciate having something great to listen to (versus an audio version of a textbook).

Not OP, but some channels I would recommend that work as audio-only: (mostly science or thought-provoking)




Innuendo Studios


SciShow (and the sub-channels: SciShow Space and SciShow Psych)

PBS Idea Channel (no new videos, but old content is good)


Wendover Productions

This method of downloading a website for later viewing is how Richard Stallman uses the web.


I'm currently in the process of doing the exact same thing with my ttrss instance. I am using lxml. I wanted to create "pages" of comics sort of like the funnies, instead of just one big feed, since ttrss can do that already. Would you mind if I looked over your scripts? I'd love to see what your solution was.

I'm also developing something similar to your news scraper but with different end goals. I'd love to talk with you about your approaches in that domain as well.

Wouldn't happen to have this on Github would you?

Been using my tt-rss instance and Fiery Feeds on my iphone for a while now. Fiery Feeds does some magic to get the full articles in case they only display preview snippets.

Very interesting and smart system. Could you possibly share this code on GitHub?

Please share!

So simple!!! Time to build this for my train ride

github please?

My girlfriend needed to be texted everyday otherwise she would turn sour. So I made an sms generator that randomly composed sentences combining words from three tables and sent to her at random times. It took her many months to notice. When she found out, she was angry for 10 seconds, but that anger faded to curiosity about how the random sentence composer thing worked. After I showed it to her, she got mad at me again for not updating the tables more frequently :P

I did something similar, my gf wanted me text her that I got home safely after I left her place. So I automated it that when I disconnected to her WiFi and within a certain time reconnected to mine it would text her. She noticed it when she drove me back home once and still got the text.

My wife and I simplified the "where are you" problem by turning on always-on location sharing in Google maps. Some people find it creepy, but as a couple of engineers we're pretty stoked on the efficiency improvement.

I'd still be creeped out. What if I want to go secretly shop for a gift?

I did the same thing, only at the time I had a wireless charger, so it was setup on my phone to send the text when it was after 8PM and I put my phone on the charger.

One night she stayed over, set the phone down, got the text, and thought it was hilarious and said she did think it was weird that I said the exact same thing every night.

The next day I updated it to pick from one of 10 different text messages!

But what if the murderer took your phone and drove past your home?

Was a fair game still. You were safe at home.

Did the same; my SO wanted me to send her a periodic reminder as a text message on a given hour; I put together a Tasker task that composed a bunch of randomly selected parts into a sentence.

It took about a month or two for her to notice, though I believe that what ultimately did me in was that time when I was talking with her on the phone when the SMS task executed...

I have thought about doing this so many times, and yet dare to make the move. It will be fun at first but not so much after she finds out.

Here's a idea for a compromise: make the SMS bot send you a message with a suggested message. This keeps you in the loop about what messages are being sent but relieves you from having to remember to send up a message or think of one.

Yeah... one day her cat dies, and she gets the automated text you forgot to stop: "Hey babe... hope you're having a great day! xoxo"

That's awesome, what was the sms api/platform that you used and how much?

Nothing fancy, I used "Tasker" on my own android phone. Ugliest thing ever, but I managed to hack it during a bus trip, and it worked.

This makes me wonder, how could one implement something like this over a service like Whatsapp?

I don't use WhatsApp, but if it allows to receive Intents (Android functions to execute something on an app, like sending a message to someone), then you can use Tasker to send the intent you want with the right parameters.

Have not heard of that thanks.

I just assume you have to rent a number/sms service or put a usb cable into your phone to use your existing phone.

Would be cool to interface with it without usb.

Tasker is just an app, there's no need for any cable. Tasker lets you automate stuff on your phone, say send a SMS every day, turn the WIFI on when you are close to your house, etc.

I see. I was looking at it with perpestive of being integrated with a "web coded thing" I don't know how to explain what I'm saying like you wrote something in JavaScript and want to send a message by your phone from JS.

Anyway that is pretty cool what it does.

How did she find out eventually?

Because I implemented the thing during a bus ride, the sending time was not very random, and looking at a stream of messages she suspected I was scheduling them. When I showed her that even the content of the message was automatically generated, that's when she got angry.

Not OP, but in my case, I believe she finally noticed when a text message arrived on-schedule while I was having a coversation on the phone with her...

I used Python to automate generating a chronological email/sms/phone contact archive when a home renovation project went wrong. My builder made a bunch of mistakes, tried to fob me off with excuses, and then pretended everything was ok. This integrated log was invaluable in showing discrepancies between what he said at the time and what he subsequently claimed.

My Python script reads my Google Contacts csv extract to identify relevant people, the lxml library parses my mobile phone call and sms logs, the mailbox module reads my email inbox and Sent Items to extract relevant messages, PIL resizes attached images. Then I use docx to reassemble the results chronologically into a Word document suitable for submitting in court proceedings.

The resulting Word document is an intimidating 130 pages long. I have shown my builder enough excerpts for him to accept liability for most defects. I won a County Court judgment against him last week. Now for the financial settlement!

I thought about putting my script up on github, though haven't had time to scrub some personal information from the source code...

I would pay for this. The key is to start doing it at the very beginning, not just when things go south.

I know of a homeowner that informed his contractor(s) that he blogs daily about the progress of his renovation. The fear alone was sufficient to ensure that his project went smoothly. Plus if the contractors do a good job then they get free PR.

I use Google Voice and have often wanted pretty much the same thing.

If you could integrate that into an application (Google Contacts integrated message history with Email/SMS/Phone/GV message history) that I could run on my own device, I would pay money for that. I would only be interested if I could run it on my own though, eg specifically not as a third party service; privacy issues.

SMS Backup+ for Android can put all texts into your GMail archive (and calls into Google Calendar), knocking out one dependency there.


It's actually one of the first apps I always install after I discovered the hard way that Android used to delete corrupted SQLite databases and I lost the SMS DB on my phone.


Passive learning. Whenever I come across something cool or interesting, I put it into a chrome extension I made called "Harvest". It sends me email reminders of what I've added on a spaced repetition schedule (1, 7, 17, 35 days into the future) for optimal retention


Man, this is awesome. Now that Firefox has become so vastly better than Chrome (who would have expected that a year ago?) you should port it to Firefox too.

I just gave it a spin again, after using Chrome for years.

The new Firefox is actually faster than Chrome, on my PCs. Plus of course the mobile version actually supports adblockers. I'm switching back to Firefox, personally.

interesting. ive heard this a lot. will port it

Added. Thank you.

interested in this as well. is there any way I can be notified if you do so?

yes, i will be sure to ping you guys here

me too, thanks

me 3

Would you please alert me as well?

We should automate this somehow…

lol good idea. can you guys add your emails to: https://aetolabs.com/harvest/

i won't spam you, promise. will notify everyone there about updates like the firefox port

You might still want to reply to everyone in this thread manually. I wouldn't know about the mailing list if I didn't stumble upon this page in my Pocket.

How much better? Any reference to a comparison?

Thanks for sharing. I tried it out and it looks great. I had a couple issues. Firstly it has me sign into my Google account on a browser window with no address bar. The only way I could actually verify that it wasn't a fishing site was to use the dev tools. After that it signed me out after a few hours. Hope this helps.

How do you pop the dev tools up on that window?

I tried but can't (same thoughts as you, without verifying it myself, not gonna sign in...)

Hitting F12 or Ctrl+Shift+C on the popup page do nothing.

EDIT: chrome on linux Version 59.0.3071.86 (Official Build) (64-bit)

Using Mac Chrome I was given the option to "inspect" on the right click menu.

understand completely about the google signin. will look into how to display the URL as well to give people peace of mind. one day soon will add a dedicated authentication service.. this was just the easiest way to get up and running.

getting signed out happens for a variety of reasons, probably unrelated to the extension itself. ill keep an eye out though to see if there is a systematic reason

thks for the feedback mate!

This is AMAZING. I am going to use this for its intended purpose because I love passive learning. I also intend on using it as a tool to keep me in check with nags with things that don't end up on my immediate schedule: "Have you written the unit tests for that open source project yet?". Having that show up a few times in random days or months would be great.

Sucks extensions don't work on phones (Chrome) I was doing a similar thing just grabbing topics when you go down a rabbit hole to remember random stuff you learn.

mobile app in the plan

Just downloaded your extension, it looks great! What does the stack look like for this product? I'd love to hear how you went about building this extension.

google extensions are basically all javascript :p and the styling is from https://semantic-ui.com/ backend is node planning to make a simple mobile app so i can save stuff from my phone too. i can do a more detailed writeup later on!

Cool idea. I will probably highlight way too many unimportant-but-seemed-neat-at-the-time facts from Wikipedia, but I'm going to try it out.

hah i do this all the time. added a "delete" button to get rid of the useless-in-hindsight stuff

https://www.memomize.com/ is a similar extension.

thks for the link. i think main difference is that harvest uses spaced repetition for passive learning, i dont want to see every thing every time i open a new tab. i like looking at my momentum backgrounds :)

This is really interesting. What are some of the things you have used this for? One of the examples is a quotation, which makes lots of sense. What else could it be useful for? Formulas, maybe?

I'm trying to expand my Chinese vocab, so I usually do something like "<characters> translation"

eg. 拓展 expand

For that I use Anki with the Chinese Support plugin, which is honestly pretty great. It does not only have characters and translation, but also pronunciation both as Pinyin (I think other romanizations can be configured) and audio (which plays on review, great for training your ear and checking your pronunciation), as well as measure words and characters in the opposite set (simplified vs traditional). And it can fill all of those automatically. Then there's stuff built-in to Anki, like statistics that let me know I've learned precisely 2521 unique characters in total, which is great for motivation. (The numbers must go up!)

I guess you will want to keep using your homegrown program, but maybe this can give you some inspiration for features to implement.

ive actually never tried anki before, but will check it out now. thks for the details!

Skritter is also really good for this.

For formulas, I find Anki to be pretty effective, because it forces me to recall the formula. I also try to put proofs and proof-techniques into Anki so I can maintain knowledge of an area without using it frequently.

That's awesome!

Really cool idea, thanks for sharing!

I have set up a battery of scripts on google app engine and Im pretty happy with it.

1. I have a script to automatically buy small amount of BTC every day

2. For the more knowledge-dense books I read, I write summaries of them (https://piszek.com/books/). I have a script that puts a random book review to my pocket for reviewing every week

3. I have an instagram account of lego minifig (https://www.instagram.com/le.traveller/). I wrote a script that likes other profiles to get traffic

4. I have a script that parses my bank e-mail statements to fill up my spending spraedsheets

5. I also have a script that parses incoming email for invoices. That system basically does my taxes

6. My GTD methodology revolves around Evernote. I have cron jobs that throw me "checklists" with stuff to do around certain times (yearly taxes, etc)

7. Using Twilio and verified number, my calendar sends personalized SMS with birthday wishes to my family that appear as they are from my number

8. Also on Twilio I have DIY voicemail that is aware of where in world am I and either routes to my current SIM card or takes a message. I also have a US number that routes any SMS to my current SIM

I recently moved, so I have to rebuild all my Smart-Home hacks. I am currently trying to automate my Intercom at home to play pre-recorded message to postman and let him in automatically

I gotta say, #7, if something were to happen to you would be pretty scary. Have you considered that scenario? Tying the delivery of messages to some kind of manual online activity (e.g. recent emails sent)

Haha I thought of this too, imagine you're working for clients and you just died and this condition is met and they receive this email saying "If you received this email, then I am probably dead."

I assume my Twilio account would run out of money in that case :)

Why doesn't #7 send a message to you so you can wish them happy birthday?

Because a calendar reminder was already not helping himmer send out the greeting.

Source: doesn’t work for me.

You must miss a lot of meetings and appointments.

Because I frequently change sim cards due to semi-nomadic life and my Grandpa just does not understand timezones and gets cranky if I wish him next day. So I made this to be sure he gets his freakin wishes :)

There are quite a few Android apps to "Schedule SMS". Anyone have a personal recommendation?


This one gets bonus points for being MIT-licensed:


To the best of my knowledge it is not possible to send SMS messages in an automated fashion on iPhone, you might as well use calendar reminders.

I like the idea of "a battery of scripts" I wonder about legality if say your code scrapes sites or does something uncool.

Anyway, yeah I've got that problem right now wrote code for a specific stack need to just drop it into a server that's not mine/easy for client to use.

I'm kind of curious about #1 regardless of the price you buy? What if it was like that day the ICO was banned and it dropped like $800 or whatever.

I always buy at the current price, at the same amount of $$$ I'm using "Dollar cost avaraging" approach without any psychology, because how do you decide trigger price?

Wouldn't it be good to buy on the day it dropped $800? Then you have either - more BTC than expected for the same $ - spend less $ on the same amount of BTC

Yeah it would be good in that case but would the buy go up since it was cheaper and go down when it was more expensive sort of thing.

Curios, why don't you post summaries on http://www.wikisummaries.org ?

For #6, are you storing checklists in Evernote as well? Just reading through GTD right now, is this to replace the "Weekly Review" concept in the book so it is automated?

I'm looking to implement a GTD-like system myself, and any automation is helpful.

#7 is genius. For lazy folks like me, that is a great way of wishing people bdays :)

Make sure you receive a notification of delivery, so you have an idea of why people are randomly thanking you months after you've forgotten about setting such a thing up.

For everyone who wants to get #7, I have created a mailing list to build this as a service.


Why do you buy BTC every day? Is it cheaper than just buying once?

Helps with the volatility.


Do you have any special way of avoiding transaction fees? It would seem to me that buying a small amount daily would rack up lots of transaction fees?

The exchange usually gives better rates to people who do larger transactions, but the monthly volume would be the important indicator, rather than single transaction volume.

I guess it just spreads the cost, as getting one bitcoin at once is getting a bit prohibitive these days.

I just realized that [7] probably works only because of [8] - I always give my Twilio phone number to people and pretend with my family that this is my main number.

That is why he mentioned "verified phone number" I guess. When you have verified your own phone number you can send texts from it as well.

According to twilio's documentation you cannot send sms messages from verified phone numbers, only twilio owned phone numbers.


Do you happen to have any of these available on GitHub? Particularly #7 would be very useful.

Is the script for #3 up on Github by chance? I'd love see how you went about doing that!

Are you able to preserve the original caller ID when forwarding SMS?

Twillio has to validate the number before allowing you to use it: https://support.twilio.com/hc/en-us/articles/223179848-Using...

That's only for calling. Twilio's docs say they do not support SMS sending from verified (not twilio owned) phone numbers.


Does it count if it doesn't FEEEEL like work???

I started an escape room business for fun, and have been enjoying the heck out of writing custom software for the rooms. Both in-room and for administration.

My favorite is a javascript "OS" that I use to put imaginary windowed environments in the room, but the players never actually leave a full-screen browser.

It does full window management and all the regular UI stuff so it feels super normal to the players. My favorite part is that I don't use jQuery. That was just a little challenge I created for myself for fun.

Now my rooms have a login prompt of any kind, and I can then create windows with any kind of HTML/JS/CSS content for solving puzzles, extra clues, etc. I can use an RPi and control maglocks from the computer, light up LED's, or even communicate with wireless props.

I run a kiosk add-on for the browser and physically hack the keyboards so certain keys don't even work in the rooms. No F11 or Ctrl-Alt-Del without access to the netbooks or RPi's locked away in hidden compartments.

I also created a lot of room management software for timers, sending hints into the rooms on tablets, etc.

Awesome, not too far away from Spokane, WA!


I wonder if there's a market for re-selling experiences to other locations.

Nice! If you don't mind me asking, how profitable is the room?

I'd also like to know this. I'm fascinated by their business model and I see them popping up all over.

nice. Still dreaming of open my own computer shop or more preferrable something like those japanese gaming/cmputer/anime/movie/manga cafes.

this definitely count, and it doesnt feel like work for me too :)

Dodging the f*ing lightning in the desert area of FFX. I spent hours in that section as a kid, never managing to dodge more than 20 bolts in a row... When it came out for PC, it was time for revenge!

I captured video input with a simple python+QT script and emitted a button-press whenever the screen flashed. The best part was that the script didn't interfere with my controller - I could run around the area opening chests and battling random encounters, all the while getting closer to the 100-contiguous-dodges prize!

Sure - a memory editor would have had the same effect in 5% of the time - but this was _way_ more rewarding.

On the video game kick, I remember needing to do a massive number of laps in Gran Turismo 3 to unlock something.

Turns out the low-tech solution of using an insanely fast car (Escudo), taping down the controller's gas button and just letting it do laps while grazing the wall worked. Some time later I looked back and had won.

I remember using a rubber band to tie the thumbstick of my Xbox controller in a forward position when playing Morrowind.

This made your character run into a wall, but keep running on the spot, thus levelling up your "athletics" stat.

Super speedway endurance, to get the polyphony formula one car perhaps :) I also had the same strategy.. Very handy as the car was one of 4 randomly gifted and that was one boring track.

I also did this! I think I set the throttle to be controlled by the joystick, then used a rubber band to keep it going. It was so very satisfying for such a low tech solution, and I think the prize was the car I really wanted. Fun memory.

Similarly, the game "Hyper Light Drifter" had a number of challenges, and even a pretty hefty achievement, which required the character to dash really quickly without touching any boundaries.

On PC, you could use a keyboard script to repeatedly press the dash key every 500ms and steer with the mouse. Something that was pretty difficult with a controller.

I loved this game! I got the achievement by going back and forth in the same spot. I used a dual shock controller.

There's a spot in that area where the lightning is deterministic and you can press X repeatedly. Still, your solution is cooler!

I did the same thing!

One of the biggest automation arena improvements I've made in my life is creating visual cue reminders and systems for a sort of stateful orderliness.

When the laundry basket gets full past the painter tape line, I do a load. I load the dishwasher after dinner, and unload it in the morning regardless of the volume. Got a roomba that runs every other day and cries when it's full of dirt.

I have NFC stickers that link to start webapp timers in my smart phones browser (just a url to googles timer web app, pre populated with time, I get push notifications and all that) tea brewing timer, Laundry+ Dryer, cooking, all cheap NFC sticker+ webapp

I also wrote a bot that alerts me when 3D printer deals from trusted retailers are going on. I just bought two for $160 each, with free shipping!

One of the best life hacks I found is to buy those stackable laundry baskets and sort them as you wear them instead of dumping them all in one and sorting right before doing laundry.

99% of my clothing are pants, shorts, underwear, t-shirts and socks, and I've never felt the need to sort them - everything goes into a washer, then a dryer, then gets sorted into dresser/closet. Are your clothes significantly different from mine, or is there an actual benefit to washing your socks separately from your pants?

(Or are you talking about separating things like sheets, towels, etc?)

I sort mine too - depends on the color. Darks go in cold and whites generally on hot.

I wear a lot of white sports socks. All of them are pure white after years of having them.

I've been doing the same thing for years. I have two bins each for socks, underwear, and t-shirts. when the dirty one fills, I wash it then dump into the respective clean one. The trick is to buy a full loads worth of socks, and a full loads worth of underwear which is probably an unusually large amount for most people. Throw hardware at the problem!

I do this with the small things that I need to buy, keep one roll of toothpaste (or whatever) that is being used, another in a cupboard. As soon as you take one out of the cupboard, buy new one to put in the cupboard.

Funny how a bit of sorting makes a difference. Sames goes for trash, I plan to have few bags so you can them dump each blindly.

Can you elaborate on your NFC sticker setup and how automated it is? Do you have to initiate anything manually when starting the tea or laundry for example?


So I write those links to the NFC stickers (click one on mobile)

stickers: https://www.ebay.com/i/332153052651?chn=ps&dispItem=1

Write on them with a sharpie, When I go to use it, I tap my smartphone(stock android) and it automatically launches the browser to the webapp

I'm looking to buy a basic 3D printer this week but have no significant knowledge. Mind linking the one you bought?


Caveat: You have to get around the DRM, and the software it uses to make 3d print file from an STL runs on Windows or MacOS, closed source, no Linux support. I run Windows in a VM for the slicer.

I’d love to get a 3d printer for 160! Can you point me in the right direction? (Or add me to your alert)

Newegg Business, Davinci XYZ jr 1.0

There's DRM on the filament and it's PLA only, but you can buy the key to unlock and rewrite the DRM NFC chip. I use an app on my phone to rewrite the values

DRM on the filament, so you need to buy their filament? How does that work?

The inside of the roll has an NFC chip in it. The NFC has information on color, amount of filament left, temperature settings etc.

I call it DRM because you can't edit it without a reverse engineered NFC key.

Another side to the DRM thing is that if you use inferior input material and the printer has a quality issue, customers are going to blame the printer and not the filament.

Value added DRM I guess

Is that a really good printer? I’m seeing bad reviews?

It's a printer you can get for $160. At that price I would expect more bad reviews because of unrealistic expectations.

It's an okay 3d printer. I use it for making toys, statues, etc. There are various companies that offer 3d printing as a service with different materials, precisions, surface finishes etc like stratasys, 3D hubs, xometry.

These printers are nice to prototype with before sending it to a more costly and less time investment forgiving production printer, or quick around the house jobs/play.

Feel free to reach out if you want help getting started: my username @gmail.com

Can I set up a nfc system like that for iPhone??

I believe iOS11 supports NFC, but it isn't as smooth as tapping and automatically opening the document.

How do you make the roomba cry?

There's a bin full indicator light on the back that turns on when it's full. They don't cry... yet.

Mine plays a sad song when it's full. I think it's the 595?

Many of automation ideas here bring an edge to one person at the expense of everyone else. The ideas fail completely if too many people start doing the same thing. Actual examples from people on this list:

- User pokes immigration website repeatedly to submit his application as soon as the site starts accepting. Obviously if everyone did the same thing, no one would benefit. The thing that needs fixing is an immigration system based (partly on) quotas and first come, first serve.

- User automates sending amorous messages to his girlfriend, so long as she doesn't know they're automated. If enough people did it, girlfriends would eventually find out and the desired effect would be lost (or worse, they'd feel tricked).

- User automates saving of all store coupons to his loyalty card without ever looking at the coupon. This defeats the idea of coupons (to encourage you to try something you would not have otherwise bought). If everyone did it, coupons would cease to exist.

- User automates getting into desired university class by hammering the registration site repeatedly. Needless to say, if everyone started doing the same thing, no one would benefit.

- User automated complaining to the water utility about a problem in front of his house. Once again, it might work for one person, but becomes completely ineffective if everyone does it for problems in front of their houses.

- User automated late delivery complaints to post office to get compensation. If his script becomes too widely used, the monopoly post office will simply raise prices or stop offering compensation.

> - User automates saving of all store coupons to his loyalty card without ever looking at the coupon. This defeats the idea of coupons (to encourage you to try something you would not have otherwise bought). If everyone did it, coupons would cease to exist.

That sounds like success to me, though not everyone will agree.

> - User automates getting into desired university class by hammering the registration site repeatedly. Needless to say, if everyone started doing the same thing, no one would benefit.

This was circumventing a bad process; people would benefit if everyone did it, because it would demonstrate a need for a better process.

> - User automated complaining to the water utility about a problem in front of his house. Once again, it might work for one person, but becomes completely ineffective if everyone does it for problems in front of their houses.

If everyone does it then perhaps they’ll fix things—or admit defeat and stop giving people false hope by allowing them to report such things when they have no intention of doing anything about it.

> - User automated late delivery complaints to post office to get compensation. If his script becomes too widely used, the monopoly post office will simply raise prices or stop offering compensation.

Or, just maybe, fix it. One can always hope.

If there is a bug/inefficiency to be exploited, someone will.

Not having coupons/loyalty cards is a good thing. Hammering the immigration website, hammering the university website etc might end up improving the process (hopefully?) that is also a good thing.

In a larger context, how is this different from using one's good looks, parents' connections etc to get an edge over others?

>if everyone started doing the same thing, no one would benefit

That is true, but I don't think anyone is claiming to make the world better. The question was more how individuals improve their situation, gaining a competitive edge if you will. That will always come at the cost of others, but in this case the hacks are really things almost anyone can do, so it's hard to object on moral grounds.

That isn't always true. If everyone started eating healthier and started exercising the world would benefit from a smaller demand of health care. If everyone stopped polluting the environment would be cleaner.

I think what is being talked about is something along the lines of if everyone became a minimalist then most people would be out of a job.

Well, this is exactly how financial markets function and why it's so hard to beat the market. I think these people deserve the benefits if they can come up with these solutions; none of them are inherently malicious after all.

> Many of automation ideas here bring an edge to one person at the expense of everyone else.

Except for mine. it’s a win / win when people hang out together

The end result of the immigration one is just the H1B system, where loads of checks turn up at the state departments door one day

Some of those are boarder line DDoS

About 10 years ago I was in the market for a used Toyota Camry, so I wrote a script that scraped the used car classified and extracted models within a 4 year range and within price & mileage caps. This got plotted out into 4 overlaid point series, producing graphs that roughly looked like 1/x, roughly 2-300 datapoints total.

With that in hand I went to dealer offering the best match, told them which car I wanted and how much I was going to pay for it. Put the graph in front of the salesperson who was floored, went back to his manager, and gave me the car for that price.

That was before I even knew what the term "market price" meant.

Love this idea. I'm going to whip something up for monitoring the market for two or three models of hatchback that I'd like to buy at some point in the next year or so.

Very useful! I'd love to get a copy of this script if it still exists.

I have an ultrasonic sensor on top of my monitor to tell the computer when I'm in front of it or not. If music is playing when I walk away from my computer, it pauses the music player. When I return, it starts playing again. It will also wake the monitors from power saving mode when I return, too.


Which gives me this idea to train my loud music playing neighbor to behave. A sensor listens for his music to go beyond a certain level and triggers my Pi to play loud music back to him. Then stop and check if he has lowered his volume, else rinse and repeat. I know its evil, but apartments in Montreal are so bad.

Thats awesome! I have a related system for pausing music, but never thought of using an ultrasonic sensor. I might need to add that in!


I have something similar, linked above.

If you're in a cube I wonder if you'd be better suited to an IR-beam break? If you have to walk through an "entrance" you could detect that happening pretty easily - although you'd want to avoid flaps to handle the case of somebody leaving too.

Here's my version of that, via an ESp8266, and MQ:


Wrote a simple app that emails people automatically asking them if they want to hangout. It reads my calendar and randomly decides whether or not we should hang out. The probability that it'll decide to ask gets higher and higher the longer we don't hangout, which it determines by reading my calendar.

Cousin! Do you want to go bowling?

Would you happen to have this script up on Github? Also, do you usually send events as part of the invitation (i.e. concerts, coffee e.t.c)?

Not yet - let me clean it up first and I’ll ping you guys

I like this idea for fostering relationships that I either get anxiety or not sure what to say.

What do you ask them to hang out with? A calendar invite? Or SMS?

Just an email. It was born from a project that died years back as one of my first YC submissions. Sounds like I need to resurrect it and add IM and SMS as a new MVP.

I'm also wondering if you could post that script, that sounds very interesting

I'll either ping you guys or do a ShowHN some time this year

I "automated" (trained?) my kid to make her own breakfast at the weekends so I can sleep longer.

Started when she was around 4, it's easier now she's 7.

Lots of parallels with hacking code:

  * Specific rules (if there are more than 2 stars showing on your clock, it's too early to get up)

  * Trial and error (put cereal in a jar and loosen the lid slightly, put milk in a tiny jug at the bottom of the fridge)

  * Optimisation (if you don't want cereal, don't wake me up, but have a yogurt instead)

  * Enhancement (feed the cat, so it doesn't wake me up either)

I'm not lazy, sleep is important :)

[edited formatting]

LOL, I found this hilarious because my 5 y/o kid wakes me up when it's time for food. Definitely gonna "fork" your source here and try it out myself :)

I have four kids now, and I learned this automation trick way too late. We helped our older kids with "activities of daily living" longer than we realized we needed to. Now or younger two are doing things on their own years earlier than their older siblings.

We've just generally found that our kids have been ready to do things earlier than we imagined. Each time we've made a transition, we look back and think "why didn't we do that sooner?"

Animal training skills are key to parenthood.

can you elaborate on more details? seems fun/interesting

Now I think about it, we started when she was about 2, leaving a marmite rice cake in a bowl outside her door, with a bottle of water (with a sports cap), that was just enough to delay her slightly.

As she got older, I'd put some greek yoghurt in a bowl with cling film over the top in the fridge, and a plastic cup of water with tin foil over the top and cutlery on the table.

Now I just say "no cartoons before 7", and she sorts her own water out, makes some bread and butter (don't trust her with the toaster yet) and helps herself to yoghurt.

She woke me up at 9 this morning, happy with that!

1. IFTTT turns off all of my Hue lights at sunrise (task: turn off forgotten lights)

2. At one point last year, I felt that my mornings were getting slower and slower (causing me to leave later), so I set up a Dash button where I hang my keys. When I left for work, I'd press the button, and the script would log the time to a Sparkfun data feed. After a month, I reviewed it to see just how bad it was (pretty bad). (task: life tracking I didn't have the brainpower for in the morning)

3. The worst part about D&D is keeping track of all the little variables and math, and none of the character sheets are any good (or if they are, they have 1 or 2 glaring problems, like only allowing 3 classes), so I wrote my own. Uses KnockoutJS to update all the little formulas that change every time you level up or gain skill points, etc. Here it is, though it's not exactly polished for public consumption: https://github.com/imnotpete/character-builder (task: fiddly math when I'm trying to have fun)

4. More IFTTT -- if my Roost fire alarm battery detects an alarm, I should receive an email and all my Hue lights will turn on. Unfortunately, the whole Roost process is slow enough that I just get confused when all my lights turn on 5 minutes after I burn the pizza. (task: turn on the lights so I can see to put out a midnight fire or escape my burning house)

Have you tried Roll20 for D&D? We used it for our group here at work as it allowed a remote team member to play. Even if you don't use all of it, the character sheet tools and info are pretty solid (albeit missing some things like certain spells).

I looked into it before I started coding, but it seemed the 3.5 support was pretty slim, at least for the character sheets.

I got an email about how to do the dash button thing, so I figured I'd post my response here as well. I use this project: https://github.com/hortinstein/node-dash-button

Here's how it works:

1. Figure out the dash button's mac address by network sniffing

2. Set up the dash partially, so it tries to make an order (but don't specify in your account exactly what to order, so it never completes)

3. Sniff the network for that mac address, and run an arbitrary script when you see it (this is the actual action, like my data logging)

4. For good measure, block outgoing requests from that address in your firewall

It's not 100% reliable, but it's still pretty useful.

The Hue Bridge can do #1 on its own, but I don't think it's exposed with the stock app. You can set up a sunrise/sunset trigger based on your geographical location - I use this to turn my outside lights on and off.

I'll have to dig into that. Is it one of the Labs plugins? I certainly don't mind cutting out extra services where I can.

I did it manually, using the debug web page[0] on the bridge to set up the "light sensor"[1], which is really a calculation of sunrise and sunset based on your location.

It takes a few hoops to get the bridge to generate a username and craft the appropriate JSON to set everything up, but Philips has really good documentation on this.

[0] https://developers.meethue.com/documentation/getting-started

[1] https://stackoverflow.com/questions/26782957/how-to-use-suns...

You could do number 2 completely automated with just the IFTTT mobile app. I used to track the time when I arrived and left the office on a gApps spreadsheet but later disabled the task due to battery draining (old iPhone 5).

I recently got three lifx lights and they are bright enough to light my entire room.

Simply having them turn on at sunset is awesome. Such a small but great convenience.

This is great! I’ve been wanting to do this for years. I’m still amazing something everyone should want is so difficult.

The grocery chain I shop at has a component of their loyalty card that lets you add certain coupons to your card and they change constantly. All told there may be a few hundred of items offered up daily, most of which I don't buy anyhow. So instead of wasting my time sifting through them to save $10 a month I just wrote a script to add all of them to my card every day at the same time. So long as I go shopping after that time I may have discounts for items I actually purchase deducted at checkout.

Safeway does the whole digital coupon thing. It’s too much of a hassle to be worthwhile but this could help. Not sure it’s worth the effort of writing the script myself though. Do you mind open sourcing it?


Edit Update: Gist is fixed and working 100%

I wrote a database and interface once that would automatically catalog and run the Safeway Monopoly game, all I had to to was scan in the pieces with an app on my phone. It worked well, but demonstrated just how bad my luck was, after 614 tickets gathered, I won exactly 0 items. :/

Planning on using OpenCV to look for the "rare" items on the next go-round and not have to actually scan over all the game pieces manually. The most I can expect is to have some fun writing the code because I'm quite unlikely to win any cash or prizes.

I wrote a bot to read the top article titles and comments (10 articles at a time) on Hacker News and it just runs every hour. Plays out loud on my speakers. Uses a rapsberry pi, python and AWS Polly, I put the code up on github if anyone is interested. The voice kind of gets monotonous but I've found Kendra's voice to be the best IMO.

Last edit: since the free tier has a 5 million character per month limit (AWS Polly) I wrote the script to check if my one desktop IP is connected and if so it can run as I'm not always home/desktop off.

So I can keep working and when it plays I pause my music and listen to it. Takes about 20 seconds to do the 10 requests limited to 1500 characters per audio file/synth request.

Edit: to be clear you don't need a raspberry pi, just a computer with web connection, runs python, with audio output and scheduler eg. cron.

I just have a raspberry pi webserver at home that is always on, also does other stuff like measure a solar cell's voltage every 10 minutes. It doesn't do anything useful at this time just gathering data and plotting it on a site/working with ADCs/building web API to receive data (want to make it world wide).


Video of it working skip to 23 seconds


Odd it broke today, been running for I'd say several weeks. Connection aborted will see what it means. Hasn't been on for a while though since I haven't been on/since I posted about it, coincidence probably.

Nope, now it's working no code changed, guess that one or two requests failed

In college I wrote a script to register for classes. I'd input the potentially-full classes I'd like to register for, and it would just hammer the registration site repeatedly until someone removed themselves from the class at which point I'd be registered. I'm still amazed IT didn't pull the network connection to my dorm room or have any kind of rate limiting.

No 8am sessions for me!

Similarly the college I attended required a five or six (can't remember now) digit number required for access to class registration. The idea was that you would talk to your advisor beforehand so you didn't sign up for the wrong thing I guess. My advisor seemed to be pretty uninterested in meeting with me over email (never responded to multiple attempts), so I gave up and brute forced it.

Class registration was done by most with the web interface, but I opted to connect to the backing mainframe via a 3270 terminal emulator. Doing so allowed me to write a simple expect script passing in an increasing number as fast as the connection would allow. I didn't bother with rate limiting and am surprised nobody noticed. Took me about 30 minutes and I was in! I was able to use that script at least twice and I wished I had thought of writing it sooner.

That’s brilliant.

My advisor was a jerk who scheduled appointments for about 14 people at the same time, the day he left the country for a month. Wish I had this then, that following semester was brutal.

I occasionally hear about students in US colleges having to compete for places in classes like this. How does it happen? Why does the college admit more people than it has class space for? In the UK they don’t enroll more people than they can teach so everyone has a place.

Also keep in mind that usually in the US, college students can sign up for any class as long as it doesn't have specific prerequisites - at large schools that means you'd be able to take just about any intro-level class you wanted to, regardless of your major. I'm not sure it works like that in the UK.

Due to variation in demand for classes, which students don't all take at the same time, there's an imperfect prediction of supply.

Additionally, the competition is usually for desireable time slots, rather than to get into a class at all.

Ah in the UK each class only runs once a year, and everyone supposed to do that class just all does it together at the same time. If there are electives each elective can take any number of people up to the total number on the course. So no need to compete for places.

In England, Chris :-) Scotland is different.

We have a module system, and depending on their topic people have some freedom to pick courses outside their main degree during their first 2 years. (We do 4 years, not 3). I did a module on Philosophy of Science during my Computer Science degree, for instance - pretty interesting.

That said, I haven't heard people complain about classes being full in the same way that they seem to in the USA. I don't know why. Maybe it was because I was in science not arts and there were very few overly popular science classes :-) But across the whole uni, I only heard of a few classes that were so popular they were turning people away. I think one of them prioritised by who was doing that course as their main degree. But I generally heard of very few conflicts, so I don't know what was different. Maybe arts students have a different story?

It's not that the schools enroll more than they can teach. One simple reason is that many classes are just very popular, word gets around that they are great for whichever reason (professor, easy A, really fun project, etc). If a class can only hold 20 people, and its a popular class, its going to fill up as soon as registration opens.

In the end, you aren't left without being able to take classes. Just possibly not the ones you wanted

I doubt this isn't the case in the UK too

In the UK you start a degree as a group and do all the same classes all at the same time as your peers. If you have a choice of classes then each of those choices can accommodate the whole group at the same time if everyone chose it, so classes just can’t be too full. At least this was the case at both use UK universities I’ve been to.

Assuming the site wasn't actually crashing I expect they didn't care or know about it.

I do this currently. I'm surprised our course catalog doesn't ban IPs that hit it every 30 seconds or so.

1 req every 30 seconds is more or less invisible, and universities have comparatively small customer bases. If everyone was doing it, there might be a problem.

My university does require a cooldown period. I heard that someone made his course registration script available to everyone, which I guess was a problem. Unfortunately, the detection system triggers even when you're just manually clicking through the site, which is annoying.

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