hacker news with inline top comments    .. more ..    16 Nov 2016 Ask
home   ask   best   2 years ago   
Ask HN: What simple tools or products are you most proud of making?
402 points by shovel  16 hours ago   682 comments top 348
mk4p 13 hours ago 12 replies      

(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

vitorbaptistaa 12 hours ago 12 replies      

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.

w1nter 3 minutes ago 0 replies      

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.

rsync 13 hours ago 9 replies      

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 user@rsync.net "dd of=db_dump"
... while simultaneously, someone else is doing this:

 zfs send tank/test@snap1 | ssh user@rsync.net 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.

0x1d 12 hours ago 5 replies      

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!

amjith 13 hours ago 2 replies      
Two years ago I created a CLI tool called pgcli (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). 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/

jmbmxer 10 hours ago 4 replies      

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.

StavrosK 15 hours ago 7 replies      
I'm proud of many things :(

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

* I wrote a personal bookmark search engine: http://historio.us/

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

* A pastebin: http://pastery.net/

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

* A button that orders food when pressed: 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/

* A secure communications library for IoT devices: http://stringphone.readthedocs.org/

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

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

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

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

* I can't even remember the rest.

TeMPOraL 15 hours ago 2 replies      
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)

cperciva 8 hours ago 4 replies      
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.

jtreminio 12 hours ago 2 replies      

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!

augustflanagan 13 hours ago 2 replies      
I built 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.

lcall 14 hours ago 0 replies      
A personal knowledge organizer at 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 ).

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.

mijustin 12 hours ago 2 replies      
Last year, I launched 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.

nl5887 13 hours ago 2 replies      
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 used by 500 slack teams.
unforswearing 36 minutes ago 0 replies      
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

aliaser: a tiny directory traversal/command aliasing tool. https://github.com/unforswearing/aliaser

cromo 13 hours ago 2 replies      
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[2] https://imgur.com/E1N1Zsm

jessegrosjean 12 hours ago 2 replies      

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 ideaplain text todos with 5 formatting rulesremains the core of what TaskPaper is.

I'm very proud of that!

ngzhian 27 minutes ago 0 replies      
Quickview for YouTube! Allows you to quickly view videos from your subscriptions feed page without any clicks.


abetusk 11 hours ago 2 replies      

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

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

averageweather 13 hours ago 9 replies      
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.

josephg 5 hours ago 1 reply      

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

2 full adders: https://steam.dance/josephg/adder

Miniaturised 8 bit ALU: https://steam.dance/josephg/alu

Work in progress CPU: https://steam.dance/josephg/4004_4

callumprentice 12 hours ago 2 replies      
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....
rayalez 14 hours ago 1 reply      
The projects I am the most proud of:

http://rationalfiction.io - a collection of amazing science fiction stories.

http://lumiverse.io - discovery platform for educational videos.

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

Single scripts:

https://github.com/raymestalez/rssdigest - sends me a daily email digest of my rss feeds.

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://blog.digitalmind.io/post/ai-writes-hpmor - ANN that generates Harry Potter fanfiction.

yblu 9 hours ago 2 replies      
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...

sushimako 15 hours ago 3 replies      
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/

JangoSteve 13 hours ago 3 replies      
The simplest one that I also use the most is start.sh: 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.

schindlabua 15 hours ago 1 reply      
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.
weaksauce 9 hours ago 1 reply      
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...

Firefox Extension: https://addons.mozilla.org/en-US/firefox/addon/tabist/

source code: https://github.com/fiveNinePlusR/tabist

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

franciscop 13 hours ago 1 reply      
* 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/

* 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

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

mstipetic 15 hours ago 3 replies      
I have some sideprojects around the internet, but so far the most useful thing I made has been


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

forsaken 9 hours ago 1 reply      
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.
pkzip 13 hours ago 1 reply      
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 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.
coleifer 12 hours ago 2 replies      
I wrote peewee, a single file Python ORM. It's codebase is very small but it is extremely capable.


modoc 5 hours ago 2 replies      

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

jaredtking 15 hours ago 3 replies      

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.

bpierre 15 hours ago 0 replies      
https://scri.ch/ draw => save => share (you can add .png to the URL)

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).

Its nice to see other people using them too! :-)

YPCrumble 14 hours ago 1 reply      
I built 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.

kevas 13 hours ago 0 replies      
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.

joshwcomeau 14 hours ago 2 replies      
I'm most proud of 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!

gnicholas 12 hours ago 1 reply      

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.

duck 2 hours ago 0 replies      

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.

alando46 12 hours ago 1 reply      

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

kovacs 5 hours ago 0 replies      
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 :-)


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.

_samihasan_ 1 hour ago 0 replies      

I developed "Eskndereyya", 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

TheRealPomax 2 hours ago 0 replies      
"A primer on Bezier curves", 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.

nodja 8 hours ago 1 reply      
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.


gregfjohnson 7 hours ago 0 replies      

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

josscrowcroft 14 hours ago 1 reply      
I'm most proud of making Open Exchange Rates (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.

apas 12 hours ago 0 replies      
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[1]: https://apas.github.io/athena/

ThomPete 12 hours ago 1 reply      

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.

tomschlick 12 hours ago 1 reply      

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.

