I find side projects useless. At work I solve real problems for real people, often big problems. Some toy project doesn't feel the least bit meaningful, and any idea I have for something that isn't just a toy is something 100 other people have had as well.
So I help with their implementation instead. Instead of building useless tech demos or starting primitive games I'll never finish, I look up the projects I do actually find useful and see what they need help with.
Eight years ago I was really bored at work (they just asked for a couple of SQL queries a day) so I made a poor man's automated trading system for government bonds. The basic idea was to camp for new bonds and look for new opportunities as soon as they presented themselves. I had also done some rudimentary backtesting to prove some simple strategies for buying and selling. I made no money off of this, it was just for fun. During development I learned how to acquire, store and process financial data in a live streaming way as well as how banks handle things, what the fees and taxes are, etc. Also helped me learn web automation, making and deploying my own services to my own servers, etc.
A year ago I started working on hedge fund software and all this experience was a huge help. So if you are busy at work making tools, great. But the benefit of side project stuff is pretty situational.
This is probably the first and only time it was mentioned in public. I do have a private bitbucket graveyard where it resides. Oh and this was done when mongodb was still a thing, so I have some of that going in there for finding sparse stock correlation matrices. And ruby was everywhere at the time, so the bank interface was created in watir instead of puppeteer.
Interesting. I've been working on automating some personal finance Google Sheet stuff trying to use watir to automate pulling stuff from Mint. Did you find watir useful for things like this? Or would you say there's ultimately better options for a personal Rails app?
google sheets is awesome, they even let you reply to rudimentary get requests and define your own functions with google script. I think it is a hidden gem.
Watir lets you host your own headless firefox or google chrome on a cheap server thanks to the headless gem. All headless does is to start Xvfb and let you execute the browser in it.
What I really like in watir's interface is the wait_for functionality which you can sprinkle everywhere in order to wait until a button or a dropdown is actually rendered by javascript so you can click on it once it is queryable.
These days I use websockets and chrome puppeteer protocol to talk to the browser. It is somewhat faster and more robust than the chromiumdriver, but if I had to use watir again, I wouldn't mind it.
So I help with their implementation instead. Instead of building useless tech demos or starting primitive games I'll never finish, I look up the projects I do actually find useful and see what they need help with.