A years worth of work… just gone. One simple misunderstanding of how the software worked. It was all gone. No backups. It's the cloud. You shouldn't need backups. SaaS offerings do that for you, right?
Hello Shopify Unfortunately, not in the case of Shopify. One of the nice things about Shopify, is that they allow for external parties to build tooling and sell their wares to “enhance” the Shopify platform. This also has a downside to it.
Intermission For the last month, things have been a little busy. My wife had been traveling for 2 weeks, which meant I got to work from home to keep up the house and family. Once she was back, it was my turn to travel for work. Four days in Boston, home for two, then four days in New York for a conference along with some face time with a partner company.
A little bit ago, a friend and I attended a RedHat event here in Montreal. Part way through one of the talks, an app was mentioned and demonstrated that had the “Oh! That's pretty close to what I was thinking”. In this instance, it was Apicurio. They let you design your API using a GUI builder which produces an OpenAPI spec file. I love this idea. We should all be using OpenAPI.
Sometimes we just need “factory” services. I'm not talking about the typical Java-style factories you're used to. I'm talking about simple CRUD services for fairly simple data models that feed hundreds, if not thousands of “downstream” processes. Using JSON, one example of an overly simplified data model could look like:
{ "source": { "vendor": "Some Institution", "filename": "file123.xlsx", "correlation_id": "b2eefb6e-779a-4c08-b0a5-006c401ea2fa" }, "some_record_name": "Abc 123", "amount": 1022.41, "different_amount": 99.2, "applicable_date": 1557965341334661013, "created": 1557965202009530561, "created_by": "some_user", "updated": 1557965202009530561, "updated_by": "some_user" } A lot of different teams at a company probably need this data, but not all the teams have shared services nor using services half the time.
It's no secret that I'm in love with Go. It's also no secret that I really, really prefer MongoDB over most other datastores, with the exception of some key/value stores like bboltdb. This is by no means a sales pitch for any of these. At the end of the day, know your tools well and get the job done. I will work with anything that makes sense for the situation. Now… with that said, Go and MongoDB are my goto (no pun intended) for prototyping as well as “get s**t done” (within reason).
My wonderful wife has been trying to convince me to start a blog for years. I've finally caved, mostly because I need a place for notes as I have a tendency to forget things. This first one will be just my notes on my setup. The “what I use and how”.
The What I use Hugo for site generation, templating, and serving the content. Yeah, I know it's for static generation and you're meant to host it on something like nginx, but…