147 karma · joined November 1, 2021
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...
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 don't really share my service publicly and maintain a high level of privacy (hence no social media, etc).
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.
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.
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").
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 ... }}
I use embed to embed all assets in the binary itself. "go build" and then "scp" the binary to the production server and "systemctl restart appserver"
People that are lazy and pretend are not limited to offices or remote roles.
Some feedback from me, your website is very unclear with regards to what your service actually does.
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 considered making a forum (1.0 style) just for myself in a specific technical niche in hopes of people joining.
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...
I took "family leave", which is possible depending on which state you live in (within the US at least). I was able to take three months of leave (at a reduced pay).
I lived in the hospital the entire time. I never went back to work though, I just couldn't find the focus, time or effort to be productive in a work/team environment. I honestly lost all "care" for work. I couldn't push myself to care at all and work on something when I was sitting in the same room as my daughter and seeing what she was going through.
My daughter is now 6 years old and I still haven't gone back to work.
What has helped me? Not much.
Seeing the care and love from a few friends and family members has certainly helped me and my family, but at the same time I have grown to dislike a lot of people that weren't around at that time. I feel like I learned who my real family and friends are.
If you're wondering how the friends and family helped... they were simply there, repeatedly. They helped us when we were in New York for treatment far from home. They quit their job and flew from their home country to live with us for over a year to help take care of our other daughter while we were living in the hospital.
Reading Marcus Aurelius' Meditations (Gregory Hayes translation) helped me really think long and hard about my life and what matters (and what doesn't matter). It certainly helped me push forward.