4 ms·
A couple years ago about 2 maybe, I was heavily into Common Lisp and built a similar application for the heck of it. I learnt some pretty important lessons thou
by motsi 8y ago
A couple years ago about 2 maybe, I was heavily into Common Lisp and built a similar application for the heck of it. I learnt some pretty important lessons though. No matter how awesome a laungauge is business decisions and the language ecosystem are practicalities you can't get away from. For example, it's already hard enough to find a good developer for a popular langauge, now imagine one for some esoteric one :SMH:
So to your actual question :) Sometime last year I dusted off the original concept and decided to focus on something I think still has room for growth. I redid the entire code base in Javascript. JS in the browser and Node.js at the back. Everything server-side and client-side is written in ES6 so I can use sytantic sugar like ES6 classes. I find the code to look much cleaner this way.
I use Babel to transpile the client-side libraries to ES5 so that the code runs in pretty much all browsers. Setup deployments to AWS ElasticBeanstalk with scaling rules in place to handle traffic spikes etc. Did a fair bit of profiling using Locust (https://locust.io/ https://locust.io/) to actually determine the correct parameters I should base my scaling logic on.
For the database I make use of Postgres. Originaly I used MongoDB, seems like a natural fit for JS right? Not really. I can't remember the details, but I had so many technical issues. There was also some issue with transaction sematics etc. Bottom line I got fed up and picked Postgres but made extensive use of the JSON datatype since I built a JSON API.