Foxboron 11 hours ago 0 replies      
I was annoyed last week that ii (http://tools.suckless.org/ii/) didn't supportSSL, so i reimplemented ii inn Golang and added a few extra needed features.


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

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

Animats 9 hours ago 1 reply      
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

Veen 13 hours ago 0 replies      
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.

davexunit 9 hours ago 0 replies      
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.


GNU project sites:



ThomasRooney 14 hours ago 1 reply      
I built 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.

kilian 13 hours ago 1 reply      
Right now, 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.

sethlesky 4 hours ago 0 replies      

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.

michaelbuckbee 12 hours ago 1 reply      
I got tired of remembering how to format date/times as strings and made http://www.foragoodstrftime.com/
Brainix 3 hours ago 0 replies      
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
eneve 11 hours ago 1 reply      
FAQr - An ASCII GameFaqs reader for Android - 2k + 5 star reviews - 1k + DAUhttps://play.google.com/store/apps/details?id=com.faqr&hl=enGreat for retro gaming! *EDIT - Free with no ads
Lerc 4 hours ago 0 replies      
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.


darshan 6 hours ago 0 replies      

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.

patio11 15 hours ago 0 replies      
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.


timooo 9 hours ago 0 replies      

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.

javierbyte 12 hours ago 0 replies      
I'm proud of a tool that I did to find the visual center of images (http://javier.xyz/visual-center/) and one to make random color schemes more cohesive (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/) but it's by far my most popular tool \_()_/

sergiotapia 12 hours ago 0 replies      
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.


civilian 11 hours ago 0 replies      
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`


Curiositry 5 hours ago 1 reply      

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

sovok 10 hours ago 2 replies      

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 :)

colanderman 6 hours ago 0 replies      
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.
sandbags 12 hours ago 0 replies      
I am pretty proud of


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.

charlieegan3 15 hours ago 1 reply      
I made 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.
nishanth_v 9 hours ago 0 replies      

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://chrome.google.com/webstore/detail/coders-calendar /bageaffklfkikjigoclfgengklfnidll https://addons.mozilla.org/en-US/firefox/addon/coder-calenda...

Has 7k+ users all together :)

allanrbo 10 hours ago 1 reply      
https://mailgroup.io - Free online mailing list manager

https://crond.net - Free web cron

https://ipaddr.dk - what's my IP?

https://ent.re - URL shortener that generates mobile type friendly URLs

kctess5 7 hours ago 1 reply      
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.


timpark 9 hours ago 1 reply      
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.

networked 12 hours ago 0 replies      

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):

 $ 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.

zem 4 hours ago 0 replies      
A simple wordsearch tool for scrabble players that I wrote twice:

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] 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.

chrisanthropic 11 hours ago 0 replies      
I wrote 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.

bpicolo 3 hours ago 0 replies      
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

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

lavrton 10 hours ago 3 replies      
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.


This tool already helped me a lot.

hawkice 10 hours ago 0 replies      
Of all the things I've made ( here https://gen517.com) there are a couple that stand out in hindsight:


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.


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


geophile 11 hours ago 0 replies      

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.

jetti 12 hours ago 0 replies      
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.
brennen 11 hours ago 0 replies      
"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... - copy photos from some common camera media locations.

https://github.com/brennen/bpb-kit/blob/master/home/bin/gif-... - 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... - an alias for navigating directory history.

cogs 15 hours ago 1 reply      
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


mpwoz 6 hours ago 0 replies      
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)

hnarayanan 10 hours ago 0 replies      

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

okhudeira 8 hours ago 0 replies      
I'm happy the following two are getting traffic:

- [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/) 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.

saamm 4 hours ago 0 replies      

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.

bndr 13 hours ago 0 replies      

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

hackforfun 7 hours ago 1 reply      
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.

jdowner 5 hours ago 0 replies      
I wrote a little tool for working with github gists from the command line, https://github.com/jdowner/gist. I was pretty happy with how it turned out, and pleased that a few people have found it useful :)
john_mac 1 hour ago 0 replies      

I'm chronic news junkie and wanted a perpetual drip of viral news on my phone. Addiction satisfied :)

madrasman 2 hours ago 0 replies      

It helps you remember the things you read and learn by sending you timely email reminders based on spaced repetition (memory theory).

STRML 11 hours ago 0 replies      
Built 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.

wbradley 2 hours ago 0 replies      

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...

alixaxel 5 hours ago 0 replies      

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).

dudeget 3 hours ago 0 replies      
I have been working on a multiplayer game as of recently


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

tylerjwilk00 8 hours ago 1 reply      

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

timmaxw 13 hours ago 0 replies      
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.


mosselman 15 hours ago 1 reply      
A tool to make JS bookmarklets:


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.

ian0 4 hours ago 0 replies      
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:


A small directory for finding informal household services in Jakarta. Old service, ticking along - still proud of the mobile UI :)


BHSPitMonkey 7 hours ago 0 replies      

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.

tomasandrle 14 hours ago 1 reply      
Tiny Player - a music player for iPhone at 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.
cantbecool 3 hours ago 0 replies      
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.
cushychicken 11 hours ago 0 replies      
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.


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

dmuth 12 hours ago 0 replies      

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) 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.

stevekemp 11 hours ago 0 replies      
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:


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


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


iamgopal 12 hours ago 0 replies      
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
Tobias42 6 hours ago 1 reply      

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!

stevenkovar 13 hours ago 0 replies      
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 meethe wouldn't say how he found me, but I'm sure Woot Agent was how.

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

jacksonsabey 5 hours ago 0 replies      
I've recently released a beta platform and API for tools for working with links: 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!

johladam 12 hours ago 0 replies      

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.

kolme 15 hours ago 0 replies      
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/[2] https://packages.debian.org/de/jessie/obmenu

jacalata 8 hours ago 0 replies      
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).
TheCapn 15 hours ago 0 replies      
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)


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

thecatalinstan 12 hours ago 0 replies      

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.

countryqt30 7 hours ago 0 replies      
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.


znq 7 hours ago 0 replies      
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! :-)

ssully 11 hours ago 0 replies      
This is minor, but I used the Random Everything(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.

boyce 4 hours ago 0 replies      
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.
halisaurus 7 hours ago 0 replies      
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...

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

jshawl 15 hours ago 1 reply      
https://UpDog.co hosts websites with Dropbox. Currently making < 1k / m
kris-s 10 hours ago 0 replies      
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
ryanackley 8 hours ago 0 replies      
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.

mosselman 6 hours ago 0 replies      
A component like jQuery plugin called Freud for jQuery.


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.

simonmales 7 hours ago 0 replies      
In 2015 I launched Bitcoin Fax. 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.

aritztg 11 hours ago 0 replies      
Built 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
minusthebrandon 6 hours ago 0 replies      

A simple warmup calculator for my workouts. Use it multiple times a week.


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.

xanderstrike 11 hours ago 1 reply      

My responsive demo, resize the screen ;)

Also 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.

nvbn 12 hours ago 0 replies      
thefuck - https://github.com/nvbn/thefuck

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

myinitialsaretk 15 hours ago 0 replies      
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

lawrencewu 13 hours ago 1 reply      
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.

iamben 4 hours ago 0 replies      

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.

rileyt 13 hours ago 2 replies      
The things I have made that I am most proud of are:

* https://standardresume.co/ - Started because I couldn't find a resume that I liked.

* https://amplitudeapp.com/ - A more advanced artist radio style playlist maker.

* http://rediscover.rile.yt/ - Automatically save Spotify discover weekly playlists.

projproj 14 hours ago 0 replies      
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/

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.

rolodato 14 hours ago 0 replies      
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

* gitlab-letsencrypt: https://github.com/rolodato/gitlab-letsencrypt

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

eg312 14 hours ago 0 replies      
https://github.com/alexadam/save-as-ebook - Save a web page/selection as an eBook
tylerjwilk00 10 hours ago 0 replies      

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.

nicolashahn 8 hours ago 0 replies      
A little tool to check the similarity of two images using PIL, it gives a % difference as well as an diff image:


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.


accnt 12 hours ago 1 reply      

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

MasterScrat 10 hours ago 0 replies      
My chrome extension that overlays Reddit comments when you go to XKCD.com


Not my most impressive feat but I love it :D

garysieling 10 hours ago 0 replies      
I built 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.

jdc0589 14 hours ago 0 replies      
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.


zimbatm 11 hours ago 0 replies      
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.

chad-autry 11 hours ago 0 replies      
Probably my largest is 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

And more recently, in line with what the OP is looking for 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

ill0gicity 11 hours ago 0 replies      
I recently wrote and was able to open-source 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.
kislayverma 10 hours ago 0 replies      

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!

rspeer 3 hours ago 0 replies      
ftfy (fixes text for you): 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).

Aardappel 11 hours ago 2 replies      
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 :)
instakill 8 hours ago 0 replies      
Not a tool or product, but still sorta kinda. For me this year it's been making:


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.

kazinator 8 hours ago 0 replies      
A very useful, tiny project I made fairly recently is Tamarind:


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.

jaimefjorge 12 hours ago 0 replies      

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.

brilliantcode 12 hours ago 2 replies      

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 hi@saasful.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!

Chris911 10 hours ago 0 replies      
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.

Q_the_Novice 15 hours ago 0 replies      
http://node-ping.herokuapp.com (Repo: 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)

drej 11 hours ago 0 replies      
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.

FigBug 9 hours ago 0 replies      
I've mad a few:

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

Copy and paste for Windows command line: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...

peppage 8 hours ago 0 replies      
https://wanderinglunch.com/nyc use it to track food trucks around NYC. Very happy it taught me python, nodejs, and now go.
Shadow6363 9 hours ago 0 replies      
I still use 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.
gamache 9 hours ago 0 replies      


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. :)

philmander 12 hours ago 0 replies      
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


carapace 9 hours ago 0 replies      
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.

bengesoff 5 hours ago 0 replies      
On behalf of my friend: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!

Quatschmann 14 hours ago 1 reply      
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 :>).

jim_lawless 15 hours ago 0 replies      
In 1997, I wrote MailSend, a commercial command-line SMTP emailer for Windows. It is now free to use, open-source software.


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.

alanbernstein 6 hours ago 0 replies      

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.

kingkool68 15 hours ago 1 reply      
nvitas 10 hours ago 0 replies      
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.

bambax 11 hours ago 0 replies      
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


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

Mtinie 5 hours ago 0 replies      
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.


hackathonguy 6 hours ago 0 replies      
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.


timvdalen 12 hours ago 0 replies      

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...

techwizrd 8 hours ago 0 replies      

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.

pascalxus 7 hours ago 0 replies      
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:


brettlangdon 10 hours ago 0 replies      

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.

chriswarbo 14 hours ago 0 replies      
http://chriswarbo.net/git/warbo-utilities/branches/master/sy... 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... 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 :(

charlesism 15 hours ago 0 replies      
I spent way too much time on a tiny menulet that just switches Mac audio from stereo to mono.


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.

darrelld 8 hours ago 0 replies      

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.

gempir 11 hours ago 0 replies      
Not as cool as most projects here but this is mine: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.

evizero 9 hours ago 0 replies      

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...

tymm 12 hours ago 0 replies      
https://simplepush.ioEasiest 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).

palerdot 14 hours ago 0 replies      
Hotcold Typing: https://chrome.google.com/webstore/detail/hotcold-typing/gik...

Learning Touch Typing with instant visual feedbacks.

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

philco 6 hours ago 0 replies      
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.


welanes 12 hours ago 0 replies      
Began as a simple Pomodoro timer but is gradually becoming a full task manager - 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.

TimLeland 10 hours ago 0 replies      
Weather Extension - 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...

tomatohs 9 hours ago 0 replies      

I'm pretty sure this is best quality user session recorder out there. Just gotta work on the marketing bit :)

wkoszek 8 hours ago 0 replies      
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!).



Read code:

https://github.com/wkoszek/sensorama-ios (main repo)

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 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 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

- Network Simulator written in C, with visualisation in Graphviz: https://github.com/wkoszek/kmnsim

- Other stuff from my junkyard: 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.

nymeria 7 hours ago 0 replies      
Good question-- I'd say Nymeria (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!

Kerrick 12 hours ago 0 replies      
Very niche, but I'm very proud of having made this: 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

cstigler 10 hours ago 1 reply      

SelfControl - a free Mac focus app that helps users block their own access to distracting websites

roryisok 9 hours ago 0 replies      
does an autohotkey script count?

 ^':: ;;; (or ^2 for US keybs) Send me@e.mail return
CTRL+@ symbol pastes my email address wherever the cursor is.

alexgandy 12 hours ago 1 reply      

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.

kogus 8 hours ago 0 replies      
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 unwanted term. I wrote it for myself and every friend I shared it with ends up pinning it to their taskbar.


olalonde 8 hours ago 0 replies      

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).

Thomas_9 14 hours ago 1 reply      
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), one user sent me a pull request that I accepted to improve the Ui some months ago.

Please try and give me a feedback!

varundey 8 hours ago 0 replies      

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.

mouldymic 7 hours ago 0 replies      
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.


lunaru 10 hours ago 0 replies      
Let's Encrypt certs hosted: 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.

ensiferum 14 hours ago 0 replies      
Usenet binary grabber: http://www.ensisoft.com (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.

ada1981 15 hours ago 0 replies      
http://AnthonyDavidAdams.com/memescope The Memescope is a dynamic kaleidoscope that uses images representing leading news headlines as the source material.

http://PlayTheLoveGame.com or http://amzn.to/2fSyUXXThe 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/spacejournalsI 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.

SeriousM 10 hours ago 0 replies      
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.


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...

thomasfl 7 hours ago 0 replies      
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.
NoCanDo 6 hours ago 0 replies      

Basic, but my first dive into krypto and security. Droped it a while after. Not that interesting. Still using this link for random pwds.

ftfish 15 hours ago 0 replies      

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.

DelTaco 12 hours ago 0 replies      

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 :)

roider 9 hours ago 0 replies      

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.

clonq 10 hours ago 0 replies      

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 :)

ericwood 11 hours ago 0 replies      

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 :)

throwanem 15 hours ago 0 replies      
I wrote a SAME encoder that runs in your browser: 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.

zitterbewegung 11 hours ago 0 replies      
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-v4http://planet.racket-lang.org/display.ss?package=uuid-v4.plt...
corysama 12 hours ago 0 replies      

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.

jotto 11 hours ago 0 replies      
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/ - 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)
consolelog 8 hours ago 0 replies      
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.
xojoc 16 hours ago 1 reply      
https://typed.pw - Simple way to write online.
devopsgal 13 hours ago 0 replies      
Earlier this year AWS was running a serverless chatbot contest. We built http://opsidian.ai/ a tool to work with AWS from Slack and ended up as one of the finalist.
mkagenius 15 hours ago 1 reply      
Automation to look for secret API tokens in APKs - 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.

lewisjoe 8 hours ago 0 replies      

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.

thyselius 8 hours ago 0 replies      
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 watermarkhttps://appsto.re/se/c3lxfb.i )
joslin01 13 hours ago 0 replies      
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.
ThePhysicist 11 hours ago 1 reply      

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: andreas@quantifiedcode.com

tsumnia 12 hours ago 1 reply      
Not as fancy as many of those posted by: 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.

patrickdavey 9 hours ago 0 replies      
I built 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 :)

jimmies 13 hours ago 1 reply      
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.


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.

marclave 9 hours ago 0 replies      
Similar to domainr, but more accurate and faster!


stpe 12 hours ago 0 replies      
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/

I remember I was happy drawing the toolbar icons, because it reminded me of working in Deluxe Paint.

medwezys 14 hours ago 1 reply      
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.
coldshower 11 hours ago 0 replies      
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

Downloadable, printable version is here: https://payhip.com/b/TFIi

67726e 13 hours ago 0 replies      
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...

sugarygrind 7 hours ago 0 replies      
Clips safeway digital coupon with simple bookmarklet https://github.com/nishnet2002/Safeway-Just-for-u
shanecleveland 12 hours ago 0 replies      

Long-term reminders emailed to you. It keeps these tasks out of sight until you need to be reminded.

pvorb 6 hours ago 0 replies      

It lets you look up download statistics for packages on npm. You can pick a date range, or aggregate all downloads for an author.

fishywang 9 hours ago 0 replies      
I have a scripts repository on github served as a collection of years of scratching my own itch: https://github.com/fishy/scripts

They are mostly python and shell scripts (with one PHP), and most of them are still useful today :)

ashishk 13 hours ago 0 replies      
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.

relyio 12 hours ago 0 replies      
Disable Facebook's "Seen" function:


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.

tommynicholas 13 hours ago 0 replies      
https://blankslate.io - just a blank page you can type on and save your thoughts. I use it every day and love it!
soulchild37 13 hours ago 0 replies      
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.

Buetol 15 hours ago 1 reply      
An archive of chrome extensions versions: https://crx.dam.io (I should upload it to archive.org)

Also, this small templating library for python: 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...

robbiemitchell 13 hours ago 0 replies      
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.

cvarjas 14 hours ago 0 replies      
I made sortable NMR chemical shift data tables for impurities to improve access to this information for chemists and students: http://nmrs.io/
rockdiesel 12 hours ago 0 replies      

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.

ricardobeat 9 hours ago 0 replies      
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.

bradlys 9 hours ago 0 replies      

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.

zazpowered 5 hours ago 0 replies      

A simple tool to compare different investment platforms

cellis 10 hours ago 0 replies      
Create Save Prompt


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).

hpoydar 6 hours ago 0 replies      
https://slashtz.comNatural language time zone converter/calculator. Works with web, Slack and HipChat.
osrec 10 hours ago 0 replies      
My company put this together and it seems to get some love on github: 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!

guptaneil 15 hours ago 0 replies      
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

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

mschenk 10 hours ago 0 replies      

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.

espitia 13 hours ago 0 replies      
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/...

k3oni 13 hours ago 0 replies      
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

carleverett 11 hours ago 0 replies      

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.

bpowell 12 hours ago 0 replies      

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.

Cyph0n 15 hours ago 0 replies      
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 (sorry for the crappy design!)

cgag 8 hours ago 0 replies      
I wrote a cloc (count lines of code) competitor in rust that's pretty fast: https://github.com/cgag/loc (turns out perl is pretty easy to beat).
Kexoth 12 hours ago 2 replies      
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...

samayshamdasani 11 hours ago 0 replies      
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

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.

jtsai1 12 hours ago 1 reply      

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.

andywood 14 hours ago 0 replies      
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.


hypertexthero 9 hours ago 0 replies      
Not really proud as I just hacked other people's work together to make it, but I use it often when cooking pasta :)


cameronrohani 9 hours ago 0 replies      

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.

sgentle 14 hours ago 0 replies      
The "Can I Use?" CLI is probably the highest attention per unit of effort project I've done: 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.

cosmolev 6 hours ago 0 replies      
Shows you the page from Google's cache: http://fromcache.com/
mrjaeger 13 hours ago 0 replies      
Link with context - https://chrome.google.com/webstore/detail/link-with-context/...

Mostly because I wanted to share reddit links with friends, but they didnt make sense without the accompanying title of the post.

mgunlogson 8 hours ago 0 replies      
I built a cuckoo filter library in Java that nobody uses :)https://github.com/MGunlogson/CuckooFilter4J
tobinharris 13 hours ago 0 replies      
http://yuml.me diagrams as an API.

This was scratching and itch, yet get used by 1000s of people every day.

rhodysurf 12 hours ago 0 replies      
Buoy visualization site (WIP) that uses raw spectral energy data from NDBC buoys


Bonus: I made this for my friend and I to log our surf sessions


EllipticCurve 9 hours ago 0 replies      

Use it daily when working with Linux to execute old commands as alternative to ctrl+r, AWESOME tool :)

wriggler 9 hours ago 0 replies      

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.

_eht 13 hours ago 0 replies      
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

thenomad 12 hours ago 0 replies      
It's a very, very simple thing, and needs updating, but my filter bubble busting Twitter bot is something I'm quite proud of.


wyldfire 13 hours ago 0 replies      
* 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

[2] https://bitbucket.org/ebadf/fuzzpy

roryisok 9 hours ago 0 replies      
ok, stretching things a little, but Poe (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.

jacobevelyn 15 hours ago 2 replies      
Compute for Humanity


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.

danieldk 10 hours ago 0 replies      
Perhaps not proud, but written in no-time and got quite popular:


kapuru 13 hours ago 0 replies      
I've built 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.

artur_makly 11 hours ago 1 reply      

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.

endgame 5 hours ago 0 replies      
msrss - Merge and scrub RSS feeds, so certain clients can consume them without barfing. (I'm looking at you, gnus.)


nferraz 15 hours ago 1 reply      
st - simple statistics from the command line


coreymaass 11 hours ago 0 replies      
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.
secfirstmd 13 hours ago 0 replies      
Umbrella App: Simple digital and physical security lessons for people who travel, activists, aid workers and journalists:


codemonkeychuck 11 hours ago 1 reply      

It's supposed to be a simple S3 file uploader GUI for non-techy people... 'proud' is questionable :)

franze 8 hours ago 0 replies      
http://lalo.li/ (simple voice message service) - coded mostly offline in a hut in bolivia
tuomasj 6 hours ago 0 replies      
Create a invoice and print it. If you got to that site, first and only thing you get is the invoice form.


par 10 hours ago 0 replies      
Meta Meme 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.

alecsmart1 9 hours ago 0 replies      
http://wtsic.comWhat time should I call? - A simple tool to help convert your client's time zone to your time zone.
voiceclonr 10 hours ago 0 replies      

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.

yuvadam 9 hours ago 0 replies      
I built a simple CIDR/IP range calculator as an exercise learning React, came out very nicely I think


jaimebuelta 8 hours ago 0 replies      
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)

jkaptur 12 hours ago 0 replies      

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.

imron 15 hours ago 0 replies      
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.

xd1936 12 hours ago 0 replies      
A Google Calendar-powered in/out board for our office, that replaces the magnet and whiteboard system that we used to have.


webjac 11 hours ago 1 reply      

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.

timdeneau 13 hours ago 0 replies      

A simple timer. The colors represent an hour block of time. Its designed for your peripheral vision, put it on a secondary screen. Just drag or use the keyboard.

Eun 10 hours ago 0 replies      

I know there are a bunch of similar sites outside however I wanted something simple with no ads but all information.

deedubaya 12 hours ago 1 reply      
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.
neonbat 9 hours ago 0 replies      
https://hexlist.com/ which my brother and i use to make lists of links.
xem 11 hours ago 1 reply      
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://github.com/xem/miniSpeechSynthesis (73b+ speech synthetizer)

- https://github.com/xem/miniSpeechRecognition (100b+ speech recognition)

- https://github.com/codegolf/period1k (1kb periodic table)

- https://github.com/xem/miniPi (compute Pi in ~256b!)

- https://github.com/xem/MiniRegexTester (170b regex tester)

- https://github.com/xem/miniBookmarklets (tiny bookmarklets)

- http://xem.github.io/MiniShadertoyLite/ (512b shadertoy clone)

- http://xem.github.io/MiniShadertoy/ (1kb shadertoy clone)

- http://xem.github.io/miniBeautifier/ (1kb js beautifier)

- https://github.com/xem/miniUnicode (Unicode slideshows in 64b and up)

- https://github.com/xem/miniKeyCode (JS KeyCode finder in less than 128b)

- http://xem.github.io/miniJSperf/ (a JSperf clone in less than 300b)

- https://github.com/xem/sheet (a spreadsheet app in 221 bytes)

- https://github.com/xem/hex (hexadecimal viewer and editor in 243+ bytes)

- https://github.com/xem/miniURI (file-to-dataURI converter in 99 bytes)

- https://github.com/xem/miniCodeEditor (HTML/CSS/JS editor in 156+ bytes)

- https://github.com/xem/braille-art (drawing with braille on Twitter in less than 1k)

- https://github.com/xem/miniMinifier (HTML/CSS/JS minifiers in 128+ bytes)

- http://js13kgames.com/entries/26-games-in-1 (26 games in 13kb)

deviantfero 11 hours ago 0 replies      
I made: 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!

tbrownaw 11 hours ago 0 replies      
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.
DanHulton 10 hours ago 0 replies      
Simple "product", though the utility is strictly limited: 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.

jmarbach 12 hours ago 0 replies      
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.
arbuge 12 hours ago 0 replies      

Online marketing tools - conversion tracking, etc. Rather unique in the way these as are defined as "rules" which can be concatenated.

qznc 15 hours ago 0 replies      
I fixed my prediction market last weekend: https://github.com/qznc/prema

It used Mozilla Persona for authentication, which is now gone. Switched to Github OAuth, which went surprisingly well.

bvrlt 12 hours ago 0 replies      
Genius Scan (http://dl.tglapp.com/genius-scan) because it helps millions of people save some time every month.
joelanman 10 hours ago 0 replies      
Recently started making http://www.git-browser.com - browse repos by thumbnail.
mping 15 hours ago 0 replies      
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
senko 13 hours ago 0 replies      
Cookie-banner, a small, customizable JS-based cookie-info banner for complying with EU cookie law: http://cookiebanner.eu/
therec 12 hours ago 0 replies      

It's a video mapping application that started as a super simple tool, this is why artist love it.

xxkylexx 12 hours ago 0 replies      
https://bitwarden.com - Free, open source password manager for iOS, Android, Chrome, Firefox, Opera, and the web.
stevekrouse 11 hours ago 0 replies      

WoofJS is a simple JS canvas library and IDE I built for my students so they can learn JavaScript.

sghiassy 12 hours ago 0 replies      

I created it because I use Quickbooks a lot and many banks don't support the QBO file format.

Small, simple and free

hackerkid 11 hours ago 0 replies      
Wikifeedia - A newsfeed for Wikipedia.


jasoncchild 7 hours ago 0 replies      
A suite of internal autocad automation tools for an electronics manufacturer.
harrisreynolds 12 hours ago 0 replies      

This is something I am working on now. Simple graphic tool for adding text to images.

dthakur 12 hours ago 0 replies      

Notifies you (via email, slack or text), before your domain's cert expires.

everling 13 hours ago 0 replies      

A search engine that attempts to find thematic lineage between films. Warning: not mobile friendly.

sametmax 6 hours ago 0 replies      
0bin.net: encrypted pastebin, open source, written in Python.
MereInterest 15 hours ago 0 replies      
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.
rompic 14 hours ago 0 replies      

it provides the possibility to easily visualize internal informal networks. Especially simple using mobile phones.

miraclepanda 15 hours ago 0 replies      
I'm working on https://appure.io - tool to generate app store/google play screenshots for mobile apps.
fourseventy 13 hours ago 0 replies      

Aggregation of bar trivia events in your area.

bazurbat 11 hours ago 0 replies      

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.

Blahah 12 hours ago 0 replies      
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.

nickbnf 12 hours ago 0 replies      
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.
dmritard96 9 hours ago 0 replies      
simple tool: a handy json comparison toolhttps://github.com/ChannelIQ/jsoncompare
mbrookes 7 hours ago 0 replies      
git-pull-request - CLI tool for insanely easy check out of contributor PRs from github:


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.

tedsanders 10 hours ago 1 reply      

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.

roryisok 9 hours ago 0 replies      
I'm bookmarking this thread =) so many useful things
lowry 15 hours ago 0 replies      
A bash script that uses only builtins to truncate your PS1 to a fraction of the width of your terminal window.
damian_n 13 hours ago 0 replies      
sassifyit - http://www.sassifyit.com/

Converts CSS hex colour codes in to well named Sass colour variables f.x #fafafa -> $alabaster or #a6a6a6 -> $silver-chalice

angel_of_death 14 hours ago 0 replies      

A simple google chrome extension for UFC fans.

Shubham23596 16 hours ago 0 replies      
Locateonspot is an simple app to find family and car you can take it up as simple product
lifeisstillgood 7 hours ago 0 replies      
Mods: please rename this title to "Oh god, what have I been doing with my life ?!"
pr0x1m4 16 hours ago 0 replies      
A simple electron based font/glyph viewer.


tptacek 1 hour ago 0 replies      
Probably nsping.
geuis 11 hours ago 0 replies      
I created 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, a tool to help frontend devs clean up old CSS.

They're relatively popular.

vram22 11 hours ago 1 reply      
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)


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


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


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:


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:


(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.

syngrog66 5 hours ago 0 replies      
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.htmlhttps://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

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

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.

dozzie 16 hours ago 1 reply      
There are several.

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

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

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

* sftponly, a shell for jailing in chroot accounts meant for data transferonly (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 opensourced. I have few others that are/were too specific to the environment theywere written for.

k2xl 9 hours ago 0 replies      
https://github.com/k2xl/downtime_monitor - Simple HTTP monitoring that sends a slack message when site is down. Configured all from a yamlhttp://recap.work - Chrome extension that shows salary info of people when browsing linkedin profileshttp://facepalm.bogost.com/ - Silly little app that shows a facepalm picture of Georgia Tech professor Ian Bogost and his latest cynical tweetshttp://yofigame.com - Mobile word game for iOS and Androidhttp://www.k2xl.com/games/boomshine/ - Flash game I made called Boomshine (also on mobile)http://www.leanbelts.com - Six sigma certification for really cheaphttp://k2xl.com/games/obechi/ - Flash game I made called Obechi (also on mobile)http://soundcloud.com/k2xl - Some EDM music i wrotehttp://k2xl.com/games/psychopath/ - Flash puzzle game I made called Psychopathhttp://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

evantahler 10 hours ago 0 replies      
mystyle19 11 hours ago 0 replies      
PPD courses
Ask HN: Anybody using Webpack 2 in production?
5 points by pault  2 hours ago   1 comment top
DigitalSea 1 hour ago 0 replies      
I am using Webpack 2 with Aurelia. The breaking changes are a little bit painful (like the latest release), but using it in production and it is completely fine. Documentation is a little scarce, but they're working on it: http://webpack.js.org
Ask HN: Beginner's example to running something on GPU?
9 points by reacharavindh  5 hours ago   3 comments top 2
blackflame7000 5 hours ago 1 reply      
If you have an NVidia GPU I would start with learning CUDA. That should help get you going on the concepts of SIMD (single instruction multiple data) programming. That's where I started. Additionally, while I'm not quite up to date on the its current status, OpenCL looked like it was on pace to become a nice standardized way of talking to accelerators (GPU, FPGA, Co-Processors, etc).


Communitivity 5 hours ago 0 replies      
A good example, and something that will help you learn deep learning, is NVIDIA's Digits program. You can check it out here: https://developer.nvidia.com/digits

I took one of NVIDIA's on site labs at the DC GPU Tech Conference, which used Digits, and would highly recommend anyone interested in Deep Learning do the same. Some of their Deep Learning Insitute labs are available online here: https://nvidia.qwiklab.com/tags/Deep%20Learning.

Digits is also setup to use their AMIs on AWS, as an easy way to experiment without your own modern GPU at home.

Ask HN: How much hours of People / Meeting time does your day have?
11 points by sippndipp  9 hours ago   14 comments top 14
tedmiston 7 hours ago 0 replies      
> As I get older I find it quite energy draining to meet with people

In a typical day 02 hours of meetings working as a developer independent contractor. I don't count occasional DMing on Slack in that figure.

I think this might be more personality-based than age-related. I'm in my mid-20s and have similar feelings about most meetings. The kind of meetings I like and that are really productive for me are short, for a purpose (there are explicit questions one side has for the other), and with a small number of attendees, for me it's typically 13. Working with people you really like to be around I think helps as well.

gus_massa 8 hours ago 0 replies      
To create a poll you must go to https://news.ycombinator.com/newpoll (IIRC, you must have 200 karma to use this).
shaftway 7 hours ago 0 replies      
My current team is glorious: 1 hour every other week.

I've been on teams that average 3 hours per day. Honestly I'd bring a laptop and work through them. If there's that much information to distribute, I probably don't care about most of it.

acedinlowball 6 hours ago 0 replies      
I like to have at most 1 hour of meeting/talking with people time per day and at least 12 hours devoted to work, study, and research. I find this is a sensible balance that allows me to stay on top of my tasks.
fuqted 7 hours ago 0 replies      

Healthy social time would depend on how well you get along with the people.

I'd say a majority of time would with someone / people you get along very well with would be the most healthy.

PaulHoule 9 hours ago 0 replies      
I do sales and development so it is highly variable. I might be making calls 6 hours a day some weeks, and not make any for another week.
sippndipp 9 hours ago 0 replies      
1 hour
sippndipp 9 hours ago 0 replies      
4 hours
sippndipp 9 hours ago 0 replies      
8 or more hours
sippndipp 9 hours ago 0 replies      
2 hours
sippndipp 9 hours ago 0 replies      
3 hours
sippndipp 9 hours ago 0 replies      
5 hours
sippndipp 9 hours ago 0 replies      
6 hours
sippndipp 9 hours ago 0 replies      
7 hours
Ask HN: Solo founder support group?
29 points by bostonhacker  14 hours ago   23 comments top 15
bostonhacker 12 hours ago 2 replies      
Ok - OP here.

Looks like we have at least 5 people interested. Someone might still point us at an existing community. In the meantime I created a slack channel and a forum.

HN does not seem to have a way to PM. Let me know how to invite you?

Best thing I could come up with is for people to send me their email to this throwaway account:52txhw+21xn2yhez22ozgcdc@sharklasers.com

Forum http://solojourney.prophpbb.com/Slack channel https://solojourney.slack.com/

webstartupper 10 hours ago 2 replies      
Find other solo founders from forums like http://discuss.bootstrapped.fm/ and start a weekly mastermind
itamarst 10 hours ago 0 replies      
There's https://barnacl.es as a HN alternative that's bootstrapper focused. Not that much discussion though.
itamarst 14 hours ago 0 replies      
Start your own? I'm in Boston, MA area and working on a side project. itamar@codewithoutrules.com
acedinlowball 10 hours ago 0 replies      
I would love something like this. I am a businessman, entrepreneur, developer, evangelist and I would love the opportunity to peruse my interests with those of a like mind
gtworld 10 hours ago 1 reply      
I'm in! I finally have the startup but started as solo founder. Took me a while to put a team together, took me a while to get seed funding, is taking me while now to scale sales... basically everything takes a while, and a while longer if you are a solo founder. I'd love to participate.
malux85 6 hours ago 1 reply      
Interested too, just mailed the throwaway account :)
iisbum 12 hours ago 0 replies      
Would be interested in something like this too, if you start/find something would love to join too.
singold 10 hours ago 0 replies      
Loved this, just registered to the forum and send email :)
madamelic 9 hours ago 1 reply      
Millionth-ing. I sent you an email for an invite. :)
dhruvkar 9 hours ago 0 replies      
I'd be interested as well.
throwawaz 13 hours ago 0 replies      
if you start a slack channel, I'll join--I have the same issue
deedubaya 12 hours ago 0 replies      
How about a subreddit?
davidlee1435 12 hours ago 0 replies      
i'd be interested in a slack channel as well
adx314 12 hours ago 0 replies      
Interested as well...
Ask HN: Best encrypted messaging app atm?
46 points by sprafa  19 hours ago   69 comments top 20
mrbiber 17 hours ago 2 replies      
At the moment, Signal and Wire seem to be the best options. They have open-source clients, end-to-end encryption, are easy enough to use that even less-computer savy people can be realistically convinced to use them and they seem to offer decent protection for metadata (not technical, but policy-wise).

There are, however, some upcoming developments which will change the situation in the next couple of months:

1) The main matrix.org client, Riot (https://riot.im) has end-to-end encryption now in beta. This will offer Signal-strength encryption, but in a decentralized, e-mail-like system with federated servers. This will create an ecosystem where people are no longer dependent on the goodwill (and solvency) of a single entity to use a good, encrypted messaging app.

2) Briar (https://briarproject.org) is a new (Android-only) app, designed for people with an especially high need for privacy. It works without central servers (through Tor hidden services, but hides the complexity of that), even works when the internet is down (e.g. when mobile networks are shut down during a protest) via Bluetooth and direct Wi-Fi connections, and it offers extra features, like a panic button that deletes all your data. It's in beta at the moment, with a planned release early next year.

TL;DR: Use Signal or Wire for now, but be ready to switch to a better system when available.

lorenzhs 18 hours ago 1 reply      
Security people recommend Signal a lot (e.g. https://medium.com/@thegrugq/signal-intelligence-free-for-al..., Snowden uses it and repeatedly recommended it: https://twitter.com/Snowden/status/661313394906161152, ...). Personally, I use it all the time and it's nice. Most of the initial problems have been sorted out, so I encourage anyone who's had trouble with it before to try it out again.

It has text (one-on-one and groups) and voice calls. Things that could use improvement: group management, switching to a new device. It doesn't have some of the features some people like (stickers and whatnot), but personally I don't care much about those. Video calls would also be nice.

blyuher 18 hours ago 1 reply      
Signal (https://whispersystems.org/) got a good score from EFF. You may find this guide helpful - https://medium.freecodecamp.com/tor-signal-and-beyond-a-law-...

edit: clarification

pmlnr 18 hours ago 1 reply      
This is a vague question: it depends entirely on the protocol you're about to use. I'll try to give a few answers anyway.

First of all, if you want total encryption, you'll need to make sure your connection is encrypted and secured as well (meaning following you back is not trivial), so the whole messaging should go through Tor[1].

There are plugin solutions for bitlbee[2], for Pidgin[3], and many other clients supporting OTR and similar encryptions.

If you want all-in-one solutions, you probably should look at Tox[4], which is a protocol, not just an app, built to be encrypted by default. It's complicated and nasty to use and set up, but it's pretty secure.

Other ideas might be drawn from the prism-break Communications list[5], listing apps like Chatsecure[6] or Xabber[7], both encryption-capable jabber apps.

[1]: https://www.torproject.org/[2]: https://wiki.bitlbee.org/bitlbee-otr[3]: https://developer.pidgin.im/wiki/ThirdPartyPlugins#Securitya...[4]: https://tox.chat/[5]: https://prism-break.org/en/protocols/[6]: https://chatsecure.org/[7]: https://www.xabber.com/

urza 18 hours ago 2 replies      
As an alternative to Signal, I would also recommend Threema.

Mobile only, paid, end-to-end encrypted with in-person verification. Team and infrastructure is based in Switzerland


jaboutboul 18 hours ago 1 reply      
Check out the EFF's Secure Messaging Scorecard: https://www.eff.org/node/82654

Personally I use Signal and Whatsapp from that list.

jedisct1 17 hours ago 2 replies      
mrmondo 18 hours ago 0 replies      
Signal has had several independent security reviews and has come out on top each time.
sgt 18 hours ago 3 replies      
I am under the impression iMessage is pretty secure and I use it extensively as most of my friends and colleagues have iPhones.

Refer to http://www.apple.com/business/docs/iOS_Security_Guide.pdf which specifies that RSA 1280-bit keypairs are used, and the private key is held on the device. So in terms of transit - the protocol should be secure.

The only remaining option would be to question whether iOS is secure/insecure.

Apple claims:"Apple does not log messages or attachments, and their contents are protected by end-to-end encryption so no one but the sender and receiver can access them. Apple cannot decrypt the data."

justanton 10 hours ago 1 reply      
Surprised that no one has mentioned Telegram https://telegram.org/ so far:

Encryption, fantastic stickers, photo editor, tons of interesting channels, probably the best bots platform out there.

+ all mobile platforms and desktop version (as well as web based)

You can also find it's code on github.

desfan 18 hours ago 1 reply      
I personally like Wickr (https://www.wickr.com). Although they're not as open as Signal, they've also passed several security reviews and I do like their transparency reviews (https://www.wickr.com/about-us/blog/2016/08/01/wickr-transpa...)
nye2k 13 hours ago 0 replies      
Kodex (https://kodex.im/) FHE. Client side keys only. Open source here (https://github.com/kryptnostic/krypto)
metafex 18 hours ago 0 replies      
Check this comparison table: http://.eu/bac.html (or the full paper at /bac.pdf)
yousifa 17 hours ago 1 reply      
I am working on a messaging & email encryption platform (for the reason you mentioned) which will finally make encryption easy to use for non tech savvy people. It is based on PGP, source will be available. If anyone is interested in helping, giving feedback or learning more send me an email (in my bio or my username at gmail.com)
mordnis 12 hours ago 0 replies      
I see no one recommending Ring. Is there something particualrly wrong with it?
agounaris 17 hours ago 2 replies      
Aren't all of them encrypted now? I'm using telegram
sidcool 14 hours ago 0 replies      
What about WhatsApp which is end to end encrypted
bert2002 12 hours ago 0 replies      
Signal for sure.
thinkMOAR 18 hours ago 1 reply      
Doesn't say to require to be instant messaging, so my best suggestion:A pigeon with sd card tied to its leg with PGP encrypted data.
biokoda 17 hours ago 1 reply      
The most secure app is Biocoded: https://biocoded.com/home. The reason we claim it is the most secure is:

- Encrypted local on-device storage. We have an always-on mechanism and never store the entire local storage decryption key on the device. It's half on the device and half on the server. In case of lost or stolen device, all data is still safe. In fact you can effectively "wipe" your biocoded app data even if the device is offline by deleting the server part of the decryption key.

- We allow private servers (not for free).

- Double ratchet algorithm for communication.

Ask HN: Alternatives to Fogbugz
13 points by mmaunder  12 hours ago   8 comments top 4
alsetmusic 11 hours ago 1 reply      
I've recently begun using fogbugz (don't love it, but it's been "good enough"). I'm curious what recent events have caused you to reconsider. If the company has behaved in a manner counter to my sense of ethics, I would also consider switching away. Can you please elaborate?
nwrk 11 hours ago 0 replies      
Try Jira and/or whole Atlassian family [1].Or Github now have Projects [2].

Interesting to see what others are using too.

[1] https://www.atlassian.com/software[2] https://github.com/blog/2256-a-whole-new-github-universe-ann...

charlie-r 11 hours ago 1 reply      
We've found JIRA to be the best option for our small (5 person) team. We enjoy the ubiquitous integrations, powerful project management tools and reliability. Keyboard shortcut support is fantastic.

I would warn that (as of 1.5 years ago), JIRA Cloud is very slow. We've since moved to JIRA Server and solved the speed issues.

satysin 11 hours ago 1 reply      
What recent events have I missed?
Ask HN: How do you create good key performance indicators? (KPIs)
8 points by jph  6 hours ago   1 comment top
Ask HN: Is Xamarin worth learning?
175 points by ceeK  1 day ago   158 comments top 53
gressquel 1 day ago 3 replies      
Xamarin Native developer here,I started off by trying to create a Pokemon Go Map app. Although I got off to a quick start, slowly it downed upon me that I started spending too much time finding fixes for Xamarin issues rather that programming. I used macbook as agent and visual studio as IDE. Sometimes the deployment would take 5 minutes! I then had to restart the agent to fix it. As a programmer I am rather a person who runs a code, change a little bit in code, then run it again. If I dont understand things I google it or find the documentation. Thats my way of learning things instead of reading through programming books.

For me Xamarin Native was slow and rigid. I highly doubt I could make 'innovative' apps with Xamarin. Maybe it is okay for people who want simple things like a "to-do app" or somethign that fetches list of images and displays it.

I wanted more and found no solution for things I needed, so I gave up and started xcode (swift + some objective c).

And let me be clear here, if I had spent same amonut of time on xcode as xamarin I would have been iOS dev master :)

Things just works much better. You can do anything you imagine with Xcode and swift. With Xamarin its more like find whatever library is out there and try to create something by combining these. Too many bugs.

This is no sly dig on Xamarin or Microsoft as I use alot of MS products myself. I have also tried phonegap, react native etc. and Xamarin is the best when it comes to cross platform without a question, but none of these can match true native coding (xcode swift/objc)

lanestp 1 day ago 7 replies      
I've been extremely disappointed in Xamarin. The main issue is that you don't really get code sharing. I would estimate that only 25% of the Xamarin project I manage is cross platform code. The rest is this bizarre merger of native APIs with C#. It's difficult to write because of the lack of examples and documentation. It's also buggy, even with simple things like page views.

The real problem is that I can write a native iOS app in a fraction of the time it took to write a Xamarin app. Swift has improved iOS development speed so much I'm not convinced we need cross platform app engines (excluding games).

As for Android, yeah, native Android sucks. Activities and fragments are the worst idea anyone has ever had and no one agrees on best practices. But even with cross platform high levels of abstraction like Unity3D you still need to understand them. So, my current advice is to suck it up and write it native twice. Pick your favorite OS, start with that, and then port the logic.

mathijs 1 day ago 2 replies      
I've used Xamarin for several projects and I greatly regret that decision. Granted, most of my hatred is targeted towards Xamarin Studio and Xamarin.Forms so if you use Visual Studio and build only native UIs then maybe your experience will be better.

However, in my experience, both Xamarin Studio and the build system are buggy as hell. Random or inexplicable build errors, things that break during updates, incompatibilities with official Android support libraries... I find myself doing 'clean project and rebuild' to fix random errors, or switching between alpha, beta and 'stable' channels all the time depending on which one does not have the bugs that I'm running in to.

Xamarin.Forms is simply a disaster. Because it aims to unify the apis for the UIs for various platforms it boils down to only the most common denominator of those platforms. And then makes it worse. Not only is it buggy, it is also very slow and incredibly limited. In our office we're keeping a list of all of Xamarin's silliness we encounter, here is just one of those:

 "Clicking a Button changes its text alignment from center to left-aligned; it requires writing a custom Renderer to solve this."
I admit that Microsoft is usually quick to fix those bugs, but it doesn't instill much trust in the system if you're constantly running into issues. Many days I am literally working 50% of the time on my app and 50% working/fighting my way around Xamarins issues.

I'd love to hear from someone using Visual Studio if their experience is more positive, but my advise is: please stay away from Xamarin.Forms and Xamarin Studio as much as possible.

eonil 1 day ago 0 replies      
What you have to deal with;

* Xcode = iOS bugs + UIKit bugs

* Xamarin = iOS bugs + UIKit bugs + different runtime, language, memory model abstractions + .NET bugs + P/Invoke bugs & overheads + GC inter-op bugs & overheads + C# bugs + slow followup of platform updates

* Xamarin Forms = iOS bugs + UIKit bugs + different runtime, language, memory model abstractions + .NET bugs + P/Invoke bugs & overheads + GC inter-op bugs & overheads + C# bugs + slow followup of platform updates + extra UI abstraction layers + lack of fine level controls & features

FlyingSnake 1 day ago 5 replies      
iOS developer with multiple years of experience of burning fingers in cross-platform development here.

I've tried Cordova/Ionic, Xamarin, Dropbox Djinni, and native iOS development. C++ is the closest I've got the a performant cross-platform solution, even though it go it's own quirks.

The problem with Xamarin is it'll always play second fiddle to quick moving targets of Android and iOS toolchains. In my case the Reactive Extensions support was utterly broken, and Visual Studio kept crashing on MvvmCross, Android SDK updates would make things hell, and I would waste at least 8 hours a week to fight the toolchain. The promise of cross-platform doesn't deliver much as you're trying to tweak your MVVM solution to Android/iOSs whims and fancies, which leave you with a fragile common logic.

If you want to write a TODO list of simple CRUD app, it might work, but for professional iOS/Android development, Xamarin is not enough. Xamarin doesn't free you from learning ViewController lifecycle etc and platform specific implementation details. So you're stuck on a foreign platform, with extra overload of learning C#/F# along with Android/iOS platform overhead.

My Advice: Learn Swift and Kotlin, and do native development. Cross-Platform is a illusion, and the road is paved with dead and failed projects.

ghuntley 1 day ago 1 reply      
Xamarin has unfortunately muddled their branding.

Xamarin Forms is not Xamarin, it is a DSL. You do not need to use it. At its core Xamarin is c# with pinvoke to the underlying native platform implementation. You'll still need that platform knowledge but now you can share the core business logic between platforms.

To get maximum code share you'll need a MVVM framework such as ReactiveUI which is based on the Reactive Extensions and modeled on functional reactive principals check out https://github.com/reactiveui/ReactiveUI/releases/tag/7.0.0 or http://reactiveui.net

zihotki 1 day ago 1 reply      
MS stack developerI think yes, MS invests a lot into the Xamarin platform, so I expect it to become more stable and more developer friendly than it was before. I have a plenty of experience doing cross platform mobile development and I tried several other alternatives, Xamarin was actually the best - easy to start, easy to implement stuff, fast enough on mobiles, has a lot of components, etc.

Also I would like to recommend to focus more on Xamarin.Forms, it's using more modern approach. XAML (it's a xml-derived language) is actually quite good for writing UI part. Add there some MVVM framework and you'd love it.

Edit: fixed spelling

bobbygoodlatte 1 day ago 1 reply      
You might want to look into Exponent. They're a YC startup that build a framework on top of React Native. https://getexponent.com/

The team is made up of a few React core devs and some ex-FB folks. They actually helped organize the last official React conf. The scope of what can be built using Exponent is expanding rapidly. And you can build apps that are virtually indistinguishable from Swift/Java apps.

If you want an example, I'd encourage you to download the Android version of this app: https://li.st/

m_fayer 1 day ago 1 reply      
My experience with Xamarin is mostly on the Android side, so that's what I'll mention. Spoiler: mostly positive, with some big caveats.

In no particular order:

Stay the hell away from Xam.Forms, unless it's improved drastically in the last 6 months. Though I also think the whole idea is misguided.

For Android, go with Xamarin or Kotlin. I would take C# over Kotlin because of the maturity of the language, the tooling around the language, and the ecosystem. Either way, having a powerful modern language will be a godsend.

Concurrency on Android is much easier to deal with in Xamarin than with native. This extends to things like complex orchestration of animations.

You will do backflips trying to get startup-time down. But once your app is in memory performance is basically native-level.

Xamarin gives you some nice framework-level things that native Android doesn't. A good API for sqlite and http. Proper data-binding. MvvmCross and ReactiveUI are light-years ahead of anything that is available in native-land.

Xamarin builds are faster and more reliable than Gradle.

Xamarin introduces its own layer of bugs and glitches. You've added another slice of Swiss cheese to the stack.

Xamarin plugin for Visual Studio is crash/glitch city. Xamarin Studio is tolerable at best. Either way, your tooling will be faster but less feature-rich than Android Studio.

Every time you want to use an existing third party library, you will go through this process: Has anyone done an official binding for it? If yes, use awkward Java syntax in C#. If no, try to find an unofficial binding. If not found, try to bind on your own - 50% chance it just works, 50% chance you fiddle for half the day and then fail. If it's the latter, try to decide if you want to do a code-level port, or abandon your idea. Code-level ports are possible nearly line-by-line, it's slow brainless work.

jmkni 1 day ago 1 reply      
I am using Xamarin.Android currently for a project, and I really like it.

One thing I love is that because it maps so closely to native Android development, you don't need to look specifically for Xamarin.Android tutorials/SO Answers/blog posts etc to learn how to do something.

Most of the time, information targeted towards native Android development will apply to Xamarin.Android also, and you can basically map example Java code to C# because they use the same classes/namespaces.

I'm going to be getting into Xamarin.IOS soon, hopefully the experience is as nice.

calferreira 1 day ago 2 replies      
I'm currently developing an app integrates Google APIs like SignIn and a google product that i plan to make available on all major platforms (Android,iOS,Windows).

In the beginning, i thought about making a hybrid app, because it could save me time on the long run, but starting to developing with Cordova and EmberJS or even Xamarin was frustrating.

My major reason for frustration is the tooling, cordova emulator just sucks (Ripple?) and working with javascript mvc frameworks isn't just for me (too complex IMHO).

Xamarin on VS has some bugs that would only go away if i restarted the IDE in order for things to work. Also, i'm concerning about being dependant to a third party framework.Can they keep up to speed with Google,Apple and MS?

Another valid concern is app size distribution that seems to be considerably higher with cordova and Xamarin.

Since i started on Android, using Android Studio made my life a lot easier and i'm progressing daily and enjoying it, something that was a PITA with other tools.

In my experience i would say that it will be more time consuming (expensive) to develop a single solution for each platform as well as giving support, but the tooling is a lot better, also you can give users a better experience because you end up developing native apps for each platform that can take better advantage of it's ecosystem.

I'll find out in the future if i'm right or wrong.

martinpinto 1 day ago 1 reply      
Ionic 2 is a very promising hybrid approach. It's still in beta but should be out of it soon (better wait until it's released). The current beta version is quite fast. It has lots of components which are beautiful and has great support for ios, android and windows phone. It's JS (angular2) and html based.
cryptarch 1 day ago 0 replies      
I've very recently worked with Xamarin Forms for about 5 full-time months and it was terrible.

My main complaints are:

* It's full of bugs

* The build system is unreliable and mysteriously breaks, which generally takes a full day to fix

* Basic functionality such as merging resource dictionaries (which are stylesheets, kinda) is missing

* No graphical UI designer or preview, so every layout change requires a recompile and deploy before you can see it

* Apps feel sluggish and crash at runtime without specific error messages

* It makes VS crash all the time. I'm not a regular VS user so I'm not sure if VS:CE2015 is a POS or if Xamarin is.

jasallen 1 day ago 0 replies      
Hey Guys, Xamarin University Instructor here,

Obviously I think it's worth it, I learned it well enough to teach others. We have a bunch of free Self Paced Learning modules and videos at Xam University, as well as obviously the paid stuff that pays my salary ;-)

There is a ton of investment and effort from a small team, remember, we've only been with a "big company" a few months, so the improvements come at a blistering start-up pace. If you haven't seen it in a couple years, you should really check back.

If you are going to develop "all platforms" or even just iOS and Android, it is _certainly_ worth a long look. Access to every API you get access to in their native languages and the ability to avoid that language "context switching" pain. Plus, some amount of shared code (varies wildly, 25% - 75% depending on how heavily your app is just about custom UI and animations ).

Because we use the same APIs (except when we have better ones), you can leverage the same documentation and StackOverflow posts when you need to (yes with a little language translation), but you often don't need to because Xamarin has a _lot_ of great documentation as well.

And, as has been mentioned, "Xamarin Forms" does not equal "Xamarin". Although it is a valid choice for developing in Xamarin, it is only one option. Here is a super shallow comparison:

Xamarin Forms: Super fast for super simple UI's and interactions with common elements. It is highly opinionated on what it should do and look like on all platforms. Customization is do-able but starts to increase the complexity of the app quickly to the point where the below would have been a better choice.

"Xamarin" aka "Xamarin.iOS and Xamarin.Android": Use essentially the same development patterns as Native Android and iOS developers and use the same API's (plus .NET library, and many .NET 3rd party libraries). You get code sharing (as noted, amount varies considerably), ability to "think in one language (often including your server, which might also be c#), and access to some additional libraries (because we support both the Native libraries _and_ the .NET ecosystem).

Hope this helps :)

Oh, and a quick plug. Xamarin University is live classes taught by real, very experienced developers who can actually help you learn and understand, so we are, you know, worth asking questions of. Also, we'll be doing a free presentation all day on November 18th as part of Visual Studio Connect, so check us out there and see what you think of Xamarin _and_ Xamarin University!

pritambarhate 1 day ago 3 replies      
Yes it is worth learning. It's a skill which is quite in demand especially from established companies for their business applications.

However, as others have pointed out, Xamarin Forms is a bit of let down.

In my experience, if you try to create custom designed UI (which is quite common in the native apps), then you find that Xamarin Forms is very limited. To overcome this limitation you need to write something called as a custom renderer for each OS you want to support. So it doesn't really save you much time.

Xamarin has something called as Xamarin Labs project on Github: https://github.com/XLabs/Xamarin-Forms-Labs But it's progress has been very slow.

If you have a business data collection / reporting app, where how things look is not very important, Xamarin can save a lot of time while creating cross-platform apps.

However, I wouldn't recommend Xamarin Forms for B2C apps.

gtsteve 1 day ago 1 reply      
I have read some fairly negative comments in this thread. I have experienced many of the negative aspects myself, and while I don't disagree with them, I would still say that it is worth learning this technology.

Microsoft's strategy with bringing a phone to market appears to have failed so they're going to have to take the next best thing which is owning the development tools. I expect the outlook for the software to be extremely bright and if you plan to be a professional mobile developer I strongly suggest learning it.

Of course, this does not excuse you from learning how to develop for iOS and Android natively, but it is a great addition to your toolkit as a developer. It's also another box to tick for the recruiter or hiring manager.

santiagobasulto 1 day ago 0 replies      
We've been working lately with React Native and Exponent (getexponent.com) and we've had an amazing experience. The apps resulting have a great experience and performance. Vue.js and Angular are also making progress towards the Native world. I honestly don't think hybrid apps are going to be a think 2 years from now (of course I could be wrong, this is just an opinion).
misskallisto 1 day ago 0 replies      
[Full Disclosure: I work on the Xamarin team at Microsoft. Im familiar with the Xamarin tools and want to offer my thoughts and guidance on the original post. Opinions here are my own.]

The answer to whether or not you should learn Xamarin depends largely on what you are trying to accomplish. Let me explain.

If you were to approach me as someone interested in Xamarin, I would start by asking what kinds of apps you are looking to build, how complex they are, and how much you care about UI quality and customization. This is to help decide between Xamarin and other xplat solutions, but also between Xamarin native and Xamarin.Forms, our cross-platform UI toolkit. Id ask what you hope to gain from a cross-platform approach, so we can optimize for that. Id ask what parts of your app you are looking to share, and how you plan on architecting your app to allow that.

Id ask how much experience you have with .NET, and if being able to use C# and/or Visual Studio makes you more productive. Id ask if you have an existing codebase you want to connect to. Your familiarity with native iOS development is a plus - the particulars of iOS and Android add to the learning curve, but you cant make good native apps without knowing the basics of the platforms youre building for.

From these considerations, we would decide if Xamarin is a good fit for you. It would be naive to say that Xamarin is the ideal solution for everyone, but it is a very good solution for many people.

At the end of the day, Xamarin is free, and it takes less time to get a handle on developing with Xamarin than it does to read this thread. I encourage you to try it out and decide for yourself.

Meph504 1 day ago 0 replies      
I think where Xamarin shines is in places where the development stack is already .net. If you are starting green pasture, and don't have .net developers already, then it seems to make very little sense.

With that said, I've made a number of apps in it, and it works well enough, but the more abstractions, the more problems, and you want to do anything outside of simple UI apps, you are likely going to have to learn how the native methods work anyway.

dep_b 1 day ago 0 replies      
I tried Xamarin once for a macOS application. I migrated a Forms application by extracting all logic that I could from Forms-specific (code behind files) into more generic classes.

Then I had a .dll that I could use in my Xamarin project. The Xamarin project was razor thin and I only used C# to connect my XIBs or Storyboard (I forgot what I used, but it was in Interface Builder) to the existing .dll calls and a specific type of hardware scanner.

The hardest part was getting that scanner to work, which would be not so easy for me even in Objective-C. But I basically had to create an Objective-C wrapper wrapped in some kind of C# wrapper. It wasn't easy but it was doable.

The hardest part was getting everything signed correctly, since I was using all kinds of layers you usually wouldn't use in "just software" project.

The overall experience was really good despite that the native editor for macOS wasn't that spectacular. I did the meat of my programming in Visual Studio and Visual Studio is a really great tool. Another part was done in Interface Builder which is a great tool in my opinion.

A friend uses it a lot for a cross-platform app written in Xamarin Forms. The thing with Forms is that unless you keep it simple you will run into Xamarin bugs, iOS specific bugs or Android specific bugs in your layouts and that can be challenging sometimes.

I would say that if you would make the UI in native code or storyboards and it still seems like an attractive idea to use Xamarin, use Xamarin. Don't use Forms.

vblord 1 day ago 0 replies      
I've been a life long Microsoft developer. So when I started down the mobile app path, I naturally gravitated to Xamarin. Xamarin allows you to build mobile apps in the best development IDE out there. This is true... but it has it's issues. I've created 3 andoid apps with Xamarin (and tried more), but each time i've run in to bugs or oddities that make life suck. I wish it was better, but if I could go back in time, I would have probably chosen a different language/tool. Maybe Unity if I still wanted to stay with the C#/VS IDE.

One nice thing about it is that all the methods/classes are named almost the same thing as native android. If you want to know how to do something, you can find the android solution and just change a few small things.

So my vote would be to not do Xamarin and to choose a different cross platform development environment. Cross platform is the key. If you do choose Xamarin, I would spend some time and do a little bit of training before jumping in. It's not like the ease of building windows applications in VS.

wsloth 1 day ago 3 replies      
When using Xamarin I always get the feeling I'm writing Java code--but in C#. The cross-platform project is a blessing, it's truly amazing to be able to write code once and use it on all platforms (especially if you use Dependency Injection for even more sharing).

The downside to this is that making a UI seems to even out your gained time--it's extremely messy and even complicated. Code that's valid in C# produces vague underwater bugs in Java code, which makes you keep hacking around until you find a working solution.

Not to mention the docs: some parts of the documentation are completely outdated to the point of not even compiling on an older version of Xamarin. For example, the tutorials on using Google Maps in your Xamarin.Droid application are way out of date, ignoring the fact that the "Google Play Services" component has split off into thirty-or-so components. Some of the most used API's are not documented at all, simply having a "To be added" description.

All in all I find much potential in Xamarin, and I really want to love it, but it's a messy nightmare to use, and it only makes me want to use Java and Swift separately for apps.

sergiolp 1 day ago 0 replies      
At flexVDI, we use Xamarin for building our macOS client (Xamarin.Mac), sharing most of the code with the client for Windows, built with Visual Studio. Both of them, link against a shared library which implements core functionality, written in C.

I must say that, having its own quirks and nuisances (specially in Xamarin Studio, which was pretty buggy until version 6.x), it does the job pretty well.

In fact, when we wrote our iOS and Android clients, Xamarin was still pretty immature. But if we had to rewrite them today, it would be one our of first options, right after using the native frameworks (which ensures the best results, but drastically increases the costs).

jsingleton 1 day ago 0 replies      
I couldn't get React Native working for Android (on either Mac or Windows) but I've been pretty happy with Xamarin. I've written a simple game in Xamarin.Forms that I will be posting about.

Purely by coincidence, I have four blog posts on this out this week. The first one (on React Native and Xamarin) is here: https://unop.uk/cross-platform-native-mobile-app-development...

DevInPainNeo 1 day ago 0 replies      
The Xamarin needs to develop easy and customization should be easy.

Had huge pain in full screen mode dynamically for all the devices.

Calendar with colors forced me to create a new custom control from 0.

To be stable with the controls if you make a tab control in one version should be the same in other versions also, not reinvent and change the wheel.

Easy and clear documentation. Forums all with lots of no one cares why it works int works on my machine stuff.

To new technology and has to get mature and stable. If you are not in the same versions of Xamarin in mac and windows it just not works properly.

Proper error message. I am getting an error like There were deployment errors. Continue. (Not run in administrative mode the vs 2015, closing the emulator or it was opened by other vs before, or you closed the emulator before finished the deploy)There are lots of errors like "aapt exited with code 1" that means there is some bad character in image or in files like -.... or files starts with number.

Also sometimes out of memory exception when loading images larger then 1mb or in android 4.2 larger than 300kb, even going lover to 100kb having problems in 4.2 android.

Proper editor for Xamarin.Forms is a must have if you want to develop. You can't see the design what you are doing with vs 2015.

Also designer is crashing all the time if i open multiple times and make some adjustments.

grabcocque 1 day ago 2 replies      
If you want to develop cross platform mobile apps your only other option seems to be React Native. I'd like to see a good rundown of the pros and cons of each approach.
LyalinDotCom 1 day ago 0 replies      
Just one comment to bring up as many folks still don't know, Xamarin is free for many developers along with Visual Studio Community edition, the full info is here in this announcement from March 2016: https://blog.xamarin.com/xamarin-for-all/
hitgeek 1 day ago 0 replies      
i'm mostly a web developer with C# and JS. I've tried to learn Swift, Xamarin and React Native multiple times over the last 2 years.

With both Xamarin and React Native there was a honeymoon period where everything seemed so easy and great. But at some point I always hit a problem where there was limited documentation, or unsupported features, and that really hurt my productivity and motivation.

The learning curve for Swift/ObjC always seemed much higher, with a lot more upfront investment required before I could make anything resembling a functional app. The iOS layout system in particular was an obstacle, as well as managing the tooling and dev environments.

If I had a free 6 months, I would just learn full native, but keep an eye on React Native. The dev experience in React Native is unparalleled, and it seems easy to drop down to native code (assuming you know it). Also the ability to easily contribute back to the community with NPM and react-native "link", makes me hopeful limitations will quickly be erased.

andyjohnson0 1 day ago 0 replies      
I've been using Xamarin since mid-2012 and have developed a couple of niche imaging products on Android and iOS for my employer, plus some internal tools on Android.

Overall I've been very happy. Code re-use hasn't been stellar, but good enough to repay the investment. We have re-use not only between apps, but also between mobile apps, Windows desktop apps, and our application backends. I also feel I'm more productive than if I had so swap between Java/Swift/ObjC/Andorid Studio/Xcode.

Stability has improved a lot in the last year. Paid-for support was pretty good (esp. guys like @jonpryor), but the self-serve forums can be a bit hat-and-miss. I never had any killer bugs (but then I never used Xamarin.Forms...)

Overall: 85% happy with Xamarin.

alex4Zero 1 day ago 0 replies      
I've spent last 3 years working with Xamarin and native iOS and Android apps.

Xamarin wins if you need something for Enterprise. A lot of entry fields, validation, integrations with SSO, Sharepoint, other rest API. If you use MVVM well, it will lead to ~75% of code reuse between iOS and Android. Even more with XamarinForms. No complex effects, no complex animations, just enterprise.

Native wins if you want to make it more beautiful for end-users and you need to have a lot of customization. For example, customize map, pins and callout views. You will hate everything if you do it in Xamarin. No code reuse here

In general, Xamarin has very great chance to be #1 choise when you choose platform for Enterprise development.

eonil 1 day ago 1 reply      
Such cross platform apps are meaningful only if your product doesn't need great UX. But the question is, if your app doesn't need it, why do you need a native app? It's better sticking to a web-app. Make a web-app and cover all platforms at once.
ParanoidShroom 1 day ago 0 replies      
I loved C#, hated Xamarin forms.It was about a year ago no, but I doubt things have changed that much.There were just so sooo many bugs.I have nothing against them and still think .net is amazing, but that was such a worse experience.I think reactive will win though.
mbruins 20 hours ago 0 replies      
Native iOS and Android developer here. I switched to Xamarin a few years ago. As a native developer i was afraid of Xamarin and that i couldn't harness the power that Swift and Java gave me. However it give's you full control over your apps just as Java or Swift does. Everything you do in Java or Swift can be done with Xamarin in C#! Your knowledge isn't lost, the syntax has only changed. Nowadays i absolutely love it! I work with enterprise companies as a consultant using Xamarin, code sharing is approximately around 80% when using a Xamarin and a framework like MvvmCross! In my opinion Xamarin is the feature of building apps. Please ask any questions you have and i be happy to answer.
bedane 1 day ago 0 replies      
Xamarin is only worth it if you already have lots of C# code you need to reuse in mobile apps(our formerly windows-only company had to)

As a day to day user, I quite dislike it. But rewriting our business code was not an option.

ghuntley 1 day ago 0 replies      
If you are currently doing Xamarin development or are interested in learning more check out the http://weeklyxamarin.com newsletter.
dontJudge 1 day ago 0 replies      
This probably isn't cool, popular, or what you want to hear. But for client-side software, use the native GUI library for each platform. Write the core in C or C++. Abracadabra. It's cross platform, no issues, no bloat, no extra fees. With experience it can be fast to develop too.
Taylor_OD 1 day ago 1 reply      
This is different than your circumstance but back when I was recruiting I helped a Xamarin developer with no professional experience find a gig with a 95K base salary. It's currently niche enough that people are willing to pay top dollar for anyone who can actually work in it. Another Xamarin developer I know consults for 150 an hour. (Although he's probably one of if not the best xamarin guy in Chicago)
dvcrn 1 day ago 1 reply      
Ruby Motion vs React Native vs Xamarin vs Native (Java/Swift) is a question I have all the time. All look interesting and worth learning
vibrato 1 day ago 0 replies      
One downside of Xamarin apps is memory usage. Just launching our app uses >200mb of memory. After doing all we can to avoid memory leaks and excessive usage, we still crash regularly due to running out of memory. (part of this is due to a UIWebView)
davidgrenier 1 day ago 1 reply      
F# is worth learning that's for sure.
paulftw 1 day ago 1 reply      
Isn't Facebook for Android built in React Native? Doesn't seem to be lacking for them. Airbnb and Instagram [1] are also doing alright.


tejasv 1 day ago 0 replies      
We use Xamarin Forms a LOT for our internal and public facing apps. I started exploring it almost 2 years back, because native Android development just sucked, and C# has the async/await keywords, which is simply perfect for asynchronous operations in UI.

It has not been an easy road. After 2 years, I'm finally beginning to reap the benefits. The simple problem is this: this is another layer over the existing layers and it's very hard to get it right, especially if the underlying layers suck.

Just because you've learnt Xamarin Forms doesn't mean you can choose not to learn the underlying native platforms. You can skip over most of the details, but something will always come back to bite you, and then you have to go figure it out. Xamarin Forms works on top of Xamarin Android, that works on top of Android SDK and Android Tooling, which works on top of the JDK, which works on top of the OS you're developing on. So many places for something to go wrong, and usually presents itself in the form of a cryptic error at the top. Developing for iOS is considerably easier.

So there's still a fair amount of expertise to develop if you're completely new to mobile development. Take it for what it is -- an abstraction, and as with any abstraction, any concrete manifestation will have its issues, and you must be ready to roll up your sleeves to figure it out. And it does get keep getting better with every subsequent release.

But it does eventually help -- we have to get the complex bit right once, and then it simply works. Don't approach this like you would approach an Android app -- make sure you understand UI design best practices -- especially reactive design and data binding.

We also have .NET stack, so I'm finally in this beautiful world where all my logic is represented as C# Expression Trees on the server side, that gets serialized and pushed down to our Xamarin Forms Apps. Looking forward to WASM adoption, so I can finally get rid of that JavaScript mess.

So if you're writing a one-time app, and you just want to target Android/iOS, and you don't care how you've done it, no it doesn't make too much sense.

But if you're trying to make a long-term bet, in this awful fragmented device-oriented world, (and having to write the same app twice goes against the very nature of your existence), well that's my bet, I will be cautiously optimistic. If you're on .NET, it's a no-brainer -- there are simply too many other benefits to ignore, and philosophically very true.

The architecture itself (Forms, Xamarin.Android, Xamarin.iOS, Custom Renderers, Platform Effects, Bindings to access native libraries) is theoretically flawless (or very close to it), a work of art -- and I'm a sucker for theory, no matter the real world pain.

shams93 1 day ago 0 replies      
Yes if you're looking to be a primarily .Net developer, it's not so widely used outside of the .Net community but in many .Net shops it's become the standard tool for mobile development.
amelius 1 day ago 1 reply      
How is React lacking for Android?
miguelrochefort 1 day ago 0 replies      
If you're familiar with C# and .NET, it's a no brainer.

Xamarin is nothing more than a C# wrapper around the native iOS and Android APIs. Everything you're familiar with (UIViewController, UIView, UITextField, UIButton, etc) remains the same. The main benefit (other than using C#) is that all non-UI code can be shared across platforms (iOS, Android, Windows, server, etc).

Xamarin.Forms is built on top of Xamarin and lets you reuse the same code for UI as well (using their own abstraction that's similar to WPF/UWP). I would only recommend this for relatively simple apps as you lose some control over platform specific details.

staticelf 1 day ago 0 replies      
If you already is an iOS dev I think it's easier to just also pick up android instead of Xamarin. Altough, Xamarin seems very nice and so on.
UK-AL 1 day ago 0 replies      
Yes, but only Xamarin, not xamarin forms.
wjd2030 1 day ago 0 replies      
Xamarin for business layer logic, native for the actual app.
Zigurd 1 day ago 0 replies      
I have had clients that use Xamarin. This is what I've observed:

1. If you don't use Xamarin and you don't have a team in-house that uses C#, don't bother. You'll be better off doing native development on iOS and Android platforms.

2. Your app won't be as pretty, and it won't adhere to platform native UI conventions as well if you use Xamarin.

3. Xamarin does a better job of it than most but it will still be lagging in access to the latest features.

4. BUT, if you are doing a vertical market app that wants to be cross-platform AND you have C# coders you can apply to that task, Xamarin is the best choice.

There are a lot of places where choosing Xamarin makes a lot of sense. And the people who created Xamarin are excellent. And now that Xamarin is owned by MS, it won't die because it is hard to make money as a cross-platform startup. But as with every other cross-platform tool for non-game apps I've seen, it isn't the best choice in green-field situations.

umurgdk 1 day ago 0 replies      
I've used in production and experience was good. Xamarin Studio is more than enough for development / debugging. Xamarin is very powerful, but usually people taking the wrong direction with Xamarin and using Xamarin.Forms. As like many other cross platform solutions Xamarin.Forms sucks. If you think making a native iOS application is easy with Swift, it is same with Xamarin too. When i develop applications with xamarin (desktop/mobile) i usually look for java/swift documentations or forums for my problems. This way i don't need separate xamarin community. Because you can write the same code in c# easily. Please check my workflow, for any further questions, twitter: @umurgdk

Recommended workflow:0. Never ever use Xamarin.Forms other than quick prototyping. If you develop applications with other cross-platform frameworks, you already know all of them sucks and Xamarin.Forms is not an exception.

1. Create PCL / Shared project for your business logic (also your view models if you're using MVVM architecture). Believe me most of your application is platform independent (except the view layer). Your api communication, storage operations all handled here. See 3rd article to how to make storage/network platform independent.

2. Create native projects for each platform (iOS, Android, Windows) implement native views here (use xcode, android studio if you need visual designer). This part should be exactly the same as your swift/java code. For iOS you're just implementing an ApplicationDelegate class and UIViewControllers as same as your swift code. Same for Android part, nothing special to xamarin just implement your activity classes. At this level you have the full power of your native platform with one exception 3rd party native libraries. It's possible to use (yes i used some swift/java libraries for youtube player) them but really hard to integrate to your project, that part has to be improved and better documented.

3. Your shared code base need native features, for example storage implementations are totally different for each platform, or changing views (navigation) will be implemented differently for each platform. Since shared code base shouldn't know anything about native platform. You should abstract these functionalities with interfaces. For example create a storage interface with methods like saving/reading/creating files. Another example might be network communication. Abstract it as an interface on your PCL and implement this interface in your native project with full control of your platform. Your shared code base only knows how to use that interface. And then each of your native projects should implement these interfaces. At this point dependency injection may help to register implementations easily. Actually that part is what makes you share your business logic. Writing idiomatic cocoa navigation code is much better than using any cross platform implementations, you have full control but in the same time your shared code base using them without knowing anything about the platform.

T3RMINATED 1 day ago 0 replies      
I've used Xamarin for several projects and I greatly regret that decision. Granted, most of my hatred is targeted towards Xamarin Studio and Xamarin.Forms so if you use Visual Studio and build only native UIs then maybe your experience will be better.
WhiteHat1 1 day ago 0 replies      
Microsoft just announced the launch of Visual Studio for Mac (based on Xamarin). It's great if you want to C# development. Have you tried Eclipse or Android Studio?
icemelt8 1 day ago 2 replies      
No one is mentioning how expensive Xamarin is and there is no proper free version.

In the free version you app expires after 24 hours AND it has to be below a certain size, I dont remember maybe 2 MB or something.

To make something you have to cough up a lot of money, and the sad part is this information is incredibly hard to find, you only stumble upon it when you download GBs of files.

Ask HN: Best multiplayer game engines for JavaScript/Node.js 2016?
13 points by ksmtk  11 hours ago   1 comment top
bopcrane 6 hours ago 0 replies      
I don't have a wealth of knowledge on the subject as I'm not really a javascript dev, but I do know that Javascript and unity work pretty well together using it as a scripting language. Where nodejs would fit into this, I'm not so sure, but hopefully someone else can chime in on their experience
Ask HN: How do you handle the business structure and taxes of side projects?
243 points by misthop  1 day ago   133 comments top 24
joshuaheard 1 day ago 10 replies      
Lawyer and entrpreneur here. There are 2 main reasons to incorporate: liability protection and ease of administration.

You don't say what your side project is, but you have to ask your self whether you need liability protection, that is what are the chances someone is going to sue you for damages. If you feel you need liability protection, then you should form an entity. I recommend an LLC in most cases. It is a pass-through entity for taxes which means you pay taxes on your individual return (though it still must file a business tax return). Also buy insurance.

The other reason is ease of administration. A legal entity will have some form of controlling document. In an LLC, it is the Operating Agreement. This spells out the rights and duties of the principals in the business. It also allows for common ownership of the business assets. As principals come and go, the LLC continues on. Finally, if you get big and you bring on investors, they will want to see a legal entity for their protection.

The drawbacks of forming an LLC are the time and effort of drafting and filing all the proper incorporating documents, paying the filing fees (in California $800 per year), and the extra tax forms.

This is a complicated topic and I have given a high level view. There are lots of resources on the internet and in bookstores on this topic. Nolo.com would be a good place to start.

up_and_up 1 day ago 2 replies      
> 1. Have you incorporated?

No I operate as a sole proprietor.

> 2. Do you pay quarterly taxes?

Nope, I pay the penalty since my income and ability to shelter it vary from year to year. The penalty is something like 3% on the total taxes you owe. Not too bad given the flexibility holding your money provides. Maybe I can load up a i401K that year or need to save for some big purchase which is more valuable then just giving the IRS the money.

> 3. Do you list it as other, unreported income on your returns?

I file a Schedule C

I do it all using TaxAct. Super easy and cheap. Helped me to understand taxes as well.

jstanley 1 day ago 2 replies      
I run several side projects[1], with varying degrees of profitably.

I haven't incorporated any of them, I see that as an unnecessary hassle.

I'm in England, and (as far as I'm aware) quarterly taxes aren't a thing here. Until this year the income was negligible enough not to bother paying taxes, but this year I've been keeping track of finances with ledger[2] and I intend to pay taxes as "self-employed" for the first time at the end of this tax year.

And to make sure I'm going in the right direction (not going to run out of money) I add up my net worth, split by category (bank account, peer-to-peer lending, stocks and shares, Bitcoin) at the start of every month and keep track of it in a big text file.

[1] currently focusing on SMS Privacy, read my Indie Hackers interview at https://www.indiehackers.com/businesses/sms-privacy

[2] http://www.ledger-cli.org/

simonebrunozzi 1 day ago 2 replies      
I have been using Stripe Atlas for about 6-7 months now, for a small side project that I spend part of my weekends on.

I have to say that Atlas might be one of the easiest, and least expensive, ways to deal with the incorporation and the rest.

mosburger 1 day ago 0 replies      
I incorporated w/ a basic LLC pass-through back when I started freelancing just for the liability protection. I don't freelance (much) lately, but I've kept the LLC going in the meantime and run my very small side projects as part of that LLC. If you decide to do a side project w/ an LLC you might want to read up on "piercing the corporate veil" and be sure to keep your project's income and expenses separate from any personal stuff. I personally have a completely separate bank account, again from my freelancing days, and keep the two things separated paying myself w/ distributions occasionally. I'm no lawyer or accountant so I don't know if this is "enough," but I figure it can't hurt.
brentm 1 day ago 1 reply      
If you're in the US I would consider forming an LLC in your home state and use that as a catch all entity for your projects. If any of the projects take off you can spin that project off into a different entity type (if you want). LLCs are mostly painless to create & file taxes for.
dicroce 1 day ago 1 reply      
Personally speaking, enough of my side projects never made a dime that I decided a while back to wait until I made $1 before incorporation. This has saved me quite a bit of hassle.
analog31 1 day ago 1 reply      
I make a small electronic gadget, non computer related.

I've got an LLC for basic liability protection.

PayPal is my business system. All sales come in through PP, and I use the PP credit card for my purchases. All documents are electronic. At tax time, I download the entire year's transactions into a spreadsheet, add things up, and enter the totals into a Schedule C.

Rather than filing quarterly taxes, I've simply bumped up the amount of withholding from my regular day job.

edoceo 1 day ago 1 reply      
Entrepreneur here, on my fourth company.

Lawyer and Accountant. Budget about $10k/yr

Start as LLC then move to C-Corp as it grows and takes investment money. Accountant files quarterly federal and state taxes. My wages are taken out on W2.

When smaller the project is an LLC. Accountant still files paper but under $100k only annual. Just take the money out as distribution.

Tax implications from either route. Encourage you to find a trusted advisor on those matters

jayess 1 day ago 0 replies      
99% of the time there's no reason to incorporate in Delaware for your side project. Just form an LLC in your state and it'll be considered a "disregarded entity" on your tax return and you'll report the income/expenses on schedule C of your 1040.

If you're making more than a few grand (net) then you might consider having your LLC taxed as a corporation and enjoy the 15% tax treatment. If Trump gets his way, corporate taxes might finally be reduced and you'll get even more favorable tax treatment.

However, if your intent is to enjoy the income but you expect a narrow net income or loss (lots of expenses can be attributed to your business), then stick with a single-member, disregarded entity, LLC.

chrisgoman 1 day ago 1 reply      
You mentioned "projects" (plural) and the way I have it setup is pretty similar to those recommending an LLC (or S-Corp) in CA.

While the annual cost of $800 minimum tax plus maybe another $500 in administrative fees (accountants, legal, etc.) is real money spent, you can make it back in tax deductions and potential liability. If you have a structure in place (another entity that is not you personally), it is much easier to deduct expenses (less red flags) IF you make an attempt to actually generate income -- the government cannot stop you from being a bad business person :)

If you are in a 50% tax bracket, this could easily be offset by $3000 in expenses such as hosting fees, domain names, costco membership, cell phone, even your car lease. If you are renting, you can possibly deduct some portion (~20%) of your rent (do not do this if you own a house). Get a separate bank account + debit card, a separate credit card (maybe a business one with rewards) and pay everything using that entity. You will end up making "owner contribution" from your personal bank account to your business account every month.

The extra wrinkle if you have multiple projects is that you can further separate your different projects into "DBA"s (Doing Business As) which costs an extra $100/yr (County Clerk Recorder, Publish in Magazine, separate bank account, credit card, domain name) 100% owned by your LLC (or S-Corp). If you shut down a DBA, it will cost maybe another $50. You will need a DBA to open a bank account under that name.

While this may look like overkill, this keeps everything clean and if your side project does take off, you will have some history with the business.

On a day-to-day basis, what I usually end up doing is setting aside a day to deal with all these entities. Most bills are on each "company" credit card and I call all the credit card companies to align the closing date. For example, all my credit cards close around the 22nd or 23rd of every month. On the 12th of every month, I pull up each account and pay them all using one screen of online billpay if you have all your business accounts tied together using your SSN.

Note: I have other companies that are their own entity as they are generating income & have other partners. The setup here is specifically just for my side projects.

atwebb 1 day ago 1 reply      
>have you incorporated?

My state LLC

>Do you pay quarterly taxes?

Absolutely, mail a check with the coupon based on income earned.

>Do you list it as other, unreported income on your returns?

Schedule C and income from business, you pay Self-Employment Tax, SEPs are nice to push off the income to retirement and see a tax benefit if it's supplementary.

I also carry worker's comp and liability insurance, pricey, annoying to setup and deal with but worth it from my perspective.

kkoomi 1 day ago 1 reply      
If you start an iOS app under your own name, then decide to form an LLC after validating your idea, do your reviews and rankings get reset?
walterbell 1 day ago 0 replies      
Has anyone outside the US looked into the tax implications of Stripe Atlas? These articles urge caution:



shakna 15 hours ago 0 replies      
Not incorporated, I operate as a sole trader.

As I'm an Aussie, I register an ABN (being a sole trader is free) and ensure I pay/charge GST. I'm only required to file taxes if the business is earning in excess of $10,000 annually. So most projects that go nowhere don't put any onnus on me to be hyper vigilant.

caspg 1 day ago 0 replies      
For those from EU, which country within EU is the best to incorporate? Estonia with their online residency seems interesting.
jv22222 1 day ago 1 reply      
I recommend that you do not form a company until you have validated the project. I wrote a blog about it that explains why:


cdnsteve 1 day ago 3 replies      
Unless you need the liability protection or have very high income, the overhead in Canada of having a corp is very costly. Hiring an accountant to file corp taxes is usually over $1500 a year alone, then you need payroll, etc. Then you're also paying double tax on that income with a corp. Corp receives income and pays corp tax, pays employee (you) you pay income tax.

If you have a small side project with low risk then I recommend sole proprietor for sure.

In any case, soon as you start generating income you need to track income/expenses, register your business, register for HST and setup a separate bank account. I think TD here charges $25/mo just for that privilege.

So yeah, sometimes a fun side project loses its excitement when your stuck doing paperwork and start adding up the expenses, it's not worth it.

PaulHoule 1 day ago 1 reply      
I have not incorporated. It is expensive to incorporate in Delaware and to do it anywhere else is a big paperwork headache. (You'll need a board of directors, annual meetings, etc.) If you are making less than $20,000 a year it is probably not worth it, if you are making a lot more it probably is.

As for taxes, the penalties are not particularly punitive if you screw up and you have years to manage the situation before anything critical happens. In particular, if you go one year without making quarterly tax payments you will probably walk away with no penality.

moeamaya 1 day ago 0 replies      
If you're based in California, we wrote detailed steps when we incorporated earlier this year: https://dixonandmoe.com/writing/how-to-form-an-llc-in-califo...

The $800/year is indeed painful but it's cost of doing business (and maintaining continuity).

lcall 1 day ago 0 replies      
I'm finding that the book by Entrepreneur magazine called _Start Your Own Business: the only startup book you'll ever need_ is very helpful (no connection with me).

EDIT: specifically, in the index entry for "business structures" and the chapter on taxes. I also bought a few "personal MBA" books, & on marketing etc, but this seemed clearly the best one to start with; those others I think I'll come back to, later.

patio11 1 day ago 1 reply      
Obligatory disclaimers: not a lawyer, not an accountant, am employed by Stripe to write about these sorts of topics, writing here only in my personal capacity, none of the following is advice but rather just a pointer for your future Google searches and talks w/ qualified professionals:

I ran my businesses for the first ~6 years as unincorporated sole proprietorships. The exact mechanisms of doing this are different based on where you are (both at a national and local level). Japan and the US are fairly similar: a sole proprietorship exists as soon as you say it does. (In Japan, you should probably walk down to the local tax office and file a form announcing your intention to file next year if you plan on making more than $30k revenue. They'll know which form to file and you are capable of doing it write if you can read Japanese.) Some US localities will want you to file for an assumed name / "doing business as" (DBA) with your local county clerk or have a city business license -- you can usually find out about that with some quick Googling. I filed a one-page form with Lake County, IL saying that I was doing business as Kalzumeus Software (several years before I had that LLC) and then had to pay ~$50 or so to put an ad in the newspaper for a few weeks saying "Heads up Kalzumeus Software is actually Patrick."

You pay taxes on the profits of the business, not on the revenue of the business, which is a crucially important distinction that many HNers do not know when they start and which many do not properly operationalize even if they know it. I cannot underline this enough: no software entrepreneur I've ever met had a good handle on this when starting. If you sell $10k of software and think "Hmm my profits are maybe $9.5k -- the only expense was a DigitalOcean server" I think your profits are ~$0 after you spend a few hours with an accountant walking through credit card receipts. They're going to walk you through things like e.g. depreciation, apportioning business and personal use of your Internet/cell phone, conferences, business entertaining, (potentially!) home office use [+], etc etc. (A thing your accountant will probably tell you, in the US, is that if you want to decrease your tax burden for 2016 buying a Macbook for the business

You should ordinarily be listing income from a side business as business income, at least in the US and Japan, and not as any other type of income. This is both a) correct and b) gives you the ability to deduct expenses, which is not possible on all types of income reported on e.g. one's 1040 or .

The US has you pay quarterly estimated taxes. There are safe harbors which are likely to cover you in the first year of running your side project. https://www.irs.gov/publications/p17/ch04.html#en_US_2015_pu... The calculation of these can occasionally be complicated; this is a great "ask an accountant" question because this is their bread-and-butter and that particularly calculation is something that most accountants would do for free, on spec, as part of soliciting your business for next year. The penalties for not paying estimated tax in a timely manner are very small -- many entrepreneurs of my acquaintance treat timely tax payment as a small discount to the "real" tax bill and elect to simplify their lives by paying taxes once a year rather than by calculating quarterly.

The chief reason to put a side project in an LLC is to reduce the risk of liability of the side project flowing to you. Most side projects have vanishingly little liability. Ask me for a citation some other time, but even software development freelancing is low-risk -- my insurance company calculates than ~0.5% of freelancers/consultants get sued in any given year. Downside: when they do get sued, win or lose, that averages $40k in costs. If you're doing something where you have non-trivial liability or if the prospect of $40k+ vanishing just makes you unable to sleep at night, incorporate and get an general liability / E&O policy. (Costs $1k or so per year as a floor; mine as a comparable is $3k and has the words "patient health information" and "HIPAA" on it, which contribute expense and underwriting fun times.)

If you have additional questions about this sort of thing, I'm writing about it this week (in my employed capacity) and would love to hear what you're thinking about.

[+] Home offices are historically a contentious deduction in the US, but one of the reasons you have an accountant is so that they tell you consequential things about the difference between the regs as written and the regs as customarily applied like "You don't have an office? Oh, in Japan, we just deduct 40% of your rent then. Substantiation requirement? Ah you Americans are such kidders. There's the law on the books which is $CALCULATION but the tax agency basically feels like you don't screw them too much on being aggressive and they won't screw you too much on bringing out a tape measure to your kitchen.")

ohstopitu 1 day ago 2 replies      
As someone based outside the US (Canada), would it be advisable to incorporate in Delaware?

If not, how would I go about the income from my side projects?

brownedge 1 day ago 1 reply      
Does anyone have experience with incorporating a UK Ltd for such a use case?
Ask HN: If you were to build a CRM today what would your stack be?
51 points by SnowingXIV  1 day ago   72 comments top 35
tyre 1 day ago 3 replies      
Hi! We're building a CRM for local governments (https://romuluscrm.com), in 2016, so I can tell you what we do.

Front end: We use Ember because of its balanced focus on progress and stability. The team behind it is solid and batteries are included.

Application: Ruby/Rails, Elixir/Phoenix. Rails is great for getting up and running quickly, and your problems with #scale won't be on the application later. Elixir (really Erlang's BEAM) is great at quickly spinning up/down lightweight processes that handle raw data. So if you want to build a CRM and, say, manage emails, then it could be a good fit. Or if you want to process a 1,000,000 row CSV import, etc.

Database: Postgres. Binary JSON columns give you flexibility, plus PostGIS for all of your geospatial needs. Structure as much as possible to take advantage of the smart people who have spent countless hours building a world class database. You'll appreciate their focus on correctness.

My overarching advice: push everything as far down the stack as possible. If you can do it in Postgres, do so. Data correctness is your life; better that your DB throws a fit than your application serving bogus data.

Happy to answer any specific questions!

(And I wouldn't be a YC CEO if I didn't take the opportunity to mention that we're hiring! http://seneca.systems/careers)

maxxxxx 1 day ago 3 replies      
The stack is probably the least of your problems. A CRM usually needs to be highly customization so picking an architecture that allows for customization while still being maintainable sounds like the real problem. You can get this right or mess it up with most stacks.
d1ffuz0r 1 day ago 0 replies      
I'd recommend you to watch this talk https://www.infoq.com/presentations/SalesForce-Multi-Tenant-...

I've been dealing with different CRMs recently (SFDC, Netsuite, MS Dynamics, AgileCRM) and I don't think tools really matter, architecture that will allow you to customize everything is the key for CRM

As my personal choice it would be (I'm a full-time Python dev)

* Java/C# (there's nothing really dynamic in crm, entities, fields, etc with different "name" and "display_name" for each customer, IDE would allow me to manage complexity)

* PostgreSQL (no NoSQL, CRM is all about relations)

* Vue.js

* ElasticSearch (with Kafka for replication from db)

* RabbitMQ for offline jobs

od14 1 day ago 1 reply      
I'm just starting a CMS project, which is going to be my first big project. I've done a lot of research, read a lot of material on almost every framework possible, I wanted to make sure I would do the right choice both for my self (ease of use, enjoyable to work with, productive), and the buisness (long term maintainability is the most important thing).

I've gone over Angular 2, React, Vue.js, Ember, Polymer, and so many more. The one I really connected with is Vue. While I realize it's only been gaining popularity in recent months, there are some big companies who start to make use of it in big scale production sites (Alibaba, Laraval, ...), this makes me pretty confident that support will not be an issue.

For the db I would definitely choose Postgres, but I would go for plain old relational tables, and maybe use its JSON features for data which is isolated and does not relate to other data (e.g.saving spreadsheets data).

For the server I would choose NodeJS + Express + SequelizeJS, and I will probably make use of some GraphQL library up ahead too.But honestly, if you choose to make your system a SPA, then your server will not do much of the heavy lifting anyways - it will probably expose an API point and be used as an interface to the database, so I think any back-end stack would fit in. I would also consider Python + Flask + SQLAlchemy, which used to be my stack of choice few years back.

traviswingo 1 day ago 0 replies      
I always go with the stack that I'm most comfortable with, unless I'm using an existing stack at a company I'm working for. Learning a new stack because it's "popular" is a recipe for disaster if you're incorporating into a product you want to use or want to charge others to use. You'll spend time trying to figure out how to do things that you already know how to do in another stack.

Any stack will get the job done. Use the one that yields you a shippable product in the end.

My stack is ExpressJS, AngularJS, PostgreSQL, NGINX, DigitalOcean, Route53, PM2. And I fly through it.

danso 1 day ago 1 reply      
Given that major companies have been built on what was not seen as cutting-edge stacks at the time of conception -- Facebook on PHP, Github on Rails -- maybe Rails could still be the sensible choice? RoR might itself not be fast, but on the upside, its community seems to be pretty forward-facing in building plugins for client-side tech, i.e react-rails [0]

[0] https://github.com/reactjs/react-rails

patrickgordon 1 day ago 0 replies      
I'm building a personal CRM to help me manage my personal relationships (https://simplerm.co)

Stack is two separately hosted apps.

Frontend: react, redux, webpack as a single page appBackend: Rails for an API

Why? I wanted to learn react and redux and I like using Rails for my backend and was comfortable with that.

throwaway2016a 1 day ago 1 reply      
Whatever one gets you to market the fastest with the features you need. Which is usually "what your team is most comfortable with"

For our team that would be Node.js with a React frontend, with probably MongoDB as the database, but every team is different.

As a side note: APIs are very important for CRMs, but as long as you design your API well you can swap out, move around, and refactor your backend as it makes sense.

bdcravens 1 day ago 1 reply      
Why does it need a client-side framework? There's a class of apps where that makes sense, but it feels like more and more that's becoming a default at the expense of complexity and time to market.
cweagans 13 hours ago 0 replies      
Depends on whether or not it will be a SaaS or self-hosted. If it's the former, stack doesn't matter. Just use whatever you're most productive in. If it's the latter, I'd go for something very easy to deploy. PHP, despite it's shortcomings (speaking as a long-time PHP developer here), is very very easy to deploy and PHP7 really doesn't suck. RoR is also a reasonably good choice, as a lot of shared hosts run it with Passenger (or whatever the tech is), so end users can just upload the files and not mess with server config or anything.
sachinag 1 day ago 1 reply      
If you want to be super successful, you build it on Salesforce. Full stop. Two - two! - different vertical CRMs (ServiceMax and Veeva) have BILLION dollar valuations built entirely on the SFDC stack.

It'll answer all technical questions, make it easier to hire, and make it easier to fundraise. Oh! And easier to get customers.

Then think about how people get info into your system - if its email, use Nylas (it's gonna be email to start). If it's voice, use Twilio. If it's directly, then abstract all the complexity and use the right terms for your market.

I don't work for Salesforce, I never have in the past, and I barely use it now. But choosing anything else is nuts.

k__ 1 day ago 0 replies      
I'm building a front-end stack at the moment as a private project.

The main parts are:

- type safety, in the hope that it speeds up development. TypeScript 2 is my main contender here.

- on demand module loading, so I can shrink the initial page loads, will go with Webpack 2, because it lets me use System.import() and automatically splits these imports into it's own files

- interaction flow control completely based on observables, because they compose nicely and with genertic types ease development quite a bit. Will go for Cycle.js (+xstream), because it's rather tiny and really everything there is an observable, data and UI, also it's written in TypeScript. Feels a bit like Angular2-lite.

- WebComponents based UI-widgets, because I think they should be independent from the rest of the application, don't know yet if I'd go for Skate.js or Polymer, maybe I'd even use custom components directly. But I like the Skate API much more than Polymer or the "native" API.

- data retrieval will be based on GraphQL with the hope that it will lower data-on-the-wire if the client has more control on that. I also hope that the GraphQL subscriptions (based on WebSockets) will integrate nicely with the observables. Apollo-Client is my fav here, it's framework independent and written in TypeScript, too. I'll probably use their GraphQL-server, too.

Every part is pretty much independent of each other (besides everything being written in TypeScript, haha) so I think I can use parts of it in future projects.

Server side rendering would be a nice to have, because it would enable the basic app functions on clients without JavaScript.

geebee 1 day ago 0 replies      
This is a big question on everyone's mind right now. "What stack should I use" is always a big question, but sometimes web development goes through a particularly notable state of uncertainty.

Although there are a lot of different tech stacks, I think that most of this boils down to SPA vs integrated views with some javascript. In the rails world, this generally means either Rails plus jQuery, unobtrusive javascript, coffee script, and so forth, vs rails-api and Ember (or another javascript front-end).

Right now, I lean more toward the integrated views than most of my fellow developers. Very few people would take an always/never position on single page apps, so this generally boils down more to how far people want to take them. Some are more eager to apply them in a wider range of scenarios than others.

I personally lean toward the integrated view approach, and I advice caution around SPAs - in my opinion, very much an opinion here, I think they add a lot of complexity compared to the integrated approach, and are still in a state of flux. If what you are writing really is mainly a set of forms that you'd like to enhance a bit with automatic page refreshes, drop downs, drag and drop elements, autofill and so forth, you may want to stick with a more stable stack that isn't evolving as rapidly as SPA javascript frameworks.

There are situations where you can find yourself in a real mess with an integrated view, that would be far easier to manage with Ember or another javascript framework, keeping your backend logic in a relatively simple API. Not sure if that's going to happen in a CRM - they tend to be pretty form-ish apps, but perhaps that's because up to now, difficulties with javascript have led us to think of them that way. The rapid evolution of JS frameworks may, for all I know, have opened up an opportunity for serious innovation here.

One other thing - remember that it is relatively easy to expose a rails method as an API even in the absence of rails-api. My guess is that this is true of most integrated frameworks that provide a view tier. You won't be locked into an integrated app provided you keep logic out of those views! You should be doing that anyway. Also, make sure your tests don't rely exclusively on the views to verify logic that isn't in the view (again, you shouldn't be doing this, but I've seen it a-plenty). That'll keep you flexible enough to transition away should you want to at a later date.

Good luck!

merb 1 day ago 1 reply      
We used Scala, AngularJS and PostgreSQL. Actually except AngularJS we are really really happy. Everything is fast and the development speed is ridicoulus, especially calculations and performing operations on big lists are extremly good in Scala.Actually we are probably introducing Redis (actually we use Akka-Cluster for PubSub) however we think that with Redis we can even be faster and Cache our stuff better.

For our JavaScript stack we will also look into ScalaJS and/or Vue.JS, React and Ember, but at the end we probably handroll our own at this stage, since our feature set is really different from what these provide (we don't need any mobile stuff, really...), at the moment we have zero mobile clients and we looking to build an app for a small inventory service, but thats all.

kyriakos 1 day ago 0 replies      
For a CRM the database is probably more important than the programming language / framework.
cryptos 13 hours ago 0 replies      
My stack would be: Java or (better) Kotlin, JAX-RS, bean validation, JPA, CDs or Guide, Postgres. I've no clear preference for front-end.
jamesmp98 1 day ago 1 reply      
It seems your looking for something A) Simple but powerful, B) scalableThis is all my opinion, but I would take a chance to try out Vue.Js on the frontend. If you want to learn something a little different, Elm looks cool too.

On the backend, ASP.Net core is looking good to me. Although, Go and Elixir are picking up fast. Heck, ignore the haters and use Node if you want.

Finally, don't be scared to use something "old" like Java (EE or Spring) or even Rails (personally, I believe the whole performance fiasco is not as bad as you would think)

neeleshs 1 day ago 0 replies      
If you want a specific CRM solution for your company, anything that your are comfortable with is fine. If you want to make it a platform, and a generic CRM solution that other companies can use, you need to think about APIs, security, customizations (custom entities, custom fields, relations, customizing UI), multitenancy (if you want a hosted solution). The list goes on.

If latter, I would probably choose vuejs/Play2/MongoDB. (Replace Play2 with RoR or Django or anything else).

jasonwatkinspdx 1 day ago 0 replies      
Given that the bread and butter of CRM is lots and lots of CRUD ui, often showing the same data organized different ways, I'd immediately do a spike on using relay/graphql along with your team's preferred backend technologies. I haven't built an application this way yet so I'd love feedback from anyone who has. My assumption is that investing the effort in getting graphql going would pay dividends.
goddamnsteve 1 day ago 0 replies      
1. Ruby on Rails

2. ReactJS

3. Foundation for Rails

4. MySQL

This is literally everything you need to get it off the ground as soon as possible.

This is what has helped me build Allt.in (https://allt.in) and UnderstandBetter (https://understandbetter.co/)

neverminder 1 day ago 0 replies      
Angular 2 or React front end, Scala / Play Framework 2 / Postgres backend for some serious scalability.
eb0la 1 day ago 0 replies      
For me this is a workflow problem. CRMs are beasts that live on top of workflows (both formal and informal ones).

If you can can get a good IBPMS for a nice price probably you have a good solution that will be easily customized.

warpech 1 day ago 0 replies      
Shameless plug (I am one of the devs):

Starcounter (http://starcounter.com) is an in-memory application platform, which is comprised of an in-memory database (ACID-compliant) with a built-in app server.

You can compose a complex business system out of small apps (micro apps if you will). Apps don't pull the data from the db - they run in the db. Multiple apps that run in the same db share the data in real time. Our first clients are retail, CRM and advertising tech.

From dev perspective, we like to call our approach "collapsing the stack". There is no ORM. Your code classes become the database tables. You can use our (Web Components based) approach to create thin client HTML views that bind to the data using JSON Patch. This saves you from running huge amounts of glue code, which is typical for traditional software stacks.

Right now we are on Windows/C#. Linux and macOS is coming next year. Other languages will follow.

pasta 1 day ago 1 reply      
Whatever you choose: for a CRM it's great to separate front end from the back end. So build a very good (REST) API, because CRMs tend to be connected to a lot of other systems.

Edit: looking at what you already considered, maybe: back end: Ruby, front end: VueJS

gorbachev 1 day ago 0 replies      
Personally I would look into using graph based data models.

I'm not sure how universal it is for CRM systems to be all about who knows whom, from where and what's the nature of the relationship, but the ones I've been involved with certainly all were.

anthony_barker 1 day ago 0 replies      
My feeling is that no one wants to use CRMs. The best type of CRM is one that autoloads contacts and information from cellphones, email, chat, accounting systems,linkedin etc.
benologist 1 day ago 0 replies      
The best stack is most likely the last one you shipped a finished product with. Every time you double down on that stack you're getting better and faster at using it, code quality improves etc.
cwyers 1 day ago 0 replies      
If you have to ask a question like that, you probably shouldn't be writing your own CRM.
droidist2 1 day ago 0 replies      
FrontEnd: React, Redux

Backend: KeystoneJS + React, Redux (Universal JS)

odonnellryan 1 day ago 0 replies      
Reach out to me: odonnellryanc@gmail.com

I've built the framework to a CRM (Python and Flask) and I wonder how it'd line up with your needs. I'm not currently using it, as it needs a bit more work, but I'd love to talk to you about your project.

busterarm 1 day ago 0 replies      
Vue.js/Weex or Elm, Elixir/Phoenix, Postgres, OpenBSD.
Entangled 1 day ago 0 replies      
Swift from the metal to the clouds. Everywhere.
bronlund 1 day ago 0 replies      
Check out golang!
lgas 1 day ago 1 reply      
Elm + Postgres.
jwatte 1 day ago 0 replies      
The question is: Solving what problems, at what scale?

If you're a profitable company with a sizeable userbase, just buy Salesforce. It's clunky, it's expensive, but you can find contractors really easily to make it do whatever it is you want. Or you can learn the Salesforce platform yourself and build your final CRM on top of that. Welcome to enterprise IT!

If you're a scrappy start-up, or non-profit, with a small number of people to serve, you can use whatever you're most comfortable with. A single database (perhaps with hot replica,) a single application server (perhaps with load balancing for good measure) and you have everything you need. Use whatever you already know. PHP and Bootstrap? Ruby and Rails? Node and Angular? Doesn't matter.

If I were in the middle area -- successful company, lots of customers, but not actually at the point where I need the Salesforce behind-covering and easy contractor access -- then I would probably use React for the front-end GUI, and Haskell with Warp for the back-end services, hosted on top of MySQL or Postgres, with Redis for data caching, plus some scripts to make creating bread-and-butter tables/indices/queries simpler and less repetitive.Like the poster above, I kind of like having an "escape column" for "annottation data" stored in JSON, although it can simply be a plain TEXT. As long as you don't need indexing, it makes adding new columns easy even if you have a table that's too big to change online.

Ask HN: Can my employer install a 'key logger' on my Android phone?
2 points by DubiousPusher  8 hours ago   3 comments top 3
blackflame7000 8 hours ago 0 replies      
In general, it is best to keep work and personal devices separate. Is it possible they could install a key-logger, absolutely yes if they supplied you the phone. The likelihood that they have is probably small but it depends on how much your company respects your personal privacy.
hexadec0079 8 hours ago 0 replies      
Not input per se, but they can see what sites you visit and apps installed. Getting every keypress is a bit harder to my knowledge. Depending on mobile device management (MDM) software used, they can have granular access to running and installed apps, web traffic logs, and access to memory in an aim to control corporate data. Also, most MDMs running on non-corporate (BYOD) devices run corporate data in a sandbox that is managed by the MDM separately. If you have a corporate phone, than this is usually not true and the MDM can see much more data.

Now, the question of will anyone look at what you wrote is a bit harder to answer and it depends on the size of your organization. My firm will not really look unless there is a HR or legal request or you pop up in some reporting of malicious site visits.

NumberCruncher 6 hours ago 0 replies      
>> I've applied my employer's security policy on my personal Android phone in order to access work email

Do we wanna play the "spot both mistakes" game?

Ask HN: Most of team quit my startup. What to do?
24 points by jfr6fgjk  22 hours ago   20 comments top 16
ones_and_zeros 14 hours ago 0 replies      
I'll tell you what you came here to hear, get out.

Everybody says they are "gearing up for a series A" and many many business never get a series A, never mind one that sounds like it is in such a mess.

Unless you have some insider knowledge (hockey stick growth, profit, etc) that the series A is guaranteed, it's not coming and will be used to bait you along.

xiaoma 18 hours ago 0 replies      
Spend 20 minutes each night journaling your experiences for as long as you stay. This is an incredible opportunity to learn about high-stakes interpersonal conflict from a front row seat.
NumberCruncher 20 hours ago 0 replies      
Maybe your founders deserve a second chance? If I were you I would tell them that I stay but:

- I want to have from now on x% more salary, kind of a PITA bonus because I have to deal with amateurs

- maybe (more) equity, because if I have to tell a founder how he has to do his own job I am not only an employee any more

- to claim the right (maybe include it also in your contract) to refuse breaking sprints

And of course I would start for looking for a new job, just in case.

jrnichols 9 hours ago 0 replies      
Get your own affairs in order. Pay down some debt if you have any. Avoid large purchases. Make sure that you're going to be ok if the wheels come off and things come to a skidding halt.

Overall, are you ok with the job? Do you enjoy what you're doing? Are you learning new things? It's likely that you can't fix the situation with the higher ups, but you can certainly do what you can to make sure that you aren't going to be left stranded.

preetnation 21 hours ago 0 replies      
Don't stay for obligation so ask yourself if you honestly still believe - it sounds like you don't.

If you don't still believe, pull off the band aid and tell the founders you plan to leave. However, tell them you'll stay with them through the new year to 1) buy you time and 2) not burn bridges with them.

JSeymourATL 13 hours ago 0 replies      
> The two founders are often fighting each other for power. Both are micromanaging.

Ultimately, leaving is easy. A bigger challenge is learning how to handle Micro-managing superiors. You'll likely run into some form of micro-manager type anywhere you work> https://hbr.org/2011/09/stop-being-micromanaged

brudgers 12 hours ago 0 replies      
Stay because there is are potential upsides to staying and because those potential upsides are attractive relative to your alternatives. If there's an attractive potential upside to staying through a Series A, then stay because there is an attractive potential upside. That's not staying to 'help'. That might be an increase in value of your equity. But it's probably not going to entail much that isn't already in writing...so to speak.

To me, I doubt you can fix the situation. The founders have to desire to change the culture and make doing so a priority. If people walking out en masse doesn't inspire such change, then it ain't likely to change.

Good luck.

EJTH 16 hours ago 0 replies      
I was in a similar position once, except there wasn't really other devs (only one more than me) and there was only a single leader/owner. I liked the owner on a personal level, but his way of managing the company and the project we worked on finally made me quit when he refused to let me fix some very grief security issues in our code base.
mrmondo 18 hours ago 0 replies      
Contact each one and ask them WHY they left and that honesty will not result in a poor reference.
Silhouette 18 hours ago 0 replies      
Unfortunately, it sounds like the current company culture is toxic and most likely beyond hope of redemption. Unless you have

(a) enough influence with the company leadership to make a real difference to the culture in the immediate future


(b) the company has good prospects if only the management issues could be resolved


(c) the risk of staying is balanced by a huge potential upside for you personally (such as already having a potentially life-changing level of equity AND a bulletproof contract)

then I would suggest you make plans to leave as well. Loyalty is a fine character trait, but so is pragmatism. There's no need to burn bridges or screw anyone, just find a better option, give a reasonable amount of notice, and do what you reasonably can to hand over to whoever is taking over your responsibilities for as long as you're still there.

vkdir 21 hours ago 1 reply      
What are you waiting for by staying?
rralian 15 hours ago 0 replies      
Leave. Sounds like they'll fail and you'll be miserable the whole time. You don't owe anybody anything. That's what I'd do anyway.
mrgreenfur 14 hours ago 0 replies      
Tell them to hire a product manager to lead the dev teams and they should go sell something or do marketing, etc.
dilemma 17 hours ago 0 replies      
AnimalMuppet 11 hours ago 0 replies      
Don't stay for guilt. Don't feel that you're their last hope of making it, and therefore it you quit, it's your fault that they didn't make it. No, it's the fault of the two founders, who can't grow up enough to run a company.

Now, to your question: If you get to the series A, how much do you benefit? Is it enough to be worth the headaches?

rasz_pl 14 hours ago 0 replies      
two _non technical_ founders, that says everything you need to know
Ask HN: What's your references to learn SEO?
36 points by ggregoire  1 day ago   12 comments top 7
iyn 1 day ago 2 replies      
Moz.com has pretty good resources: https://moz.com/learn/seo
joshmn 1 day ago 0 replies      
For content writing, installing Yoast on a WP site does wonders for the whole "what search engines look for when writing content" part. You can score your content as you write and it'll give you actionable numbers "you should have 3 more outbound links" or "this keyword was only found on this page once, try adding it some more".

I'd consider installing it and using it to test my content against, even if you're not using WP as a part of your stack.

rayalez 22 hours ago 0 replies      
I higly recommend Source Wave. Start by watching their youtube channel, and if you like it - entroll into their program. It is by far the best SEO resource I have ever seen.

Also check out Alex Becker's youtube channel(he is the founder of Source Wave). He is really awesome and shares a lot of amazing things.

tylershuster 1 day ago 0 replies      
This is part of a much larger project on which I was working, but this checklist is a good overview of the fundamentals plus some details, ordered by priority:


cblock811 1 day ago 0 replies      
Here are a bunch from QuickSprout. I dont know how updated some are but QuickSprout itself also has guides for SEO as well.


Jugurtha 1 day ago 1 reply      
- Google: Search Engine Optimization Starter Guide [PDF][0]

- Google Webmasters[1]

- Matt Cutts' blog[2]

- Search Console Help[3]

You also gain a lot by listing the major players (Google, Bing, Alexa, etc) and then telling them about your site (domain verification, etc).

Needless to say that good content and being a good citizen help.

[0] https://static.googleusercontent.com/media/www.google.com/en...

[1] https://www.google.com/webmasters/

[2] https://www.mattcutts.com/blog/type/googleseo/

[3] https://support.google.com/webmasters#topic=3309469

eonw 1 day ago 0 replies      
seobythesea.com is always a good read.
Ask HN: How do you show off your portfolio of dead side projects?
6 points by jbrozena22  13 hours ago   2 comments top 2
EKSolutions 12 hours ago 0 replies      
Well, Depending on what kind of projects these are, keeping a copy of the website somewhere is usually a good start.

If it is program based, keeping screenshots or recording of what the software did can also be of help.

My third and final tip would be to write some form of post explaining what the project was and maybe why you think it didn't take off.

wkoszek 6 hours ago 0 replies      
Buy 1 cheap domain for 10 years or get a free domain (.gs), buy 1 cheap hosting for 10 years or use some free hosting (Red Hat Openshift) and deploy all your stuff there + make sure you have README.md in all your projects with single-script deploy script. As EKSolutions said: screenshots, documentation etc.
Ask HN: Consulting options for technologists?
20 points by JeremyYinNY  1 day ago   4 comments top 4
BjoernKW 16 hours ago 0 replies      
Just writing off the cuff here:

Lately, I've been thinking a lot about potential consulting niches in the software industry at large. With many of my clients there seem to be recurring patterns and challenges regarding software development processes and software products:

- dealing with complexity

- improving code quality

- writing reusable code vs. writing disposable code (i.e. code that can be adapted and replaced quickly)

- communication and knowledge transfer

- having to write huge amounts of boilerplate / 'plumbing' code over and over again

Overall, managing complexity, improving communication, doing away with repetitive processes are huge problems. It's not like nobody is addressing them (IDEs, agile processes focussing on communication alleviate those issues to some extent) but these issues probably are still the most prevalent impediments to efficiently developing software that fits the requirements.

So, I think there's an opportunity for consulting companies in terms of reducing the complexity of their software and processes. I'm just not sure exactly how to package this as a productised service.Then again, consulting firms like McKinsey have been doing similar work in the general context of business management for decades - with varying degrees of success.

mooreds 1 day ago 0 replies      
Training might be a good fit for you too. That can open up consulting opportunities as well.

Writing a book (leanpub is a good place to start) can provide you with some credentials.

I've met a few fractional CTOs who work with startups/smaller groups within a company to provide technical leadership.

Join a startup as a CTO (I've seen 2-3 startups looking for CTOs/founding engineers, and I haven't looked that hard). Of course, the issue here is your risk, and I don't know your risk profile at all.

autotune 1 day ago 0 replies      
Have you considered looking for "architect" positions? Cloud Academy has a pretty in-depth blog post about it:


tedmiston 1 day ago 0 replies      
I'm an experienced developer from startups and recently as an independent contractor, and would also like to better understand what kind of tangential consulting opportunities are out there. My hunch is that most are really really niche, i.e., "we need someone who can tune a massive Postgres cluster to run at peak performance next week". I'm really good at doing code audits and helping improve their style but I haven't found a way to package that into a consulting service.
Ask HN: What does a sane workweek mean to you?
4 points by itamarst  16 hours ago   6 comments top 6
dtnewman 9 hours ago 0 replies      
Some various work cultures I've worked in:

1) 70-80 work weeks. Get in at 8:30 leave at 11. Sometimes work weekends. This is typical for some of the more competitive jobs in law or finance. Definitely also applies to some startups, especially for founders and early employees.

2) 40 hour work weeks. People get in strictly at 9 and leave at 5. Much of the workforce operates this way.

3) Variable workweeks going from 40-60 hours. Most startup employees seem to be in this bucket from what I've seen.

In my first job, I did 70-80 work weeks almost every week (a bit lighter around holidays) and it was brutal, but by far the hardest thing were the unpredictability of my hours. I never knew whether I was gonna get out of work at 9pm or 2am or if I would have to work over the weekend, so I could never make plans. This was harder than the long hours themselves.

I worked at a company where people were pretty strict about the 9-to-5 thing. The work-life balance was great, but sometimes it's a hassle if people don't work at all outside of work hours; for instance, when you need something from someone and they don't check their emails.

In general, I think that flexibility and predictability is the most important thing for me in what I consider a sane workweek. I wanna know that if I make dinner plans with my wife, I can keep them. If I need to go to the doctor in the morning that it's not a problem. I don't mind going online for a few hours at night afterwards to make up for time missed, but I hate having to cancel plans.

avitzurel 7 hours ago 0 replies      
Here's mine

This week: http://assets.avi.io/screen-shot-2016-11-15-nxdbb.png

Last week: http://assets.avi.io/screen-shot-2016-11-15-cf4x3.png

The week before: http://assets.avi.io/screen-shot-2016-11-15-p3gt7.png

I typically work around 40-45 hours a week, flexible hours when I work from home and normal hours when I'm at the office (twice a week).

When I am not injured (like now), I have 10-15 hours on the bike a week doing anywhere between 150-250miles a week and racing over the weekend.

I never work weekend, ever. I do however sometimes hack weekend nights after the kids are in bed and I am inspired.

lucideer 14 hours ago 0 replies      
"If the ordinary wage-earner worked four hours a day, there would be enough for everybody and no unemployment -- assuming a certain very moderate amount of sensible organization." [0]

This is - I think - an arbitrary question. What is "sane" in this context is simply what's culturally normative: it varies from place to place, and has no practical or logical reason for being set at any certain number other than the cultural history of that place and happenstance.

People are very good at adapting to and becoming comfortable with what is considered normative.

[0] http://www.zpub.com/notes/idle.html

kzisme 10 hours ago 0 replies      
Flexible hours would be nice, but I would dislike the difference in pay. Although the commute and downtime play a factor into time wasted during my day - I can't really justify a pay cut to work less hours.

I've heard working in chunks of time throughout the week is useful, but also only 4-6 hours a day could be nice.

I doubt any place would pay you the same rate to work less though (most places seem like butt's in chairs types of places)

bbcbasic 10 hours ago 0 replies      
I'd prefer to work 20 to 30 a week.

40 is ok if work is stimulating and there is no commute

AnimalMuppet 11 hours ago 0 replies      
To me:

- 40 hours for almost all weeks. If there's a crisis, that's different, but there better not be a crisis all the time.

- Most of the time, I can actually get work done. I'm not in meetings all week.

- My coworkers' personalities do not need too much debugging. The work culture is not highly dysfunctional.

Ask HN: Do startup accelerators have any correlation with success?
2 points by untilHellbanned  17 hours ago   2 comments top
ig1 13 hours ago 1 reply      
Not sure what data you're looking at but YC is likely the most successful seed stage investor (in terms of ROI) at scale in the world.
Ask HN: What could developers do to help the Ops Team?
7 points by victorcase  1 day ago   15 comments top 5
shermanyo 19 hours ago 1 reply      
I work mostly with deployments and updates to our environments, and the most helpful thing my developers can do for me is provide validation steps to confirm the state after each change.

We've caught issues ranging from expired passwords, missing files / files with incorrect permissions / write failures, sync issues and other obscure gotchas.

Catching a failed step during deployment can sometimes prevent a huge rollback effort and save a lot of time.

toomuchtodo 20 hours ago 1 reply      
Appreciate why conservative technology choices are made when possible (pick boring tech).

Don't rush new features or code into production. Don't deploy anything after 5pm on a Friday.

Documentation, documentation, documentation. If there's a piece of knowledge for your app that's only in your head, you have failed.

antod 22 hours ago 1 reply      
Caring about and fixing inefficient wasteful tests. Stops CI build queues clogging up.

Also, improving production performance/scalability.

And making apps simple to deploy. That's about it for me :)

runamok 20 hours ago 0 replies      
Developers with domain knowledge should often be the first line of response for pages, etc. Noise in logs should be minimized to aid troubleshooting.

Understand why certain security procedures are put in place even though they do create some friction.

horsecaptin 22 hours ago 2 replies      
Learn OPS in order to relieve their workload.
Ask HN: AgTech What's the best way to gain domain knowledge?
3 points by Donmario  19 hours ago   2 comments top 2
pryelluw 16 hours ago 0 replies      
I mean, not wanting to be pedantic here, but the answer is obvious. You need to network with people in tve industry and learn about their problems. Not gonna happen sitting behind a keyboard. That's the kind if market that requires face ti face contact.
JSeymourATL 12 hours ago 0 replies      
It's a huge space, tons of players. Get some base-level knowledge, start attending conferences > http://www.chicagotribune.com/bluesky/originals/ct-midwest-a...
Ask HN: I have just turned down my first contract. Am I an idiot?
7 points by hamtaroPhD06  20 hours ago   21 comments top 11
DrNuke 15 hours ago 0 replies      
Social skills at play here: send them a new e-mail asking for your exact terms. You have seen the employer lowballing you and you feel trust is severed, but it is gamesmanship. You need to practice and learn this fundamental too, so no fear and no regret.
gtsteve 19 hours ago 1 reply      
Whether or not that contract is acceptable or not is down to the local market and the cost of living. I guess it depends where you live in Paris but when I was there I found that my cost of living was roughly equal to London, and 1900 EUR/mo would be equal to roughly 20k/mo which is on the very low end of a developer salary. In fact, 20k/mo was a low developer salary a few years ago and perhaps you could only do entry-level testing for 20k/mo now. I feel that even as a new graduate you can get quite a bit more than that.

But if you're happy to take a lower salary in exchange for some other perk then that's OK. I took low salaries to work for start-ups for the first 4 years of my career and that worked out very well for me, as I was given a higher level of responsibility than most companies and I now feel I am further ahead than my peers.

A company should be able to be very specific about what it will offer you. If not, it might be in the early stages and run by inexperienced people, which can be either a good or bad thing depending on your career goals.

If in doubt, negotiate or reject. It sounds like you're in a comfortable position anyway.

yeasayer 19 hours ago 1 reply      
Don't worry, you did the right thing.

1900 euros/month is peanuts. Even considering that you're fresh CS graduate, you're worth more.

Also, the fact that the contract is "non-negotiable" is a huge red flag. This company doesn't respect their employees. Trust me, you don't want to work in the environment like that.

Keep looking for job, the market is huge, you'll definitely find something decent.

afoot 19 hours ago 0 replies      
Everything in your post tells me the same thing: Absolutely not.

Honesty is a huge deal in any employment situation. If you feel like that before you even start, the likelihood is that it will only get worse.

If you have no immediate need for the money, take your time and find something that feels right. You'll know it when you do.

brudgers 13 hours ago 0 replies      
No. And by 'no', I mean statistically speaking, no.

A job hunt is a variation on the dating problem. Here's a popular account: https://www.washingtonpost.com/news/wonk/wp/2016/02/16/when-...

eb0la 18 hours ago 1 reply      
1900 Eur/Month before or after taxes? There is a huge difference (1900 gross will be about 1200-1400/month after taxes).

20k/yr is a average salary for a junir developer in Spain. 30-35k/yr for an experienced one (5+ years). 35-45k for a manager.

The red flag for me is the lack of information about your role in the company. This means peope in HR don't have a clue about what is going on. Probably you'd be outsourced to a client (a sign of the non-negotiable money amount).

bluelu 13 hours ago 0 replies      

We are currently searching for more developers at talkwalker.com in Luxembourg.

If you are interested, please send me your resume to tbritz@talkwalker.com and reference this thread, and if all is fine, I will you invite you for an interview. It would require you to move to Luxembourg though.

informatimago 19 hours ago 0 replies      
Don't have any regret. If you have any doubt about the contract, IME then even if you take the job, it won't last long (and when I say not long, like less than 2 months).
factorialboy 16 hours ago 3 replies      
You can make 40-50K per year as a junior developer in NL. FYI.
bbcbasic 19 hours ago 0 replies      
Sounds like exploitation. Slightly above minimum wage.
ilovepho 10 hours ago 0 replies      
Do you guys know anything about the average salaries in Germany, especially Berlin?
Ask HN: How would you choose which language to learn?
7 points by tvanantwerp  1 day ago   7 comments top 7
milkytron 1 day ago 0 replies      
If time allows, I'd prefer both. If you have an arsenal of popular languages and unpopular languages (assuming you are sufficiently skilled in them), it will give you a leg up over the competition that knows fewer.

But as the other comment states, B tends to be more exciting, and allows for deeper social connections more frequently. Sure, millions of people might know java and you can say, "Hey I know java too!" But I doubt the conversation will go any further than that. However, if you have experience with a less popular language and meet (or are interviewed by) someone that also knows that language, it will create a much deeper connection.

All in all, do both if you can. If you have to choose one or the other, learn something new and become a part of a smaller community and watch it rise or fall.

tboyd47 1 day ago 0 replies      
I would consider your own personal preferences over purely economic concerns. How does the language "feel" to you? Does the community inspire you?

But if you want to look at it from a purely economic standpoint, the factors you mentioned interact in a complex way. Another one to consider is the salary curve for a language over years of experience. Not every language has the same pay. I would also consider the number of entry-level jobs over the total number of jobs.

I have an article exploring all these factors here if you're interested.[1] Enjoy!

[1]: https://medium.com/@tboyd/which-language-should-i-learn-answ...

itamarst 1 day ago 0 replies      
There's also just whether you have the time to learn it. It's easier to find time and motivation (and maybe even support from your boss to learn it on work hours) to learn something that's tied to your job in some way: https://codewithoutrules.com/2016/04/27/which-technology/
tedmiston 1 day ago 0 replies      
Focusing on one of the most popular languages on GitHub (see the annual top 10 list etc) is a good approach, especially if you don't have tons of industry experience. Once you have that foundation I think it's easier to choose general or specific. I've done a little bit of both but mostly generalist most experienced in Python.

If you're going to focus on a specific language, make sure you're applying it to a problem where it makes sense.

ohgh1ieD 1 day ago 0 replies      
Both, knowing Java/C++/C# opens doors but exotic languages keep them open.
AnimalMuppet 1 day ago 0 replies      
Let me ask the question a different way: What do you need to be learning now for the next five years of your career?

That may not be a language. That may be a programming style (functional? reactive?). It may be a library or a framework. It may be a platform (Android?). It may be a "language" that we don't think of as a language (SQL?).

My current answer is Android (not that I'm making much progress on it...)

Credit where due: I got my version of the question from my wife. She's asked it a couple of times over my career.

dudul 1 day ago 0 replies      
I usually favor B)

First, as you point out, less competition.

Second, these languages are usually a little younger, and there is a chance to be part of a nice community from the beginning

Third, learning an "exotic" language is sometimes a great asset on a resume even if you interview for a position involving a different technology. It shows intellectual curiosity.

Ask HN: Has it become harder to rank on the front page of HN?
8 points by throwawaz  1 day ago   3 comments top
minimaxir 1 day ago 1 reply      
You're hitting a confirmation bias.
Hackers at Berkeley
5 points by baoskee  22 hours ago   4 comments top 2
nixonpjoshua1 7 hours ago 0 replies      
I have found the hacker groups at Berkeley off-putting for the exact reasons you mentioned (kind of silly to have an entrepreneurial club where the end goal for 99% of members is a desk job). The best that I know of are the incubators on campus themselves, though that is a bit different than I think what you're looking for.

If you're looking for classes I'd recommend checking out SCET, the club community around it seems to be growing too.

YuriNiyazov 22 hours ago 2 replies      
Volunteer at OCF
Ask HN: Best things happened to you just because of HN?
9 points by introvertmac  1 day ago   12 comments top 7
cdvonstinkpot 7 hours ago 0 replies      
I crowdsourced a logo design on Crowdspring, which supposedly had procedures in place to prevent plagarism. Resulting from posting a new project here, someone who looked was able to tell my logo had been stolen from a company halfway across the world from me- local to this user, but unknown to me. I wouldn't have known & could have run into legal issues down the road had I kept using it.

Unfortunately Crowdspring ruled it wasn't a refundable issue, so I lost around ~$4k on a design I can't trademark. Would be nice to be able to do something about that, but I currently lack the resources necessary to persue it legally.

sumitjami 23 hours ago 2 replies      
Found a job listing on who is hiring. Was the only way I could find one in my "branch" of tech. Was glad that I applied, and finally got the job.

The whole experience was really amazing.

Thank you HN.

wkoszek 6 hours ago 0 replies      
Got a lot of GitHub stars and useful comments from people who reviewed my stuff: https://github.com/wkoszek
ZeroFries 5 hours ago 0 replies      
I also got my current job, by posting in the "Who is hiring?" thread.
keviv 1 day ago 1 reply      
I just started freelancing and a lot of people contacted me after seeing my comments on various discussions on HN. They usually go through my blog where I've mentioned about all the XSS vulnerabilities I found in various Indian sites. These posts are very old but still validates my experience and my skills.

Indirectly, a lot of good things have happened to me because of HN as well. Things change very quickly in tech space. Yesterday's anti-patterns are today's best practises and best practises of today will become tomorrow's anti-patterns. I owe a lot to HN which keeps me updated with ever changing tech ecosystem. Being a full-stack developer, I've to keep up with both frontend and backend changes happening everyday. Without HN, I'd not have found out lots of things for sure.

pryelluw 1 day ago 0 replies      
Got Jobs, contracts, and most importantly, friends. I've met lots of great people by just sending them a simple email. This community is amazing.
nicomfe 1 day ago 0 replies      
got my first remote freelance project thanks to HN and one of those who is hiring posts!
Ask HN: Why are FOSS projects beginner unfriendly?
3 points by thewhitetulip  1 day ago   4 comments top 3
meric 5 hours ago 0 replies      
How would I make this project more friendly to newcomers? http://github.com/meric/l2l Is it a matter of documentation?
dvhh 1 day ago 1 reply      
As it is for even closed source project, documentation and support are a major pain, and are not as rewarding as aligning correct lines of codes.

I will try to use a gross misrepresentation of a new-comer, but chances are they will ask trivial question that do not concern the project ( or are already answered ), some resources ( developer time ) will be used in favor of answering/guiding the newcomer ( who probably did not have search the usual sources before asking the question ).

Documentation is quite a pain to maintain, as it requires a good grasp of the English language ( mostly ), and quite a lot of empathy to figure out who the documentation is for.Additionally you have to make sure the documentation is accurate as the software change.

Returning the question: do you accurately comment the code you write for fun ?

itamarst 16 hours ago 0 replies      
Ask HN: Will we have time to understand that singularity happened?
5 points by arisAlexis  1 day ago   11 comments top 3
T-A 1 day ago 1 reply      
To call it a "theory" is a wild stretch. The only honest answer is that we don't have a clue, because we don't have a theory of intelligence. Without that, we have no rational way to estimate how far we are from human-like AI or how fast it could evolve past that point, once attained.

My wild-assed guess? Based only on the ridiculous amount of computation needed to simulate neurons, the first roughly human-like AI will stretch the hardware it's running on, and the budget of the organization responsible, to its absolute limit. It will probably not even run in real time, more like 1:100 or worse, with its creators rationalizing that ratio as actually being good for their scientific purposes (a slow-motion process is easier to control, study, debug). Hardware is hard and expensive, and attempts to scale up to real time will only be made once there is a convincing case that there are no easy design gains left to be had. It will take years.

And once that happens, you will have a roughly human-like AI who has no more of a clue how to make itself smarter than you and I do.

usgroup 1 day ago 1 reply      
I don't really get this. What is it that super intelligence is supposed to be able to do that cannot otherwise be done?

We are pretty well compartmentalised against 'superior intelligence' anyway so it seems. Not too many philosopher kings around these last few millennia.

BjoernKW 1 day ago 0 replies      
As far as estimates go (if such an event can be estimated at all) the usual time frame is "a few weeks up to a few months" starting from the first strong AI.

Exponential growth starts very slow, even slower than linear growth at first.

Ask HN: How to improve vim productivity and workflow?
5 points by shincert  1 day ago   6 comments top 4
yefim 1 day ago 0 replies      
Different strokes for different folks but I really love vim split views. I have Ctrl-h, Ctrl-j, Ctrl-k, and Ctrl-l mapped to navigate between my splits with ease as well as using the vim plugin Golden Ratio[1] to make the current focused split larger than the rest. If you really need the tree view, I've heard great things about NERD Tree[2]. Feel free to check out my .vimrc[3] for other neat tricks and plugins :)

[1] https://github.com/roman/golden-ratio

[2] https://github.com/scrooloose/nerdtree

[3] https://github.com/yefim/dotfiles/blob/master/.vimrc

vanboxel 1 day ago 1 reply      
I really enjoy vim tabs for multiple files. Especially if I don't need to see all of them at once, but just quickly switch between them. `:tabnew foo.txt` to open another file, then `gt` to go to the next tab and `gT` to go back.

If you work interactively with data, you might also enjoy Slimux (https://github.com/epeli/slimux), a vim plugin that allows you to send lines from vim to an arbitrary tmux pane. I usually have IPython running in such a pane so I never have to copy+paste. I've got an ebook I've been kicking around describing this workflow in more detail here (http://dvbuntu.github.io/compute/posts/2050/01/01/workflow.h...).

jneumann004 1 day ago 0 replies      
Use the editor that works best for you. I have used Vim every day for almost the last two years and I have learned to work very quickly inside of it.

As far as plugins, if one sounds interesting or useful to you, install it. If it doesn't work out, then you can delete it later. Over the years I have tried all of the popular plugins, but I have managed to whittle it down to 4 plus a couple of language specific plugins

Here are a couple of handy youtube videosVim Navigation Commands https://www.youtube.com/watch?v=Qem8cpbJeYcHow to Do 90% of What Plugins Do (With Just Vim) https://www.youtube.com/watch?v=XA2WjJbmmoM&t=3477s

vkdir 21 hours ago 0 replies      
Vrapper (http://vrapper.sourceforge.net/documentation/) lets you use Vim inside of the Eclipse IDE.
       cached 16 November 2016 05:05:01 GMT