HNHacker News
TopNewBestAskShowJobs

jmstfv

804 karma · joined September 13, 2019

Founder. Webmaster.

Building notionbackups.com and dunningbear.com, also rectangles.app and httpguides.com

Previously, was running a consulting business and sold an uptime monitoring business.

jmstfv.com | https://twitter.com/jmstfv | https://github.com/jmstfv

Reach out (no spam please): hn@jmstfv.com

submissionscomments
jmstfv··on Ask HN: What are your go to SaaS products for startups/MVPs?
I share all tools (and their costs) I use to run my SaaS publicly: https://tryhexadecimal.com/running-costs

Roughly speaking:

* AWS for servers/database/CDN (because I have credits)

* Netlify for static site hosting & forms

* Cloudflare for DNS/domains

* Fastmail for email

* Redis Cloud for managed Redis hosting

* Stripe for billing/payments/company incorporation

* Sentry for exception tracking

* Twilio for SMS notifications

* Sendgrid for transactional email

* Tarsnap for backups

jmstfv··on Show HN: Calculate how long your website/API can be down
> How long did it take you to build the first version?

The calculator or Hexadecimal?

It took a couple of hours to build a calculator, and a couple more to polish it.

Hexadecimal took a very, very long time to build (several months). Engineering-wise, it is the hardest thing I've ever done. It was way over my head when I started.

> How many people?

Just me.

> Which tech are you using for it?

The calculator is a part of the static site built with HTML, CSS, and sprinkles of ES6. I generate it with nanoc.

The web app is built in vanilla Rails stack: Ruby, Rails, Postgres, Redis, Sidekiq, Caddy. I don't use front-end frameworks (yes, I'm a dinosaur). For more context: https://tryhexadecimal.com/running-costs

jmstfv··on Running Costs of a SaaS
If you're using a SaaS in the cloud, you're already locked-in. I'm fine with that unless there are proprietary components not available elsewhere (or not compatible with alternatives).

If you look at the breakdown, you'll notice that I'm using AWS products that are mostly commoditized at this point: EC2 (virtual servers) + S3 (file storage) + RDS (hosted Postgres database) + Cloudfront (CDN). Nothing is precluding me from renting a few servers elsewhere, and migrating some/all my usage off of AWS. I have a bash script I use for server provisioning to make the transition even easier.

When bootstrapping a business on a shoestring budget, not worrying about your main cost center for 2 years is indeed a smart business idea.

jmstfv··on Running Costs of a SaaS
Yeah, it is somewhere around that. I pay a third of that, though, since I'm still using AWS credits.
jmstfv··on Show HN: Calculate how long your website/API can be down
Thanks a lot for your support, Dom. Appreciate it!
jmstfv··on I wrote a SaaS product because the internet made me believe it'd make me rich
Well, that largely depends on the subreddit and the context.

Always read the wiki before posting. When in doubt, ask moderators if they're OK with self-promotion.

Self-promotion doesn't mean you spam links left and right. Try to provide value first, and maybe at the end of your post/comment, link to your website.

jmstfv··on Show HN: Hexadecimal – No-Nonsense Website Monitoring and Status Page Service
Howdy HN!

I quietly launched Hexadecimal several months ago.

The idea is simple: monitoring websites & APIs for uptime, and having a decent looking status page to display status (duh!) of said websites/APIs. On top of that, Hexadecimal also monitors TLS certificates for expiry.

Built on the vanilla Rails stack: Ruby, Rails, Postgres, Redis, Sidekiq, and Caddy. For the curious, I share my costs & tools publicly: https://tryhexadecimal.com/running-costs

