Ask HN: What simple tools or products are you most proud of making? - <AUTHOR> I'm thinking of tiny projects along the lines of single-function tools like domainr. But also game-changing ebooks, newsletters, courses. <comment><USER3> [https://izuded.com](https://izuded.com)

(i.e., "iz u ded?")

I made this because I adopted a puppy and realized that, if I got hit by a bus on a Friday, he could be stuck in his crate for days before anyone realized. Morbid, but useful.

It texts you every X days and asks, "u ded?" \-- if you don't click "naw" before X days pass, it'll notify your contacts.

It's a portfolio project to show what I've learned in the realm of "serverless" architecture. Details about its construction here: [https://medium.com/@marclar/iz-u- ded-713594fd80e9](https://medium.com/@marclar/iz-u-ded-713594fd80e9)

<comment><USER4> Google has a similar feature to give trusted people access to your data if you've been inactive for a given amount of time (so probably dead): [https://www.google.com/settings/account/inactive](https://www.google.com/settings/account/inactive)

<comment><USER5> Is it safe to put my 1Password's master-password into the message that is sent in case I'm dead?

<comment><USER6> How about the name of the book on your parents'/friend's bookshelf with your password lists in? Or some clue to a more secure hiding place.

</comment></comment></comment></comment><comment><USER7> [https://shellshare.net](https://shellshare.net)

I have migrated my wife's (then girlfriend) computer to Linux and sometimes I had to configure something on her computer (e.g. a printer). This ended up generating lots of back and forth on the phone with me telling her commands to write in the terminal, and she reading the output out loud. I wanted an easy way to see her terminal. So shellshare was born.

Shellshare allows you to run a single command line and share your terminal online (read-only)

        wget -qO shellshare http://get.shellshare.net && python shellshare

That'll give you an URL others can join and watch your terminal live. No sessions, no recordings, and the data is deleted every day.

There aren't many users, but I use it almost every week.

<comment><USER8> _wget -qO shellshare[http://get.shellshare.net](http://get.shellshare.net) && python shellshare_

Please don't tell people to do this. This is an idiom called "curl pipe sh"; you're asking people to run whatever code someone on their network decides to send them.

As an absolute minimum, you should change that _http_ to _https_ , so that they're merely running whatever code YOU decide to send them; but even that doesn't quite fit with the "share your terminal (read-only)" philosophy...

<comment><USER9> What's a better alternative?

<comment><USER10> You could use hashpipe ([https://github.com/jbenet/hashpipe](https://github.com/jbenet/hashpipe)), from Juan Benet (the author of IPFS). It simply checks that the input to the command matches a given hash, so you can do `curl <url> | hashpipe <hash> | sh`, and if the output of the curl command is different than expected it won't be passed in to `sh`.

<comment><USER11> Ironically the prebuilt binaries of hashpipe itself are provided without means of verification :I

So if you are going to use hashpipe, I think you should download it in source form, read it -- it's under 100 SLOC -- and then build it from source yourself. This way, you do that once and then in the future provided that you trust those sending you various scripts and binaries and the channel they used to provide the hash, all is well and no further manual verification is needed on your side of things ever again for any of those.

</comment></comment></comment></comment></comment><comment><USER12> rsync.net.

I am very, very proud of the (very simple) platform that we've built there. It's a basic tool that "just works" \- and just works _exactly like you 'd expect it to_.

If I were a consumer of cloud storage, this is what I would want it to look like.

It _pleases me so greatly_ to know that, right now, someone is doing something like this:

      pg_dump -U postgres db | ssh firstname.lastname@example.com "dd of=db_dump"

... while simultaneously, someone else is doing this:

      zfs send tank/test@snap1 | ssh firstname.lastname@example.com zfs receive -s tank/test

It's been 15 years now since we started providing this service - almost 11 since we branded it rsync.net - and the first warrant canary is now 10 years old. This appears to be, for now, my lifes work.

<comment><USER13> I have used rsync.net at work in the past, and the service and support is the best I have experienced in any commercial service, period. Good job.

On the other hand, we need a word about that scrolljacking on your homepage...

<comment><USER14> +1 for scrolljacking. It would randomly pick a direction independent of my actual scroll direction.

</comment></comment></comment><comment><USER15> [https://instafavicon.com/](https://instafavicon.com/)

I created this favicon generator a few weeks ago to generate minimal favicons for my side projects. I'm not good with design tools so it saves me time when I start a new project and want a simple favicon in ICO format.

I'm proud of it because it's server-less. I generate the multi-BMP ICO file in binary using ArrayBuffers and Typed Arrays in JavaScript. I use a <canvas> element to create the images/design.

It's not very polished and I'm sure there are bugs, but feedback would be appreciated!

<comment><USER16> Cool. I like the fact that the icon shows in the actual tab as a preview. I guess what is missing is the option to select a font?

<comment><USER15> Thanks!

I'm thinking about adding some of the Google web fonts.

<comment><USER17> Also, there's a neat technique to make the text color either black or white depending on what has more contrast against the background color.

[https://24ways.org/2010/calculating-color- contrast](https://24ways.org/2010/calculating-color-contrast)

<comment><USER15> Nice! I'm definitely going to use this. The text is barely visible on a lot of the lighter colors right now.

</comment></comment></comment></comment></comment><comment><USER18> Two years ago I created a CLI tool called pgcli ([http://pgcli.com](http://pgcli.com)). A postgres client with auto- completion. It became ridiculously successful. I got a few requests to support mysql. So I launched a kickstarter to write mycli ([http://mycli.net](http://mycli.net)). This also became quite successful.

There is a thriving community of core devs and a ton of users. I'm happy with both creations and made a lot of online friends.

These projects also led me to create a standalone python library for doing fuzzy matching. I'm quite proud of this one since the resulting code ended up being ridiculously small but produced really good results. [https://github.com/amjith/fuzzyfinder/](https://github.com/amjith/fuzzyfinder/)

<comment><USER19> <3

I can't remember who turned me onto pgcli, but I've been telling everyone I can about it for a long time now. It's wonderful.

Thank you!

<comment><USER18> Thank you for spreading the love. :)

The initial surge of users came from HN when I originally posted it at launch, but since then most of the users were through word of mouth.

</comment></comment></comment><comment><USER20> [https://unshorten.link](https://unshorten.link)

I work in security and have a paranoia of shortened links (bit.ly, t.co). I got frustrated with the options out there that forced me to right click every shortened link or paste it into a site so I made this Chrome extension / web app. It is pretty simple and keeps a list of 300+ shortened link services to check against. If your browser ever visits one it redirects you to the site to expand the link. It will also hit the Google Safebrowsing API to see if it is known to be malware plus will strip out tracking cookies.

It's been fun and rewarding watching my little extension grow to global use of over 4k users.

<comment><USER21> Does anyone know of a Firefox equivalent of this extension?

<comment><USER22> No, but you can use Chrome Store Foxified to install most Chrome extensions in Firefox.

[https://addons.mozilla.org/en-US/firefox/addon/chrome- store-...](https://addons.mozilla.org/en-US/firefox/addon/chrome-store- foxified/)

<comment><USER11> That's pretty neat!

</comment></comment></comment></comment><comment><USER23> I'm proud of many things :(

* I converted a rotary phone into a cellphone: [https://www.youtube.com/watch?v=fSkdWQswpc8](https://www.youtube.com/watch?v=fSkdWQswpc8)

* I wrote a personal bookmark search engine: [http://historio.us/](http://historio.us/)

* A site that talks to spammers so you don't have to: [https://spa.mnesty.com/](https://spa.mnesty.com/)

* A pastebin: [http://pastery.net/](http://pastery.net/)

* A remote-controlled GSM irrigation controller for farmers: [https://gitlab.com/stavros/irrigation-controller](https://gitlab.com/stavros/irrigation-controller)

* A button that orders food when pressed: [https://www.stavros.io/posts/emergency-food-button/](https://www.stavros.io/posts/emergency-food-button/)

* A python library and cli utility for controlling YeeLight RGB LED bulbs (a cheaper and nicer version of Hue bulbs) that I wrote this weekend: [https://yeelight.readthedocs.io/en/latest/](https://yeelight.readthedocs.io/en/latest/)

* A secure communications library for IoT devices: [http://stringphone.readthedocs.org/](http://stringphone.readthedocs.org/)

* I took some non-terrible photos and made a site for them: [http://portfolio.stavros.io/](http://portfolio.stavros.io/)

* A hardware library for the A6 GSM modem: [https://github.com/skorokithakis/A6lib](https://github.com/skorokithakis/A6lib)

* Expounder, a better way to explain things in text: [http://skorokithakis.github.io/expounder](http://skorokithakis.github.io/expounder)

* Dead man's switch, a website to email people after you die: [https://www.deadmansswitch.net/](https://www.deadmansswitch.net/)

* I can't even remember the rest.

<comment><USER24> I like expounder, definitely haven't seen something like that before. I'd like it if there was an option to have the expanded text highligted in some way, just so I can keep track of everything mentally.

<comment><USER25> Having it reversible would be nice, too. Knowing the click is irreversible gives an uneasy feeling.

</comment></comment></comment><comment><USER26> Nyan Mode.

[https://github.com/TeMPOraL/nyan-mode](https://github.com/TeMPOraL/nyan-mode)

I made it as a simple joke, but for some reason it rapidly gained popularity among Emacs users, and now I sometimes find it or hear about it in unexpected places.

(Also I fear that on my deathbed I'll look back and realize that the most used thing I've ever made in my life was an animated cat for a text editor... _sigh_ )

<comment><USER27> I have been using this for years and all my work colleagues always ask me "what is that nyan cat on your text editor? that must be super annoying!" and I always have to tell them I just really like it.

Thank you for building this, it's awesome!

<comment><USER28> Same! But sadly when I switched to Spacemacs I haven't set it up again.

<comment><USER29> [https://github.com/TheBB/spaceline/blob/master/README.org](https://github.com/TheBB/spaceline/blob/master/README.org)

Scroll down for nyan mode, if you don't mind using an external package. :)

</comment></comment></comment></comment><comment><USER30> [https://puphpet.com](https://puphpet.com)

I started working with VMs several years ago, manually setting up a Virtualbox image. It would take around 30 minutes, and whenever I'd screw something up I'd have to delete it and redo the whole thing. Sometimes I'd fat-finger a command and have to start the process all over again.

Once I got tired of that I started to look into Vagrant, which recommended using a tool like Puppet or Chef. That led me down the rabbit hole of learning Puppet, which made me want to have a GUI to be able to easily change some choices around without having to mess with the code itself.

So I created a simple HTML form with drop downs and buttons and released it thinking that maybe 10 people or so would find it useful.

Almost 4,000,000 servers created later, and I'm quite happy with how it's been received!

<comment><USER31> Great tool! Made it much easier for me to get started with puppet & vagrant

</comment></comment><comment><USER8> The simple tool I'm most proud of is spiped. If you have two systems which need to be able to talk over TCP without worrying about evilness on the network between them, spiped is _the_ answer.

The simple tool which has probably had the largest impact is bsdiff -- now found used in hundreds of millions of devices -- but I'm not particularly proud of it because it was a quick hack and horrible code written by a C novice.

The non-simple product which I'm most proud of is Tarsnap, of course; I've spent a decade of my life on it, and don't expect to stop any time soon.

<comment><USER32> > The simple tool which has probably had the largest impact is bsdiff -- now > found used in hundreds of millions of devices

In your thesis, you mention an updated algorithm that produces smaller patches. Do you have any code available that implements that algorithm?

<comment><USER8> Some of that, and some further improvements, made their way into [https://github.com/cperciva/bsdiff](https://github.com/cperciva/bsdiff) . But I don't think anyone is using that new code; the company which was paying for me to work on it decided not to continue with that project before I had a chance to finish polishing the work.

</comment></comment></comment><comment><USER33> I built [https://cronitor.io](https://cronitor.io) after having an important cron job fail silently for several days. When I mentioned this problem to a friend his first response was "we just had a major issue with cron failing silently at my work too".

We decided to hack on it together, and we've since grown Cronitor from a tool built for our own needs into a small business with a couple hundred paying customers.

<comment><USER34> As someone about to write a cron job, what ways do you see Cron fail?

My assumption is that cron is robust and reliable, it's the job script itself that may fail silently and need monitoring, yes?

<comment><USER35> The most common failure I've seen is when people forget to use full paths in cron.

bash instead of /bin/bash (or similar)

<comment><USER36> There's other weirdness in cron-land too. Cron will completely ignore files containing "." .

</comment></comment></comment></comment><comment><USER37> A personal knowledge organizer at [http://onemodel.org/](http://onemodel.org/) (AGPL). Highly efficient at managing lists; like an org-mode that uses postgres and is more efficient and flexible in some ways. I use it heavily, daily, to manage checklists/tasks and notes on many subjects. No mobile or mouse support currently, but about everything one needs to know is on the screen at any given time. It's something like really fast mind maps but (currently) keyboard-driven and handles very large amounts of interlinked data. Data can be somewhat structured, as there is a feature that lets you clone then modify template entities.

I see it as the beginning of a platform to change how individuals (or mankind) manage knowledge overall. I'm now working on exploiting the internals for collaboration (linking instances, sharing data, subscribing to each others' data, mobile, etc).

For current org-mode or evernote users: The app has export (& finicky import) features to convert anything to (or from) an indented plain-text outline. The FAQs have links to a discussion of a more detailed comparison with org-mode that seemed somewhat well-received at the time (the link is on this page which also discusses evernote: [http://onemodel.org/1/e-9223372036854614741.html](http://onemodel.org/1/e-9223372036854614741.html) ).

Feedback or participation are appreciated. If one has any interest at all, I suggest signing up for the (~monthly?) announcements list at least. More details are at the web site, including some FAQs.

</comment><comment><USER38> [https://transfer.sh](https://transfer.sh) which I built because I needed it myself, now being used by hundred thousands of people a month and [http://slackarchive.io](http://slackarchive.io) used by 500 slack teams.

<comment><USER39> transfer.sh is easily one of the best file-sharing website I've used.

when I recommend it to others, they find it _counter-intuitive_ to use, maybe because of them not being comfortable with the command line. now it has a drag/drop interface, so, that's _good_ (i guess).

one "issue" that I do have with it, is that downloads aren't resumable/pause- able or you can't see actual download progress. Is this a limitation or was it built that way ?

thanks for making such awesome things :)

(for those reading, transfer.sh is fully open sourced here: [https://github.com/dutchcoders/transfer.sh](https://github.com/dutchcoders/transfer.sh) )

</comment></comment><comment><USER40> [http://www.averageweather.io/](http://www.averageweather.io/) \- tool to make planning for travel much easier. When you are too far out for a forecast, I found myself taking too many clicks to get average weather data.

EDIT - Whoa. Getting lots of traffic. This site is like 3 days old and I taught myself python and django to build it. Open to any recommendations at jonathan at averageweather dot io

EDIT 2 - Back up... Site crash ... Google apps shutdown smtmp connections which crashed my entire site.

<comment><USER41> I would use it if it was in Celsius.

<comment><USER40> Noted! Will work on that asap.

</comment></comment></comment><comment><USER42> The simple tool I wrote that I get the most bang for my buck out of is synesthesia[1]. I spend a lot of my time tracing things down across multiple log files, and having to pick out the important lines visually or trying to isolate them with custom grep incantations was wearing on me. Synesthesia allows you to specify regexes, and it will color matches based on the value of the match itself, meaning that it's stateless and doesn't need to keep a dictionary of strings to colors. This makes keeping track of things like GUIDs easy - you can just keep track of e.g. the orange one and watch it fly by across multiple terminals. It's currently python 2 only and assumes a 256 color terminal, but it has been invaluable.

I've been toying with using the idea for forums so that it is easier to keep track of who is replying to whom[2]. I also would like to try using it as a layer on top of traditional syntax highlighting, perhaps as an emacs minor mode - if those can provide colors to the buffer; I've written hardly any elisp and don't know what capabilities are available.

[1] [https://github.com/cromo/synesthesia](https://github.com/cromo/synesthesia) [2] [https://imgur.com/E1N1Zsm](https://imgur.com/E1N1Zsm)

<comment><USER43> Reminds me of Internet Explorer 7(?)'s coloured tab groups. I actually thought they were quite a neat UI idea.

<comment><USER42> I don't remember how those worked. I think it automatically kept a hierarchy of what tab parented other tabs and colored them that way. That gets kinda strange because it's trying to represent a tree in a flat space, and I don't think the colors reflected their heritage. Since a tab could technically be a parent and a child, you lost tabs to one group or another.

Thankfully synesthesia is really simple - match the string, take the md5 of it, lop off some bits and interpret that as a color. There's no additional structure to superimpose on color selection.

</comment></comment></comment><comment><USER44> Last year, I launched [https://devmarketing.xyz](https://devmarketing.xyz)

I'm really proud of it for a few reasons:

1\. It was a response to an observed need. I was getting daily emails from devs asking me about product marketing. I believed that devs who learned marketing could be unstoppable when it comes to launching products.

2\. I created it on the side, while working full-time.

3\. In its first 3 months it did $28,433 in revenue. This allowed me to go full-time on my own projects this January.

If you build an audience, and earn a good reputation, selling your expertise is a good option.

<comment><USER45> Hey Justin, I enjoy reading your emails. Sometimes they're a bit too AppSumo-y but overall (Y). I wrote out a reply to one of your questions the other day but didn't end up sending it. I have a ton of projects that I never really take through to completion for whatever reason. One of the reasons is marketing. I bought a book or two of yours on sale a while ago but haven't gotten to it yet, I'm sure it will be good though. Keep up the good work!

<comment><USER44> Thanks! I'll work at making my emails less AppSumo-y. ;)

You should definitely send that email. I try to reply to every one I get.

(BTW - one of the things I include with M4Devs is a secret podcast RSS feed where I read the chapters for you. Perfect if you're having a hard time getting started)

</comment></comment></comment><comment><USER46> [https://www.taskpaper.com](https://www.taskpaper.com)

Plain-text todo list:

1\. To create a project, type a line ending with a colon.

2\. To create a task, type a line starting with a dash followed by a space.

3\. Everything else is a note.

4\. To create a tag, type the @ symbol followed by a name.

5\. Tab to indent and create outline structure.

TaskPaper started as few days TextEdit hack in 2006. It's no longer a "tiny" project in terms lines of code. But the original simple idea–plain text todos with 5 formatting rules–remains the core of what TaskPaper is.

I'm very proud of that!

<comment><USER47> I use TaskPaper throughout the day, every day. I've tried at least a dozen task-management apps and TaskPaper is the only one that I keep coming back to. It strikes just the right balance between simplicity and customization. I could go on and on, but just know that I, for one, think your pride in the project is justified ten times over!

<comment><USER46> Thanks! :)

</comment></comment></comment><comment><USER48> Simple visualization of the relative size of different planets and moons I made when my daughter was asking if the moon is bigger than the earth - [http://callumprentice.github.io/apps/celestial_bodies/index....](http://callumprentice.github.io/apps/celestial_bodies/index.html?1=earth&2=moon)

<comment><USER49> wait, Earth's moon is _bigger_ than pluto? mind blown!

</comment></comment><comment><USER50> [http://bostontraintrack.com](http://bostontraintrack.com)

Real time tracking of Boston subways, buses and commuter rails.

Made mostly in a weekend and available free and open source [1]. Though it's simple, I think it gives a nice overview of the trains and buses. Boston has stop prediction so in some sense it's kind of frivolous. I think the biggest 'innovation' was to integrate the "map icons" into a nicely visualized open street map [2].

Not super popular but it's been running for around 2 years with ~20 hits per weekday.

[1] [https://github.com/abetusk/bostontraintrack](https://github.com/abetusk/bostontraintrack)

[2] [https://mapicons.mapsmarker.com/](https://mapicons.mapsmarker.com/)

<comment><USER51> Busses too?! Man, I wish this were around in the Bay Area!

<comment><USER50> This is very possible [1]. I use NextBus for the real time bus mapping even though the MBTA offers it because I've found NextBus to be much more accurate and stable.

I'm a little nervous because I might be violating their terms of service in using their feed without being an official customer but it's been running for a couple of years now without issue.

[1] [http://webservices.nextbus.com/service/publicXMLFeed?command...](http://webservices.nextbus.com/service/publicXMLFeed?command=vehicleLocations&a=sf- muni&t=0)

</comment></comment></comment><comment><USER52> I'm not sure whether "proud" is the right adjective, but that batch file I wrote when I was 12 or 13 which moves all images from the Desktop into a folder called "images" has been the single most useful thing I've ever written.

<comment><USER53> This is actually one of the few types of examples that I think fit here. Most of the other people are just posting their side projects. When I clicked this I was expecting some quick bash/batch/python/etc. scripts that do useful things.

<comment><USER54> One less useful thing for you: [https://onli.github.io/izulu/](https://onli.github.io/izulu/). It is a bash script that changes the background of your desktop according to the weather at your locations, and can show the temperature and forecast.

Doesn't have much functional value, but it was easy to write (though over the years it needed some care, mostly thanks to closing weather APIs) and it is a small simple thing I use almost every day, as it is in my autostart.

<comment><USER51> That looks sweet! Is there a Windows version?

<comment><USER54> Thanks. Sorry, Windows is not supported. It is written in Bash, Windows was not a target at that time. It might work with [https://msdn.microsoft.com/en- us/commandline/wsl/about](https://msdn.microsoft.com/en- us/commandline/wsl/about), but probably not since it also uses imagemagick to paint on the images, and xml_twig_tools as well as jq to interpret the api output. And it would need to detect that it is running on Windows to change the desktop background with the proper command, if that is even possible.

</comment></comment></comment></comment></comment><comment><USER55> * Picnic CSS: a simple css library. I use it for both small projects from the CDN as medium projects with the SASS that I have carefully built: [http://picnicss.com/](http://picnicss.com/)

* cookies.js, a simple cookies library that uses a getter/setter style that I (and many people) like more. I'm considering taking the format and extend some other libraries like store.js. [https://github.com/franciscop/cookies.js](https://github.com/franciscop/cookies.js)

* drive-db, a tool that converts a Google spreadsheet into a small database for Node.js: [https://github.com/franciscop/drive-db](https://github.com/franciscop/drive-db)

<comment><USER56> Thanks for making Picnic CSS! I picked it for small project recently and enjoyed using it.

I'm a fan of Umbrella JS, too.

</comment></comment><comment><USER57> The simplest one that I also use the most is start.sh: [https://github.com/JangoSteve/start](https://github.com/JangoSteve/start)

I've been using it for 3 years now, but keep forgetting to tell anyone about it. It's a simple bash script that detects what kind of project your current directory is and runs the appropriate command to start the development server.

I created it, because I found myself constantly switching between projects of different types, and it always took me a few moments to remember if the current project was Rails 2 or Rails 3/4, Node, Jekyll, Rack app, etc. and starting the development server on port 3000 was starting to take 2 or 3 tries before getting it right.

Now, I just cd into any project and run `start`. It currently detects Foreman projects, Rails (old and new), Jekyll (old and new), Gollum, plain Rack apps, and Node; and it's easy to add new things as well.

<comment><USER58> Innovative idea ...

<comment><USER57> Thanks!

</comment></comment></comment><comment><USER59> I have some sideprojects around the internet, but so far the most useful thing I made has been

[http://paralleltext.io](http://paralleltext.io)

A tool that helps you learn languages by reading public domain books. I should continue working on that...

<comment><USER60> Very, very cool! I'm teaching myself Spanish, and I've been looking for something like this for ages.

I'd be curious to know more about how it's built, and where you found the source texts. It it open-source?

<comment><USER59> Hey, thanks! I made the prototype using publicly available matched books and and got a friend included who built a matching engine for adding new books.

The frontend is react, everything is hosted on s3. If you have any questions lemme know!

<comment><USER60> Any plans to do short stories as well?

</comment></comment></comment></comment><comment><USER61> [https://www.hiroapp.com](https://www.hiroapp.com) \- Note-taking reduced to the core that just works™. Offline first, no signup needed, easily sharable (url, sms, email) and (web)realtime sync between all devices and collaborators.

My co-founder and I moved on to a new project a year ago, but this thing is still buzzing along on a cheap DO box and works like a charm with basically zero maintenance. Frontend is vanilla JS, backend in Go and the protocol is our slight modification of differential sync[0] to (re-)synchronize all text and metadata.

[0] [https://neil.fraser.name/writing/sync/](https://neil.fraser.name/writing/sync/)

<comment><USER62> Hey, your first link is giving me a 502 Bad Gateway error.

<comment><USER61> Thanks for noticing, should be fixed. (there goes my "zero maintenance"-claim :) )

<comment><USER62> :) It works now, and looks great! I just tried to share a test note via SMS (with a spanish mobile), still waiting though...

Congrats, and keep up the good work!

<comment><USER61> Thank you! Fixed the sms quirk as well (twilio api key was missing). If you re-invite your phone-# now, the sms should come thru.

</comment></comment></comment></comment></comment><comment><USER63> [https://steam.dance/](https://steam.dance/)

I've been poking at this for 4 or 5 years now. It started as a simple simplified air pressure simulator for teaching logic programming. But now you can make all sorts of stuff with it, like logic gates, adders and I'm working on a replica 4004. (Links below)

The website is awful for new users - It doesn't work on mobile, there's no tutorial and no real documentation on how to use the editor. Instead of fixing that I'm working on making a dedicated puzzle game built around the engine to teach all the concepts up to and including getting players to build their own CPUs.

The backend is powered by a FRP compiler, which I'm really happy with. You can have huge steam powered worlds and incrementally edit parts of them, and it does fancy incremental recompilation.

Logic gates: [https://steam.dance/nornagon/logic](https://steam.dance/nornagon/logic)

2 full adders: [https://steam.dance/josephg/adder](https://steam.dance/josephg/adder)

Miniaturised 8 bit ALU: [https://steam.dance/josephg/alu](https://steam.dance/josephg/alu)

Work in progress CPU: [https://steam.dance/josephg/4004_4](https://steam.dance/josephg/4004_4)

<comment><USER51> This sounds amazing! I can't seem to get it running on Chrome, but I'll check back on it!

<comment><USER63> It should work in chrome - thats what I've been developing it in. Play button in the top left will make the simulations go.

</comment></comment></comment><comment><USER64> The projects I am the most proud of:

[http://rationalfiction.io](http://rationalfiction.io) \- a collection of amazing science fiction stories.

[http://lumiverse.io](http://lumiverse.io) \- discovery platform for educational videos.

[http://digitalverse.io/rigs/](http://digitalverse.io/rigs/) \- several rigs that I have made, for practicing 3D animation in SideFX Houdini.

Single scripts:

[https://github.com/raymestalez/rssdigest](https://github.com/raymestalez/rssdigest) \- sends me a daily email digest of my rss feeds.

[https://github.com/raymestalez/reddit- scripts](https://github.com/raymestalez/reddit-scripts) \- scrapes /r/WritingPrompts, and compiles a list of the top writers and their best stories([http://fictionhub.io/story/top-100-writingprompts- authors](http://fictionhub.io/story/top-100-writingprompts-authors))

[http://blog.digitalmind.io/post/ai-writes- hpmor](http://blog.digitalmind.io/post/ai-writes-hpmor) \- ANN that generates Harry Potter fanfiction.

<comment><USER65> rssdigest => Wow Thanks!

</comment></comment><comment><USER66> [https://invoice-generator.com](https://invoice-generator.com)

I made this 4 years ago for those times when you just need an invoice. Today 10s of thousands of individuals and businesses use this each day to get paid. It's free to use with no login required. Instead it uses localStorage to remember data.

<comment><USER67> Homepage says lite is free and unlimited, pricing page says it's limited to 10 invoices per month?

<comment><USER66> You are looking at our paid service, invoiced.com. Invoiced saves your invoices online, and does much more, whereas invoice-generator.com only generates PDF invoices.

</comment></comment></comment><comment><USER68> [https://scri.ch/](https://scri.ch/) draw => save => share (you can add .png to the URL)

[https://gif.gg/](https://gif.gg/) photos => save => share (you can add .gif to the URL)

I made them because they were useful for me, and I am still happily using them almost every day, especially scri.ch: nothing beats typing scri.ch in a browser from anywhere to quickly sketch an idea (except a napkin and a pen of course).

It's nice to see other people using them too! :-)

<comment><USER69> Nice tool. What someone might should consider that you URLs are not private. They are quite guessable and each saving leads to an "increment" in the alphabet: [https://scri.ch/acc](https://scri.ch/acc) -> [https://scri.ch/ace](https://scri.ch/ace)

</comment></comment><comment><USER70> "A primer on Bezier curves", [https://pomax.github.io/bezierinfo](https://pomax.github.io/bezierinfo)

It started as a small explanation on the basics of Bezier curves in 2011 and then kept growing until it's basically a full book now, hitting hacker news every year/half year, and getting lots of thanks for having made it by a very diverse crowd - from kids doing homework to engineers at software companies who have a question not covered by the material (yet).

It's been a mostly low effort investment and I could have just as easily not bothered, but just adding small bits at a slow pace parts of on the internet: five years of improvement would not have happened if I'd simply not bothered, and now there is an amazingly popular free resource for this material easily findable online.

<comment><USER71> Thank you for this! I've studied your material and I've able to understand an create a nice canvas coloring app.

</comment></comment><comment><USER72> One weekend, to scratch my own long-time itch, I coded up a simple browser extension to display GitHub repo code in tree view [1]. It now also supports GitLab, works on Chrome/Firefox/Opera/Safari and has almost 90K users.

[1]: [https://chrome.google.com/webstore/detail/octotree/bkhaagjah...](https://chrome.google.com/webstore/detail/octotree/bkhaagjahfmjljalopjnoealnfndnagc?hl=en- US)

<comment><USER73> On a similar note, I started making a thumbnail view: [http://www.git- browser.com](http://www.git-browser.com)

</comment></comment><comment><USER74> One tool I wrote and I wish I would still have time to maintain was "Folders2Flickr" (luckily someone forked it [https://github.com/richq/folders2flickr](https://github.com/richq/folders2flickr) and keeps it alive). It's basically a DropBox for pictures with Flickr being the storage server and viewer. The tool simply synchronizes all of your pictures which can be in a hierarchical folder structure and recreates this folder structure on Flickr (but uses Sets/Albums instead of folders). I dont see the stats now but for years it supplied Flickr with multiple pictures every single second 24/7 from many users.

<comment><USER75> Used this just a year or so ago to upload ~decade of family photos from a backup-less old computer and into the cloud. Thank you!

</comment></comment><comment><USER76> I wrote a humble static site generator in Scheme that generates not only my blog, but at least 3 other blogs and the websites for 2 GNU projects. It's no Jekyll, but it's the first piece of software I created that is used by more than just me.

[https://haunt.dthompson.us](https://haunt.dthompson.us)

GNU project sites:

[https://gnu.org/s/guile](https://gnu.org/s/guile)

[https://gnu.org/s/guix](https://gnu.org/s/guix)

</comment><comment><USER56> [https://github.com/dbohdan/sqawk](https://github.com/dbohdan/sqawk)

It parses DSV data like Awk does, runs SQL queries against it and formats the output in one of several ways. An example I am particularly fond of is using this tool as a poor man's libxo ([https://github.com/Juniper/libxo](https://github.com/Juniper/libxo)):

      $ ps | sqawk -output json,indent=1 'select PID,TTY,TIME,CMD from a' trim=left header=1
      [{
          "PID"  : "3947",
          "TTY"  : "pts/2",
          "TIME" : "00:00:07",
          "CMD"  : "zsh"
      },{
          "PID"  : "15951",
          "TTY"  : "pts/2",
          "TIME" : "00:00:00",
          "CMD"  : "ps"
      },{
          "PID"  : "15952",
          "TTY"  : "pts/2",
          "TIME" : "00:00:00",
          "CMD"  : "tclkit-8.6.3-mk"
      }]

I started a list of command line tools for querying, processing and converting structured text data: [https://github.com/dbohdan/structured-text- tools](https://github.com/dbohdan/structured-text-tools).

</comment><comment><USER77> I wrote peewee, a single file Python ORM. It's codebase is very small but it is extremely capable.

[http://docs.peewee-orm.com](http://docs.peewee-orm.com)

<comment><USER78> I actually only heard of this for the first time today, and it is indeed a fantastic ORM. The `pwiz` tool is insanely useful, and is a pretty good first step towards porting over database models from other projects.

I'm quite impressed with how easy to use everything is, despite having used pwiz to generate my model classes. I had to manually edit a couple of the "related_name" fields for some foreign keys that are common between tables, as well as import the ArrayField type from playhouse.postgres_ext, but otherwise had a very, very easy time getting everything set up for what I wanted.

Thanks again for this, I didn't think porting my database schema over to Python would be so easy.

</comment></comment><comment><USER79> [http://worlddev.io](http://worlddev.io)

Sms Lists is an sms craigslist for refugee camps. I made it after visiting a couple of refugee camps and realizing that it was really hard for business owners who made <$1/day to have any extra money left over to re-invest in marketing their businesses. Code is here: [https://github.com/alando46/smslists](https://github.com/alando46/smslists)

<comment><USER80> This is really a great project. Would be worth to give more details how it is possible to reuse it. Do you think it work for homeless people too?

<comment><USER79> Thanks! I'm working on linking it up an android gateway so anyone who wants to test / try it out only needs a local simcard and the ability to download the gateway software to an android handset. This basically already exists ([https://telerivet.com/product/app](https://telerivet.com/product/app)), it's just a matter of setting everything up.

</comment></comment></comment><comment><USER81> Well, I really like the simplicity of athena. [0]

athena is an elegant, minimalist, light-weight static blog generator written in Python. It's just over 50 lines of code. athena tightly integrates with Tufte's design and typography rules. Have a look! [1]

[0]: [https://github.com/apas/athena/blob/master/athena.py](https://github.com/apas/athena/blob/master/athena.py) [1]: [https://apas.github.io/athena/](https://apas.github.io/athena/)

</comment><comment><USER82> At the beginning of the year, I started at a large print shop where numerous types of projects came through our doors. There's this one client of ours who's project would take ~13 hours to complete--and that's just in our department which was file prepping.

I did this project by hand one or two times and then asked the manager to let me research the possibility of automating it. After a week or so of fiddling around, I was able to bring it down to 2h10m. Just in the past week, I was able to bring it down to 15m and reduce the number of steps where a human is needed.

</comment><comment><USER83> readthedocs.org -- A site that automatically builds documentation for you when you commit to your VCS repo. It's been widely used in the Python ecosystem for a few years now, and started off as a 48 hour hack day project.

<comment><USER19> Having just recently listened to the Talk Python to Me (yesterday) and Import This (today) episodes with you, thank you so much for everything. Read the Docs is a truly amazing resource.

</comment></comment><comment><USER84> A/Bingo, a Rails A/B testing plugin that I wrote in a part-time week and used for a few years. The main reason I'm proud of it is Ben Kamens and company ported it to run on Google App Engine for Khan Academy, where it formed the core of their experimentation platform for a while.

[http://bjk5.com/post/10171483254/abingo-split-testing-now- on...](http://bjk5.com/post/10171483254/abingo-split-testing-now-on-app- engine-built-for)

</comment><comment><USER85> [http://www.ghostnoteapp.com](http://www.ghostnoteapp.com)

I made it because I couldn't find a developer to do a larger project I wanted to do based on the same principle.

So I paid a developer to do this and now he is my partner and we are building the project I wanted to do to begin with. It's quite profitable for a small tool.

It's based on the idea of contextual note taking which basically allow you to attach notes to all sorts of things like website, folders, files etc.

The contextual engine is part of my new project.

<comment><USER86> Sounds cool. Sort of what the people at Genius are attempting to do at some point?

<comment><USER85> Kind of but more focused

</comment></comment></comment><comment><USER87> Not sure if this warrants inclusion in this list, but I'll share it anyway.

I made a simple firefox/chrome extension for people that horde tabs as temp bookmarks. You might find it useful to find tabs and quickly navigate to them by clicking on the link in the list. It's free and open source. The github page has a gif showing usage. You can also type cmd-shift-e or ctrl-shift-e to switch to it.

Chrome Extension: [https://chrome.google.com/webstore/detail/tabist/hdjegjggiog...](https://chrome.google.com/webstore/detail/tabist/hdjegjggiogfkaldbfphfdkpggjemaha)

Firefox Extension: [https://addons.mozilla.org/en- US/firefox/addon/tabist/](https://addons.mozilla.org/en- US/firefox/addon/tabist/)

source code: [https://github.com/fiveNinePlusR/tabist](https://github.com/fiveNinePlusR/tabist)

Let me know if you find it useful or have any suggestions.

<comment><USER88> Very useful. The only other feature I'd want is the option to display URLs along with the titles.

<comment><USER87> That could be something I could add. Thanks for the feedback!

</comment></comment></comment><comment><USER89> I got tired of remembering how to format date/times as strings and made [http://www.foragoodstrftime.com/](http://www.foragoodstrftime.com/)

<comment><USER15> I've used this more than a handful of times. Thank you!

</comment></comment><comment><USER90> Made a python command line tool that decrypts and dumps assets from an indie video game called awesomenauts.

I started knowing next to zero in assembly, reverse engineering and crypto. Took me about two months -spread accross 2 years- of work and learning to do it. The game uses a modified AES crypto, just the key expansion was modified, probably so it can be different enough to not look like AES, but still benefit from hardware acceleration. It's probably less secure than regular AES.

[https://github.com/Nodja/AwesomenautsFileDumper](https://github.com/Nodja/AwesomenautsFileDumper)

<comment><USER91> Can you eloborate on this? Why did you have to use assembly and how did you decrypt it? Hiw did you find the key?

<comment><USER90> Sure. Bit of a long story. TL:DR at the end.

I wanted to dump sounds from the game, not for myself, but because I wanted a way for people to do videos/soundbanks without having to record them from the sytem audio, which would often contain other noises from the game. So that was my initial motivation.

I started by doing it the brute force way, load game, dump content of ram into a file, use a command line tool (can't recall name) that would search for media files inside that file (using magic numbers and whatnot), and boom. I would get a bunch of .wav files from the game. This worked, but now I had to categorize each file one by one, since it's just a data dump all filename information was gone.

Using an hex editor I found that the file names were also loaded into memory (ctrl+f .wav in an hex editor proved as much). So I needed to figure which file names pointed where, which was not an easy task looking just at hex values. I figured: well, the game has to know somehow which names belong to data, at least at some point, so I googled x86 reverse engineering and landed on a wiki page that brought me to a program I used only once a long time ago, ollydbg. Back when I was 14, (I'm 30 atm) I had followed some tutorial on how to use ollydbg to crack tony hawks pro skater 3. I wasn't too difficult, but I never followed up because back in the day I cared more about playing video games than figuring out how they worked.

Ollydbg this time proved fruitless to me, I had no idea what I was looking at. I followed some other tutorials and videos on youtube, the most helpful were the tutorials on cheat engine but I was still stumped on how to reverse video games, so I dropped the project, for a while.

Back then I had been recently introduced to python, which rocks btw, and one of the books, possibly the turning point of my reverse engineering "career" was a book called gray hat python. The book explained how debuggers worked, what's the stack and what does it do, registers and what they're supposed to hold, how breakpoints work, how hooking dlls works, etc. This proved the cornerstone for me understanding what's going on.

I've come to realize I haven't explained what ollydbg is. Ollydbg is a windows debugger used mostly by reverse engineers, with most-likely evil intents, to read machine code. A debugger is a program that tells the operating system "hey I'm a special program that wants to find bugs in this program so let me peek around", so it has access to what memory the program has allocated, or what files it has loaded, etc. It also converts the executable part of memory into assembly instructions. So instead of you seeing "57" you see "PUSH EDI". Basically, let's you read the assembly code of a program.

So now with my new found knowledge, I found ollydbg to be very helpful. I first hunted down where the game doing the file loading, which was easy because it's using windows APIs, then poked around until I found the call that returned the decrypted data, which was also easy. Knowing this information, I built a python script that would pretend to be a debugger, hook itself into the game, set a breakpoint right after the function call, retrieve all metadata and decrypted file data from registers/stack, and then resume execution so the next file could be loaded and repeat the steps all over.

So, mission accomplished right? Nope. A major pain in the ass still remained, this script would only dump files that the game would load, if the game didn't load the files, they would never be decrypted, this meant I had to select every "hero" and load every map, select every announcer, etc. Which I did for a while, but I figured, "there must be a way to automate this". So I tried to understand what the file loader was doing. This is where I spent the majority of my time, just poking around at code, tracing segment of code and reading the traces to try and figure out what was going on, etc. One key piece of information, the game was using the AESENC instruction to decrypt stuff, so I read some wikipedia articles on AES, got the basic grasp on how it worked, and tried to figure out what the game was doing. Note one thing, AESENC is used to encrypt files, however the game was doing decryption. This stumped me for a while. I watched free lectures on encryption online, I read articles, stackoverflow, youtube videos. None of them could explain why would you do encryption to decrypt a file. So I figured they must be using some sort of custom encryption, because according to wikipedia, one of the paremeters for the XOR right before the AESENC instruction should be the key, and it didn't work when I inputed it in online decryptors and whatnot, trying all combinations of operation modes, etc. I was stumped, and for several months I could not figure out how the game was doing it.

The next eureka moment was hiding in plain sight, a webpage that I had seen several times already, but never noticed a detail. It's even bolded. [https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation...](https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Cipher_Feedback_.28CFB.29) . In CFB mode of operation, the encryption algorithm is used to decrypt the file. A light turned on in my head and if what I thought was right i would have solved part of the problem, so using the graph on that page I quickly built a proof of concept to test my theory. And I was right. To explain what my theory was and why it worked, I need to explain a bit on how AES works. I'm strictly talking about AES-128 here to keep things simple. This comment is too long already.

So AES-128 can be divided into two parts, first part is the key expansion. It grabs the encryption key, and uses a special algorithm to transform it into 10 different keys. The second part is the encryption operation proper, it does 10 rounds each using one of the keys in the first step, first and last round are different, but the others you're just grabbing the result of the previous round and the round key, and doing an AESENC with those as parameters, the last round will output the decrypted data.

So my theory was, they don't touch the encryption proper, but alter the key expansion step. It I was right, I could grab the first block of the file, use the round keys and IV I got from ollydbg, and be able to decrypt a whole file. And like I said, I was right :) Next step: find out how the game is doing the key expansion.

This was kind of a boring job. I worked backwards from the encryption operation. See where the output was being generated, then replicate it in python. Remember, this is all in assembly, and optimized by a compiler, so the code is anything but structured and logical. After implementing a bunch of the code, it started to look familiar, it basically was a modified version of the regular AES key expansion. It seemed to skip some steps. The key that was fed to that key expansion, was being generated by running a sha-1 hash on the relative filepath of the file encryped. You can find these two functions here: [https://github.com/Nodja/AwesomenautsFileDumper/blob/master/...](https://github.com/Nodja/AwesomenautsFileDumper/blob/master/animolite/crypto/awesomefuncs.py)

Apologies for the lack of comments and ugly code. It went through dozens of iterations and it's based on assembly code that I don't fully understand yet. Well I know what it does, but don't know why it was done that way.

From here on was more busywork, basically make the script read a whole game folder and dump the contents somewhere else.

TL;DR: I didn't need to "use" assembly, I didn't write any assembly, I however needed to understand assembly since I was reading decompiled machine code. This allowed me to understand what the game was doing when loading files which lead me to the encryption "key". It was not actually a key that I needed to find, since they were using a modification of the whole AES-128 algorithm that only needed a file name as input, instead of key and IV.

P.S. There were some white lies to shorten the whole thing. Basically just me coming to conclusions sooner that I did, and skipping some steps (the game used compression and their own archive format). Also apologies if I made some typing errors, I didn't proofread my comment and sometimes I type words that are different than the word in my head :P

<comment><USER92> Thanks for taking the time to write this. May I suggest editing and publishing to medium or some other site? It's really a shame when gems like this get buried on a site like hacker news. Imagine all the awesome stuff buried in slashdot, reddit, usenet, etc allthese years.

</comment></comment></comment></comment><comment><USER93> [https://10minutemail.com](https://10minutemail.com)

I built it to learn JBoss Seam, and recently re-wrote it using DeltaSpike. I personally use it almost every day!

<comment><USER94> If you indeed did build 10minutemail.com - I applaud you. May I ask how much you make (roughly) off of the service? It seems to be the go-to for most temporary email services, at least that I know of.

<comment><USER93> I did indeed build it:) I find myself somewhat reticent to discuss the details of the finances, but let's say it's a five figure amount annually.

<comment><USER94> This is incredibly impressive and I just wanted to say I have used your service 100+ times. You have saved me many spam emails, my hat is off to you.

</comment></comment></comment></comment><comment><USER95> My Elixir/Phoenix project Magnetissimo. When KickassTorrents died, I thought I should just build my own crawler and be done with it.

Elixir's OTP was a fantastic fit, I scrape stuff really quickly with minimal orchestration code. There are bugs here and there, and I haven't had time to circle back and patch a lot of the issues I noticed, but it "works".

I'm proud of it because it broke the 200 star barrier on my Github profile. With Elixir to boot! I love this language.

[https://github.com/sergiotapia/magnetissimo](https://github.com/sergiotapia/magnetissimo)

</comment><comment><USER96> I built [http://pixelsview.com](http://pixelsview.com)

I run a media website and people are always asking me, what will X or Y look like? How do I know what size I want? I send them there.

<comment><USER97> You should have links to specific views. So someone could just share a url to a specific size.

</comment></comment><comment><USER98> I'm most proud of React Flip Move ([https://github.com/joshwcomeau/react-flip- move](https://github.com/joshwcomeau/react-flip-move)), an animation library that does exactly one thing: animate transitions when DOM nodes change positions (eg. list re-ordering).

I wind up using it in almost every project I work on, since just about every app has a list of some kind, and many lists need to support being sorted, having items added, etc.

It's a simple tool, but the internal logic is surprisingly complex. The DOM is a tricky beast!

<comment><USER99> Great job! this is a harder problem to solve than most people would imagine.

<comment><USER98> Thanks :)

</comment></comment></comment><comment><USER100> I was annoyed last week that ii ([http://tools.suckless.org/ii/](http://tools.suckless.org/ii/)) didn't support SSL, so i reimplemented ii inn Golang and added a few extra needed features.

[https://github.com/Foxboron/iii](https://github.com/Foxboron/iii)

It's essentially just a file based IRC client. Using FIFO files as input, and spitting out the loggs into an out file. I really enjoy the simplicity of the idea and how easy it is to script. Been using it to learn goroutines and some more go, the code isn't the best but it's fun.

Planning to create something like "wii" where you can use the same structure but with HTTP requests. POST to send data into the FIFO file, and GET to read the out file.

</comment><comment><USER101> [https://zonewatcher.com](https://zonewatcher.com)

After having multiple clients change their DNS settings without warning and then email us when shit hits the fan I knew I needed some type of warning system.

This checks every X minutes and saves each version so you can see the revision history for all your DNS zones across many providers.

<comment><USER102> Might be better to go in the reverse direction - get them to store their DNS records under revision control and then when changes are committed/pushed they are deployed.

I wrote something like that for Amazon's rout53, [https://dns- api.com/](https://dns-api.com/) but it wouldn't be hard to wire up a git hook with APIs from DNSMadeSimple, Dyne, or similar I'm sure.

(Of course if you don't host your clients DNS then it might be a fight to get them to change. But if you do it might be worth a think..)

<comment><USER101> I thought about that, but some of our clients use 3rd party contractors / internal IT to manage their DNS as well so getting those entities to use it would be hard. Eventually that would lead to mismatched records.

The current way, I can actually monitor DNS changes to clients without them having to change anything they are doing.

I have thought about a syncing type of feature where you'd be able to schedule a one-time or recurring sync for a particular zone or group of zones.

<comment><USER102> I guess it's good you've got a solution that works then !

If you had the option the simplest way to poll for changes would be to do a hourly/daily/weekly zone-transfer. But many DNS-hosts disable those for security reasons.

<comment><USER101> Yeah thats the trouble. The big providers disable zone transfers so you have to hope for an API. A lot of providers don't make one available. Besides the ones I have up there, there are only 2-3 more that provide a workable API which I'm planning on integrating soon (Dyn & Azure).

</comment></comment></comment></comment></comment><comment><USER103> I have two small kids (2 and 5) and I am travaling a lot with my family around the world. I found out that it can be hard to find a good place to spend some time with kids. So I build a simple tool that helps me to find such places.

[https://www.gowithkid.com/](https://www.gowithkid.com/)

This tool already helped me a lot.

<comment><USER104> I really like this, thank you. I have a nearly 3 year old boy, and we have a fairly standard set of places we take him around the small European city where we live. Your site actually showed me a couple of new places we haven't been before (only been in this city for about 3 years). I also really liked that almost all the suggestions were outdoor activities or locations.

Having said that, there are also a few places on our standard list of destinations which aren't shown on the map. How can I contribute them?

I will certainly bookmark the site for ideas when we travel too.

<comment><USER103> Thanks for a feedback. Just log in and you will see "add place" button.

</comment></comment></comment><comment><USER105> [http://www.beelinereader.com](http://www.beelinereader.com)

Helps people read more easily on-screen. Originally designed as a speed- reading tool for lifehack types, but it turns out to also be super effective as an assistive technology for people with dyslexia, vision impairments, and executive function disorders.

<comment><USER106> This looks really great. Can it be used in chrome on android?

<comment><USER105> It's available on Android in Firefox (and is free). Unfortunately Chrome for Android doesn't support extensions like on the desktop.

</comment></comment></comment><comment><USER107> I'm most proud of making Open Exchange Rates ([https://openexchangerates.org](https://openexchangerates.org)), which grew out of a hobby project (and a desire to create a really simple API for something that had previously been annoyingly complex.)

The basic JSON API request and response formats are unchanged since day 0, although we've added a few new features in response to customers' demands over the years.

<comment><USER108> I've been using this for years. Really really nice both practically (the data is useful) and conceptually (I always use this or OpenWeatherMap to explain to students what an API is)

</comment></comment><comment><USER109> The Obvious Password Detector, intended for use inside programs for setting and changing passwords.[1] (Yes, this is real K&R C, pre-ANSI.)

[1] [http://www.animats.com/source/obvious/obvious.c](http://www.animats.com/source/obvious/obvious.c)

<comment><USER8> Wow, you're _that_ John Nagle?

</comment></comment><comment><USER110> [http://hackernewsletter.com](http://hackernewsletter.com)

Started it over six years ago and have been sending it every week since. Have about 39,000 subscribers and still see a 45% open rate. It has been a lot of fun, and even better, I have made connections with a lot of great people.

<comment><USER111> And I just want to tell you that I really like the service. It allows me to quickly check the most interesting posts of last week if I wasn't able to read up on Hacker News during the week. Apparently, your selection matches my interests quite well. (And for the other weeks, I get a nice confirmation that indeed I've read/seen the most interesting stories :-))

</comment></comment><comment><USER112> I made a printed circuit board to make it easy to connect things to a 1000 watt computer power supply I had lying around. Similar adapters are available commercially, but I couldn't find one that could manage 1000 watts.

[http://timmaxwell.org/pages/atx- breakout/index.html](http://timmaxwell.org/pages/atx-breakout/index.html)

</comment><comment><USER113> I made [http://serializer.io](http://serializer.io) 18 months ago and I still use it multiple times a day to follow tech news. It's how I found this thread.

<comment><USER114> looks somehow nice. gonna get on my list

<comment><USER113> Thanks - let me know if you have any queries. The code's here if anyone's interested: [https://github.com/charlieegan3/serializer](https://github.com/charlieegan3/serializer)

</comment></comment></comment><comment><USER115> I built [https://fancyjson.com](https://fancyjson.com) in a day about 5 months ago. I've used it pretty often since. Its a fancy JSON beautifier.

It tries to compact simple objects and spaces all delimiters. It also attempts to align array children. The idea was to produce the most compact, yet still easily readable form of a JSON document.

I was creeped out when trying to find something like this online, because there are many which send your JSON document to the backend instead of doing it on the client.

<comment><USER116> Neat! just tried it with this json and it didn't do a great job:

      {
        "name": "vuejs-guide-test-1",
        "version": "0.0.1",
        "description": "My app",
        "author": "Duncan Lock <email@example.com>",
        "private": true,
        "dependencies": {
          "vue": "^2.0.5"
        },
        "devDependencies": {
          "babel-core": "^6.1.2",
          "babel-loader": "^6.1.0",
          "babel-plugin-transform-runtime": "^6.1.2",
          "babel-preset-es2015": "^6.1.2",
          "babel-preset-stage-0": "^6.1.2",
          "babel-runtime": "^6.0.0",
          "webpack": "^1.12.2",
          "webpack-dev-server": "^1.16.2"
        }
      }

this was the result:

      {
      "name": "vuejs-guide-test-1",
       "version": "0.0.1",
       "description": "My app",
       "author": "Duncan Lock ",
       "private": true,
       "dependencies": { "vue": "^2.0.5" },
       "devDependencies":
       {
       "babel-core": "^6.1.2",
         "babel-loader": "^6.1.0",
         "babel-plugin-transform-runtime": "^6.1.2",
         "babel-preset-es2015": "^6.1.2",
         "babel-preset-stage-0": "^6.1.2",
         "babel-runtime": "^6.0.0",
         "webpack": "^1.12.2",
         "webpack-dev-server": "^1.16.2"
       }
      }

<comment><USER117> That's the same XSS vulnerability that I came to report. Here is a simplified test case:

        {"name":"<b>HELLO</b>"}

</comment></comment></comment><comment><USER118> The most useful one is an invoice generator that looks at a bunch of Markdown files of work I've done for clients (I'm a freelance writer) and generates an invoice from them.

It can either generate an HTML report with various stats and graphs or create a draft invoice in Freshbooks for sending to the client. It used to take me a couple of hours a week to invoice, and now it basically takes no time at all.

I can't really share it because it's got some hardcoded client details, but I'm considering generalizing it into a txt2invoice utility other people can use. It's also massively over engineered because I used it as a learning project for Elixir. Every time I learned how to something new I tried it out on this tool, which means it spins up lots of processes it doesn't need and does fancy stuff with messaging, genservers and supervision trees which are entirely unnecessary, but that's part of the fun.

</comment><comment><USER119> Right now, [https://fromscratch.rocks](https://fromscratch.rocks) a smart and simple autosaving note taking application. It's a rectangle you can type into, and if you use it like that, that's all it is.

But if you want more, you can use note-folding, a whole bunch of text manipulation changes and best of all, it's automatically written to disk (no saving needed ever) in a real text file, so syncing and backup is really simple.

<comment><USER19> Super neat, but all the download links on the site are dead (tag name missing 'v' in 'v1.2.0'). I was gonna' submit a PR, but it doesn't seem to be managed via a public repo.

<comment><USER119> Yeah the site's separately managed from the app. I noticed it after someone filed an issue and fixed it straight away. Thanks :)

</comment></comment></comment><comment><USER120> Jumper ([https://github.com/mpwoz/jumper](https://github.com/mpwoz/jumper))

It's a simple chrome extension to jump between top-level comments on hacker news using the arrow keys.

I've been meaning to publish it to the extension store, but that process looks like it'll take longer than actually writing it did :)

The reason it's my proudest "achievement" is just because it's so _useful_ to me (solves an actual problem)

</comment><comment><USER121> [http://www.betthebill.com/](http://www.betthebill.com/)

It's a simple website that randomly picks someone to pay for the entire bill when eating as a group. But unlike credit card roulette, your odds of paying are proportional to your meal's cost, so your expected value is fair.

I know it's simple, but it was my first foray into javascript and d3 and angular. I am proud of how it turned out.

<comment><USER122> Lol this is awesome, and most importantly, it looks great on mobile too

</comment></comment><comment><USER123> lc, or "List Commands used in this directory". It's a bash_history that's directory specific, because the terminal commands I type are usually directory-specific. It is only like 10 lines of bash, and I got help with the bash, but I'm proud of it and I use it everyday. I think my most common usage is `lc | grep partialCommandIcCantQuiteRemember`

[https://github.com/pconerly/lc-listcommands- bash/](https://github.com/pconerly/lc-listcommands-bash/)

</comment><comment><USER124> I strongly felt the world needed a way for close friends, family, and coworkers to band together in order to anonymously spam someone's phone with giphys on their birthday :-)

[http://birthdaymob.com](http://birthdaymob.com)

It's without a doubt the most enjoyable thing I've done and it came from feeling a little loss of humanity with FB coopting birthdays.

</comment><comment><USER125> I'm proud of a tool that I did to find the visual center of images ([http://javier.xyz/visual-center/](http://javier.xyz/visual-center/)) and one to make random color schemes more cohesive ([http://javier.xyz/cohesive- colors/](http://javier.xyz/cohesive-colors/)). I find those two really useful.

I'm not so proud of a tool that transforms images to pure css ([http://javier.xyz/img2css/](http://javier.xyz/img2css/)) but it's by far my most popular tool ¯\\_(ツ)_/¯

</comment><comment><USER126> [https://chrome.google.com/webstore/detail/youtube- distractio...](https://chrome.google.com/webstore/detail/youtube-distraction- free/jhacjhcmekhmmbgppcnndilcndgjebjf)

I made this because as tutorial youtube lover I got distracted by the youtube "recommended" clickbaits

It simple hides all distraction videos -> simple turn off switch if you have some spare time ;)

wanna use your own ? [https://github.com/franzherzog/youtube-distraction- free](https://github.com/franzherzog/youtube-distraction-free)

</comment><comment><USER127> FAQr - An ASCII GameFaqs reader for Android - 2k + 5 star reviews - 1k + DAU [https://play.google.com/store/apps/details?id=com.faqr&hl=en](https://play.google.com/store/apps/details?id=com.faqr&hl=en) Great for retro gaming! *EDIT - Free with no ads

<comment><USER128> This is something I never knew I needed!

<comment><USER127> Awesome! Hopefully you find it useful!

</comment></comment></comment><comment><USER129> Crab - SQL for the filesystem.

Bash is such a pain because of all the incompatible utilities. Its much nicer just to think about logic than to be searching for command switches and dealing with corner cases like .. file names that contain spaces(!)

Free for personal use, $5 / month commercial

[http://etia.co.uk](http://etia.co.uk)

<comment><USER130> How big filesystems have you queried with it?

<comment><USER129> We've only tested on personal systems so far, just a few TB.

The theoretical limit is around 9PB, but we don't know what performance would be like at this scale.

A one TB spinning disk drive takes about 30 mins to scan, several thousand files per second, and query performance is very good. Most people scan project directories on demand, and the whole disk once a week or so. SSDs are much faster of course.

There is a restriction on the maximum number of files acted on by one query (e.g. moved, deleted, renamed), as the exec() function caches the list of files in memory. On macOS we're ok with tens of millions of files, but the first Windows release, due any day now is 32bit (we're fighting compiler issues), so the limit is around a million files.

</comment></comment></comment><comment><USER131> [https://github.com/gregfjohnson/netnode](https://github.com/gregfjohnson/netnode)

Netnode. It is a little like a unix pipe, a little like netcat, a little like tcpdump. But really simple.

You create a graph of communicating entities with netnode. The terminal nodes of the graph are external data sources/sinks (user input, udp/tcp servers and clients, shell pipes, named pipes, /dev/tty*, etc.) The internal nodes are a mesh of instances of netnode.

It is easy to insert a little instance of netnode anywhere, and have it print the traffic going through it.

I think it turned out really well, and I use it for everything. It feels like "connective tissue" similar to classic Unix pipes, but for the network age.

./netnode -h

        -p/-P:  tcp client/server.
        -u/-U:  udp client/server; client does pings to notify server.
        -k:     stdin/stdout.
        -s:     filename.  works for /dev/ttyS0 etc., named pipes, regular files.
        -X:     tcp proxy; local_server:remote_host:remote_port
        -w:     raw network device interface eth0 etc.  (requires sudo.)

        -i      next interface is input only
        -o      next interface is output only

        -d:     next interface is prefaced with time/direction
        -t:     next interface shows non-printable characters in hex
        -b:     next interface prints data formatted as hex dump

</comment><comment><USER132> I am pretty proud of

[http://gosort.it/](http://gosort.it/)

My business partner and I often needed clients to sort things (features, objectives, pains, restaurants, you name it).

Eventually we built this tool together. You can create a list, sort it, then invite others to sort the same list and create an aggregate sorted list. There's lots we'd like to improve but it's pretty useful right now.

Hidden behind the JS front end is a Clojure sort-api server that provides an API to sort arbitrary data. We've no idea when that might turn out to be useful.

</comment><comment><USER133> Like others have said, I made these for myself, but they have been useful to other people as well.

Search Wikimedia Commons: canweimage.com (300 - 600 searches a day)

Testing flexbox rules: flexbox.help

Googley Eyes Firefox addon: [https://addons.mozilla.org/en- US/firefox/addon/googley-eyes/](https://addons.mozilla.org/en- US/firefox/addon/googley-eyes/)

Can We Image got included in a listicle on Buffer's blog. flexbox.help started getting use after I posted it as a Show HN and it got picked up by HTML Weekly.

</comment><comment><USER134> Obvious throwaway account but 4 years ago went to odesk.com as I had a super simple idea to make an app. I believe spent less than 2 hours paying a developer $50 an hour making the app. Had it up in less than a day.

Couple years later the app has made close to a million dollars with me pocketing about 60% of that and the other 40% to the ad company.

It's one of my favorite projects because it was so simple and literally took less than 2 hours but I was able to pretty much make a 1000x on it which to this day is better than anything I have ever done.

<comment><USER135> _" Obvious throwaway account"_

Why use a throwaway account in this instance?

<comment><USER134> Mostly because the app still brings in money. Anybody with a basic understanding of mobile coding could easily duplicate the app in 30 minutes thus streamlining a bunch of competitors I would rather not have.

</comment></comment></comment><comment><USER60> [http://algebrarules.com](http://algebrarules.com)

It's simple, useful, and I learned a lot while I was building it. And people use it (which is always a plus).

<comment><USER136> Love it. You should add example problems.

<comment><USER60> Thanks :) That's a good idea — each rule has real-number examples, but there's nothing to _solve_. It would be fun to add test problems to use the rule on.

</comment></comment></comment><comment><USER137> [https://github.com/Evizero/UnicodePlots.jl](https://github.com/Evizero/UnicodePlots.jl)

Scientific plotting in the terminal. I didn't come up with the idea of abusing unicode characters in such a way, just fyi.

Example: [https://raw.githubusercontent.com/Evizero/UnicodePlots.jl/ma...](https://raw.githubusercontent.com/Evizero/UnicodePlots.jl/master/doc/img/sin.png)

<comment><USER92> Thanks, this is very impressive. I didn't know about braille unicode characters, very cool.

</comment></comment><comment><USER138> I wrote Open-Publisher: [https://github.com/chrisanthropic/Open- Publisher](https://github.com/chrisanthropic/Open-Publisher) with a focus on easy fiction book creation.

Markdown manuscript input with high quality epub, mobi, and print-ready PDF output.

It's a wrapper (your choice of Rake, Bash, or Docker) combining Jekyll + Pandoc with custom PDF LaTeX templates for print-ready (valid PDF-X1A 5x8 and 6x9) and professional epub/mobi ebooks.

</comment><comment><USER139> [https://wootboard.com](https://wootboard.com)

Draw something and share it.

Like jsFiddle for drawings. In need of a rewrite and mobile support, but pretty useful if you just want to scribble something down and share it. And I like the borderless canvas :)

<comment><USER140> Ah ! This is really cool :) Do you mind if I ask what this is built on ?

<comment><USER139> Thanks. It's just plain JavaScript and some jQuery. It uses SVG so the browser takes on some of the work you'd have to do yourself with canvas, like having the shapes as their own element and detecting mouse events. This also makes it easy to export as SVG (just append .svg to the URL). Server stuff and a small backend runs on minimal PHP and MySQL, no frameworks. The data is stored in a JSON-based format. PNGs are generated from the SVG with ImageMagick. Keyboard shortcuts with jQuery.hotkeys.

Could be more modularized to allow touch input, multiplayer editing, use as a library etc., thus the needed rewrite :>

The endgame for this could be something like [https://www.figma.com](https://www.figma.com). They have collaborative editing, use canvas to completely do their own thing for graphics and React+Redux for the interface. Quite amazing.

</comment></comment></comment><comment><USER141> A tool to make JS bookmarklets:

[https://bookmarkify.it/](https://bookmarkify.it/)

I created this years ago because I wanted a quick way to create bookmarklets. Since putting it online I have had good months in terms of visitors (1000+) and worse (50), but I am still very happy that people keep coming to bookmarkify to create helpful bookmarklets for themselves and others.

By now it has been around longer than 4 years, despite what the banner says.

<comment><USER99> This is great. I've never had the time to learn how bookmarklets work, but your tool just let me make a simple one in under a minute.

<comment><USER141> Thanks a lot for the compliment! It is really great to hear from users. I just created it for myself and it is humbling every time I find out that people simply like it.

</comment></comment></comment><comment><USER142> I don't have a link as it was an internal project but it was a simple ASP.NET MVC app that interfaced with Yubikey (a 2 factor dongle) and Active Directory. It would set the Yubikey password to the Active Directory for a user which would then be used to authenticate users when they logged into the network. It wasn't much work but saved the company about $20k, which was the cost of the commercial version the company was looking into.

</comment><comment><USER143> [https://github.com/bndr/pipreqs](https://github.com/bndr/pipreqs)

I built a utility for python programmers - pipreqs which helps to generate pip requirements.txt file based on imports of any project

</comment><comment><USER144> [https://github.com/jurgelenas/pdfify- server](https://github.com/jurgelenas/pdfify-server) [https://github.com/jurgelenas/node-pdfify- client](https://github.com/jurgelenas/node-pdfify-client)

My little open source app which converts HTML to PDF.

Useful when generating PDF invoices, legal documents. I am using it in my own projects.

</comment><comment><USER145> [https://github.com/geophile/osh](https://github.com/geophile/osh)

Osh (Object SHell) is a python application giving you a set of Linux like commands which can be composed similar to pipes. However, it is objects, not strings, that are passed from one command to the next.

It includes typical shell stuff, listing files and processes; database access, in which queries yield Python tuples; and distributed access, which distributes commands to the nodes of a cluster and then combines the results. For example, to submit a SQL query to each node of a cluster, getting a count on each, and combining the results:

        osh @cluster [ sql "select count(*) from request where state = 'open'" ] ^ f 'node, count: count' ^ red + $

\- osh: Invoke the interpreter.

\- @cluster: Relay the bracketed command to each node of the cluster. The bracketed command returns (node, count) tuples.

\- sql: Submit a sql query (on a cluster node).

\- ^: Denotes piping results from one command to the next.

\- f: For each result from the cluster, run a function on (node, count) which returns just the count.

\- red +: Reduce using +, summing up all the counts.

\- $: Print result on the console.

</comment><comment><USER146> [https://mailgroup.io](https://mailgroup.io) \- Free online mailing list manager

[https://crond.net](https://crond.net) \- Free web cron

[https://ipaddr.dk](https://ipaddr.dk) \- what's my IP?

[https://ent.re](https://ent.re) \- URL shortener that generates mobile type friendly URLs

<comment><USER147> I have been working on a version of the cron thing as well! Good to know there are more people who know this problem exists.

</comment></comment><comment><USER148> I wrote a concurrent, super fast webcrawler for my job with Go (~300 LOC) to get data out of customer sites fast even when they have 1.5 million pages or more.

You can basically filter everything to get a .csv file in the end with the links for the given domain, the source for that links, link number, link depth, timestamp, HTTP Request Codes (200, 404 etc) that fits that filter.

Filters: Number of concurrent http(s) requests, max link number, max link depth, must include path, must include word(s), must exclude word(s), local or global search (for links with path, local means you only search for fitting links on that site and the found sites instead of crawling the whole homepage) etc.

It was my first Go project and I always wanted to do multithreading and Go made it so easy. Can't opensource the code because it's company property.

But damn is it fast if you let it run, one homepage didn't throttle me and I got up to 96 Mb/s (on my 100 Mb/s connection) with set to 2000 connections per second.

DDosed our office wifi a few times before I implemented a token bucket for rate limiting (and sometimes just for fun after that :>).

<comment><USER149> I did something very similar a few years ago, but in c#. I didn't do real rate limiting, just threading configuration and a configurable random sleep; but it got the job done. It was a super fun project to work on.

I can't believe that the open source options are so still so few and far between in this area. There are TONS of great tools for building crawlers, and there are tons of great crawlers built for mirroring a copy of websites. But, there are very few polished crawlers built for simply extracting metadata from pages and getting information about a site.

<comment><USER148> Yep, that's why I've build my own, the existing ones don't give out a list of the links or are super slow. A co-worker made the first one in Python but it was so slow that it took hours (6+ sometimes) to finish a site and I thought "you can do that faster".

Problematic are some sites that don't use <a href="asd.com"> tags because that's what my crawler is looking for.

C# & Elixier & Rust where the the other options I thought about and I want to build the same crawler on these languages (relative easy to do with ~300 LOC) to compare them for network / server / cli stuff but that has to wait till next year.

<comment><USER149> the biggest headache with the c# implementation was the threading. A lot of the out-of-the-box threading structures (pools, etc...) have limitations you might not think about checking for; e.g. you can't set the number of threads lower than the CPU count on the machine with some of the official .net threadPool helpers; you can try, but it will just silently ignore you.

There is some super useful stuff too though that made it easy to write a generic extensible crawler. My implementation ended up supporting separately compiled plugins you could just dump in a 'plugins\' directory, which responded to events and had full ability to manipulate the output pipeline. Do-able in lots of languages, but c# has some formalized helpers around it that make it super easy.

</comment></comment></comment></comment><comment><USER150> "Proud" might be a stretch, but some very small tools I get a lot of use- value-for-coding-time out of and thus feel warm fuzzies about:

[https://github.com/brennen/bpb- kit/blob/master/home/bin/phot...](https://github.com/brennen/bpb- kit/blob/master/home/bin/photocp) \- copy photos from some common camera media locations.

[https://github.com/brennen/bpb- kit/blob/master/home/bin/gif-...](https://github.com/brennen/bpb- kit/blob/master/home/bin/gif-sel) \- wrap Byzanz and Festival to record a gif of a screen region (and tell me what it's doing so I know when to do stuff).

[https://github.com/brennen/bpb- kit/blob/master/home/.sh_comm...](https://github.com/brennen/bpb- kit/blob/master/home/.sh_common#L58) \- an alias for navigating directory history.

</comment><comment><USER151> [http://www.ogjobboard.com/](http://www.ogjobboard.com/)

After getting chew out by my last boss regarding scrapping job post off of oil and gas industry. I created this site to practices what I have learn so far on web scraping with c# by using selenium, phantomjs and htmlagilitypack. Its a site where I scraped job posting from major oil companies.

<comment><USER130> Something doesn't work there. Using Chrome on OSX I'm getting: Server Error in '/' Application. etc.

<comment><USER151> yes, you are correct. I've fix it.

</comment></comment></comment><comment><USER152> [http://direnv.net/](http://direnv.net/) is a language-agnostic shell environment switcher.

I built it years ago because I thought RVM was doing it wrong. It replaces all the ${lang}env switchers on my machine that I still use every day. The best thing is to see users adopting it without me doing much PR and contributing back with useful features.

</comment><comment><USER153> I created [https://jsonip.com](https://jsonip.com) about 6 years ago. Supports several million requests a day at this point.

Also created Helium, [https://github.com/geuis/helium- css](https://github.com/geuis/helium-css), a tool to help frontend devs clean up old CSS.

They're relatively popular.

</comment><comment><USER154> [http://github.com/nishanthvijayan/CoderCalendar/](http://github.com/nishanthvijayan/CoderCalendar/)

Android app and Chrome and Firefox addons that lists live and upcoming programming competitions on sites like Codeforces, Topcoder, Hackerrank, Hackerearth, Codechef etc

[https://play.google.com/store/apps/details?id=com.corphots.c...](https://play.google.com/store/apps/details?id=com.corphots.coderscalendar) [https://chrome.google.com/webstore/detail/coders- calendar](https://chrome.google.com/webstore/detail/coders-calendar) /bageaffklfkikjigoclfgengklfnidll [https://addons.mozilla.org/en- US/firefox/addon/coder-calenda...](https://addons.mozilla.org/en- US/firefox/addon/coder-calendar/)

Has 7k+ users all together :)

</comment><comment><USER155> I recently wrote and was able to open-source [https://github.com/weebly/tinydns-filter](https://github.com/weebly/tinydns- filter). I got tired of using online tools to create individual records that tinydns-data doesn't support, so I wrote a tool to process those "custom" records.

</comment><comment><USER156> Tiny Player - a music player for iPhone at [http://www.catnapgames.com/tiny- player/](http://www.catnapgames.com/tiny-player/) (free). Got tired of using iTunes to "sync" mp3s and watching it fail. Took about 2 months' worth of weekends and evenings, now I use it every day.

<comment><USER130> Really tired of iTunes too. It's tagline should be: "Making simple complex". I'm using OPlayer Lite right now, but may try your app too.

</comment></comment><comment><USER157> Of all the things I've made ( here [https://gen517.com](https://gen517.com)) there are a couple that stand out in hindsight:

[https://zip.gen517.com](https://zip.gen517.com)

Which is a tool so people who don't know anything about programming or fancy excel usage can still do SQL join type things.

And this version of the classic game mastermind, which I use in conversation to make the point that "machine learning" can be tremendously approachable -- the computer here just picks a random potentially correct guess and does very well.

[https://countermind.gen517.com](https://countermind.gen517.com)

And this, which is massively pointless but has gotten more comments than anything else:

[https://gen517.com/lindsey-grahams-get-away-with-ted- cruzs-m...](https://gen517.com/lindsey-grahams-get-away-with-ted-cruzs-murder- simulator/)

</comment><comment><USER158> I have a script that gets a bunch of data and emails it to me and some co- workers every day at 7AM. Stuff includes: high temperature/probability of precipitation for the day, bitcoin price, iTunes/Google play sales/rating values, number of "diff" lines in web pages, number of followers on Facebook/Twitter/Google+. The latter isn't entirely a vanity thing... some co- workers manage multiple social media accounts and it's nice to know if readership is going up or down.

Part of the point was a) to aggregate everything in one report to reduce the temptation of looking at something multiple times per day, b) to avoid visiting multiple pages in order to find all the information, and c) to find changes in things that I may have forgotten about since they rarely change.

I've thought about making it available for others, but it'd take a bunch of work, and I'm not sure what the demand would be like.

<comment><USER116> Neat! IFTTT also does this - you can create whatever events and add and output to a daily/weekly digest email, which is sent at a configurable time, if it has any content.

<comment><USER158> Thanks. :) I've been meaning to look at IFTTT more, but you know, scratch your own itch, etc. I'm not sure if it could do a sparkline like I do, but maybe if you add to a Google sheet or something. (The characters in my example got filtered out, but they look like [https://github.com/sindresorhus/sparkly- cli](https://github.com/sindresorhus/sparkly-cli) )

eg: 12.20 (-1.60) temp

</comment></comment></comment><comment><USER159> [https://github.com/hnarayanan/shpotify](https://github.com/hnarayanan/shpotify)

Shpotify, a command-line interface to Spotify on a Mac. :)

</comment><comment><USER160> I wrote obmenu[1] some time ago, a menu editor for the Openbox window manager.

I'm pretty proud of this simple tool because it eventually made its way to the repositories of all mayor distributions: Debian[2], RedHat, Arch, you name it.

I've received many emails from users, questions, suggestions, bug reports, people offering to translate it in their language... I'm super thankful to all of them (unfortunately I could not answer all of them!).

It's been unmaintained for a while, but it's on my To-Do list to refactor it, clean it up and add some missing features. It's been 10 years so I'm hopefully a better programmer now.

[1] [http://obmenu.sourceforge.net/](http://obmenu.sourceforge.net/) [2] [https://packages.debian.org/de/jessie/obmenu](https://packages.debian.org/de/jessie/obmenu)

</comment><comment><USER161> Built [https://securesha.re/](https://securesha.re/) a few years back, it is:

Secure (browser-encrypted) dumb file storage with self-destruct. By default, it self-destructs on first access. The server can't read your files and it will delete them anyway after a week (or less, if you like).

It's a good way to quickly send a file to someone else and to know if it's been accessed in the interim.

It was really just our own attempt to build something that can do very simple secure file sharing that anyone can use, as an alternative to so many broken practices (such as clearnet emailing sensitive docs).

It's turned into something pretty cool for a few reasons:

1\. We get emails all the time from people who love how simple it is

2\. It's a great testbed for new web technologies; I rebuilt it once using Polymer and intend to rebuild using Elm when I have the time

3\. It's a great testbed for web crypto & webworkers.

</comment><comment><USER162> Just a fun one... a Greasemonkey/Tampermonkey script that removes a lot of the Facebook Suggestion/Trend information on the sidebar of the site when it first loads, replacing it with random pictures from /r/aww (or whichever subreddit you want to use)

[https://gist.github.com/GrahamBlanshard/d7211436088e0159164a](https://gist.github.com/GrahamBlanshard/d7211436088e0159164a)

I fear I'm going to get chewed out for my crap code on this one but I'm really not a webdev... I hacked this together after getting sick of celeb gossip links and trash ads for facebook games. I'd rather get a random pic of a cat or a supercar than irrelevant junk.

EDIT: Pic for how it looks when loaded: [http://i.imgur.com/Yqc2jdY.png](http://i.imgur.com/Yqc2jdY.png)

</comment><comment><USER163> [http://www.SeptaStats.com/](http://www.SeptaStats.com/)

Hits the API for Philadelphia's Regional Rail and displays real-time data on the system as a whole as well as historical data on specific trains and train stations. It's useful to tell, for example, that the evening train I normally want to take home ([https://www.septastats.com/train/573](https://www.septastats.com/train/573)) is almost never on time, for example.

There's more I want to do, such as displaying more detailed stats and train data (on-time percentages, for example). And hopefully get some interest from SEPTA so they can use it to determinate the "biggest offenders" and what can be done about them.

</comment><comment><USER164> My co-founder and I built a desktop app called Woot Agent when we were younger which would tell you when woot.com had a "Woot-Off" [1] sale.

It would sound an alarm every time a new item came up for sale, with a special sound for their highly sought after "Bag of Crap" [2].

It had over 25,000 downloads after its first Woot-Off. Sounds so bizarre in hindsight, but a partner at Polaris Venture Partners asked to meet—he wouldn't say how he found me, but I'm sure Woot Agent was how.

[1] [https://en.wikipedia.org/wiki/Woot#Special_events](https://en.wikipedia.org/wiki/Woot#Special_events) [2] [http://www.woot.com/offers/bag-of-crap](http://www.woot.com/offers/bag- of-crap)

</comment><comment><USER165> Starting a Swiss-German language school in Zurich, Switzerland. Most course materials and the world's biggest dictionary (Swiss-German) is provided online for free.

[http://www.schweizerdeutsch-lernen.ch](http://www.schweizerdeutsch-lernen.ch)

</comment><comment><USER166> Began as a simple Pomodoro timer but is gradually becoming a full task manager - [https://lanes.io](https://lanes.io).

Less proud of making it than I am of the fact that thousands of people use it to accomplish their goals every day, which is neat.

</comment><comment><USER167> I made software that track pour rate of liquid glass at 1800 centigrade using camera and control its pour rate by moving ~1 MW arc electrodes. I was in my teens and a local company need to quick fix it. My first actual earned money. 13 years later, its still working. :D

</comment><comment><USER102> My git-based DNS hosting site is pretty simple, in terms of code, but it is enormously useful to be able to make changes to DNS with a simple git-push and keep a local history:

[https://dns-api.com/](https://dns-api.com/)

In the same vain I put together a little archive for storing bookmarks under revision control:

[https://github.com/skx/bookmarks.public/](https://github.com/skx/bookmarks.public/)

Finally I put together a small archive of tools which seems to be quite popular for reasons I don't fully understand:

[https://github.com/skx/sysadmin-util](https://github.com/skx/sysadmin-util)

</comment><comment><USER168> [https://UpDog.co](https://UpDog.co) hosts websites with Dropbox. Currently making < 1k / m

<comment><USER130> How did you do marketing for this? How 1st users learnt about your service?

</comment></comment><comment><USER169> [http://www.a440.audio/](http://www.a440.audio/) (Warning: plays audio) I wanted a dead-simple tuning fork; I saw the domain was available so I made it. One-click access to A440 from any bookmark.

</comment><comment><USER170> Very niche, but I'm very proud of having made this: [http://kerrick.github.io/mtg-tools/#/playtest- cards](http://kerrick.github.io/mtg-tools/#/playtest-cards)

It allows people to create playtest cards for a strategy card game, so people can test out decks before purchasing cards to play with in a tournament.

I made it because my wife is a Twitch streamer, and she needed a way for the card name to be visible even though the usual printed size is quite small. It ends up looking like this: [https://www.youtube.com/watch?v=3lCQFI9nthE](https://www.youtube.com/watch?v=3lCQFI9nthE)

</comment><comment><USER171> A 3.3v power supply with a 3.5mm audio socket for bypass current measurement. (well perhaps not _most_ proud, but it's cute)

[https://matt.ucc.asn.au/voltbox/](https://matt.ucc.asn.au/voltbox/)

</comment><comment><USER70> A React library called "onclickoutside", [https://www.npmjs.com/package/react- onclickoutside](https://www.npmjs.com/package/react-onclickoutside), for dealing with clicks from outside a DOM node's tree.

Sounds like a simple thing to have, but when I wrote it it just didn't exist. In half a year it's gone from one guy needing a small lib to deal with closing a menu when you click on the page, to a library with loads of optional functionality, fixes and improvements filed by 24 contributor, and over fifteen thousands downloads a day.

It's probably the most successful piece of software I've written to date.

</comment><comment><USER172> thefuck - [https://github.com/nvbn/thefuck](https://github.com/nvbn/thefuck)

I just use it every day and I guess a lot of people too.

<comment><USER173> Did your program show up on Hak5 2111? I saw 'fuck' in Darrens console and it made me go WTF. Now I know what that might of been :).

</comment></comment><comment><USER174> [https://furnisearch.co/](https://furnisearch.co/)

Definitely different from the ones here since it hasn't made me loads of money, but definitely proud of it.

The first web application I ever made, which was actually based on one of those Ask HN threads we had 2+ years go about looking for furniture the fit a specific size. I actually did make a few sales, shockingly.

At this point, it's pretty much dead as I've taken in other projects and independent security consulting engagements. It was extremely useful understanding the entire stack, and I've found it to be something I've been able to use to build a bridge to developers.

</comment><comment><USER175> I'm happy the following two are getting traffic:

\- [ByteSize]([https://github.com/omar/bytesize](https://github.com/omar/bytesize)) (.NET/C#) library which is a utility class that makes byte size representation in code easier by removing ambiguity of the value being represented. ByteSize is to bytes what System.TimeSpan is to time.

\- [PS1 Gen]([http://omar.io/ps1gen/](http://omar.io/ps1gen/)) is a simple bash PS1 generator and reference so you can soup up your command line. I created this after trying to research how to create a cool PS1 string.

</comment><comment><USER176> I wrote this script three years ago to grab screenshots from my networked Agilent oscilloscope at work. Ten lines of Python, but I use it every day. It saves me a ton of time moving screencaps from my scope using USB (ugh). More importantly, it spares me the agony of trying to rename them and classify them in a batch, hours after I took the original capture. Definitely the best junky little tool I've ever made.

[http://cushychicken.github.io/agilent- screencap](http://cushychicken.github.io/agilent-screencap)

I also have some unpublished ones for doing worst case setup/hold analysis in point-to-point DRAM interfaces.

</comment><comment><USER177> [https://play.google.com/store/apps/details?id=com.darshancom...](https://play.google.com/store/apps/details?id=com.darshancomputing.BatteryIndicator)

When Android was pretty new, I got the myTouch (the second public Android device) and was surprised that there was no way to easily see the exact battery level. I'd been a hobbyist programmer for quite some time, and it seemed like a problem I might be able to tackle. The result was Android's first battery indicator app, which remains by far the most-used piece of software I've ever built, with over 8 million downloads.

</comment><comment><USER178> Hint.css - [https://kushagragour.in/lab/hint](https://kushagragour.in/lab/hint) It started as a side project but now is the most used CSS tooltip library on the planet :)

</comment><comment><USER179> It's not totally unique, but I made a simple tool I call "watch" that runs terminal commands on file save. You specify a file glob and a command and it runs the command whenever a globed file changes. Also has a few handy flags. I use it ever day to automate my file save->compile->run workflow. It's amazing how much time you save by never having to up-arrow/enter a terminal after every save. Been meaning to update it to use file hooks instead of polling but it works.

[https://github.com/kctess5/file_watcher](https://github.com/kctess5/file_watcher)

<comment><USER19> For a brief moment I thought you wrote the Unix utility watch. Cool project anyway!

<comment><USER179> Thanks! I had not seen that before but it looks nifty.

</comment></comment></comment><comment><USER180> Nearly every website owner I've worked with is obsessed with users getting 404s from old incoming links. First I wrote a cron to summarize apache logs and email a report, but that involved me building redirects or a cluster of cms changes. Its evolved into a super simple tool to help site owners see user 404s in near real time and setup their own redirects until our team gets around to fixing them. Super simple from a tech pov, but it's completely removed a huge set of annoying tasks from my plate.

Toying around with productizing it as [https://www.404fyi.com](https://www.404fyi.com)

</comment><comment><USER181> [https://bitbucket.org/tscs37/lhm](https://bitbucket.org/tscs37/lhm)

it's a small "webserver" that acts as a sort of proxy between several localhost:<port> applications and a domain name.

You need to modify your /etc/hosts file but then you can access your localhost applications from dedicated domains.

Mostly intended for dev purposes, not really production. Like, you could use it to test your website awesome.example.org as if it was in production on your dev-machine while it really only runs on localhost:9999

It also copies headers, so no problems when using some custom headers either!

(Beware that it uses IPv6)

</comment><comment><USER182> [https://criollo.io/](https://criollo.io/)

I built it because I wanted to able to make websites in Objective-C and I didn't like any of the stuff that existed when I started.

I've learned a lot making it and enjoyed it. I don't know if I would start something like this again. Reading the RFCs and implementing FastCGI and HTTP was a lengthy and tiresome process. I enjoyed it though.

Sure, now you have a bazillion Swift server-side frameworks, but at the time Swift didn't even exist. Call me a dinosaur, but I like ObjC and the Cocoa stack and I think it deserves its place on the web.

</comment><comment><USER183> There are several.

* cfgen, a config files generator that is fed with config templates and parameters to fill them

* CronBuilder, to pull a repository, run building command, and save the results in another repository

* flowmon, which shows bandwith usage of different streams, each defined by BPF filter (a.k.a. "tcpdump syntax")

* sftponly, a shell for jailing in chroot accounts meant for data transfer only (for scp, sFTP, and rsync)

* xmlrpcd and its spiritual successor HarpCaller, RPC daemons for sysadmins

* logdevourer, log parsing daemon

These are just the public ones, the ones that were generic enough to be open sourced. I have few others that are/were too specific to the environment they were written for.

<comment><USER184> sftponly is really nice, needs updating and wider distribution (more packages for more distros).

<comment><USER183> What do you mean by "needs updating"?

And with packages, I disagree. I only use Debian (and have used Red Hat some time ago), so it would be quite troublesome for me to provide package build scripts for anything else. I wouldn't expect any developer to provide packaging for the whole variety of distributions and OSes. But providing a sane build process is enough for anybody to build a package for their OS.

</comment></comment></comment><comment><USER185> A few tiny projects that I feel have provided real value to people. All resulted from scratching my own itch:

* dotenv-safe: [https://github.com/rolodato/dotenv-safe](https://github.com/rolodato/dotenv-safe)

* gitlab-letsencrypt: [https://github.com/rolodato/gitlab-letsencrypt](https://github.com/rolodato/gitlab-letsencrypt)

* Editor for Volca Keys synthesizers: [https://volcaeditor.com](https://volcaeditor.com) (work in progress)

</comment><comment><USER186> [http://countdownmaker.com/](http://countdownmaker.com/)

Create Countdown Timers to an Event in the Future and Share them with others. Includes Timer and Progress Bar.

<comment><AUTHOR> Brilliant. I'd love to see a way to embed the timers on a webpage.

</comment></comment><comment><USER187> This is minor, but I used the Random Everything([https://packagecontrol.io/packages/Random%20Everything](https://packagecontrol.io/packages/Random%20Everything)) sublime package at work relatively frequently. I eventually needed to quickly generate lists of up addresses. I used a small Python script locally for awhile and then finally decided to just make a pull request on the Random Everything package.

It was just cool to be able to contribute to a small package I used a lot at the time.

</comment><comment><USER188> The first thing I ever made and released I'm stilled very proud of. Tiny, just a Sublime Text plugin to copy the relative path to an open file from your project root. [https://github.com/bpicolo/CopyRelativePath](https://github.com/bpicolo/CopyRelativePath)

Up to nearly 2k installs these days! [https://packagecontrol.io/packages/Copy%20Relative%20Path](https://packagecontrol.io/packages/Copy%20Relative%20Path)

</comment><comment><USER189> [https://github.com/alexadam/save-as-ebook](https://github.com/alexadam/save- as-ebook) \- Save a web page/selection as an eBook

</comment><comment><USER149> JsFormat and CaseConversion. I wrote them at a time when a lot of stuff we were building at work wasn't really being used by a ton of people, so it was really nice to produce something that actually got used by tens of thousands of people.

[https://github.com/jdc0589/JsFormat](https://github.com/jdc0589/JsFormat) [https://github.com/jdc0589/CaseConversion](https://github.com/jdc0589/CaseConversion)

</comment><comment><USER190> [http://hellojarvis.io/](http://hellojarvis.io/) is a Messenger bot that reminds you to do stuff. You can phrase time in many ways, which was quite tricky to do: "in 3 hours", "on the 25th", "tomorrow night", "next wednesday" all work.

We currently have almost 25k users and I'm proud of the fact that people really do find it useful. A friend recently mentioned to me that he used Jarvis to remind him about his dentist appointment.

<comment><USER99> this is really cool! the lack of explanation and any privacy statements makes me somewhat nervous though. reminders can be somewhat personal.

<comment><USER190> True, but one could probably come up with codewords for any really personal reminders.

<comment><USER99> I'm not looking for insane privacy, just some reassurance that the engineers are at considering privacy.

</comment></comment></comment></comment><comment><USER99> The things I have made that I am most proud of are:

* [https://standardresume.co/](https://standardresume.co/) \- Started because I couldn't find a resume that I liked.

* [https://amplitudeapp.com/](https://amplitudeapp.com/) \- A more advanced artist radio style playlist maker.

* [http://rediscover.rile.yt/](http://rediscover.rile.yt/) \- Automatically save Spotify discover weekly playlists.

<comment><USER191> I was looking for a Discover Weekly saver for a while, but resorted to using just screencapping the list, and saving the good tracks internally.

One issue with saving a Discover Weekly list to Spotify is that Discover Weekly is generated based on the content in the user's playlists. If you add a bunch of Discover Weekly lists that are 28/30 duds you're going to start reinforcing the system to generate crappy lists.

I think that's why Spotify doesn't allow saving them. They do allow saving of the topical Discover Daily, which reinforces my belief here.

Just thought I'd let you know about the possible issue with your product. Even though I absolutely love it and would use it.

<comment><USER99> I have heard talk of this before, it would be great to get an answer from someone who works at Spotify. I wonder if saving the tracks in the playlist and not creating the backup until the next week would get around that? There is no way they are track all plays, saves, playlists, skips for every user over all of time.

<comment><USER192> No? Tracking all that stuff is trivial. For sure they are tracking plays, I do not see how they couldn't just as easily track saves/skips w/ one log entry.

<comment><USER99> Sorry, i meant that they arent talking all of that into consideration for each weeks playlist -- im sure they are tracking it.

</comment></comment></comment></comment></comment><comment><USER193> [http://node-ping.herokuapp.com](http://node-ping.herokuapp.com) (Repo: [https://github.com/qawemlilo/node-ping](https://github.com/qawemlilo/node- ping)) - This is a very simple tool that monitors the availability of some of my websites and sends me an email if one is down. Hosted on heroku on the free tier, running for 3 years without much maintenance :)

(Edited: removed markdown elements)

</comment><comment><USER194> _Dead By Zombie_. might have been the world's first commercial _true_ Rogue- like. Why? Played in a terminal, looks/works like Rogue, yet I was literally selling copies to customers and promoting it in person at game conventions. might also have been first in Python too: [http://synisma.neocities.org/deadbyzombie.html](http://synisma.neocities.org/deadbyzombie.html) [https://github.com/mkramlich/Dead_By_Zombie](https://github.com/mkramlich/Dead_By_Zombie)

 _The Dread Space Pirate Richard_. a comedy ebook. 1st book on Amazon, 2nd being written. sells copies: [https://reddit.com/r/dspr](https://reddit.com/r/dspr)

 _Software Performance & Scalability Cheatsheet_. free download. geek out on it. revise and expand from time to time: [http://synisma.neocities.org/perf_scale_cheatsheet.pdf](http://synisma.neocities.org/perf_scale_cheatsheet.pdf)

lots more in the distant past. (eg. once wrote a pretty decent clone of Empire Deluxe, but with more unit types, and for Linux. shoutout to @WalterBright!)

my next one might be Maxitize. but we'll see, its very early.

</comment><comment><USER195> In 1997, I wrote MailSend, a commercial command-line SMTP emailer for Windows. It is now free to use, open-source software.

[http://www.mailsend-online.com/blog/mailsend-is- free.html](http://www.mailsend-online.com/blog/mailsend-is-free.html)

There were (and are still) a number of other similar programs with the same name.

It was my first experience in working with users world-wide, conversing with them both electronically and through postal mail.

</comment><comment><USER196> [https://dummyimage.com](https://dummyimage.com)

<comment><USER130> So taking your project as an example, and having Carbon Ads, how much $$$ do you get out of them?

<comment><USER196> I don't pay attention to it and I can't for the life of me figure out how much it earns monthly but there is over $800 in my account. My hunch is $10-$15 a month or so.

I just moved it to a cheaper hosting plan so it's actually turning a minuscule profit now.

<comment><USER130> Nice. I thought the Carbon Ads and Deck Ads require some minimum # of traffic, so I guess you're hitting a lot of visitors on it?

<comment><USER196> About 1K pageviews a month it looks like

</comment></comment></comment></comment></comment><comment><USER197> [https://slackpass.io](https://slackpass.io)

It's the missing invite system for Slack.

Let's anyone create invite pages that can accept payment (monthly, one-time) for access to a Slack community.

It's been a blast to work on. Learned React, Redux, and got into Flow and Tcombs while building it. Interest so far has lead me to realize more people are interested in creating private/paid communities online than I had previously expected.

</comment><comment><USER198> [http://xanderstrike.com/responsive/](http://xanderstrike.com/responsive/)

My responsive demo, resize the screen ;)

Also [https://github.com/xanderstrike/whatui](https://github.com/xanderstrike/whatui), a dirt simple what.cd web interface similar to Couchpotato or Sickbeard, but without the terrible performance and extra features of Headphones.

<comment><USER199> heh - that's awesome :)

</comment></comment><comment><USER200> Built [https://fsterramaker.com/](https://fsterramaker.com/) last year. It generates scenaries for Flight Simulator X using updated orthophotos from several sources. Another very simple tool that I use almost every day (dealing xlsx files): [https://github.com/aritztg/svc](https://github.com/aritztg/svc)

</comment><comment><USER201> [http://antigen.sharats.me](http://antigen.sharats.me)

I'm not the original creator but currently maintaining Antigen: A plugin manager for zsh, inspired by oh-my-zsh and vundle.

Back in the days I made and found quite useful Dumpr: Command line download tool written in bash. [https://github.com/desyncr/dumpr](https://github.com/desyncr/dumpr)

<comment><USER202> The name suggests it's also inspire by pathogen :D

</comment></comment><comment> kris-s I made a very simple CLI util that prints a timestamp and an emoji inside a rectangle, makes separating and scrolling through repetetive terminal output easier. I use it all the time and it's stupid and I love it. [https://github.com/kris-s/learn/blob/master/block.go](https://github.com/kris-s/learn/blob/master/block.go)

</comment><comment><USER203> [https://github.com/k2xl/downtime_monitor](https://github.com/k2xl/downtime_monitor) \- Simple HTTP monitoring that sends a slack message when site is down. Configured all from a yaml [http://recap.work](http://recap.work) \- Chrome extension that shows salary info of people when browsing linkedin profiles [http://facepalm.bogost.com/](http://facepalm.bogost.com/) \- Silly little app that shows a facepalm picture of Georgia Tech professor Ian Bogost and his latest cynical tweets [http://yofigame.com](http://yofigame.com) \- Mobile word game for iOS and Android [http://www.k2xl.com/games/boomshine/](http://www.k2xl.com/games/boomshine/) \- Flash game I made called Boomshine (also on mobile) [http://www.leanbelts.com](http://www.leanbelts.com) \- Six sigma certification for really cheap [http://k2xl.com/games/obechi/](http://k2xl.com/games/obechi/) \- Flash game I made called Obechi (also on mobile) [http://soundcloud.com/k2xl](http://soundcloud.com/k2xl) \- Some EDM music i wrote [http://k2xl.com/games/psychopath/](http://k2xl.com/games/psychopath/) \- Flash puzzle game I made called Psychopath [http://k2xl.com](http://k2xl.com) \- Personal site with a bunch of flash games I made a long time ago

Multiple others I can't remember off top of my head

</comment><comment><USER204> Definitely not as awesome as some of the others I've seen posted here :), but I made [https://github.com/oliver2213/showerthoughtMOTD](https://github.com/oliver2213/showerthoughtMOTD) to spice up my message of the day on servers I log into. Usually makes me laugh and occasionally makes me contemplate things I normally wouldn't think about.

</comment><comment><USER205> I spent way too much time on a tiny menulet that just switches Mac audio from stereo to mono.

[http://charlesism.com/monomenulet.html](http://charlesism.com/monomenulet.html)

It's simple, but I think I think I made it nice to use. A couple minor details I added: you can change its keyboard shortcut directly from the menubar, and it flashes the keyboard backlight to get your attention.

</comment><comment><USER206> [https://github.com/jonbri/ticker-log](https://github.com/jonbri/ticker-log)

I got tired of trying to filter my dev-tools console, so I wrote a little tool that shows log output on-screen with some interactions.

You can play with it here: [https://jonbri.github.io/ticker- log/](https://jonbri.github.io/ticker-log/)

</comment><comment><USER207> Stackie. It's a stack machine texture generator using single character instructions. This lets you produce textures from a very small encoding.

For example, this URL contains code for a flame texture.

[http://fingswotidun.com/stackie/?code=x1x-*5*dx4**y3*p%2By!-...](http://fingswotidun.com/stackie/?code=x1x-*5*dx4**y3*p%2By!-&palette=xy!1%2B*&seed=65)

</comment><comment><USER208> [https://getprelude.net](https://getprelude.net)

A simple, server less, offline-capable web app for practicing reading music. I've always been slow at sight reading, and this lets me plug in a MIDI piano and do drills.

It was also a good catalyst project for getting to play with: React, Webpack, Service Workers, Web MIDI, Web Audio, and the Progressive Web Application paradigm.

</comment><comment><USER209> I built a Windows phone app for PAX that let you have the schedule and maps offline. At the time there was an iOS and and Android app, but not even an unofficial one for Windows. There are more apps now, and PAX has gotten more "professional" a.k.a it has gotten harder every year to access the schedule. This year it wanted me to log in to the Guidebook site to even see it and I decided that was a good cue to stop providing the app so when Microsoft said anything without an age rating would be unpublished i just let it happen (it's less necessary now anyway since internet access at PAX has gone from none- whatsoever to pretty decent). I had several hundred users each year, and people emailed me suggestions and requests. Definitely the only individual project I've ever done that had other people relying on me, and it was harder than I thought (one year MSFT didn't approve my update with the new schedule until after PAX, so then I built an in-app downloader that fetched the schedule data from my server, etc).

</comment><comment><USER210> [https://chrome.google.com/webstore/detail/google- pagespeed-i...](https://chrome.google.com/webstore/detail/google-pagespeed- insights/edbkhhpodjkbgenodomhfoldapghpddk)

Ridiculously simple chrome extension I built while learning how to build one. Tells you the Google pagespeed insights score for the website of current tab.

</comment><comment> chad-autry Probably my largest is [https://github.com/chad- autry/rototone](https://github.com/chad-autry/rototone) Android app for ringtone nad notification tone play lists.

Other than that, I've gotten alot of use out of my dockerized minecraft project [https://github.com/chad-autry/minecraft-server- container](https://github.com/chad-autry/minecraft-server-container)

And more recently, in line with what the OP is looking for [https://github.com/chad-autry/markdown-code- extractor](https://github.com/chad-autry/markdown-code-extractor) is a quick project to extract code from a markdown file(GH READ.md) and create files. I use it to create the yaml files which I otherwise develop/comment straight in the READ.md of [https://github.com/chad-autry/wac-bp](https://github.com/chad- autry/wac-bp)

</comment><comment><USER211> [http://chriswarbo.net/git/warbo- utilities/branches/master/sy...](http://chriswarbo.net/git/warbo- utilities/branches/master/system/inDir) just runs a given command in a given directory, e.g. `inDir ~/Pictures convert MyPhoto.jpg MyPhoto.png`

Really simple, yet I use it a lot, e.g. for remote mounts where Emacs can slow down if I "cd" into it, or in loops `for DIR in submodules/*; do inDir "$DIR" git pull --all; done`

When I used to do Web development, I found [http://chriswarbo.net/projects/repos/chrome-duplicate-tab- de...](http://chriswarbo.net/projects/repos/chrome-duplicate-tab- detector.html) to be super useful. When opening a URL in Chrome, it switches to an existing tab with that URL if there is one.

I also made a simple Chrome extension which let me navigate Drupal test output using the left/right arrow keys. Can't find it now though :(

</comment><comment><USER212> [https://www.codacy.com](https://www.codacy.com)

I've made this because all the companies that my co-founder and I met had scripts glued together in build tools to get code metrics and static analysis.

We ended up discovering a significant amount of people and companies interested in having a nice product constantly running code analysis and linked to Github.

</comment><comment><USER213> A simple wordsearch tool for scrabble players that I wrote twice:

updawg [[https://github.com/martindemello/updawg](https://github.com/martindemello/updawg)] had the distinction of being the only wordsearch tool on the nokia n900. featurewise, it was a clone of lexpert, a popular app that ran on a few other mobile platforms. it was a vala/gtk/hildon wrapper around some open source wordsearch code, and it all just worked. the nice thing was after i wrote i for my own use, another scrabbler bought an n900 and was delighted to find she could get a wordsearch app for it.

varix [[https://github.com/martindemello/varix](https://github.com/martindemello/varix)] is my from-scratch rewrite of the same thing in ocaml, with more powerful searches. it's a linux TUI app so i haven't really tried to interest anyone else in using it, but i use it all the time and i love it.

</comment><comment><USER214> I got tired of filling out timecards so I wrote a simple script to print out my timecard for me (I still double-checked and signed it). Word got around and I added some features to default to your hours/billing numbers from the previous week for people other departments. It was really cool walking past the timecard tray every week and seeing it evolve from the pile of yellow cardstock timecards with a few folded white paper ones (printed from my script) to eventually almost entirely printed ones. It was something that just took me a few hours on a slow week, and probably ended up saving the company quite a lot of time.

Now that I'm doing contracting work, I did the same thing again when I got tired of invoicing from a spreadsheet. Not that generating an invoice is all that hard or time consuming, it's just one of those tasks that takes me a lot of inertia to start, so I would put it off. I'll probably clean up and post the invoicing script on github one of these days.

</comment><comment><USER215> I built [https://www.findlectures.com](https://www.findlectures.com), which is categorized list of lectures and speakers, inspired by the faceted search on Newegg and Amazon, which I wish Youtube had.

It's been a fun project, because I've had to build tools to come up with a lot of quality measures for the dataset.

<comment><USER216> Gary, great work! You could add a bot to post links to lectures in social networks, at least Twitter.

Like one random lecture each day, or the most "active" during the week.

<comment><USER215> Thanks! I like the Twitter idea.

I'm working toward custom entity recognition, which would help in that area. For instance, listing all lectures about a particular programming language, lectures on the history of countries that no longer exist, etc.

</comment></comment></comment><comment><USER217> Hotcold Typing: [https://chrome.google.com/webstore/detail/hotcold- typing/gik...](https://chrome.google.com/webstore/detail/hotcold- typing/gikgnaajhiofmngkodahgpjnpgacmhlc)

Learning Touch Typing with instant visual feedbacks.

I initially made it for Mozilla Dev Derby, and now released as an Chrome App.

</comment><comment><USER218> [http://strlen.com/treesheets/](http://strlen.com/treesheets/) It's a cross between an outliner / spreadsheet / mind-mapper and general note taker. I've spent significantly more hours using it than I've spent programming it, so that's a win in my book :)

<comment><USER219> I used it for a while but I forgot sometimes the key scheme so it got unusable from time to time. Anyway, it's awesome idea!

</comment></comment><comment><USER220> I've just made this interactive periodic table of elements.

It's a periodic table that you can interact with like Google maps or similar. Zooming in progressively reveals more information about each chemical weekend element including images, video and Wikipedia content

[http://periodictablemap.com](http://periodictablemap.com)

<comment><USER221> Really like it :-)

Useful and great example of how to show data.

</comment></comment><comment><USER186> [http://easydecisionmaker.com/](http://easydecisionmaker.com/)

Simple single function tool decision maker. I made this because my co-workers and I always had trouble deciding where to go for lunch. It was kind of a joke but then the traffic kept growing and I now consider it a huge success as a side project.

</comment><comment><USER222> I've built [https://www.defollow.com](https://www.defollow.com)

It tracks your Twitch unfollowers. I would never recommend anybody to care about unfollowers, but I was just always so curious to find out who unfollowed me (and hunt him until he refollows).

I also plan to add YouTube support soon. :)

Edit: It's still a little bit in development.

</comment><comment><USER223> May sound trivial, but for me it's a simple charting tool.

I'm quite big on QA, but it's always been a problem for us, due to lack of tools. We have tons (millions) of time series being churned into proprietary files (neither of which can readily change). We've always had issues analysing these, be it analytically or visually. Two years ago, I wrote a parser in Python, which feeds the data into a browser interface. There, one can select values in a few (<select multiple>) dropdowns - which denote dimensions, compare multiple files across these dimensions, and further manipulate these subsets of data. But the core are simple line charts from these data slices.

The whole thing is under 500 SLOC, it's blazing fast and it lets users cut through our data in no time. It has helped streamline our verification workflows, catch bugs, and allowed our clients to better understand the large amounts of data we send their way.

</comment><comment><USER224> [http://AnthonyDavidAdams.com/memescope](http://AnthonyDavidAdams.com/memescope) The Memescope is a dynamic kaleidoscope that uses images representing leading news headlines as the source material.

[http://PlayTheLoveGame.com](http://PlayTheLoveGame.com) or [http://amzn.to/2fSyUXX](http://amzn.to/2fSyUXX) The Love Game started as an app here on HN, then a crowdfunded card game that ended up in Urban Outfitters, Ritz Carlton Hotels & Amazon.

[http://AnthonyDavidAdams.com/spacejournals](http://AnthonyDavidAdams.com/spacejournals) I took those images from NASA / JPL and created a series of 17 journals as part of a crowdfund. They are super beautiful and really incredible as a full set.

</comment><comment><USER225> Kamlock - [https://www.imralsoftware.com/kamlock](https://www.imralsoftware.com/kamlock)

A software based keyboard and mouse lock for your computer so you can have a small child sitting on your lap (for example during a video call) and not have to worry about them pressing random keys.

</comment><comment><USER226> Pipelines [1]

Me and a couple colleagues initially built devo.ps[2]. We made a lot of mistakes (over-engineered mostly).

We ended up building its successor, Pipelines, as a lightweight Python alternative to tools like Jenkins and it works great so far for us and many of the teams we work with.

It doesn't solve much; we mostly use it to easily trigger Ansible playbooks (through Slack/webhooks or a Web interface) and review failed/successful logs of past runs. But it has a few nice features (like prompting users for values and being easily extensible).

Also you install it with a simple `pip install pipelines`. No DB, no need for a gazillion dependencies, just Python. Done in 2 minutes and running in 5.

1: [https://github.com/Wiredcraft/pipelines](https://github.com/Wiredcraft/pipelines) 2: [http://devo.ps](http://devo.ps)

</comment><comment><USER227> [https://simplesharingbuttons.com/](https://simplesharingbuttons.com/)

Despite the site being free and open source, people still send me a few bucks each month, and very nice thank-you emails. And there are at least 2-3 sites out there that I'm personally a fan of that used it.

</comment><comment><USER228> My chrome extension that overlays Reddit comments when you go to XKCD.com

[https://chrome.google.com/webstore/detail/xkcd%20r/kjfdpkjdj...](https://chrome.google.com/webstore/detail/xkcd%20r/kjfdpkjdjiefealdecjlgeogjbklhmgi)

Not my most impressive feat but I love it :D

</comment><comment><USER229> [http://timedelta.com/](http://timedelta.com/)

My wife and I made it so that I could quickly paste timestamps from various log files and see the relative time between then and now. It also allows for a pretty basic relative time entry, like "2 weeks ago", etc...

</comment><comment><USER230> For me it is Splitons!

Splitons is a simple Offline web application to split costs between friends (www.splitons.com).

It has been a mobile first development using AngularJs, Bootstrap and font- awesome.

Splitons takes advantage of AppCache, websockets and local storage to provide the best user experience possible. There is a clear separation between the Ui and the service thanks to a simple reusable Api.

At this moment, the application takes care of about 150 projects, users are regularly providing feedbacks and thanks email. They really enjoyed not having to install another application and how easy it is to share a project.

Because it is an open source project ([https://github.com/Paraintom/Splitons](https://github.com/Paraintom/Splitons)), one user sent me a pull request that I accepted to improve the Ui some months ago.

Please try and give me a feedback!

<comment><USER230> The website : www.splitons.com

</comment></comment><comment><USER231> I wrote a little tool for working with github gists from the command line, [https://github.com/jdowner/gist](https://github.com/jdowner/gist). I was pretty happy with how it turned out, and pleased that a few people have found it useful :)

</comment><comment><USER232> [https://followww.co/](https://followww.co/)

It shows you all HTTP redirects that a certain URL leads to, with all cookies that are set at each of the steps.

I built it to help my online marketeer colleagues get insights in what is hiding behind short URLs. Before building this tool, they routinely came to me with URLs asking me to trace them. The back-end is a websocket API that returns each step as it discovers it and the front-end is an Angular (1.x) application. I also built a small Chrome extension[1] that adds a followww. context menu item to all links on the web.

[1]: [https://chrome.google.com/webstore/detail/followww/dmpapbgln...](https://chrome.google.com/webstore/detail/followww/dmpapbglnlfchgbbnalpcekkfdddagdm)

</comment><comment><USER233> [http://rulette.org](http://rulette.org)

This is a deceptively simple rule engine that I built for some side projects but has has since been picked up for many things that the big guns would have been overkill for. Clobbered the first version together in less than 5 days too!

</comment><comment><USER234> [https://simplepush.io](https://simplepush.io) Easiest way to send notifications to Android from the command line.

No registration, unlimited notifications, send messages via curl.

I made it because I like simplicity and all other tools were overly complicated (require registration and so on).

</comment><comment><USER235> [https://typed.pw](https://typed.pw) \- Simple way to write online.

<comment><USER130> How do you keep it out of spam?

<comment><USER235> I want it to be spammed. I was creating another site which accepted user input and the problem was: how do I avoid spam? I searched online and found some simple and clever solutions. Typed is a way to test these solutions and a way to come with new ones.

This is not the only reason typed exists obviously...

<comment><USER236> Please expand on why you want it to be spammed?

</comment></comment></comment></comment><comment><USER237> Pottery. A Pythonic way to access Redis, the same way that you use Python dicts. I use it in production, and I hope that it's useful to other people too: [https://github.com/brainix/pottery](https://github.com/brainix/pottery)

</comment><comment><USER238> iStats - [https://github.com/Chris911/iStats](https://github.com/Chris911/iStats)

Wanted a command line tool to show OS X stats. Browse Stack Overflow and a bunch of forums to find that nothing existed. I believe it is now the go-to tool for this.

</comment><comment><USER239> [http://bugfender.com/](http://bugfender.com/) \- A remote debugger for iOS and Android apps.

This is one of the internal tools that we built at Mobile Jazz as we always had the problem of being a remote team and therefore physically detached from our clients. Many times they had problems that we couldn't reproduce on our devices. With Bugfender we now can get access to their device's app logs and figure out what's wrong.

From being initially just a clunky internal tool, Bugfender is now a whole platform with a nice admin interface and many filtering and search options. The result is great and we're having quite some success with as not only we, but also the whole mobile developer community really loves it. And that is what makes us proud! :-)

</comment><comment><USER240> I wrote a SAME encoder that runs in your browser: [https://github.com/aaron- em/same-encoder](https://github.com/aaron-em/same-encoder)

Hardly game-changing, to be sure. I did it for fun and to see whether it was possible at all, and as far as I know nobody actually uses it for anything. But there's something about synthesizing audio a byte at a time and playing it back in a web browser that tickles the same sense of magical possibility that I first experienced as a kid learning BASIC on an Apple IIc. Our industry's grown up a lot since then, of course, and I've grown up with it - but, every now and again, it's delightful to be reminded of what led so many of us into this line of work in the first place.

</comment><comment><USER241> Wrote a plugin for Borland JBuilder (Java IDE from 2002).

It would auto-wrap code comments to a specified column number. It would also auto-wrap on delete or backspace. Still miss it because I want it for existing editors but I'm not interested in learning some random plugin API just to rewrite it.

</comment><comment><USER242> Usenet binary grabber: [http://www.ensisoft.com](http://www.ensisoft.com) ([http://github.com/ensisoft/newsflash- plus](http://github.com/ensisoft/newsflash-plus))

A little history. Back in the day when I started looking into Usenet there were no proper clients for Linux. There was pan but it had huge problems dealing with large volume binary groups. I figured it can't be that hard and started working on my own client which slowly evolved into the current 4th major version. Ten years in the making already :)

The 3x series was the most successful with perhaps around 50-60k installs. In general the field is very competitive and there are several clients for Windows especially.

</comment><comment><USER243> [https://chrome.google.com/webstore/detail/unsubtitle-for- net...](https://chrome.google.com/webstore/detail/unsubtitle-for- netflix/fhallfieahekmidfbaeobbdiajlmapfg/reviews?hl=en)

Unsubtitle for Netflix - Sometimes Netflix force subtitles to appear when you're watching series. I found it really annoying and decided to create this Chrome extension to disable it.

[http://www.vua.sh/](http://www.vua.sh/) \- Vua.sh is a simple website that encrypts messages on the client side and stores only the encrypted message. It generates a link that can only be used once, after clicking on the link and reading the message it is destroyed from the database.

</comment><comment><USER244> Automation to look for secret API tokens in APKs - [https://android.fallible.co](https://android.fallible.co)

Its pretty basic, it reverse engineers code and scans strings.xml and AndroidManifest.xml to look for random strings and print it on the UI.

<comment><USER245> might I ask how you were able to get the APKs from the play store?

<comment><USER246> I've used this Python library [https://github.com/egirault/googleplay- api](https://github.com/egirault/googleplay-api) but I'm not sure if it still works

</comment></comment></comment><comment><USER247> A little tool to check the similarity of two images using PIL, it gives a % difference as well as an diff image:

[https://github.com/nicolashahn/python-image- diff](https://github.com/nicolashahn/python-image-diff)

Also a utility I made for myself to graph my bank transactions. For some reason USAA doesn't have that feature on its site so I made it for myself. Very bare right now but it does want I need it to, which is to visualize my spending. Eventually want to be able to look at transaction names from within the graph.

[https://github.com/nicolashahn/USAA-Transaction- Graph](https://github.com/nicolashahn/USAA-Transaction-Graph)

</comment><comment><USER248> I'm in the process of producing my first physical object and it's exhilarating.

I learned a lot about stainless steel (303, 304, 316, 316L...), CNC machining, stamping, polishing, etc. but what's really cool is designing something on a computer and receive a metal object some time later that does exactly what you hoped it would do.

(For prototyping purposes I first 3D print each design, but the plastic version is waaay less interesting than the metal one.)

Should go on sale in 3-4 weeks; super excited.

\- - -

Some time ago I made a rich text to markdown transformation that runs completely client side; it's available here

[http://markitdown.medusis.com](http://markitdown.medusis.com)

It would probably need a serious face-lift, but it's still used by many, apparently.

</comment><comment><USER249> [https://namegrep.com](https://namegrep.com)

Super-fast lookups and filtering - 50,000 within second(s), support for regular expressions and the derivated ontologies.

People don't seem to get it though (even my co-workers struggle with basic regexps).

</comment><comment><USER250> A simple, multi-threaded IPv4 TCP port scanner for Python 3.5

[https://github.com/jftuga/universe/blob/master/tcpscan.py](https://github.com/jftuga/universe/blob/master/tcpscan.py)

[https://github.com/jftuga/universe/blob/master/bin/tcpscan.e...](https://github.com/jftuga/universe/blob/master/bin/tcpscan.exe)

I like this because it is one stand-alone file compared to something like nmap which has to be installed.

I have installed Python 3.5 on most of the systems I use. Otherwise, I built a portable windows binary with PyInstaller. It can scan a LAN at about 600 ports/sec.

</comment><comment><USER251> Angular CLI Tools

[https://www.npmjs.com/package/angular-cli- tools](https://www.npmjs.com/package/angular-cli-tools)

I started with the official Angular CLI (for Angular 2) back when it was still using system.js and it was painfully slow on a windows machine. I realised that 95% of what I needed the official CLI was for generating components/modules/pipes...etc. So over a weekend a friend and I wrote our own CLI tools that generate components and decided to use a simple webpack seed for our projects. Been using our own CLI ever since for (m)any Angular 2 projects.

I heard that the official CLI has gotten better but I don't have a reason to go down that route any more.

</comment><comment><USER252> Fuzzyurl.

[https://github.com/gamache/fuzzyurl.js](https://github.com/gamache/fuzzyurl.js) [https://github.com/gamache/fuzzyurl.ex](https://github.com/gamache/fuzzyurl.ex) [https://github.com/gamache/fuzzyurl.rb](https://github.com/gamache/fuzzyurl.rb)

It's a library for parsing, constructing, and wildcard-matching of common- style URLs. Aside from being crazy useful, the fun part is that I wrote it for Ruby, Elixir, and JS with the same basic interface. Kind of like writing a poem that works in three languages. :)

</comment><comment><USER253> [https://referhub.co](https://referhub.co)

It's dramatically reduced the amount of annoying recruiter spam that I get. I'm proud that it was initially just a test-bed for new technologies, that actually became useful.

<comment><USER254> Very nice, pity it's extremely invasive. Now, if there was a way to protect email privacy...

</comment></comment><comment><USER255> I built the Chrome extension [0] for Pesticide[1]. It toggles the Pesticide CSS in the current tab making it easier to visualize the placement of elements in the DOM. Useful for front end debugging.

The extensions first implementation was basically just a ternary operator! Now it's got a little more to it, but it's still super simple.

[0] [https://chrome.google.com/webstore/detail/pesticide-for- chro...](https://chrome.google.com/webstore/detail/pesticide-for- chrome/bblbgcheenepgnnajgfpiicnbbdmmooh)

[1] [https://github.com/mrmrs/pesticide](https://github.com/mrmrs/pesticide)

</comment><comment><USER256> [http://bearbushkas.com](http://bearbushkas.com)

I spent most of my free time the last 1.5 years to make this 4-player iPad game together with my brother (developer) and two cousins (graphics).

Considering that it was our first Swift and SpriteKit project (my dayjob is programming business applications in Java), I am pretty proud of the outcome. It even got some reviews (one with a 92% rating!).

The only problem is, we completely underestimated how hard it is these days to get downloads for an old-fashioned "pay once for the whole thing" game. Currently we are in the process of converting it to a free to play model, hoping that more people try it. Wish us luck!

<comment><USER199> That looks awesome - purchasing now :)

For what it's worth, I much prefer the pay once play forever model for good games. It would seem I am in the minority though

<comment><USER256> I hope you have a lot of fun with it and I'm curiuos of your feedback!

As a customer I very much prefer the pay once model, too, but we really seem to be a minority these days.

We sold about 45 copies of the game so far in almost half a year, but when we made it free for a weekend we immediately got 200 downloads without even advertising.

So let's see what happens with free2play. We are going to make all levels but the first one an in-app purchase and maybe a few characters. There will be no consumable IAPs because I hate them with a passion.

All previous buyers are going to keep the full game btw. Apple makes it surprisingly difficult to implement that, but anything else would just not be right.

</comment></comment></comment><comment><USER257> [https://icanhazdadjoke.com](https://icanhazdadjoke.com)

Probably not the best example of a "tool", but it does have an API and a Slack integration. Probably one of the more favorite things I've published.

</comment><comment><USER258> Mods: please rename this title to "Oh god, what have I been doing with my life ?!"

</comment><comment><USER259> Not as cool as most projects here but this is mine: [https://github.com/gempir/relaybroker](https://github.com/gempir/relaybroker)

It is a proxy for irc bots on twitch.tv because connections can die and more than 1 connection will make things possible like going around rate limiting. Also joining a lot of channels at once is made easier so the user of our proxy needs to worry less about what he is sending when, we handle that.

Made it together with 2 friends who of mine we all 3 use it everyday for our bots. It was fun to write and learn go while doing so. I wanna improve it everyday but I'm never sure where or what.

</comment><comment><USER260> I don't have it on this machine, but I wrote a little Python/Tkinter script that wrapped a call to GNU aspell.

Select text, activate script (by shortcut button on bar or global control key combo), and a little window pops up with spelling suggestions.

</comment><comment><USER261> Earlier this year AWS was running a serverless chatbot contest. We built [http://opsidian.ai/](http://opsidian.ai/) a tool to work with AWS from Slack and ended up as one of the finalist.

</comment><comment><USER262> ImageTracer: It's a Public Domain raster image tracing and vectorizing library, outputting SVG.

JavaScript [https://github.com/jankovicsandras/imagetracerjs](https://github.com/jankovicsandras/imagetracerjs) or Java [https://github.com/jankovicsandras/imagetracerjava](https://github.com/jankovicsandras/imagetracerjava) or "Android" Java [https://github.com/jankovicsandras/imagetracerandroid](https://github.com/jankovicsandras/imagetracerandroid)

</comment><comment><USER263> [https://play.google.com/store/apps/details?id=com.TimMendez....](https://play.google.com/store/apps/details?id=com.TimMendez.SpiderSwing)

I made a simple endless swing game for Android with Unity 5. It was my first experience with Unity or C#. I needed units for college, and I was able to have a professor oversee the project for 4 units. I'm so glad he did because I had a ton of fun making it!

Took a quatter to make and I'm pretty proud of it even though the only users nowadays are friends and family members who keep it installed and accidentally open it, and a couple of Russians :)

</comment><comment><USER264> I've mad a few:

Command line tool for OSX to upload images to imgur: [https://github.com/FigBug/imguru](https://github.com/FigBug/imguru)

Copy and paste for Windows command line: [https://github.com/FigBug/ccopyppaste](https://github.com/FigBug/ccopyppaste)

Mac App to set Philips Hue bulbs colour temperature to match the sun: [https://itunes.apple.com/us/app/circadian-hue-for-philips- hu...](https://itunes.apple.com/us/app/circadian-hue-for-philips- hue/id1165687051?mt=12)

</comment><comment><USER21> [http://puns.samueltaylor.org/](http://puns.samueltaylor.org/)

Enter a word, and this site will make up some puns for you based on that word. I'm way more proud than I have reason to be of this.

</comment><comment><USER265> An archive of chrome extensions versions: [https://crx.dam.io](https://crx.dam.io) (I should upload it to archive.org)

Also, this small templating library for python: [https://github.com/mdamien/lys](https://github.com/mdamien/lys)

Also, a chrome extension that display images like firefox do, people seems to like it: [https://chrome.google.com/webstore/detail/center- images/dama...](https://chrome.google.com/webstore/detail/center- images/damadkdlkdhpeeehnobhpeifjnmfkkjg)

<comment><USER266> I really like lys. (I've started to use it for some small bits and pieces and will possibly/probably continue).

<comment><USER265> thanks, I have a lot of ideas planned to make it easier to use, especially for django projects. Would love to get more feedback on how people use it.

</comment></comment></comment><comment><USER267> In 2015 I launched Bitcoin Fax. [https://www.bitcoinfax.net/](https://www.bitcoinfax.net/)

Send a fax, pay for it with Bitcoin. That is all.

I like it (and Bitcoin) because you can transact online without signing up.

</comment><comment><USER268> A very useful, tiny project I made fairly recently is Tamarind:

[http://www.kylheku.com/cgit/tamarind/tree/README](http://www.kylheku.com/cgit/tamarind/tree/README)

Tamarind is a CGI-based web service which manages throw-away mail aliases.

You log in, and manage a list of generated aliases which instantly go into service when created, and out of service when deleted.

It runs on a Debian setup (I use Courier IMAPD + Exim MTA).

Tamarind is written in my own programming language, TXR, without any web framework: it includes all the code for processing requests from Apache, and doing session management with cookies, etc.

</comment><comment><USER236> Not a tool or product, but still sorta kinda. For me this year it's been making:

[http://www.partfiction.com/courses/a-war-on- words/](http://www.partfiction.com/courses/a-war-on-words/)

It's not the most polished-off looking thing in the world, but it gave me an excuse to write a short fiction highlighting the importance of Black Lives Matter. It also allowed me to experiment with Greensock to put together some dodgy ass animations to go with the story. And it meant having to hear my own damn voice, urg, for some of the narration.

Also I learned a ton about BLM while making this.

</comment><comment><USER269> [https://pdfcv.com](https://pdfcv.com) \- a tool for creating a CV/resume online. It has been running for 5 years, without adding any new features and people still find it useful.

<comment><USER99> How are you doing LinkedIn import? We had it at [https://standardresume.co](https://standardresume.co), but lost it when they closed off the developer API.

</comment></comment><comment><USER270> I still use [http://seductiveequations.com/2015/11/09/water- meter.html](http://seductiveequations.com/2015/11/09/water-meter.html) rather often to casually see how much water I've been using. Helped me to discover when a new water timer I installed outside got stuck open. Similarly, I've been able to see through actual data how much water my new low-flow showerhead just saved me right after I step out of the shower. Wish I had more time to improve it, but despite that, it's still remained quite useful.

</comment><comment><USER271> I use Flipboard for my news and RSS feeds, but really hate how Flipboard forces every feed you add into separate "magazines." I like all of my news in one magazine, all my tech news in another, etc. Fed up with it, I whipped up a Django-based app that lets me create collections of feeds and then outputs them into single RSS feeds in a Flipboard-friendly format. I can add and remove feeds in a collection from a simple web interface and see the results in my Flipboard app. It's not one of my most amazing creations, but it scratches a really big annoying itch and works great.

</comment><comment><USER272> I made myself a program that downloaded & organized torrent music files; it was customizable so that %a/%y - %d meant store underneath <artist name>/<year> \- <album name>. It was one of first projects I ever coded, and eventually got to point where main thread would lock up cause I was doing so much processing on it. As anyone who does this kinda work knows, main thread processes graphics, so when it would freeze up for 10-20 seconds I really had no idea what was going on and started doing all this crazy stuff before figuring out how to handle threads.

</comment><comment><USER273> My hakko soldering station doesn't automatically turn off if I leave it on. One time I was leaving town and had to worry about my house fire for the whole weekend. So I made an Arduino/msp430 from spare parts to do just that.

[https://gist.github.com/htruong/bed170c71983dfcc7c0968174aae...](https://gist.github.com/htruong/bed170c71983dfcc7c0968174aaed8e2)

Other than that, I also made a Apple ADB to USB converter so I can use my old Apple Extended keyboard II with my new computer. Hard to believe newer keyboards are worse compared to that one.

<comment><USER274> Do you have any details on the ADB convertor? I have a few old keyboards I'd love to be able to use!

<comment><USER273> Here: [https://github.com/tmk/tmk_keyboard](https://github.com/tmk/tmk_keyboard)

You only need an Arduino Micro Pro (the 5V/16Mhz variant). The cheap ones on eBay work just fine.

</comment></comment></comment><comment><USER275> I made sortable NMR chemical shift data tables for impurities to improve access to this information for chemists and students: [http://nmrs.io/](http://nmrs.io/)

</comment><comment><USER276> BoardingBot [https://boardingbot.boorgle.com](https://boardingbot.boorgle.com) Is a tool I made few weeks ago over 4 days. I started it as a Facebook chat bot which sends TestFlight invitations and then realized it's also worth turning it into a more complete tool which creates a website and invitation request form which automatically sends TestFlight invitations. It was featured in ProductHunt and I was generally surprised with the positive feedback. I'm wondering if it's worth investing more time into it...

</comment><comment><USER277> My top 2 are:

1) Sherlock, a JavaScript natural language parser for entering events that I hacked the bulk of in a particularly productive all-nighter many years ago. [https://github.com/neilgupta/Sherlock](https://github.com/neilgupta/Sherlock)

2) Exceptionally, a super simple Rails API exception handling library that is tiny but has proven very useful on every project I've worked on. [https://github.com/neilgupta/exceptionally](https://github.com/neilgupta/exceptionally)

</comment><comment><USER278> [https://wanderinglunch.com/nyc](https://wanderinglunch.com/nyc) use it to track food trucks around NYC. Very happy it taught me python, nodejs, and now go.

</comment><comment><USER279> Weather Extension - [https://weather.timleland.com/](https://weather.timleland.com/)

I created a Weather extension using DarkSky.net api. I wanted a quick/accurate way to check the weather without ads. I have a Chrome, Firefox and Opera version. Let me know what you think!

Chrome version is most popular: [https://chrome.google.com/webstore/detail/weather/iolcbmjhmp...](https://chrome.google.com/webstore/detail/weather/iolcbmjhmpdheggkocibajddahbeiglb)

</comment><comment><USER280> [https://github.com/samihasan/eskendereyya](https://github.com/samihasan/eskendereyya)

I developed "Eskéndereyya", a comprehensive writing system of Arabic in Latin alphabet to help Arabic learners esp. beginners to improve their reading and writing skills in Arabic without the immediate need to be familiar with the Arabic script.

Please try it out and let me know what you think.

Show HN: [https://news.ycombinator.com/item?id=12956885](https://news.ycombinator.com/item?id=12956885)

</comment><comment><USER281> A couple bash utilities I use daily(ish)

lnks: List, Save, or Instapaper your Google Chrome links from the terminal. It uses a small amount of Applescript, so it is OS X/MacOS only for now. I'm working on getting around this. [https://github.com/unforswearing/lnks](https://github.com/unforswearing/lnks)

aliaser: a tiny directory traversal/command aliasing tool. [https://github.com/unforswearing/aliaser](https://github.com/unforswearing/aliaser)

</comment><comment><USER141> A component like jQuery plugin called Freud for jQuery.

[https://github.com/abuisman/jquery-freud](https://github.com/abuisman/jquery- freud)

I use it so much I nearly forgot I made it myself. With Freud you can apply 'behaviours' to DOM-elements. What this does is that it enables you to work with your DOM-elements in a more object oriented way.

What I use it most for is applying pieces of javascript on the page only when the DOM-elements that I apply freud to are on the page. This way all you get a lot less code in one big js file.

</comment><comment><USER282> Bookmarklets:

• Pretty print JSON: [https://gist.github.com/niedzielski/53c98af986955053aaabcc8a...](https://gist.github.com/niedzielski/53c98af986955053aaabcc8a19a62f39)

• Zoom in on pixel art (disable image smoothing): [https://gist.github.com/niedzielski/63becce4640d28caaec1eaa2...](https://gist.github.com/niedzielski/63becce4640d28caaec1eaa2b9744f90)

For Chromium / Chrome. Short bookmarklets are preferable to extensions for privacy and performance concerns.

</comment><comment><USER283> [http://paulbourke.net/geometry/polygonise/marchingsource.cpp](http://paulbourke.net/geometry/polygonise/marchingsource.cpp)

I wrote back in uni some 20+ years ago. Since then I've seen it copy-pasted, remixed, translated to different languages and integrated into little projects hundreds of times. It's falling out of favor lately. But, there was a time when it seemed like for each implementation of Marching Cubes, there was a 50:50 chance it was a derivative of that file.

</comment><comment><USER284> I wrote a course scheduler for students at my previous university. It doesn't have that many users, but I get a "thank you" every now and then, which is enough motivation for me to keep it updated. In any case, I automated the entire course data update process, so I only need to run a Python script before the start of each semester.

It's running on the Heroku free tier with a cheap domain, so it only costs me a few cups of coffee every year.

[http://jadawil.xyz](http://jadawil.xyz) (sorry for the crappy design!)

</comment><comment><USER285> Workflow automations at continually chip away at friction and speed up everyone's work in three main ways:

\- Bringing notifications into Slack that aren't possible out of the box. This includes some services that only send updates via email, and others that enable webhook subscriptions, which can be parsed, filtered, augmented, and formatted.

\- Creating Slack slash commands that let you do simple things in Slack instead of opening another browser tab.

\- Connecting one service to another behind the scenes, assisting with data centralization for all sorts of downstream benefits.

</comment><comment><USER286> I've recently released a beta platform and API for tools for working with links: [https://0ut.ca/](https://0ut.ca/)

There's currently a Link Shortener, UTM Campaign Builder, Parser and Validators for 15+ RFC implementations for different URI components.

I have a lot of continuing work to do, such as better analytics, a user system, and more tools.

I haven't got any feedback yet, I would love to hear just about anything, it would be encouraging. Feedback about my implementations would be greatly appreciated. Thanks!

</comment><comment><USER287> I created a uuid generator in racket(then called PLT Scheme) after being told to abstract into a library. It was downloaded thousands of times and I never got a bug report. [https://github.com/zitterbewegung/uuid-v4](https://github.com/zitterbewegung/uuid-v4) [http://planet.racket- lang.org/display.ss?package=uuid-v4.plt...](http://planet.racket- lang.org/display.ss?package=uuid-v4.plt&owner=zitterbewegung)

</comment><comment><USER288> Believe it or not, but back in 2000-2001 WAP (Wireless Application Protocol) was "the future" of mobile internet.

I worked at a startup doing mobile games but often business people needed very basic landing pages - so I did the point-and-click Wap Prototype Maker! Screenshot still available here: [http://www.stefan- pettersson.nu/site/wpm/](http://www.stefan-pettersson.nu/site/wpm/)

I remember I was happy drawing the toolbar icons, because it reminded me of working in Deluxe Paint.

</comment><comment><USER289> After making a React app for a hackathon in August, I was surprised I couldn't paste a link on Twitter and see a URL preview, thus began [https://www.prerender.cloud/](https://www.prerender.cloud/) \- middleware that runs your single page app through a chromium browser to generate the HTML markup and return it along with the original JavaScript to the client (so the first browser paint happens quickly from the HTML, then JavaScript takes over after it finishes parsing)

</comment><comment><USER290> [http://ericwood.org/excel2latex/](http://ericwood.org/excel2latex/)

Back when I was in school I hacked this together as a diversion from lab reports and as a convenient tool for myself. You can drag xlsx files onto it and it converts them to LaTeX tables (all done client-side).

Even though it has some really glaring flaws (no numerical formatting support), it has a loyal following of grad students from around the world who find it useful and occasionally email me to say thanks. Feels great :)

</comment><comment><USER291> [https://screensquid.com](https://screensquid.com)

I'm pretty sure this is best quality user session recorder out there. Just gotta work on the marketing bit :)

</comment><comment><USER292> [http://selfcontrolapp.com/](http://selfcontrolapp.com/)

SelfControl - a free Mac focus app that helps users block their own access to distracting websites

<comment><AUTHOR> Thanks for making this. I use it to stop myself trying to score dopamine hits on Facebook.

</comment></comment><comment><USER293> I built a Chrome extension called `Popup my Bookmarks` ([https://chrome.google.com/webstore/detail/popup-my- bookmarks...](https://chrome.google.com/webstore/detail/popup-my- bookmarks/mppflflkbbafeopeoeigkbbdjdbeifni)) to solve my pain from switching from firefox to chrome :)

source code: [https://github.com/foray1010/Popup-my- Bookmarks](https://github.com/foray1010/Popup-my-Bookmarks)

</comment><comment><USER219> I made a localization extension for WPF which can take any source of data and turns it into a switchable localization, which is not possible with stock WPF.

[https://github.com/SeriousM/WPFLocalizationExtension](https://github.com/SeriousM/WPFLocalizationExtension)

I'm pretty proud of it any many users use this extensions, from private to commercial. It's free and open source and I never charged for it (sadly). WPF is now dying and my work will eventually die as well...

</comment><comment><USER294> [https://knife.ai](https://knife.ai), which is an email analytics tool.

I'm proud of it because it's something I've always wanted to use and create.

</comment><comment><USER295> Not as fancy as many of those posted by: [http://landmark- tool.herokuapp.com/](http://landmark-tool.herokuapp.com/)

When I was researching face recognition, I absolutely hated the labeling system that we were given, and couldn't really find anything better (mind you, this was about 6 years ago). So I started building Landmarker. It let you plot points, identify segments, zoom and rotate.

It never served any real purpose besides the few times I've wanted to make vector art.

<comment><USER232> How does it work? What does it do?

<comment><USER295> The premise is to build a json file to represent "parts" of the face.

For example say I wanted to landmark a feature like the image's left eye. Here is a GIF walking through the labeling process. [http://i.imgur.com/63UXkUg.gifv](http://i.imgur.com/63UXkUg.gifv)

I would select "+New Shape" and enter in the name of the shape, in my example "left-eye". This will add the shape to model and enable cross hairs as you drag across the screen. As you click, a landmark point will get added at the XY coordinate you click. I can add as many points to a shape and can add any number of shapes to the model.

Once done, you can select the </> menu item and select "Export Points" to produce something like this: { "url": "[http://landmark- tool.herokuapp.com/img/nic_cage.jpg"](http://landmark- tool.herokuapp.com/img/nic_cage.jpg"), "lefteye": { "0": { "x": 119, "y": 274 }, "1": { "x": 163, "y": 251 }, "2": { "x": 202, "y": 274 }, "3": { "x": 161, "y": 289 } } }

<comment><USER232> Ah, cool! I couldn't figure out how to get in a mode where you can actually place points.

This is actually pretty useful for creating stuff like image maps...

Thanks for sharing!

<comment><USER295> Yeah, that was sort of what I was going for when I started making it; life and work just took over. If I ever have some time, I might add a tutorial explaining how to add things

</comment></comment></comment></comment></comment><comment><USER296> I made: [http://github.com/deviantfero/wpgtk](http://github.com/deviantfero/wpgtk)

An easy to use wallpaper/config manager and themer for GNU/Linux which takes it's colorscheme from the wallpaper and applies it to things like the terminal, tint2, openbox, GTK2/3 and optional config files too, so the color scheme affects all the config files specified. It's compatible with everything that uses written config files and hex colors!

</comment><comment><USER297> [http://upush.xyz/](http://upush.xyz/) (No longer functioning)

I did a web scrapper which auto login to my university portal to detect any changes on news board (like lecturer post a class cancel notice), if change detected it will send a push notification to a mobile app.

Did this app in few weeks because I got pissed by lecturer suddenly canceling class and post the news at last minute. I shared it to my classmates and it jumped to 2200 active users before got shut down.

</comment><comment><USER298> [https://blankslate.io](https://blankslate.io) \- just a blank page you can type on and save your thoughts. I use it every day and love it!

</comment><comment><USER299> A widget that displays basic context sensitive help. I work in payments and we wanted to address user questions without polluting a simple UI and update the content without deployments:

[[https://www.whatthefaq.io/](https://www.whatthefaq.io/)]

A small directory for finding informal household services in Jakarta. Old service, ticking along - still proud of the mobile UI :)

[[http://www.bangarif.com/](http://www.bangarif.com/)]

</comment><comment><USER300> [https://ifcfg.me](https://ifcfg.me)

I know there are a bunch of similar sites outside however I wanted something simple with no ads but all information.

<comment><USER301> this one's really cool, works flawlessly without javascript in my browser, and the various CLIs are awesome!

</comment></comment><comment><USER302> [http://brandonburning.com/warmup](http://brandonburning.com/warmup)

A simple warmup calculator for my workouts. Use it multiple times a week.

[https://safe-savannah-8578.herokuapp.com](https://safe- savannah-8578.herokuapp.com)

When Turntable.fm folded, I was sad. I wanted to learn sockets, so I built this. It's like Turntable, but uses YouTube videos instead of actual songs. Bugs galore, but I use it at work almost every day.

</comment><comment><USER303> Let's Encrypt certs hosted: [https://www.clearalias.com/](https://www.clearalias.com/)

Simple story: I've been involved with a lot of SaaS in my career and unless you're running the latest and greatest, it can be hard to host customer websites on a plurality of custom domains. This just makes that really simple by hosting it for you.

Disclaimer: I posted this earlier today as a Show HN, but posting here as well in case anyone is interested.

</comment><comment><USER304> Recently, this profiler for multi-threaded Unity apps. It's almost the simplest thing that could work, but it's surprisingly effective. I've used it almost exclusively to optimize the hell out of the multi-threaded game I'm working on.

[https://github.com/andy-wood/multi-threaded-profiler- unity/b...](https://github.com/andy-wood/multi-threaded-profiler- unity/blob/master/Profiler.cs)

</comment><comment><USER305> [https://tasklater.com](https://tasklater.com)

Long-term reminders emailed to you. It keeps these tasks out of sight until you need to be reminded.

</comment><comment><USER306> [https://www.quantifiedcode.com](https://www.quantifiedcode.com)

It's a hosted code analysis solution for Python. It tracks code quality issues using our own code analyzer.

We have developed an AST/flow-graph based code analyzer which allows users to write their own code pattern queries using YAML.

BTW I have been working on an OS version for the last four months which I will release soon, if you are interested in helping me please write: firstname.lastname@example.com

<comment><USER130> Are you making any money on it?

</comment></comment><comment><USER307> I made a mobile game in a day from concept to completion:

[https://play.google.com/store/apps/details?id=com.fraserhart...](https://play.google.com/store/apps/details?id=com.fraserhart.spacecaver&hl=en)

[https://itunes.apple.com/us/app/space-beer- cave/id1080186646...](https://itunes.apple.com/us/app/space-beer- cave/id1080186646?mt=8)

</comment><comment><USER308> [http://statenislandferryschedule.com](http://statenislandferryschedule.com)

Proud of it because it's the first basic thing I've built from, mostly, the ground up. It's just basic HTML and uses Materialize CSS for the styling. I hope to learn enough JavaScript soon to add a dynamic component to it which highlights the next departure times for ease of use, so the visitor doesn't have to scroll through every time.

</comment><comment><USER309> [https://github.com/techwizrd/fishmarks](https://github.com/techwizrd/fishmarks)

It's a pretty simple tool that lets you bookmark and jump to directories. It's not that complicated but I use it pretty much constantly and it gives me a strange sense of satisfaction to have a project I can call "done". Everything I want to add to is merely packaging enhancements so that more people can use it.

</comment><comment><USER310> does an autohotkey script count?

        ^':: ;;; (or ^2 for US keybs)
        Send email@example.com
        return

CTRL+@ symbol pastes my email address wherever the cursor is.

</comment><comment><USER311> Disable Facebook's "Seen" function:

[https://chrome.google.com/webstore/detail/facesnoop/kebmejpc...](https://chrome.google.com/webstore/detail/facesnoop/kebmejpcciehlicgipgfinbgdbedeoag?hl=en)

Definitely not the one that gives me most pride from a technical standpoint, but it is used by a thousand people every day and that's more than enough to make me happy about that small hack.

</comment><comment><USER312> Pydash [https://github.com/k3oni/pydash](https://github.com/k3oni/pydash) \- web-based monitoring dashboard for linux in Python and Django .

Created initially for Raspberry PI, but ported to most linux based OSs. There's also a Django app for it [https://github.com/k3oni/pydash-django- app](https://github.com/k3oni/pydash-django-app)

</comment><comment><USER313> [https://play.google.com/store/apps/details?id=com.techstonia...](https://play.google.com/store/apps/details?id=com.techstonia.pokerquiz)

I built PokerQuiz, which is an android app and (as the name suggests) about poker. It generates random cards for you and opponent and you have to guess your chances of winning. It has another "mode" too, but that's a bit too technical.

</comment><comment><USER314> I built a simple habit tracker for groups of friends to hold each other accountable. Although it has no growth, it's been an amazing tool for my friends and I. The app lead a big change in our lives and I am proud of that.

link: [https://itunes.apple.com/ro/app/tribes-build-habits- friends/...](https://itunes.apple.com/ro/app/tribes-build-habits- friends/id1110368803?mt=8)

</comment><comment><USER315> The "Can I Use?" CLI is probably the highest attention per unit of effort project I've done: [https://github.com/sgentle/caniuse- cmd](https://github.com/sgentle/caniuse-cmd)

I also made a firefox extension about 10 years ago that let you restart an animated gif (there's a config option to make them only play once). I was surprised to learn people were still using in FF 3.6.

</comment><comment><USER316> [http://bmanish001.pythonanywhere.com](http://bmanish001.pythonanywhere.com)

I made this simple Instagram image downloader. Just copy image link of any Instagram image and save that in Full HD and size using right click. Still used by many for social media marketing as you can't save images from other's profile on Instagram, only way is to screenshot which obviously reduce the quality of the image.

</comment><comment><USER317> [https://api.microfabrik.com/user](https://api.microfabrik.com/user)

One of the auto generated microservices backend/documentation/playground/sample code all in one sweet pa(cka)ge.

I'm proud of it because it's completely scripted, I can generate/deploy any CRUD Restful microservice in under a minute, it's Lambda powered and multi- tenant cloud-hosted. A mouthful of buzzwords :)

</comment><comment><USER318> Compute for Humanity

[https://www.computeforhumanity.org](https://www.computeforhumanity.org)

It hasn't really taken off like I had hoped, but I still stand by the idea, and I think I really nailed the UX. For something fairly complex there's no account to create, no configuration, no installer, just open it once and you're done. Anything my 95-year-old grandma can use without help is a success in my book.

<comment><USER242> The landing page is confusing, quickly looking at it can't really discern what the page is about. Something about charity, by whom for whom and how? Can't tell, already clicking the back button.

My two cents.

<comment><USER318> Thanks for the feedback! That landing page has gone through a lot of revisions, but definitely can still be improved.

</comment></comment></comment><comment><USER319> [https://github.com/darrell-d/tracker](https://github.com/darrell-d/tracker)

It's a simple time tracker. No cloud BS. It just uses local storage to track how long you've been working on any task.

I still have some features I'd like to add (like a countdown timer and clearing individual tasks), but I'm real happy with it and I've been using it at work to track my project time.

</comment><comment><USER320> I've always felt that an entrepreneur's toughest job is to find just the right prospects and leads for their new business. So, I created a tool to helps people find highly targeted leads and prospects. You can target users based on location, # of followers, twitter bio, and 7 other filters too. Give it shot:

[https://www.find70.com/?t=hnews](https://www.find70.com/?t=hnews)

</comment><comment><USER321> I've build [http://leash.jcubic.pl](http://leash.jcubic.pl) the shell that can be used on shared hosting when you can't install aything. Built using my jquery terminal [http://terminal.jcubic.pl](http://terminal.jcubic.pl) and php if php exec functions are disabled it try to use cgi scripts written in python or perl.

</comment><comment><USER322> st - simple statistics from the command line

[https://github.com/nferraz/st](https://github.com/nferraz/st)

<comment><USER323> Hey! This is great. Another thing that would be awesome would be to have a small histogram (could be oriented in rows rather than columns)!

</comment></comment><comment><USER324> FindIt. It's a simple utility that lets you do find-in-files searches, but with features to require that a file contain any number of terms together, and the ability to exclude files that have an _un_ wanted term. I wrote it for myself and every friend I shared it with ends up pinning it to their taskbar.

[https://findit.codeplex.com/](https://findit.codeplex.com/)

</comment><comment><USER325> [http://yuml.me](http://yuml.me) diagrams as an API.

This was scratching and itch, yet get used by 1000s of people every day.

<comment><USER92> This interesting, any relation to yed and yworks? Are you making money from it? Are uml diagrams the only diagram offered? I had a similar idea years ago, web front end for dot and graphviz. Never acted on it though.

</comment></comment><comment><USER326> Lua Newsletter(still WIP): [http://luadigest.immortalin.com](http://luadigest.immortalin.com)

Merlot (Rapid website builder, WIP): [https://github.com/Immortalin/Merlot](https://github.com/Immortalin/Merlot)

Kloudtrader (Trading platform): [http://kloudtrader.com](http://kloudtrader.com)

<comment><USER327> The signup workflow sends me to luadigest.github at the end, which doesn't work.

Insta-subscribed though, Lua's on my todo list.

(PS. I tried to reply to your previous comment but found you'd deleted it, thankfully found this comment via your account)

<comment><USER326> Thanks for the head's up. Fixed now!

<comment><USER327> Cool! I'm curious though, where does the link go now? I wasn't able to find much else with poking around your domain.

<comment><USER326> It brings you back to the newsletter page. I have a bunch of projects that are still WIP and not quite ready for their own landing pages which is why Lua Digest uses a subdomain and also why immortalin.com does not redirect to a home page. I have been trying to get HTTPS working on the site but CloudFlare's requirement to transfer over DNS control is messing up a lot of site configs so it's currently non-https for now.

<comment><USER327> Ah, cool. Very nice.

Does CloudFlare not interoperate with Let's Encrypt et al? That's not great...

(Also, did you get my email?)

<comment><USER326> Yup!

<comment><USER327> Good to hear :)

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER130> My projects:

\- Sensorama for iOS: it's meant to be an open-source data science platform for obtaining data from your iPhone's sensors. And you get the JSON file with data e-mailed to you (and I get a copy too!).

Install:

[https://itunes.apple.com/us/app/sensorama/id1159788831?mt=8](https://itunes.apple.com/us/app/sensorama/id1159788831?mt=8)

Read code:

[https://github.com/wkoszek/sensorama- ios](https://github.com/wkoszek/sensorama-ios) (main repo)

[https://github.com/wkoszek/sensorama- artwork](https://github.com/wkoszek/sensorama-artwork) (artwork, scripted: generates all JPEGs from cmd line)

I did everything myself: coding and design for it.

\- LastPass for SSH: [https://github.com/wkoszek/lastpass- ssh](https://github.com/wkoszek/lastpass-ssh) You keep your SSH keys protected with a cryptic pass-phrases and you store them in LastPass.

\- Asset toolbox: [https://github.com/wkoszek/asset- toolbox](https://github.com/wkoszek/asset-toolbox) My attempt to improve the workflow with asset on iOS. I've used that multiple times to get all the resolutions/sizes during random moments of weakness.

\- Finite Automata Simulator written in QT/Graphviz: [https://github.com/wkoszek/flviz](https://github.com/wkoszek/flviz)

\- Network Simulator written in C, with visualisation in Graphviz: [https://github.com/wkoszek/kmnsim](https://github.com/wkoszek/kmnsim)

\- Other stuff from my junkyard: [https://github.com/wkoszek](https://github.com/wkoszek) (feel free to let me know what's the most interesting, or fiddle with GitHub stars)

My next target would be to get some paid online projects done and delivered to users, so that I could pay my phone bill with software.

Great thread. Thanks for making it.

</comment><comment><USER328> Universal Beat [0] - When Apple Watch came out I had an idea for showing day & year progress 0-1000.*

Open for feedback!

* I'm aware that Swatch had this for the day only long time ago, it was called `swatch @beats`.

[0] - [https://itunes.apple.com/us/app/universal-beat-different- loo...](https://itunes.apple.com/us/app/universal-beat-different- look/id1146951890?mt=8)

<comment><USER329> Decimal time is cute (albeit not very novel) and makes imho a lot of sense. I'm secretly hoping that maybe on Mars we could end up using millisols for timekeeping.

On the other hand dividing a year into 1000 does seem bit more of a novelty, and not very practical. I suppose it is bit of a reminder that the year is passing, in the sense "oh dear, this year is already 87% done"

<comment><USER328> I also don't think that you can orientate on dates in a decimal manner. With dates it's easier to orientate, but you don't get the exact feeling on progress.

So yes, same as you, when I'm seeing it from time to time I get motivated to do more in the time remaining for the year :)

</comment></comment></comment><comment><USER330> [https://github.com/andDevW/getChromium/blob/master/README.md](https://github.com/andDevW/getChromium/blob/master/README.md)

I made this because I was trying to introduce friends to Chromium for Android and loosing most of them at 'unzip'. It makes installing the official latest build of Chromium reasonably easy.

</comment><comment><USER331> Threw together a shell function to quickly initialise development environments.

[https://github.com/jamesroutley/dev](https://github.com/jamesroutley/dev)

It allows you to quickly switch between different development contexts by:

\- cd'ing you to a particular directory \- opening your text editor \- setting environment variables \- setting up VPNs \- anything else that can be scripted

</comment><comment><USER332> Dealing with old archives with hundreds of thousands of user uploaded images I needed a quick way to test for and take action on image integrity.

I wrote a PHP CLI script to test directories of images for image integrity and log or take action on found issues. [https://github.com/e-ht/literate- happiness](https://github.com/e-ht/literate-happiness)

</comment><comment><USER333> [http://www.triviacompass.com/](http://www.triviacompass.com/)

Aggregation of bar trivia events in your area.

</comment><comment><USER334> [https://github.com/bpowell/brocker](https://github.com/bpowell/brocker)

The place I work at is not ready to use something like docker, so I made a cloneish of docker for us to use. We are still in the early stages of it right now. Brocker is a combination of docker and kubernetes. Sorry for the bad documentation, I'm slowly adding more.

</comment><comment><USER335> [http://alaskabunch.com](http://alaskabunch.com)

A polling tool for quickly getting opinions on logo designs, product ideas, etc. I thought other people might like it too, but 5 months after publishing it I'm still making about 95% of the polls.

The 5,000 app users have now basically become my personal soundboard for ideas, which I'm more than happy to pay for.

</comment><comment><USER336> My calendar Chrome extension has 300 weekly users. It shows all the months for last year, this year, and next year fitted together into one continuous list.

[https://chrome.google.com/webstore/detail/calendar- block/adl...](https://chrome.google.com/webstore/detail/calendar- block/adlgciholbhcgjhkgnkcppodnflfodni)

</comment><comment><USER337> I'm not sure where it would fall, but I've been very satisfied with my blog, [https://junglecoder.com](https://junglecoder.com). For a side project, once I got the kinks out, it's been surprisingly low maintenance, and it holds up to load pretty well. It's not perfect by any means, but it's been pretty handy.

</comment><comment><USER338> * libfaultinj: a fault injection library for testing. [1]

* fuzzpy: a fuzzer for the Python interpreter itself (specifically CPython) [2]

[1] [https://github.com/androm3da/libfaultinj](https://github.com/androm3da/libfaultinj)

[2] [https://bitbucket.org/ebadf/fuzzpy](https://bitbucket.org/ebadf/fuzzpy)

</comment><comment><USER339> Link with context - [https://chrome.google.com/webstore/detail/link-with- context/...](https://chrome.google.com/webstore/detail/link-with- context/ghpdiolckpncfliklbmgiljggbokjban)

Mostly because I wanted to share reddit links with friends, but they didnt make sense without the accompanying title of the post.

</comment><comment><USER340> I built [https://snowpool.org](https://snowpool.org) about 8 years ago. It's used in New Zealand for carpooling to ski resorts. I'm awful at marketing though so while there are US and Canadian resorts, it's not really used.

Still, it's nice to have a project which results in a little less carbon going into the atmosphere :)

</comment><comment><USER341> [https://supermood.io](https://supermood.io)

I wanted to make a quick way to motivate me when I don't feel to work. Pretty simple idea !

But what I'm the most proud is the generating of quotes. So I passed a csv and then, the quotes are generating almost automatically (regarding the author and keyword). Make it really simple to generate 100 quotes+.

</comment><comment><USER342> Buoy visualization site (WIP) that uses raw spectral energy data from NDBC buoys

[https://buoyfinder.appspot.com/buoy/44066](https://buoyfinder.appspot.com/buoy/44066)

Bonus: I made this for my friend and I to log our surf sessions

[https://swellscore-1093.appspot.com](https://swellscore-1093.appspot.com)

</comment><comment><USER343> [https://github.com/olalonde/deisdash#deis- dash](https://github.com/olalonde/deisdash#deis-dash)

I made this in a few days to learn React + Redux and it turns out a bunch of people now use it and have personally thanked me for building it. It's a web UI for Deis (an Heroku like PaaS that runs on Kubernetes).

</comment><comment><USER344> Similar to domainr, but more accurate and faster!

[http://launchaco.com/](http://launchaco.com/)

</comment><comment><USER345> [https://www.hellobox.co](https://www.hellobox.co)

I've been building HelloBox for the good part of last 3 years. Certainly it has been the longest project I've worked on without losing interest and for that I'm quite proud, since I used to jump from a project to a project. Not planning to stop any time soon either!

</comment><comment><USER346> I have been working on a multiplayer game as of recently

[https://puzzlequest.herokuapp.com/](https://puzzlequest.herokuapp.com/)

move with arrow keys, attack with "A"

there's a ton to work on and I've been busy with other things, so sadly the game has taken the back seat. Hopefully I'll be able to put more time into it next month

</comment><comment><USER347> Nothing like as interesting as your other responses, I think, but I got quite into userscripts (eg for Greasemonkey) when Facebook was trying out different kinds of adverts, in the news feed and sidebar etc. Wrote a few little userscripts to stop them showing up. It was nice to regularly spot something I'd made was installed in friends' browsers.

</comment><comment><USER348> I built Eggshell , a BASH script manager for the Mac menu bar. I built it because I really wanted a tool to manage the scripts that start up our dev environment. Got tired of copy pasting them. I'm not a dev, so it took a few days to figure out how to build. Built with Swift.

[http://eggshell.pw](http://eggshell.pw)

<comment><USER349> What resources did you use to learn swift?

</comment></comment><comment><USER350> Create Save Prompt

[https://packagecontrol.io/packages/Create%20Save%20Prompt](https://packagecontrol.io/packages/Create%20Save%20Prompt)

Allows you to quickly save a new file to a location in Sublime Text's input bar by pressing CMD+S, instead of opening the OS dialog which takes a lot longer (especially on OSX).

</comment><comment><USER351> I made to site to teach people how to built the projects that I've built (was on HN two days ago) [https://enlight.ml](https://enlight.ml)

I plan to add more projects to teach people to code in this type of way. I think the best way to learn is to actually build small apps and then altering them to make them better.

</comment><comment><USER352> [https://quantummail.io/](https://quantummail.io/)

At first I wanted to experiment with building a private email server but then thought I might as well build it for others to use, it doesn't really work in decentralizing much, but I thought it would be a start in moving towards secure and private email.

</comment><comment><USER353> [https://github.com/Multicolour/multicolour](https://github.com/Multicolour/multicolour)

Really proud of this, saves a lot of time and people tell me they love using it, if you want a REST API with all the features (OAuth, JWT, multiple databases, etc) without the maintenance, it's for you

</comment><comment><USER354> [https://github.com/alanbernstein/treemonger](https://github.com/alanbernstein/treemonger)

A python clone of an old disk space visualizer that I used before I migrated away from windows. Nobody else has used mine, and it's very much a work in progress, but it works and I use it frequently.

</comment><comment><USER355> [https://github.com/mike-schultz/materialette](https://github.com/mike- schultz/materialette) I made this color palette of material design colors that lives on your OS menubar. I frequently use material design colors, so having it always within reach is a nice time saver.

</comment><comment><USER356> [http://hnlive.tk](http://hnlive.tk)

I made this because every time I decide to post something on HN, I hang on for a moment making my mind up on whether it's the right time to post on HN.

So, I made this live visualization, showing activity levels on HN. Now there's this data driven decision instead of a vague hope.

</comment><comment><USER357> On one map the road was straight, on another it was curved. That's why I made [http://comparemaps.drona.ro/](http://comparemaps.drona.ro/) to easily compare online maps.

It turns out that the curved road went around the hill, while the straight road was a newer one, over the top of the hill...

</comment><comment><USER358> Quickview for YouTube! Allows you to quickly view videos from your subscriptions feed page without any clicks.

[https://chrome.google.com/webstore/detail/quickview-for- yout...](https://chrome.google.com/webstore/detail/quickview-for- youtube/jfocolikmfgljlbblhgpkcjlpehnapkm)

</comment><comment><USER359> Good question-- I'd say Nymeria ([https://www.nymeria.io](https://www.nymeria.io)) at the moment, mostly because it's something I took from start to finish (nothing is ever finished), but you probably get the point.

It's easy to be proud of things you take all the way. Congrats to everyone!

</comment><comment><USER360> I use my simple little command line tool filewatcher to autorun tests. You supply it with file patterns and shell commands to be run when files matching the patterns is updated, added or deleted. It's available via gem install filewatcher. It was a great milestone when most of the code was from other developers pull request.

</comment><comment><USER361> [http://opensharecount.com](http://opensharecount.com)

Restores the little counter next to Twitter's "tweet this" button that shows you how often your article has been tweeted. Also available as drop-in replacement for Twitter's old undocumented API endpoint that provided this info.

</comment><comment><USER362> It's a very, very simple thing, and needs updating, but my filter bubble busting Twitter bot is something I'm quite proud of.

[http://www.strangecompany.org/how-to-fight-the-filter- bubble...](http://www.strangecompany.org/how-to-fight-the-filter-bubble-new- twitter-app-thing/)

</comment><comment><USER363> My company put this together and it seems to get some love on github: [https://osrec.github.io/currencyFormatter.js/](https://osrec.github.io/currencyFormatter.js/)

Originally built to help an internal project but we later open sourced it. It's great to see the stars go up!

</comment><comment><USER364> [https://github.com/bazurbat/spawn](https://github.com/bazurbat/spawn)

A small script to ease chrooting (or docker running) into a development environment with usual set of workarounds (toggleable) like passing virtual filesystems, SSH/X11 env, home directory, etc.

</comment><comment><USER365> FinBot - a free chat bot that answers the question "what should I do with my money" after a few questions. It'll tell you how much of your paycheck to allocate to your emergency fund, loans, IRA, 401k, and investments.

[http://www.yourfinbot.com](http://www.yourfinbot.com)

</comment><comment><USER366> [http://glogg.bonnefon.org/](http://glogg.bonnefon.org/) a fast log browser born of my frustration looking for patterns and trying to understand bugs from huge logs. It has become not-so-tiny over the years and I see it pop up in a lot of unexpected offices.

</comment><comment><USER367> Umbrella App: Simple digital and physical security lessons for people who travel, activists, aid workers and journalists:

[https://play.google.com/store/apps/details?id=org.secfirst.u...](https://play.google.com/store/apps/details?id=org.secfirst.umbrella)

</comment><comment><USER368> I have a scripts repository on github served as a collection of years of scratching my own itch: [https://github.com/fishy/scripts](https://github.com/fishy/scripts)

They are mostly python and shell scripts (with one PHP), and most of them are still useful today :)

</comment><comment><USER369> [https://github.com/adnanh/webhook](https://github.com/adnanh/webhook)

Simple, yet powerful bridge between http request and shell commands. Useful for running build or deployment scripts, and stuff like that on incoming webhooks. (i.e. github, bitbucket...)

</comment><comment><USER370> I combined the best saliency detection frameworks with a aperture kernel to emulate depth of field and bokeh on iPhones with only one camera. (The app is free with watermark [https://appsto.re/se/c3lxfb.i](https://appsto.re/se/c3lxfb.i) )

</comment><comment><USER371> [https://github.com/bradlys/monochromatic- panda](https://github.com/bradlys/monochromatic-panda)

Google Chrome Extension to download YouTube videos. It was growing in popularity quite well at one point. It still works and gets notice. I use it frequently.

</comment><comment><USER372> A small utility to colorize diff from standart input. Uses PyGments and opens a webpage served on localhost.

Very simple but I use it daily.

[https://gist.github.com/Antoine- Lassauzay/7e0732b6aa272d6946...](https://gist.github.com/Antoine- Lassauzay/7e0732b6aa272d694622)

</comment><comment><USER373> On behalf of my friend: [https://autono.ml](https://autono.ml)

It is a wrapper over DuckDuckGo which redirects all searches without bangs to Google. It also changes the bang operator (!) to the open square bracket ([) because it is easier to type.

Very simple but effective time saver!

</comment><comment><USER374> [http://youtuberanktracker.com](http://youtuberanktracker.com) It's a simple tool to keep track of YouTube video rankings by a keyword. I found it difficult to find a simple service that didn't cost a significant amount of money.

<comment><USER375> Nice. Is there a way to see list of the keywords for which a video makes, say, the top 100 results?

<comment><USER374> No, there's no way for me to determine that within a scope of this application. You can essentially see that already via search analytics on YouTube for your videos, but you have to do some digging.

</comment></comment></comment><comment><USER376> Flour: [http://ricardo.cc/cake-flour/](http://ricardo.cc/cake-flour/)

A build tool predating js modules, grunt, ES6. While it hasn't been touched for years, I still go back to it from time to time because it's so simple to use.

</comment><comment><USER377> [http://www.responsivetester.net](http://www.responsivetester.net)

Not sure it's the project I'm most proud of, but as far as a simple tool I use everyday, this is it.

One reload shows you the site in multiple sized iframes, so you can quickly test breakpoints.

</comment><comment><USER378> [http://JuicyCanvas.com](http://JuicyCanvas.com)

We enable anyone to easily create their one-of-a-kind Art, T-shirts, Lifestyle products via "Remixing" Copyrighted works. Products are printed on-demand. No minimums.

Think "Forking" for IRL design.

<comment><USER378> Example: you can create your very own $10 FUCK TRUMP T-shirt : [http://juicycanvas.com/anonymous/gallery/products/fucktrump/...](http://juicycanvas.com/anonymous/gallery/products/fucktrump/?shared_id=84428)

use coupon: "FUCKTRUMP" to get $25 off.

</comment></comment><comment><USER379> Just Read: [https://github.com/ZachSaucier/Just- Read](https://github.com/ZachSaucier/Just-Read)

It's a simple Chrome extension to help put just the actual web article content into a customizable and distraction-free layout.

</comment><comment><USER380> [https://Timerdoro.com](https://Timerdoro.com) \- A productivity timer where you can build your own timers to work for Pomodoro, eye strain, GTD, meetings, whatever. Averages about 50 visits/day, with half being repeat users.

</comment><comment><USER381> I fixed my prediction market last weekend: [https://github.com/qznc/prema](https://github.com/qznc/prema)

It used Mozilla Persona for authentication, which is now gone. Switched to Github OAuth, which went surprisingly well.

</comment><comment><USER382> [https://www.kaputniks.org/passgen/gen.php](https://www.kaputniks.org/passgen/gen.php)

Basic, but my first dive into krypto and security. Droped it a while after. Not that interesting. Still using this link for random pwds.

</comment><comment><USER383> [http://launchaco.com/](http://launchaco.com/)

I hate how long it takes me to find a name for my new projects so I made launchaco. It's super simple but has saved me so much time when ever exploring names for new projects.

</comment><comment><USER384> [http://puretea.co](http://puretea.co)

Answer a quiz, discover new tea

</comment><comment><USER385> Observideo, annotating videos tool for social sciences students. The norm is either excel or very costly software, this simple tool saves hours of manual tagging. [https://observideo.com](https://observideo.com)

</comment><comment><USER386> [https://github.com/charlesdaniel/s3_uploader](https://github.com/charlesdaniel/s3_uploader)

It's supposed to be a simple S3 file uploader GUI for non-techy people... 'proud' is questionable :)

<comment><USER387> So uh... general curiosity here. How often do people bring up 'the devil went down to georgia' to you?

<comment><USER386> Only every other week, much less often than they talk about that proxy app of which I shall not name.

<comment><USER387> Oh wow. I wasn't aware of it... this is cool.

</comment></comment></comment></comment><comment><USER388> [http://diff.so](http://diff.so)

It's a simple diff-as-you-type tool. I realized that I often had two strings (test output, code samples, etc.) and wanted to compare them in as few keystrokes as possible, from any computer.

</comment><comment><USER389> Not really proud as I just hacked other people's work together to make it, but I use it often when cooking pasta :)

[https://www.simongriffee.com/pastaclock/](https://www.simongriffee.com/pastaclock/)

</comment><comment><USER390> [https://www.hearingaidknow.com/audiogram- creator](https://www.hearingaidknow.com/audiogram-creator)

This tool allows people to record hearing test results. Gets quite a lot of use from professionals and academics.

</comment><comment><USER391> I wrote a cloc (count lines of code) competitor in rust that's pretty fast: [https://github.com/cgag/loc](https://github.com/cgag/loc) (turns out perl is pretty easy to beat).

</comment><comment><USER392> [https://chrome.google.com/webstore/detail/ccfeljbgeogamkgilf...](https://chrome.google.com/webstore/detail/ccfeljbgeogamkgilfkibiaenpdpbldb)

A simple google chrome extension for UFC fans.

</comment><comment><USER393> Here's my simple contribution.

A hyper specific tool, to be sure, but useful if you are trying to code sign Qt apps on the Mac.

[https://github.com/brossi/qt-codesigner](https://github.com/brossi/qt- codesigner)

</comment><comment><USER394> A Google Calendar-powered in/out board for our office, that replaces the magnet and whiteboard system that we used to have.

[https://github.com/xd1936/inout2](https://github.com/xd1936/inout2)

</comment><comment><USER395> [https://github.com/MauriceGit/Repeat_History](https://github.com/MauriceGit/Repeat_History)

Use it daily when working with Linux to execute old commands as alternative to ctrl+r, AWESOME tool :)

</comment><comment><USER396> [http://datafart.com](http://datafart.com)

When I was learning Go a few years ago, I build a simple way to generate line graphs from the command line by piping to a cURL command. A few people still actually use it.

</comment><comment><USER397> [https://www.storeslider.com](https://www.storeslider.com)

I got bored of trawling eBay so decided to make my own tool to make it faster. StoreSlider has been going for a few years now and has been really useful.

</comment><comment><USER398> [https://www.hireloop.io](https://www.hireloop.io) \- Put an end to job appliant overload, with clearer 2-way communication between you (the hiring manager) and your applicants. No more ghosting.

<comment><USER130> How much are you making out of it?

</comment></comment><comment><USER399> Perhaps not proud, but written in no-time and got quite popular:

[https://wiki.centos.org/PackageManagement/Yum/Priorities](https://wiki.centos.org/PackageManagement/Yum/Priorities)

</comment><comment><USER400> Meta Meme [https://appsto.re/us/iwO9fb.i](https://appsto.re/us/iwO9fb.i)

Really simple but fun meme maker. It makes 'new style' memes, as opposed to the old image macros on Reddit.

</comment><comment><USER401> [http://www.nuggetsapp.com/](http://www.nuggetsapp.com/)

It helps you remember the things you read and learn by sending you timely email reminders based on spaced repetition (memory theory).

</comment><comment><USER402> [http://sourcecast.io/](http://sourcecast.io/)

Lets you share the content of a text file and stream changes to everyone who's watching.

Useful for live coding demos, teaching programming, etc.

Works without installation.

</comment><comment><USER310> ok, stretching things a little, but Poe ([http://getpoe.com](http://getpoe.com)) started out as a single-function tool - a distraction free writing app, for the windows store, back in 2012 when there were none. It was basically just notepad with a hidden interface back then.

Now it has word-count goals, writing timers, built in resources and custom theme support. I'm working on a follow up with lots of incremental improvements and new features.

I'm proud because people love it. They give it amazing reviews that I feel like I don't deserve. People are super nice about it.

</comment><comment><USER403> Clips safeway digital coupon with simple bookmarklet [https://github.com/nishnet2002/Safeway-Just- for-u](https://github.com/nishnet2002/Safeway-Just-for-u)

</comment><comment><USER404> I built a cuckoo filter library in Java that nobody uses :) [https://github.com/MGunlogson/CuckooFilter4J](https://github.com/MGunlogson/CuckooFilter4J)

</comment><comment><USER405> [http://servpaid.com](http://servpaid.com)

I wanted a simple frontend for Stripe to charge whatever amount. As a web designer and developer this is what I use to get paid, work as a charm.

<comment><USER130> Are you making money on it?

</comment></comment><comment><USER406> [https://concorde.io](https://concorde.io) \- We help you find the cheapest flights to hundreds of destinations worldwide, ranked by cost per mile, with just a few clicks.

</comment><comment><USER407> [https://addue.com](https://addue.com)

Online marketing tools - conversion tracking, etc. Rather unique in the way these as are defined as "rules" which can be concatenated.

</comment><comment><USER408> An in-terminal interface for performing polynomial fits of a small number of data points. I use it for calibrating gamma-ray detectors, and so it has lists of the energies of some common calibration sources.

</comment><comment><USER409> [http://www.voiceclonr.com](http://www.voiceclonr.com)

Text to speech engine I built a while back. It was a fun project because I got to do some front end programming with React.

</comment><comment><USER410> Cookie-banner, a small, customizable JS-based cookie-info banner for complying with EU cookie law: [http://cookiebanner.eu/](http://cookiebanner.eu/)

</comment><comment><USER411> [https://npm-stat.com](https://npm-stat.com)

It lets you look up download statistics for packages on npm. You can pick a date range, or aggregate all downloads for an author.

</comment><comment><USER412> Genius Scan ([http://dl.tglapp.com/genius-scan](http://dl.tglapp.com/genius- scan)) because it helps millions of people save some time every month.

</comment><comment><USER413> We're a bunch of web devs out there doing "JavaScript code-golfing", for fun. The goal is to make mini apps, or mini-games, with the smallest possible source code.

Here are some handy apps / cool demos that we've made: (the full list is here: [https://gist.github.com/xem/206db44adbdd09bac424](https://gist.github.com/xem/206db44adbdd09bac424))

\- [https://github.com/xem/miniSpeechSynthesis](https://github.com/xem/miniSpeechSynthesis) (73b+ speech synthetizer)

\- [https://github.com/xem/miniSpeechRecognition](https://github.com/xem/miniSpeechRecognition) (100b+ speech recognition)

\- [https://github.com/codegolf/period1k](https://github.com/codegolf/period1k) (1kb periodic table)

\- [https://github.com/xem/miniPi](https://github.com/xem/miniPi) (compute Pi in ~256b!)

\- [https://github.com/xem/MiniRegexTester](https://github.com/xem/MiniRegexTester) (170b regex tester)

\- [https://github.com/xem/miniBookmarklets](https://github.com/xem/miniBookmarklets) (tiny bookmarklets)

\- [http://xem.github.io/MiniShadertoyLite/](http://xem.github.io/MiniShadertoyLite/) (512b shadertoy clone)

\- [http://xem.github.io/MiniShadertoy/](http://xem.github.io/MiniShadertoy/) (1kb shadertoy clone)

\- [http://xem.github.io/miniBeautifier/](http://xem.github.io/miniBeautifier/) (1kb js beautifier)

\- [https://github.com/xem/miniUnicode](https://github.com/xem/miniUnicode) (Unicode slideshows in 64b and up)

\- [https://github.com/xem/miniKeyCode](https://github.com/xem/miniKeyCode) (JS KeyCode finder in less than 128b)

\- [http://xem.github.io/miniJSperf/](http://xem.github.io/miniJSperf/) (a JSperf clone in less than 300b)

\- [https://github.com/xem/sheet](https://github.com/xem/sheet) (a spreadsheet app in 221 bytes)

\- [https://github.com/xem/hex](https://github.com/xem/hex) (hexadecimal viewer and editor in 243+ bytes)

\- [https://github.com/xem/miniURI](https://github.com/xem/miniURI) (file-to- dataURI converter in 99 bytes)

\- [https://github.com/xem/miniCodeEditor](https://github.com/xem/miniCodeEditor) (HTML/CSS/JS editor in 156+ bytes)

\- [https://github.com/xem/braille-art](https://github.com/xem/braille-art) (drawing with braille on Twitter in less than 1k)

\- [https://github.com/xem/miniMinifier](https://github.com/xem/miniMinifier) (HTML/CSS/JS minifiers in 128+ bytes)

\- [http://js13kgames.com/entries/26-games- in-1](http://js13kgames.com/entries/26-games-in-1) (26 games in 13kb)

<comment><USER130> Very nice. I'm going to star all of these. Reminds me my CPU model in 60 lines of code:

[https://github.com/wkoszek/cpu60](https://github.com/wkoszek/cpu60)

<comment><USER413> Cool! I'm also making a tiny x86 emulator :)

</comment></comment></comment><comment><USER414> A simple electron based font/glyph viewer.

[https://github.com/Pr0x1m4/CharacterMap- Desktop](https://github.com/Pr0x1m4/CharacterMap-Desktop)

</comment><comment><USER415> [http://wtsic.com](http://wtsic.com) What time should I call? - A simple tool to help convert your client's time zone to your time zone.

</comment><comment><USER416> I have a thing that puts my RSS feeds into an IMAP folder. Not "emails them to me", but actually connects as an IMAP client and stores them in a folder that's not my inbox.

</comment><comment><USER417> [https://bitwarden.com](https://bitwarden.com) \- Free, open source password manager for iOS, Android, Chrome, Firefox, Opera, and the web.

</comment><comment><USER418> [http://www.madmapper.com](http://www.madmapper.com)

It's a video mapping application that started as a super simple tool, this is why artist love it.

</comment><comment><USER419> [http://qboconverter.com](http://qboconverter.com)

I created it because I use Quickbooks a lot and many banks don't support the QBO file format.

Small, simple and free

</comment><comment><USER420> I built a simple CIDR/IP range calculator as an exercise learning React, came out very nicely I think

[http://cidr.xyz/](http://cidr.xyz/)

</comment><comment><USER421> I'm working on [https://appure.io](https://appure.io) \- tool to generate app store/google play screenshots for mobile apps.

</comment><comment><USER422> [https://virwire.com](https://virwire.com)

I'm chronic news junkie and wanted a perpetual drip of viral news on my phone. Addiction satisfied :)

</comment><comment><USER423> [https://slashtz.com](https://slashtz.com) Natural language time zone converter/calculator. Works with web, Slack and HipChat.

</comment><comment><USER424> [http://cliq.at](http://cliq.at)

it provides the possibility to easily visualize internal informal networks. Especially simple using mobile phones.

</comment><comment><USER425> A ridiculously simple personal wiki: [https://github.com/martinpllu/wik](https://github.com/martinpllu/wik)

</comment><comment><USER426> [http://cinetrii.com](http://cinetrii.com)

A search engine that attempts to find thematic lineage between films. Warning: not mobile friendly.

</comment><comment><USER427> [http://woofjs.com](http://woofjs.com)

WoofJS is a simple JS canvas library and IDE I built for my students so they can learn JavaScript.

</comment><comment><USER428> [http://lalo.li/](http://lalo.li/) (simple voice message service) - <USER2> mostly offline in a hut in bolivia

</comment><comment><USER429> Export Font Awesome to inline image or mouse cursor

[https://beryl-seed.hyperdev.space/](https://beryl-seed.hyperdev.space/)

</comment><comment><USER430> A simple timer. The colors represent an hour block of time. It's designed for your peripheral vision, put it on a secondary screen. Just drag or use the keyboard.

</comment><comment><USER431> ftfy (fixes text for you): [https://github.com/LuminosoInsight/python- ftfy](https://github.com/LuminosoInsight/python-ftfy)

Auto-detects Unicode mistakes (particularly mojibake), and if there's enough information left to fix them, it fixes them.

Particularly useful for Web scraping and dealing with Unicode that was incorrectly exported from Excel (which is nearly all Unicode exported from Excel).

</comment><comment><USER432> Simple "product", though the utility is strictly limited: [http://www.ipaidthemost.com/](http://www.ipaidthemost.com/)

Pay more than the person before you and you get... to be the person that paid the most. That's it. Well, you get a message on the front page along with your name, but still.

People tend to react positively to it, though I can't for the life of me figure out how to market it. I've tried Reddit/Facebook ads, mentioning on relevant Subreddits and such, and nothing has really taken off. Maybe someday I'll figure it out.

</comment><comment><USER433> Wikifeedia - A newsfeed for Wikipedia.

[http://www.vishnuks.com/Wikifeedia/](http://www.vishnuks.com/Wikifeedia/)

</comment><comment><USER434> [http://www.easele.com](http://www.easele.com)

This is something I am working on now. Simple graphic tool for adding text to images.

</comment><comment><USER435> [https://expiryalerts.com](https://expiryalerts.com)

Notifies you (via email, slack or text), before your domain's cert expires.

</comment><comment><USER73> Recently started making [http://www.git-browser.com](http://www.git- browser.com) \- browse repos by thumbnail.

</comment><comment><USER436> [http://mowatly.herokuapp.com](http://mowatly.herokuapp.com)

A list of movies I want to see and streaming options for them.

</comment><comment><USER437> [https://hexlist.com/](https://hexlist.com/) which my brother and i use to make lists of links.

</comment><comment><USER438> [https://senzu.io/investing](https://senzu.io/investing)

A simple tool to compare different investment platforms

</comment><comment><USER439> ffind [https://github.com/jaimebuelta/ffind](https://github.com/jaimebuelta/ffind)

A very simple search tool for the command line, aiming to replace very common cases. It's pretty minimal, but I use it every single day and love it... it unsurprisingly 9i developed it) fits very well my daily flow (90% of the times based in vim, at and ffind)

</comment><comment><USER5> Shows you the page from Google's cache: [http://fromcache.com/](http://fromcache.com/)

</comment><comment><USER440> [https://getglimpses.com/](https://getglimpses.com/) A simple journal app for Windows.

</comment><comment><USER441> git-pull-request - CLI tool for insanely easy check out of contributor PRs from github:

[https://www.npmjs.com/package/git-pull- request](https://www.npmjs.com/package/git-pull-request)

Code is hacky, but hey, 350 downloads a month for something I threw together, and have never promoted...

Proud? Not really, but thought someone here might find it useful.

</comment><comment><USER442> [http://www.seeyourvisitors.com/](http://www.seeyourvisitors.com/)

</comment><comment><USER443> [http://fooltools.net](http://fooltools.net)

MP3 file cutter (still rough around the edges)

</comment><comment><USER444> Baby tracking apps to scratch my own itch, so to speak: Poopendar, Boobendar, Napendar All on the Apple App Store.

</comment><comment><USER445> Create a invoice and print it. If you got to that site, first and only thing you get is the invoice form.

www.tinyinvoice.net

</comment><comment><USER446> getpapers - [https://github.com/ContentMine/getpapers](https://github.com/ContentMine/getpapers)

Command-line tool for mass-downloading scientific literature that matches a search query. The crazy thing is that it didn't exist already.

</comment><comment><USER447> msrss - Merge and scrub RSS feeds, so certain clients can consume them without barfing. (I'm looking at you, gnus.)

[https://bitbucket.org/endgame/msrss/wiki/Home](https://bitbucket.org/endgame/msrss/wiki/Home)

</comment><comment><USER448> [http://gemfly.findings.co](http://gemfly.findings.co)

</comment><comment><USER449> I built a device that turns your phone into an FM receiver... For those of you who like the radio!

www.enrad.io

</comment><comment><USER450> [https://redom.js.org](https://redom.js.org)

</comment><comment><USER451> Locateonspot is an simple app to find family and car you can take it up as simple product

</comment><comment><USER452> sassifyit - [http://www.sassifyit.com/](http://www.sassifyit.com/)

Converts CSS hex colour codes in to well named Sass colour variables f.x #fafafa -> $alabaster or #a6a6a6 -> $silver-chalice

</comment><comment><USER453> A suite of internal autocad automation tools for an electronics manufacturer.

</comment><comment><USER454> simple tool: a handy json comparison tool [https://github.com/ChannelIQ/jsoncompare](https://github.com/ChannelIQ/jsoncompare)

</comment><comment><USER455> 0bin.net: encrypted pastebin, open source, written in Python.

</comment><comment><USER310> I'm bookmarking this thread =) so many useful things

</comment><comment><USER456> makeappicon.com

A handy icon resizer, yet it's a simple script but it's benefiting many dev and designers now ;)

</comment><comment><USER58> Well, I wouldn't say "most proud", but here are some I had fun doing:

An IBM developerWorks article: Developing a Linux command-line utility (selpg)

[http://jugad2.blogspot.in/2014/09/my-ibm-developerworks- arti...](http://jugad2.blogspot.in/2014/09/my-ibm-developerworks-article.html)

It's a tutorial on how to write a Linux command-line utility in C. Was up on the IBM dW site for long; now archived. Got some stars etc. Code and article text now available via (links in) the above post on my blog. Uses as a case study / demo, a real-life utility I wrote for a client, to print only selected pages from a text file, specified by line number range or page range (form- feed-delimited pages, a common industry format for line printers). It was for a very large company with huge print jobs, so if the paper jammed in mid-job, this utility could save them a lot of time and paper, by letting them print only the un-printed pages. They might still be using it several years after it was written. I had also shared it on the HP-UX mailing list, and people said it was useful.

This post shows how to use that utility (selpg) with xtopdf (another project of mine, for PDF generation from Python):

Print selected text pages to PDF with Python, selpg and xtopdf on Linux

[http://jugad2.blogspot.in/2014/10/print-selected-text- pages-...](http://jugad2.blogspot.in/2014/10/print-selected-text-pages-to-pdf- with.html)

PySiteCreator was a bit innovative and fun to do. It lets you create simple web sites by writing them purely in Python. I designed it to impose as few requirements or constraints on the user as I could, so that it would be more generally useful, i.e. more like a library than a framework, though it is a sort of framework, since it calls code you write.

Early release of PySiteCreator - v0.1

[http://jugad2.blogspot.in/2009/11/early-release-of- pysitecre...](http://jugad2.blogspot.in/2009/11/early-release-of- pysitecreator-v01.html)

That post describes the ways it can be used. I originally created it with the goal of creating simple wikis using Python, but then realized that it generalized to any web site, so changed the name from DSLWiki (a DSL for wikis) to PySiteCreator :)

And while this one - pipe_controller - is not really a tool or product (it is an experiment), I enjoyed seeing what I could do with it - like running a pipe incrementally and swapping pipe components at runtime. There are few posts describing those experiments, in reverse chronological order, starting from this last post:

Swapping pipe components at runtime with pipe_controller:

[http://jugad2.blogspot.in/2012/10/swapping-pipe- components-a...](http://jugad2.blogspot.in/2012/10/swapping-pipe-components- at-runtime.html)

Edit: I'm working a few other products, some for sale, some free, so anyone interested in checking them out, is welcome to follow me for email updates here on Gumroad:

[https://gumroad.com/vasudevram/follow](https://gumroad.com/vasudevram/follow)

(There are a few small free utilities in early versions there now too.)

I only send out a few updates a month (if that), and only if I have a new product or an update to an existing one to announce.

Edited for typos / re-wording.

<comment><USER58> Forgot to include this point earlier, for anyone who wants to check out PySiteCreator - the current link for the project is here:

[https://bitbucket.org/vasudevram/pysitecreator](https://bitbucket.org/vasudevram/pysitecreator)

Also: s/There are few posts/There are a few posts/

It was a typo, I'm aware of the difference :)

</comment></comment><comment><USER457> Probably nsping.

</comment><comment><USER458> PPD courses

</comment><comment><USER459> actionherojs.com

</comment><comment><USER460> provakil.com

</comment><comment><USER461> [http://saasful.com](http://saasful.com)

Successful. That's what I want for my SaaS developers. Whatever your core product is, it's always going to need

\- billing integration with Stripe

\- user authentication (for your customers)

\- access control (so you can drop in support)

You can pull this off (of course!) but do you really want to deal with this portion at all? Wouldn't you rather focus on driving traffic, writing blogs, adding new features to your core product with the time that you would spend on maintaining the non-product portions?

Here's how we are doing it:

\- We would be your go-to resource for all of your SaaS website issues, fixes, CSS changes, anything related!

\- SaaS website never enters your cognitive load, we are keeping it up!

\- Send us an email at email@example.com and we'll work on any request you send us in 48 hours. This is nice because months down the road you want to quickly change CSS

\- Never deal with hiring from freelancer.com!

This is the tool that my devs and I have been working on this quarter. Would love some feedbacks.

edit: Care to explain the drive by downvotes? The thread is about sharing what tools we are working on right? Or did I not do it properly? Please let me know!

<comment><USER462> I don't downvote but, to speculate on the answer to your question, I think you crossed the line by going into sales pitch mode

<comment><USER461> My bad, I got super excited got a little carried away with the messaging. I'll definitely keep this in mind so I don't repeat it next time. Thanks!

</comment></comment></comment><comment><USER463> [https://dealomni.com](https://dealomni.com) which helps you find deals near you.

Proud because of what I didn't do. I was pragmatic. Avoided fancy nosql databases and funky languages and just bashed out some JS and said stuff it ... no server side!

</comment><comment><USER464> I would guess my most used project would be an HTTP header editor for Chrome[0]. According to the developer dashboard it has close to 4,000 weekly users and I don't think I've had to do anything to it in over a year and a half. That so many folks would use my software is cool.

[0] - [https://chrome.google.com/webstore/detail/header- editor/pkok...](https://chrome.google.com/webstore/detail/header- editor/pkokmcnklmgbepioackopoknkdlhefjl)

</comment><comment><USER465> [https://github.com/susam/uncap](https://github.com/susam/uncap)

Map Caps Lock key to Escape key, or any to any key, on Windows systems.

I am very happy about it because my wife (then girlfriend) was the first user of this little tool and she still uses it everyday. She likes that this tool is unobtrusive and it silently remaps Caps Lock to Escape which is very convenient while using Vim.

From the download count I know that there are more people using it now but I don't know who they are.

</comment><comment><USER466> I took Carl Jung's Association Method and turned it into a simple psychoanalytical tool using cards. Works like a charm: [https://www.thegamecrafter.com/games/critical- stimulus](https://www.thegamecrafter.com/games/critical-stimulus)

Downloadable, printable version is here: [https://payhip.com/b/TFIi](https://payhip.com/b/TFIi)

</comment><comment><USER467> A bash script that uses only builtins to truncate your PS1 to a fraction of the width of your terminal window.</comment>