Back in 2015, I wrote a short note about my new technology setup [hello-world]. Here is a summary of the changes since then.
Infrastructure and hosting:
- Cloudflare as primary proxy/protection/cache, I previously used Nginx on my server as a proxy.
- Cloudflare workers for static sites. Cloudflare’s low-latency workers (cold start 5 ms) using javascript/wasm distributed via CDN. Key-Value storage for static assets.
- Google Cloud Functions for minor functionality. The latency of cloud functions can be high with high cold starts (Often 1 second or more), and their model for scalability allows for less in-memory optimization. They are great for some services and scheduled pub/sub-tasks.
- Google Firebase
- Dedicated virtual server: I still have a dedicated server because stuff is running on it.
- DigitalOcean droplet.
- SSLMate for the certificate.
- Other temporary servers on Amazon EC2
Cloudflare is key in all of this, to bind it all together. Monthly cost breakdown:
- Cloudflare: $5 (Workers w/storage)
- DigitalOcean: $30
- GitHub Pro: $7
- Google Cloud: $0.28
- Amazon Web Services: $2.98
The free tiers on most of these services are fantastic, and services that only consume resources when they in use have a massive impact on the total cost. On the Amazon Cloud9 service, you can also have micro-instances for free. The Go language has a relatively small memory footprint partially due to its native UTF-8 support and fast startup-times, so you get a lot done using the lowest Cloud Functions-tier available. Github recently improved its free offering, so the Pro-level might be overkill. I got it mostly due to a massive amount of private repositories. My old server sticks out a bit as very expensive; it is fast and capable, and you can´t beat a live server for low latency, perhaps except for distributing code globally in a CDN, as is the case with Cloudflare workers.
Technology:
- Hugo with markdown or static HTML for content.
- Javascript for cloud workers and web components.
- Go for API-endpoints and processing.
- R for statistics, but I have stopped using RMarkdown for content management and don´t run the server anymore.
- Python for machine learning scripts
- WebComponents with the Hybrids library.
Tools
- Still using Cloud 9, but it´s now part of Amazon.
- Favorite local IDE is Microsoft Visual Studio Code, used for Go and Python.
- Rstudio for R, it is just so simple to do some stuff in it.
- Github Pro for version control.
- Evernote for capture.
- Paper and pen.
- More mechanical pencils than five years ago. My favorites are:
- Pentel GraphGear 1000 for its awesome clip and precision.
- Kuro Toga Advance for notes.
- Notebooks: Moleskine, Leuchtturm1917, or Rhodia, but I have changed from hardcover to softcover.
- Clip Studio Paint for graphics and a Cintiq 16