I always thought of serverless as yet another fad to come and go. In my career it seems like these things come in waves.
1. The single page application wave came and we rewrote our Rails 3 app to Angular.
2. Serverless came along and we were building things with Firebase and other services we didn't control.
3. Chat bots came along and suddenly we had automatic pop ups on our site offering help and sales.
4. Microservices came along so we broke Rails into a bunch of services and languages and frameworks.
5. React came along and we replaced Angular.
None of these things ever last. I focus on the fundamentals and keep my core competency strong. Learn old/boring/proven technology. If it has been around for 15 years it will probably be around in 15 years...
When my daughter was three years old and diagnosed with cancer (stage 4). To say it was "life changing" would be an understatement. It fundamentally changed who I am in a way I can't really express. It changed me in many positive ways and negative ways. With regards to my life, I can distinctly draw a line between "pre-diagnosis" and "post-diagnosis".
A second life changing event happened a few years after her diagnosis when I read "Meditations" by Marcus Aurelius. I think the book hit me at the right time and place in my life and helped me really process things that I couldn't before.
I assume you read my submissions and came to that conclusion-- but my service isn't in the ETL industry (although I do process very large amounts of data).
I don't really share my service publicly and maintain a high level of privacy (hence no social media, etc).
It really depends on your customer. In my case, I did cold emailing. I was able to narrow down my customer by their job title/role and knew exactly who to email.
I don't really buy into gimmicks or tricks to differentiate my emails. You can read a lot of "tricks" out there, but they come across as inauthentic to me and that isn't how I wanted to establish a business relationship.
The thing I did was send very targeted emails (to people I honestly believed would benefit from my service) and every email was personalized (and I don't mean using a template and swapping out variables). I sent each and every email from scratch, one at a time.
I did read a few books on sales outreach and prospecting ("Predictable Revenue" and "Predictable Prospecting"). They were helpful and I did pick up a few ideas from them, but I mainly took the knowledge and paved my own prospecting/outreach strategy from it.
With that being said, I haven't done any outreach in over three years. All of my customers come to me, mainly referred to my service by existing customers. Or customers that leave a company and advocate for my service at their new company.
Any advice I can offer are things that seemed to work for me. I got "lucky" and struck gold on my first idea/project (consistently making high six figures over seven years running). I have tried other projects but none were nearly as successful.
1) Find your competitive advantage. I happened to work in a niche industry and learned it inside and out. I became somewhat of a "domain expert". I used that to my advantage and built my product to serve that niche. What can you do better than most people? What do you know inside and out?
2) Serve businesses, not people. People will do anything to not pay. They tend to have more charge backs and most of the "system abuse" I deal with are small time freelancers trying to squeeze my product's free offering. Don't offer too much for free. Don't be a charity. Serve businesses, they pay money.
3) Don't be afraid of competitors. My largest customers are in fact competitors that leverage my service to better their own service.
4) Don't charge too little. When I first started, my offering was incredibly cheap ($9 per-month). It certainly helped bring attention to my offering and I got a lot of customers for it, but they were cheap customers (see point #2 above). Today my lowest offering is $39 per-month and I seem to have weeded out most of the bad apples (though some still get through).
5) Reach out to customers directly. Don't rely on ads, social media posts or other fluff. I haven't done a single ad or social media post (I don't even have social media profiles). What I did do was directly email/message potential customers.
My server's binary is more than a server, it can execute one off tasks, etc. For example I can execute the server binary with special arguments, ex "server --task admin-reports" in a cron job.
For the database I use Postgresql with the standard library's database/sql package (using lib/pq as the driver).
For scheduled emails and tasks, I store them in Postgres and I have a task that is run through my server binary every few hours (ex: "server --task scheduled-tasks").
I have never used Jinja/Twig, but I have used handlebars, ERB, JSX and other similar templating systems.
Overall, I find Go's template system to be a bit clunky but it certainly gets the job done. The template system is fairly minimal so it feels mostly like working with HTML, but it gives you a few tools to use.. mainly passing data down the template/sub-templates and the ability to define template functions/helpers. Minimal... but it's all you really need.
I converted my business from Rails 5 to Go about a year ago and the ERB was fairly straight forward to convert to Go's template system.. it felt like I was mostly converting <% .. %> to {{ .. }} and changing <%= render ... %> to {{ template ... }}
"only" 100 users for testing and feedback? I'd aim for 10 and see if you can achieve that first... it's not that easy to get people to try something, especially if it involves creating an account or installing something.
Some feedback from me, your website is very unclear with regards to what your service actually does.
I was referring to using Nix as a tool for my own development workflow. You are describing a much more integrated and involved use of Nix (Nix packages deployed to production, Docker, etc).
That only cements the idea of avoiding Nix if you're using it for your own development workflow and the entire team/production deploy isn't on board with it.
I honestly love "web 1.0" style niche forums. I wonder if it's the nostalgia of customizing my signature image banner, signature quote and following discussions and arguments, but I love forums!
I honestly considered making a forum (1.0 style) just for myself in a specific technical niche in hopes of people joining.
I have used Nix in the past and enjoyed it... for a while.
I will go against the grain and suggest not using it, especially for native projects of any kind (C, C++, Go, etc). In my case I was doing Go work, but the binaries that are built are usually alright, unless you require Cgo and libc gets linked dynamically (Go will do this without telling you). Suddenly that binary won't work on production! It broke my server and I had to force static compiling so Nix's libc wouldn't be linked dynamically.
This can happen in Go if you do something like look up the user's home directory or cache directory, etc. Suddenly your Go binary is dynamically linked...