
Ask HN: What is your current pet project? - sdegutis
In other words, what are you working on for fun? And why do you find it fun?<p>Don&#x27;t forget to upvote the poll so other people can see it and share their projects.
======
dangrossman
I'm playing with home automation/control. I integrated "smart" devices from 6
different vendors into a webapp with voice control that I run on wall-mounted
tablets throughout the house [1]. From any room, I can say things like "dim
the lights", "lock the front door", "turn up the heat" or "launch netflix on
the living room TV". And, because I'm a bit of a Trekkie, the computer talks
back. [2]

1: [http://i.imgur.com/sduLRv6.jpg](http://i.imgur.com/sduLRv6.jpg)

2: [http://www.lcarscom.net/sounds.htm](http://www.lcarscom.net/sounds.htm)

~~~
zequel
Any recommendation of which ones were easier to write against? Any
APIs/interfaces that stood out?

~~~
dangrossman
None of it's particularly hard. I wrote a node.js server that serves a webpage
for the dashboard, and passes messages back and forth between that webpage and
the various devices.

Belkin WeMo switches and motion sensors are UPnP. Discovery can be flaky
sometimes, otherwise they work well and there's plenty of sample code out
there for UPnP and WeMo specifically.

The garage doors are Chamberlain MyQ, a proprietary website/app with no public
API, but the website talks to a JSON API that was simple enough to figure out
with Chrome's network inspector. I probably wouldn't buy MyQ stuff again if I
were starting over just because of how closed it is. They don't want to
integrate with anything else.

The Nest thermostat has a JSON API, also unofficial though an official one is
in beta testing. There's a node package for that, so plug-and-play for me.

The rest of my stuff is Z-wave (short range 900MHz radio), which you need a
hub for, to bridge that network to the home IP network. I got a Vera Lite for
that as it's the best hub I found that has no subscription fees, is entirely
self-hosted (there's an optional cloud component for remote access and setting
backup without configuring your firewall), and exposes a REST API. That was
the easiest thing to code against -- to lock/unlock the deadbolt on my front
door for example, I just GET a URL with the device ID and command in the query
string.

~~~
zequel
Thanks, that's great info. You have my admiration for that kind of setup!

------
Jaberrwocky
My son and I have been working on our hobby site
[http://CutRateGamer.com](http://CutRateGamer.com) for the last two years. We
both love PC games and were always on the lookout for great deals.

The site started out as a simple blog, but, being a lazy programmer, manually
looking for deals got old quick; so I decided to automate as much as I
possibly could. We are at the point were the site almost runs itself.

It has been a great excuse to try out new technology, keep my skills sharp,
learn marketing, teach my son programming and what goes into running a
website.

Good stuff.

------
andrewhillman
Mines a real "pet" project. I installed a bluetooth signal/sensor in my dogs
harness, put an infrared sensor strip on backdoor and hacked together
something like twillo for notifications. When I let him outside, I know when
he is back at the door because his motion gets picked up by the sensor and a
text message gets fired off to say "Woof. Let me in. Love Simon." This didn't
take me long to build and it gets the job done. Still refining. It's all good
fun... COST: under $19 for all electronics.

~~~
b3b0p
Do you have a blog describing the parts and where you got them? I'm interested
in doing the same type of thing, but for a different situation and was going
about it differently.

------
MeoMix420
I make this sweet Google Chrome extension for fun in my spare time:
[http://streamus.com](http://streamus.com) It's a YouTube music player that I
find more useful than Spotify b/c it integrates well with the browser. I've
put 16 months of nights/weekends into it. It has 14k users, 4.8/5 in the web
store and is completely open-source:

[https://github.com/MeoMix/StreamusChromeExtension](https://github.com/MeoMix/StreamusChromeExtension)

[https://github.com/MeoMix/StreamusWebsite](https://github.com/MeoMix/StreamusWebsite)

[https://github.com/MeoMix/StreamusServer](https://github.com/MeoMix/StreamusServer)

I find it fun for a TON of reasons. I'm learning a lot more about programming
than I ever had in the past. This is the first time I've ever been super
interested in absorbing material because it has a great impact upon me.

I get messages from people all around the world every day saying thanks for
the work. That feeling is super rewarding -- more so than a paycheck. I've had
to bust out Google Translator to try and decipher messages and hold
conversations, had people tell me their dreams of getting to America or even
something as simple as just being excited to talk to the developer. It's
really great.

Finally, it solves a problem I was having and for that I am stoked! I went
from having tons of bookmarks organizing music on YouTube to having a much
more friendly interface for storing and listening to the music.

------
voltagex_
To teach myself Python "properly", I've been slowly writing a script that
posts to Github's Gists - I'm finding it more and more useful as a note taking
utility so I wrote something that lets me pipe input into it and get a URL
out.

[https://github.com/voltagex/python-gist](https://github.com/voltagex/python-
gist)

Python is just nice to code in, and I find it a lot easier to start a project
in than C#, which is my day job.

The other thing I've been doing is getting into reverse engineering of
embedded devices -
[http://blog.voltagex.org/bdplayer.html](http://blog.voltagex.org/bdplayer.html)
and
[https://news.ycombinator.com/item?id=6997623](https://news.ycombinator.com/item?id=6997623)

I also buy far, far too many tiny devices like Raspberry Pis and Cubieboards.

I think between experimenting with and reversing tiny linux-running devices
(I'm looking at you, consumer router manufacturers) I'll find a new career
direction, but at the moment it's a good challenge and a glorious time and
money sink.

------
krapp
I've been having a lot of fun playing around with site scraping. Which
probably sounds weird and lame but the challenge of building stuff from
metadata has been interesting, and seeing how context behaves between linked
sites. Here is an example, which builds a threaded feed from outbound links
(still not quite ready for prime time):
[http://precis.gopagoda.com/url/https://news.ycombinator.com/...](http://precis.gopagoda.com/url/https://news.ycombinator.com/news)

Also i'm cloning HN in Laravel. Most of the basics work but i've got nothing
online to show yet. I find it fun because I like imaging how the structure of
the site might affect the way people communicate and use it.

------
BWStearns
Building a citation manager (for like research papers and stuff) that
maintains a central list of all sources, authors, and publications cited and
also helps manage paper/project level stuff for the individual level. Hoping
that the central list makes it easier to keep the db clean and also provides
the user with some benefit by being able to just look stuff up instead of
typing it in.

------
JamieLewis
I'm currently building ghostream
([https://github.com/ghostream/ghostream](https://github.com/ghostream/ghostream))
- it is a data stream processing framework. Having used numerous commercial
ones (most notably IBM's Streams), and building various other part-frameworks
(i.e. for time and budget reasons focussed on one particular thing) I has an
itch to build an open source one (while storm and samza are definitely
related, I feel they fall into a slightly different category - I'm all about
the streams :) )

It is still in very active development - but the base is solidifying and the
new test framework is starting to shape up nicely.

I have already started dog-fooding it in my other personal projects - the most
visual of which can be seen here:
[http://jamielewis.me.uk/posts/2013-11-03-Mapping-
Earthquakes...](http://jamielewis.me.uk/posts/2013-11-03-Mapping-Earthquakes-
with-ghostream.html)

------
japhyr
I teach an intro programming class in Python each fall, and this fall I
started an open project to help my students learn Python:
[http://introtopython.org](http://introtopython.org)

It's progressing steadily, and people seem to be responding positively to the
first project, a tutorial about plotting geospatial data using matplotlib and
Basemap:
[http://introtopython.org/visualization_earthquakes.html](http://introtopython.org/visualization_earthquakes.html)

The whole project is on github:
[https://github.com/ehmatthes/intro_programming](https://github.com/ehmatthes/intro_programming)

PS I just accidentally ended a 132-day github streak, mostly focused on this
project. I stared watching a movie with my wife last night, and at the end of
the movie I looked at the clock and realized I forgot to make a commit before
11pm. No matter, it was never about the streak anyway. :)

------
sdegutis
I've been working on implementing my first Lisp compiler and virtual machine.
My last Lisp was a simple inefficient AST interpreter, so this seems like the
next step up.

------
Nicholas_C
I'm using Twilio, PythonAnywhere, and Google Directions API to send myself
texts when my commute length is longer than a specified tolerance, then
sending texts with commute lengths for alternate routes if they are shorter.
Currently gathering commute length data to make my commute length tolerances
dependent on an average commute length for that workday plus a specified
percentage above that.

Also playing around with Flask and other APIs as well as building a blog in
Django.

~~~
brettinlj
Great idea. This would have helped me with my morning commute today when SF
Muni had a bit of a meltdown. Have you put the source up on github? Also, if
you're already playing around with APIs and frameworks like Flask and get the
itch to create a REST API, check out flask-restful
[https://github.com/twilio/flask-restful](https://github.com/twilio/flask-
restful).

Disclaimer - I work at Twilio.

~~~
Nicholas_C
Awesome! I love Twilio. Very fun and easy to use (and affordable).

I do plan to put it on GitHub although it needs some refining. I'm a financial
analyst by training and trade so my programming skills are below par.

------
kalagan
[http://www.trackersound.com/](http://www.trackersound.com/) I'm working on a
website where people can track the artists and bands they like in order to be
notified when a new album/EP is released. It's like Songkick or BandsInTown
but for albums instead of concerts. It's still work in progress and I'm also
looking for a new website name.

------
jbrooksuk
I'm teaching myself Obj-C, one of my apps[1] has made it to the store and
whilst I continue to learn, I'll be pushing improvements to it. I've just
pushed another app that'll hopefully make it to the store - the simplest QR
Code Scanner ever.

1\. [http://james.brooks.so/contare-my-first-ios-
app/](http://james.brooks.so/contare-my-first-ios-app/)

------
borgchick
Playing around with making projects with Arduino + sensors, it's fun because
there is so much you can do with the Arduino platform these days. The hardware
course in university was a rush through, and I never really had time to
experiment on my own with it (the real learning). So now, I get to do it with
the Arduino, which makes it SO much easier (and cheaper) than it use to be.

~~~
sdegutis
Hadn't really looked into Arduino until now. Thanks, this looks like it might
turn into an interesting summer project for me and my son.

------
tectonic
Recently, I've been having run working on Huginn
([https://github.com/cantino/huginn](https://github.com/cantino/huginn)) and
BeeLine Reader ([http://www.beelinereader.com](http://www.beelinereader.com)).
Both are tools that augment people's abilities, which is one of my current
interests.

------
balac
A browser based comic book reader:

[http://reader.justforcomics.com](http://reader.justforcomics.com)
[https://github.com/balaclark/HTML5-Comic-Book-
Reader](https://github.com/balaclark/HTML5-Comic-Book-Reader)

------
nyddle
I'm working on [http://trysnitch.com](http://trysnitch.com) to make simple
mobile notifications by issuing http requests with JSON data. Getting to know
Appcelerator for mobile development and Flask as a backend.

------
talmir
My group of close friends and I meet up once a week to slay dragons (yes, we
are nerds). I was unimpressed by the character sheet offerings available
online so I ended up creating my own for fun. It is running on flask, postgres
and knockout.

~~~
lumpysnake
Link?

------
Oculus
I'm currently working on an programming contest judge[1] written in Node, that
uses Docker to run submitted programs in.

1:
[https://github.com/EmilS/OnlineJudge](https://github.com/EmilS/OnlineJudge)

------
stevekemp
A console-based mail-client, with integrated Lua scripting:

[https://github.com/skx/lumail/](https://github.com/skx/lumail/)

[http://lumail.org/](http://lumail.org/)

~~~
sdegutis
That sounds really interesting, and I've often wanted to do something similar
myself. Do you have plans for a convenient curses-based interface, so I don't
have to type stuff out or press enter all the time?

~~~
stevekemp
I suspect one of us is misunderstanding the project, and I'm unsure which it
is.

There is already a curses interface, as per the (outdated) screenshots page:

[http://lumail.org/screenshots/](http://lumail.org/screenshots/)

Really lumail is a console application, similar to mutt, but with a different
feature-set. (i.e. No IMAP, no POP3, real scripting, modal-mode, and similar.)

------
CmonDev
Applying actor model to a game engine.

------
snkcld
github.com/karabijavad/cadet

easy embedded neo4j, via jruby!

