2 ms·
> The third project was a complete rewrite of a really badly created dating website written in PHP that would crash at least once a day and would be unbereablly
by yellowapple 4y ago
> The third project was a complete rewrite of a really badly created dating website written in PHP that would crash at least once a day and would be unbereablly slow, built by 5 people for a full year. We rewrote everything in 3 months, with two developers, while adding features that were impossible to do otherwise. One lighting bulb moment is when we realize we could use ejabberd and the xmpp protocol for way more than messages and chats, but also to handle our news feed. Once we launched the rewrite, the website became extremely fast and stable. Since then, the BEAM has always been my go-to platform, even if now I use elixir.
This matches my experience with one of the few opportunities I had to use Elixir in "production". I took over as a replacement "technical co-founder" (in actuality: a part-time contractor) for a startup, and inherited a Node codebase that would take an hour or so to batch process a bunch of student data every night. The Elixir replacement I wrote did it in minutes (even before actually making any effort to parallelize it), and it thus turned into an hourly job and eventually near-realtime. I probably could've made similar gains while sticking with Node, but it would've been a lot harder, and the rewrite ended up creating a lot more opportunities for feature development.
Unfortunately that startup failed to raise funds, and it got put on permanent hiatus once the founder's runway ran out. I also nearly became an exception to the "nobody is ever fired for picking IBM" rule when I migrated the hosting from Heroku to Bluemix (the latter deciding to eat our Postgres container for lunch, prompting a mad scramble to migrate yet again to AWS). Fun times, fond memories.