7 ms·
I'm a business owner currently doing what the parent says to do, and the parent is exactly correct. I want a business that can support my wife and me; 500k is
by gavinhoward 3y ago
I'm a business owner currently doing what the parent says to do, and the parent is exactly correct.
I want a business that can support my wife and me; 500k is my target, and it would be a great situation for us because I would have a great work/life balance (based on how much time I spend right now).
But if I took money, the investors would clamor for more, and the stress would probably kill me.
- ejlxsh 3y agoWhat are you doing to try hit that 500k target? Running a SaaS, consulting, etc?
- gavinhoward 3y agoI am giving away my code as FOSS, so I'm doing the following, in this order: 1. Charging for bug reports or feature requests. 2. Support. (And I have great examples of public support as marketing.) 3. Consulting. (This would be exclusively to help companies trying to use my software, but unlike support, it would be about writing the stuff that uses my software and ensuring the client understands it so that I could do a handoff. The result would be carefully commented and documented code, probably just short of literate programming [1].) 4. SaaS. (If I did this, the server might not be FOSS, but the client would be, and it would use encryption.) [1]: https://en.wikipedia.org/wiki/Literate_programming https://en.wikipedia.org/wiki/Literate_programming
- jjice 3y agoCan you say what the software is? I do like the model you have laid out.
- gavinhoward 3y agoIt depends on what companies have interest in. Below is a list of the ideas I have. * A build system that is also a package manager like Nix, but usable by mere mortals. Also, it will have an easy way to restrict what builds can do. This one is almost done (well, usable for early adopters, not done); my HN annoucement should be in about three months. * A VCS that, like Fossil, is self-contained with a bug tracker and everything. It will be able to handle binary assets and HUGE files. It will also be easy-to-use. (I'm going to be testing it on my non-technical wife without telling her how. Once she can use it naturally, I'll probably have a good model.)
- myaccountonhn 3y agoIs the vcs offline first?
- gavinhoward 3y agoI'm not sure what you mean by "offline first." Can you elaborate? (I've heard people use that term in multiple ways.)
- myaccountonhn 3y agoWith Fossil I pull in the full issue tracker and forum and have it stored locally, if I'm offline I can then make my changes, comments etc. and when I'm online it all syncs.
- gavinhoward 3y agoYes, it will be offline like that.
- jcrites 3y agoI’m definitely interested in the build system / package manager. I have (idly, in a daydreaming sort of way) considered building something like it myself. I tried to get into Nix recently, but found it difficult to accommodate my workflows within its uncompromising nature. My goal was to set up a reproducible development environment, where anyone at my company could easily get set up to work on our code with a single (or concise set of) action(s). I also tried to use home-manager, which I have heard might have been a mistake. Anyway, Nix is really only designed to manage the entire world. I wasn’t able to use Nix to build a development environment where other developers and I could work inside of it using our existing tools and workflows, including other package managers that want to mutate things — it seemed that Nix was all-or-nothing. This was too disruptive and a large barrier to adoption for me. I would love a tool designed for reproducible builds and development environments that can compromise, and do as much as possible immutably while allowing for local mutation on top. That can be a package manager, but also make it easy to use existing package managers too — with the understanding that these other package managers are typically also able to reliably reproduce a build, within their own mutable state. It’s OK if this potentially needs to mutate “the system” in the process to try to reach a goal state (e.g. installing system-wide package managers, xcode, etc.) Nix really did not seem to be designed to allow me to use other package managers inside it like npm or cargo. It has some support for directly vending packages from those via Nix itself, but that’s not what I want right now; it’s too disruptive to my workflow. We already have all of the build reproduceability that we need via those package managers and via a container based build process. Still, a fair number of development and operational tools are required to develop the software, and I would really have liked a one-click way to set up a development environment that doesn’t require a container (which is not native on Windows or MacOS). (I admit that it is possible that this idea fundamentally could not work for technical reasons, but it seems plausible that it could.) Another challenge that I had was with the complexity of the Nix config and file format. It’s basically a programming language, and there isn’t always one right way to do something. That made it considerably more complicated to solve tasks that would be just a single line command if I was using e.g. Homebrew to solve the same goal (brew install xyz). From a user experience perspective, I would like a tool that provides a simple command line porcelain for mutating the state of the environment, while tracking it immutably under the scenes, so that it’s reproducible. For example, “cmd install foo” should add the “foo” package to my environment (and rebuild it). So at the end I have a declarative description of my environment contents, but I can build that configuration using a sequence of familiar install commands. I admire what Nix is trying to do, and see a lot of merit to the approach for defining an entire machine’s state immutably. For managing and defining the state of servers, it seems like a great idea. However, the cost to adopt it seems high, and the value would probably be marginal in our case, since we don’t need to manage servers to deploy software (instead deploying only containers); and since existing package managers provide a way to build those containers reproducibly. But containers aren't ideal for defining the tooling used by an interactive local development environment.
- shyn3 3y agoFeel free to link your product. Self promoting is allowed
- gavinhoward 3y agoThanks! But it's not ready yet. My HN announcement will be in about three months.
- raybb 3y agoCan you elaborate on charging for bug reports or feature requests? Do you charge per report / request? Or is it a subscription (storygraph has this model)? It seems like a great idea to lessen the workload and focus on people who actually might turn into customers.
- gavinhoward 3y agoI will do either; it depends on what will work. And that will only be for companies. For individuals and their personal projects, I'll respond when I have time, for free, for bug reports. (Not feature requests, obviously.) This is to build a clientele of people that might bring my software into their work. And it will reduce bugs.
- danielvaughn 3y agoSorry to pry, but "will"? Does that mean the business model is yet to be validated? Not pushing back just curious - if it's worked out for you I'd be interested in hearing more, because it sounds like a business model I could adopt for a FOSS project I'm working on.
- gavinhoward 3y agoCorrect. Sorry. That's why I have four ways to try to make money.
- danielvaughn 3y agoBest of luck!
- djaro 3y agoI don't get why anyone would pay for bug reports. Users reporting bugs is doing the developers a favor, they are doing QA for free.
- gavinhoward 3y agoNot individuals, but companies. And the reason why is because companies aren't doing QA; they have things that need to get done.
- bko 3y agoGood luck, but I don't know many business owners who have a great work/life balance. I don't think it ever gets easier really. It's like writing software. It's never "complete". 500k revenue doesn't leave a lot of room for outsourcing work
- gavinhoward 3y agoYou are absolutely right. The key for me is to reduce tech debt before I release. If I'm not dealing with tech debt, the actual programming shrinks, and I have time to deal with the other stuff.
- giantg2 3y ago"The key for me is to reduce tech debt before I release. If I'm not dealing with tech debt, the actual programming shrinks, and I have time to deal with the other stuff." This seems like everyone's dream and nobody's reality. Good luck.
- gavinhoward 3y agoThank you! But I've already done it. I have been constantly refactoring over the three years I've been working on it. My tech debt is minimal at this moment.
- giantg2 3y agoYes, but my point is that as you continue to code you are likely to encounter more tech debt, especially as you get more customers and as you need to make dependency version upgrades to address security vulnerabilities. A world without tech debt is a dream.
- gavinhoward 3y agoYes, that's fair. Sorry for misunderstanding at first.
- 3y ago
- DanielHB 3y agoYou also took a bigger risk, either in your own money to support your product to profitability or in missed opportunity from a steady pay check (although the latter is also true to varying extents in VC backed companies) Although I am curious _how much_ risk did you take, could you elaborate?
- gavinhoward 3y agoMy wife is the breadwinner right now, so no missed opportunity from a steady paycheck. It did take me longer to get to this point, though (about three years once I got serious). I will have spent in the very low 5 digits for lawyers, to comb through my new FOSS licenses ([1], and we're still working on that, so they are not ready yet!) and to set up standard contracts. Beyond that, less than 5 digits for two beefy computers over that time and longer. [1]: https://yzena.com/licenses/ https://yzena.com/licenses/
- lfowles 3y agoWhy bespoke licenses? Won't that make customers more wary as they have to clear the licenses through their legal too?
- gavinhoward 3y agoYes, but these licenses have far more protection for me than regular licenses. I'm working with a lawyer to ensure that these licenses are void if the user expects me to have any duty, like the Bitcoin lawsuits ([1], see comments at [2]) or the EU's upcoming Cybersecurity Resilience Act that might require me to be audited or worse [3], which I can't afford. (I do want an audit when I can afford it, though.) [1]: https://laanwj.github.io/2023/02/06/regrets.html https://laanwj.github.io/2023/02/06/regrets.html [2]: https://news.ycombinator.com/item?id=34684715 https://news.ycombinator.com/item?id=34684715 [3]: https://blog.opensource.org/what-is-the-cyber-resilience-act-and-why-its-important-for-open-source/ https://blog.opensource.org/what-is-the-cyber-resilience-act...
- 3y ago
- gjmacd 3y agoThis is otherwise known as a "lifestyle business". It's the north star for most people and should be but it's not easy. If you build a $500K a year SaaS business and have very little overhead, you can probably take $200K of that revenue as income and have a good work-life balance that's very comfortable. I know, I was able to do this without taking VC and bootstrapping 100% on credit cards and my own cash. However, there's an inflection point that happens with this sort of business IF you're not careful -- or it becomes more successful / or becomes a death spiral. If we're speaking of a true SaaS model. It can work. But there's "gotchas". I did well with this and but eventually sold the business for about 3X and went back to work for another company. But for about 7 solid years as we gained customers and got to that $500-700K, it became very hard to keep it a "balance" as with every 10 customers we added, the more of my time was spent at work and not as much at home. As we added customers, my "balance" was diminished, so I had to hire people, which then cut my income considerably. In the end, I realized it was better to sell the business and take the profit I could to pay off my cards and get something out of it before it killed me. I used to tell people who used to say, "wow, must be great having a business like that!" I used to tell them, "Yes, it's amazing 100 hour work week!". It became more of a "job" and less of a "lifestyle" as the customer count increased. This could have been anecdotal to my business and product, but I have to believe that it won't matter as that size annual revenue demands a bit more of a sophisticated product type. Unless you've hit lightning in a bottle and have a very "light work" product that you're selling and have cracked the code of hitting $500K and having to do barely anything, more power to you... But I don't think there's a lot of those out there and a lot to be created. I just find that with most SaaS businesses I've been involved with and built, the product is solving business problems that aren't usually a "set it and forget it" kind of product to meet those requirements and just sit back and collect money... I find that most SaaS businesses in that range of revenue are complicated and warrant a higher degree of overhead. The real challenge is, "little overhead" to be able to create an income and survive. Support, service and development is expensive and requires more than one person. Good support is important to retain your customers to keep that $500K coming in, and that really is the problem because having just 10-20 customers paying you $500K is far riskier than having 1000 customers paying you $500K. Churn is dangerous in SaaS products that are high cost with smaller customer bases. One or two customers leaving could give you a pretty good dent in your revenue, thus causing you to cut income. So the trick is mitigating churn by having a product that's priced at a point that you can gain a larger customer base so that churn isn't going to radically impact your revenue. But both strategies are going to require support and service and that costs quite a bit of money and can gravely cut your income that has to be passed to engineers/developers who can improve and maintain the product. I had to hire really good support people and some engineers because as we grew that revenue, the product became more complicated and support and service was more demanding (I had about 400 customers). I eventually had to cut my income to pass that to people who could take on more because I couldn't do everything. So there is a law of diminishing returns with this sort of business strategy. It can work, but you have to really strategize, have a product strategy that can generate a good sized customer base but requires very little maintenance, development, support and service. But I call this the "holy grail" SaaS business -- they simply don't exist -- or if they do, they are rare birds. Just be prepared to understand the issues if you do have some success and are lucky enough to grown a SaaS business to $500K+ Just don't be surprised when you feel like you've succeeded but feel like you're failing.
- moneywoes 3y agolooks like you run a consulting practice, is that correct? if so how do you scale your arr? is it retainers further how did you get your first clients?