I also write a behind-the-scenes blog (https://tryhexadecimal.com/journal/).

Feedback is welcome!

jmstfv··on Ask HN: Why did you leave the tech industry?
> If I ever find a truly unsolved problem

Why do you think you need to find a truly unsolved problem? If all you want is a profitable, sustainable business, look at what companies are already paying for, and build a product that solves one of those problems. It doesn't have to be a carbon copy of an existing product. You can differentiate by price or combination of features. Or you can target a different niche. Competition is a signal that there's money to be made in the market.

It won't be easy, and you will have to learn sales & marketing. But it is doable. If there are X companies in the market, there's likely a place for another one (as long as this isn't a winner-takes-all type of market).

jmstfv··on I'm building a SaaS for just one person
> If you're launching a new product, how do you compete with products that have loads of features?

One way to compete with incumbents, in the beginning, is by niching down, and offering things they can't.

Using your tax software example, it'd make sense to start with a single persona first (e.g. Tax Software for US-based freelancers). By building a tool for the specific audience, you can offer an experience a generic tool can't (i.e. a sole proprietor doesn't care much about corporate income taxes, excise taxes, etc.). You will also have less competition if you decide to go down the paid acquisition route.

FWIW, I have noticed that some subset of my customers only use a particular set of features, and don't care much about the rest.

Another advantage of focusing on a niche is that people with similar characteristics tend to congregate in a handful of communities, which makes it relatively easier to reach them. At some point, you can hopefully take advantage of word of mouth, and that is an incredibly powerful way of acquiring new customers.

Also, when you're the person who built the service, you can offer support to customers in a way your established competitors simply can't. Caring about things is a competitive advantage.

Make no mistake about it: it's going to be incredibly hard. However, by going after the existing market, you minimize chances of market mistake, which is costlier than a product mistake (i.e. you increase your odds of survival).

P.S. Having an existing audience makes things easier. People buy from people they know, trust, and like, even if your offering isn't the best out there.

jmstfv··on I'm building a SaaS for just one person
> Meanwhile I can't even find one ideas.

Here's the cheat code for you: look at what businesses are constantly spending money on, and you will find plenty of business ideas. There will be competition, most likely a lot of it, but don't let that deter you. Competition means there's money to be made in the market, and people are already aware of the problem so that you don't have to educate them on why they need a solution (you will have to clearly communicate why your product is better, though).

When going after existing markets, you basically swap an idea validation challenge with a sales and marketing challenge. Before launching my business, I had a misconception that if you're already solving a problem, you don't have to do much marketing and sales - WRONG! You still have to get in front of existing customers, repeatedly.

Going after an existing market doesn't mean you have to launch a carbon copy of an existing product. You can differentiate by a price (probably not a good idea), by a combination of features, or by having a polished UI/UX/Developer experience. If your competitors suck, you can differentiate by virtue of not being broken (e.g. "Product X just works" can be your shtick). You can also out-market your competition (here's the one thing they don't want you to know: better products don't usually win over better-marketed products).

Why businesses you might ask? Because they're not reluctant to part with their money if you can either save or make them money. You will have a higher average revenue per user (ARPU), which means you can spend more money on acquiring customers (CAC is the term-of-art) than if you were in B2C. You will also need fewer customers to reach your revenue goals, which will translate into less support.

If your goal is to build a sustainable business, I think this is the most optimal approach to take. Just make sure you're not in the winner-takes-all type of market.

jmstfv··on Ask HN: Books giving practical advice on starting a solo SaaS business?
As someone who recently launched a SaaS business, I'd say your rate of learning increases dramatically after you launch a business, however successful it is. It's certainly helpful to learn about other's experiences, but nothing beats launching the business on your own. Even reading books after you launch feels different: you tend to appreciate the advice more, and start noticing all the nuances you were glossing over before.
jmstfv··on Ask HN: What projects are you working on now?
> I’m struggling to parse if there’s any unique offerings compared to statuspage.io. Is there anything I’m missing?

statuspage.io relies on third-party services for monitoring, while Hexadecimal provides monitoring in-house. That way you don't have to juggle between two services.

> I’m especially focused on the UI for the posting of a status page update

Status updates (both automatic and manual) is a feature I'll be shipping next. With manual updates, you'll be able to post them either via a Web UI or a Slack bot.

jmstfv··on How to Find a SaaS Idea
> So, expand your horizons: look at the construction industry, the dentist industry, the fishing industry, the graveyard management industry, the gym pool management industry (these are not made up, by the way).

> But let’s reiterate the big advantage you get from considering building a product in an industry outside of yours (software development): It’s just now you’re going to be operating in an industry which has software problems and isn’t particularly optimized to solve them.

Be careful about this. There is money to be made in those industries, and they might not have as much competition as software for software companies do.

But do you really want to be in those industries? Would you enjoy going to industry-specific conferences and mingling with those folks? If your business gets even a modicum of success, you will be working on it for several years to come.

Market/founder fit is something that isn't talked enough: who you choose to serve matters. What good is your business if you feel trapped inside it?

So the next time you set out to build a business, do yourself a favor and think about this from the beginning.

Relevant thread: https://capiche.com/q/looking-back-would-you-have-done-anyth...

jmstfv··on Ask HN: What projects are you working on now?
A couple of days ago, I launched a major feature for my website monitoring service (https://tryhexadecimal.com), and that is status pages. I have been meaning to do it for a long time since some customers were asking for it, and it will help to differentiate from competition in a major way. I had to migrate my Rails app from Heroku to EC2 to accommodate this change (I need to obtain both a wildcard TLS certificate for my domain and certificates on behalf of my customers).

Over the next few weeks, I will be polishing it and expanding the feature set, but that's not where most of my brain cycles will go, though.

I am still looking for marketing channels that will consistently bring right people to my website every month. A few things I am considering:

* Double down on writing. I do have a behind-the-scenes journal-y thing ... with 2 articles on it. It certainly needs more love. What I want to do:

1. every N days publish a "behind-the-scenes" story about running a one-person business

2. share it on relevant communities, get on some newsletters, and perhaps get some backlinks

3. build an email list

4. get organic traffic from search engines every month

* Double down on SEO. I have picked most of the low-hanging fruit already (technical & on-page SEO). I do have a single webpage that accounts for most of the organic search traffic (pretty low in absolute numbers), however, I feel like I'm missing on several adjacent keywords. Ungood!

* Start writing in-depth technical guides. You know, the ones that would rank for a whole slew of keywords, and bring in targeted traffic to the website. That's what DigitalOceans and Linodes of the world are doing, and I'm sure it does wonders for them.

jmstfv··on Show HN: Sales for Founders
> and not solved already by dozens of other startups or even free software

That used to deter me as well. My line of thinking was: if the problem X is already solved by N companies, why should I launch yet another competitor? Now that I'm wiser, my answer is "because people are familiar with the problem, are already paying for the solution, which means there's a market for that". I can't stress the last point enough. The market that you choose to serve will determine most of your growth (some markets are harder to get into than others, though).

In essence, you swap an idea validation challenge with a sales and marketing challenge. If all you're looking for is building a small, independent, and sustainable business, I believe this is the most optimal approach to take.

For the context: I run a B2B SaaS in a competitive market.

jmstfv··on Ask HN: How did you write your side project's ToS?
Basecamp has open-sourced their policies under CC BY 4.0, which means you can use those as long as you include the attribution: https://github.com/basecamp/policies

When/if you reach a certain scale, it will make sense to find a lawyer who can customize those policies for your business (or maybe even draft new ones).

jmstfv··on Microsoft Teams outage due to expired certificate
I run a SaaS where certificate expiration monitoring is one of the features. But that's more of a nice-to-have feature rather than a primary thing that brings in customers.
jmstfv··on Ask HN: Do you curate links/bookmarks?
I used to hoard bookmarks to never look at them again. It wasn't adding any tangible value to my life, so I got rid of that habit.

What I'm doing now instead, is curating a set of links around some topics, and sharing them publicly. The most portable way of storing and presenting them is either an HTML page on one of my websites or a markdown file mirrored to Github. That way I can be sure that my data isn't locked into some proprietary format by an entity who might get Incredible Journey-ed for whatever reasons.

Here are my personal favorites: https://jmstfv.com/bookmarks

And here's the curated list of businesses publicly sharing their expenses: https://github.com/jmstfv/open-expenses

jmstfv··on Ask HN: How do you manage your bookmarks?
I used to hoard lots of bookmarks to never look at them again.

It was a markdown file full of links, organized by a category, sometimes accompanied by a short comment. A never-ending backlog of articles, papers, videos, past live streams, blogs, and Hacker News threads that I will presumably come back one day.

I no longer save bookmarks and I no longer get a pressing urge to clear my backlog.

Recently, I have published a single HTML page on my personal website (ironically, called bookmarks.html) with a half-dozen of links that I found particularly remarkable. But the purpose here is to share good stuff with folks rather than look at it later when I have more time.

jmstfv··on Ask HN: A New Decade. Any Predictions?
In no particular order:

1/ More jobs will be automated. You can imagine what kind of scary implications that might entail.

2/ Remote work will become more popular, but not ubiquitous.

3/ The Balkanization of the Internet will continue. Smaller governments will try to create their own Internet. Nothing good will come out of it.

4/ Phishing is still an unsolved problem.

5/ More people will care about their privacy on the web (still a minority though).

6/ Web pages will keep growing in size.

7/ Psychedelics will be decriminalized in some countries.

jmstfv··on Ask HN: What are your best shell scripts that you use?
When building a new website, I default to handwriting the HTML, instead of going with a static site generator. More pages lead to more duplication. I wrote a script that recursively goes through the directory, and replaces all occurrences of a string:

    find . -name '*.html' -print0 | xargs -0 sed -i "" "s/replaceme/withthis/g"
The same but with fd:

    fd -e html --print0 | xargs -0 sed -i "" "s/replaceme/withthis/g"
I have a tiny Sinatra app that I use in testing some parts of my Rails app. I either start it in the background or in a separate terminal window (that I close after some time). I have a script that kills a process given its port number (4567):

    kill -9 $(lsof -ti tcp:4567)
jmstfv··on Ask HN: What did you build in 2019?
The biggest thing I have built this year is Hexadecimal (https://tryhexadecimal.com). It is my first SaaS business, so it is a pretty rough endeavor, both on the development and the business side. Built on the vanilla Rails stack. As boring as it could possibly get. I have described in some detail the tech behind it: https://runninginproduction.com/interviews/9-running-a-websi...

Lessons learned:

* If you'd like to start making money on the Internets, don't start with a SaaS

* Making your first $currency will give you a (much needed) morale boost

* If you're just starting out and you're in for the long-term, optimize for learning and building relationships

* Worthwile Things take time

* You probably won't get it right from the first time (whatever it is). It is far more important to keep iterating rather than getting the right answers from the very beginning.

* Most minor decisions won't matter in a few months', let alone in a few years' time. Don't overthink it. Make a fast decision and if necessary, re-evaluate it down the road

* Don't rush to automate tasks

* Build it, and they will do absolutely nothing

* Businesses live and die by their distribution channels

* Running a lean operation (i.e. low-cost) is a competitive advantage

* Having an audience is an unfair advantage

* Writing is a gift that keeps giving. Write more!

* The true validation is people paying you money

After many months (or years?) of procrastinating, I finally published my personal website (https://jmstfv.com). I have been meaning to do this for a long time but kept putting it off for various (artificial) reasons. So, I hand wrote the HTML, copy pasted the CSS from my other projects, and called it a day.

Lesson learned: start with the least painful solution.

EDIT: added couple more "lessons learned"

jmstfv··on Ask HN: Should I Build This?
I run a small, independent software company. First timer.

> I estimate 2 weeks

It is going to take longer than 2 weeks. And it is going be harder than you think.

Building a product is only the beginning. You will have to write copy, find customers, implement billing and charge folks, offer support, do maintenance, build features, again find customers, talk to them, again build features, tweak copy, handle legal/accounting, combat fraud, ride emotional rollercoaster, etc... Not to scare you off or anything, but writing code is only one part of building a software business.

Don't start before you have (rough) answers to these questions:

* Who is it for? No, it can't be for anyone. It can't be for a $LARGE_GROUP_OF_PEOPLE either ("any only service that is focused on user privacy, whistle blowing sites, vpn services").

* What problem does it solve? Do you know anyone who would pay for that?

* How are you going to reach potential customers? This is more important than you think it is. Assuming that you have a product that solves a real problem for a particular demographics (and they are willing to pay for it), you will have to find distribution channels that consistently send traffic your way. It can be SEO (takes a long time), blogging + newsletter(s) (takes a long time), direct sales (?!), marketplaces, paid acquisition (takes skills & budget), affiliates (you have to have an existing userbase for this to work), etc.

> I'm not sure if I should do it or if there's an actual market for it, how can I tell without giving too much away? There is no product like this that I can compare against (maybe because its not that important?)

Competition is a good proxy that there is money to be made in the market. I believe that true validation is people paying for what you have built. You can gather rough signals, but these signals can only take you that far: https://www.derrickreimer.com/essays/2019/05/17/im-walking-a...

Build it, and they will do absolutely nothing. I learned it the hard way.

jmstfv··on Calm Technology
The more generalizable version of "vote with your wallet" is to stop using those services, if possible. Eventually, those companies will either stop engaging in this behaviour or die.
jmstfv··on Calm Technology
It boils down to incentives. When entire business models are built around hijacking your attention and keeping you "hooked" for as long as possible, you can't expect calm technology.

Vote with your wallet.

jmstfv··on Ask HN: Do you contribute to open source? Why? Why not?
I run a small software company, and I occasionally contribute to open source, mostly when a library is missing something that I want.

To be sure that my work won't go unnoticed, I file the issue first and ask maintainers if they'd be open for the pull request. If they respond within a reasonable time frame, I start working on it.

jmstfv··on No to Chrome
I was using Safari up until they have yanked support for extensions. The web is unusable, outright hostile place without a proper script blocker. I can tolerate a lot of things, but browsing the web without uBlockOrigin isn't one of them.
jmstfv··on No to Chrome
I have been using Firefox for several years now. Energy management is still an unsolved problem on MacOS (Firefox 71 on 10.14.6). They have been making improvements in the last several releases, but "Avg Energy Impact" remains around 40 for me (when browsing web pages, higher when streaming video).

I also noticed how different colors are between Chrome and Firefox. That becomes more obvious in the dark mode.

https://bugs.chromium.org/p/chromium/issues/detail?id=44872

jmstfv··on Two malicious Python libraries caught stealing SSH and GPG keys
Another insidious exploit is to hijack the maintainer's package manager account and push the code directly there, bypassing the repository altogether. It doesn't rely on you installing a new package since the hijacked package in question is already a dependency of yours.

I got into a habit of checking both the package manager and the project's repository before updating any given dependency.

https://news.ycombinator.com/item?id=20377136

jmstfv··on Ask HN: How do you make sure your servers are up as a single founder?
That's really interesting, it never occurred to me before (because I've never seen such thing), but it makes sense. A lot of work happens in the background, and folks don't see the value until their website is down or their certificate is about to expire.

I'll investigate that. Appreciate the suggestion.

← PreviousPage 5 of 7Next →