[HN Gopher] 20 years working on the same software product
___________________________________________________________________
20 years working on the same software product
Author : hermitcrab
Score : 465 points
Date : 2025-02-21 21:22 UTC (1 days ago)
(HTM) web link (successfulsoftware.net)
(TXT) w3m dump (successfulsoftware.net)
| piker wrote:
| Great read. This was particularly funny.
|
| > A mock-up of PerfectTablePlan, including icons I did myself,
| was used without our permission by Sony in their 'Big day' TV
| comedy series. I threated them with legal action. Years later, I
| am still awaiting a reply.
| piker wrote:
| Also worth noting that a more detailed write up of the business
| elements would likely go down very well here!
| gwbas1c wrote:
| Yeah, I'm really curious how the author was able to get the
| kind of sales needed to support a family.
| hermitcrab wrote:
| https://successfulsoftware.net/category/marketing/
| gwbas1c wrote:
| The first post is a rant about SPAM, not "how the author
| was able to get the kind of sales needed to support a
| family"
| hermitcrab wrote:
| There are 147 articles tagged 'marketing'. Some of them
| might be the sort of thing you are looking for. Some
| might not.
|
| If you are looking for articles about starting a software
| business, see: https://successfulsoftware.net/starting-a-
| microisv/
| hermitcrab wrote:
| Author here. Since you asked. This TV comedy included a plot
| point where some wedding planning software was shown to lose
| the seating plan. The wedding planning software was clearly a
| mockup (probably done in Powerpoint), but was clearly based
| on my software - even including icons I had created. I
| thought I could get some free publicity from it. I talked to
| a lawyer friend of my father's and he told me it would cost
| hundreds of pounds to do the research to even send them a
| legal letter. It was the early days for PerfectTablePlan and
| I didn't have that sort of money. So I just wrote my own
| letter demanding a public apology. I'm still awaiting a
| reply, nearly 20 years later.
| kevindamm wrote:
| The JD in the signature of that kind of letter usually
| amounts to more weight than the content, regardless of
| whether the wording was perfect and the research duly
| diligent.
| aqueueaqueue wrote:
| What is JD?
| realityfactchex wrote:
| Juris Doctor or Doctor of Jurisprudence [0], a kind of
| law degree
|
| In this case, it refers to the literal letters written in
| the signature of a letter, which presumably indicate that
| whoever wrote it studied a bunch to get into school, paid
| a bunch to go to school, graduated with that degree, and
| should be respected, because they may have the knowledge,
| willingness, and resources to take the words in the
| letter further, if they want to, given that they have
| already somewhat attached themselves to the cause in the
| form of the letter.
|
| [0] https://law.stanford.edu/office-of-student-
| affairs/the-docto...
| aqueueaqueue wrote:
| Damn. I am familiar with that term but hit a cache miss.
| thfuran wrote:
| And the legal right. The constitutional right to self-
| representation applies only to criminal proceedings and
| not all civil courts permit it.
| dmoy wrote:
| Juris Doctor, aka a lawyer
| tiledjinn wrote:
| Juris Doctor. A lawyer.
| ryandrake wrote:
| Funny but kind of sad. If it were the reverse, and The
| Little Guy used Sony's IP without permission, 20 Sony
| lawyers would come down on him with the ferocity of a
| thousand gods and destroy his business. It sucks how much
| the legal industry serves the rich and is effectively only
| accessible to the rich.
| sidewndr46 wrote:
| Only 20?
| bitwize wrote:
| Big media production companies care a lot about copyright,
| but only when it's _their_ copyrights being threatened.
|
| Jonathan Coulton released a cover of "Baby Got Back" with a
| melody he composed himself. The entire song, melody and
| lyrics, was appropriated without permission by Fox and
| performed on an episode of _Glee_ by the cast. (I say
| "lyrics" because even the change of "Mix-a-Lot's in
| trouble" to "Jonny C's in trouble", referring to Coulton
| himself, was preserved in the _Glee_ version.) When Coulton
| wrote a letter demanding at least acknowledgement of the
| original elements he contributed to the cover song, Fox
| insisted that their asses were covered because they paid
| the ASCAP fees and did not have to seek permission for, nor
| acknowledge, the use of a cover of a song they licensed.
|
| If you understand laws as weapons with which the rich
| protect themselves from the poor, a whole lot of shit
| starts making sense...
| thfuran wrote:
| So they called his bluff.
| antithesis-nl wrote:
| Very cool! Yet: I found out that CDs are edible
|
| PSA: CDs are not, in fact, edible, nor are DVDs or Blu-ray media.
| Sure, if you click through, you'll see that the CD was not
| actually damaged and that it was only the printed license key
| that got mauled, but still: CDs are mostly polycarbonates, and
| not, in any way shape or form, part of a healthy diet, no matter
| what your local party liaison tells you.
| dylan604 wrote:
| You're clearly not preparing them correctly. You have to ground
| them down to a fine micro-plastics powder.
| cluckindan wrote:
| A quick and easy way to do this is with an angle grinder.
| Replace cutting disc with compact disc and fire 'er up!
|
| Disclaimer: don't
| aqueueaqueue wrote:
| Or just live normal life. You get free microplastics.
| Etheryte wrote:
| A spoonful of microplastic in your brain [0]? That's rookie
| numbers.
|
| [0] https://www.smithsonianmag.com/smart-news/the-human-
| brain-ma...
| kmoser wrote:
| I prefer the softer, warmer flavors of ground-down vinyl.
| aiauthoritydev wrote:
| Wrong advice. My Uncle did eat few of them. Some thought it was
| some trick but later the doctor in charge of autopsy did
| confirm he ate them.
| aqueueaqueue wrote:
| Edible doesn't mean eatable lol
| chrisweekly wrote:
| For the non-native English readers here, "edible" means "can be
| eaten", vs the obvious typo "editable", ie "can be edited".
| (OP: Sorry if I killed the humor, it was at least grin-worthy.)
| robocat wrote:
| Follow the link - the CD was chewed by a dog
| 7thaccount wrote:
| Does it still use a genetic algorithm and is this necessary? I'd
| guess there is some kind of MIP or IP solver solution that you
| can just call out to, but that could be extremely wrong for all I
| know.
| hermitcrab wrote:
| Yes, it still uses a genetic algorithm which is capable of
| producing decent solutions for thousands of seats in the time
| you can drink a coffee. Also it is highly specialized for the
| nuances of seating plans (do you want your partner sitting to
| the left of right, which tables are near each other, do you
| want to alternate genders).
| 7thaccount wrote:
| Yeah, that's cool, but I'm curious if an algorithm exists for
| that problem that is actually globally optimal. My
| understanding is that genetic algorithms can get stuck in
| local minimums. I guess it doesn't really matter though if
| you can just do a simple check at the end to see if all the
| rules have been met.
| hermitcrab wrote:
| Pretty much any optimization algorithm (apart from brute
| force) can get stuck at a local optima.
|
| Often with seating plans it isn't possible to satisfy all
| criteria. Generally you can only sit next to 2 other
| people.
|
| Combinatorial optimization problems are hard.
| NKosmatos wrote:
| Nice one! I would expect more versions of PerfectTablePlan all
| these years, going from v1 to v7 is roughly 3 years per major
| release ;-)
| zoover2020 wrote:
| I find it wonderful. As the author mentions in the original
| post, his code does not have a lot of bugs and is mostly
| feature complete as well.
|
| I think most people never get to work with such software as we
| need to launch $NEXT_PROJECT
| 101008 wrote:
| Excellent read. I was happy for the author while I was reading
| it, looks like it was and still is an amazing journey.
|
| By the way, some engineers are dream with working at FAANG,
| others to create a million dollars startup. My dreams was always
| something like this: work on a niche piece of software that
| solves a problem for a subset of people. Give them a something
| that avoids a headache for them, deliver value, and get paid. You
| aren't going tonbe millionaire, but it's going to be a nice ride.
| eikenberry wrote:
| I wish there was a job site for people like us. I'd love to be
| able to find a job at a small, niche company like this.
| jwr wrote:
| Thing is, many of those niche companies are single-founder
| businesses, where founders do not want to hire employees.
| Many reasons, not necessarily financial: in my case, I just
| got tired of dealing with people and their issues and decided
| I want to depend only on myself.
|
| So, jobs of this kind are rather scarce.
|
| Also, in a tiny business, the founder will usually be super-
| efficient and productive. Most employees are not. There is an
| impedance mismatch: a hired programmer will talk about the
| latest and greatest JavaScript framework and the need to
| rewrite everything in YaddaOfYadda, because that's what the
| World is doing these days, while the founder will think about
| the benefit for the users (usually none) and the immense
| costs (in terms of money, bugs, and time wasted).
|
| Because of all this, it's not very probable that you'll find
| a job at a niche company like this.
| eikenberry wrote:
| It doesn't have to be as tiny as in the article, but more
| just a small, bootstrapped company with a good niche to
| serve. These sorts of company should be very common and
| jobs at them should be plentiful (due to number of shops,
| even though each would be small), yet they are nearly
| impossible to find. I bet they have an equally poor time of
| finding people. Seems like an under served market.
| tonyedgecombe wrote:
| I think there used to be a lot more small software
| companies about but as the industry has matured the trend
| is towards consolidation.
| palata wrote:
| Some niches can be very big, too! It's perfect when it's small
| enough to not be interesting for BigTech, but big enough to pay
| a few up to a few hundred employees!
| hermitcrab wrote:
| Indeed. Software is mostly written by young white men for
| other young white men. Consequently there are loads of under
| exploited niches, while all the 'sexy' niches are incredibly
| competitive.
| fph wrote:
| I don't understand where gender, age, and ethnicity come
| into play in this.
| hermitcrab wrote:
| Not trying to make a poltical point.
|
| Pick an interest that young white men have. You'll
| probably find loads of software that caters to it. Pick
| an interest that an equal number of retired women have.
| You will almost certainly find a lot less software that
| caters to it. It is simply because people write software
| for markets they understand. Most programmers (in my
| experience) are young white men. A lot less retired women
| have the skills or motivation to write software.
| otterley wrote:
| Sounds like an underserved market waiting to be tapped.
| How do we address it?
| hermitcrab wrote:
| Talk to your older relatives and female friends.
| nikau wrote:
| The market isn't there since the petticoat 5 covered all
| bases
| hermitcrab wrote:
| LOL. I hadn't seen that before.
|
| https://www.reddit.com/r/vintagecomputing/comments/8nzz23
| /pe...
| crackez wrote:
| It sounds like the view of some person with zero
| experience in the real world of professional software
| engineering. My experience is the opposite. The USA has a
| very diverse software workforce.
| palata wrote:
| I don't understand the downvotes... I think it is true that
| there are under exploited niches, probably in fields that
| most developers aren't familiar with.
| jebarker wrote:
| +1 this is the dream career!
| achillesheels wrote:
| Emphasis on ride.
|
| El camino es mejor que la posada.
| losradio wrote:
| I accidentally many years ago fell into a job where I worked on
| parking automation and fee computers for parking garages,
| airports, cruise terminals and rental car agencies. It's a
| niche but fledgling industry. Not many people know how much
| software runs parking garages and the like. It didn't pay very
| well but the firmware was written in Turbo C and the GUI
| portion was written in Borland C++ Builder 5 with Delphi. There
| is a surprising amount of sensor integration with inductive
| loops and sensors from gates, etc
|
| I tried to create some modernized software at that company with
| a License Plate Inventory application product using C#, VB
| .Net, SQL Server, SQLCE (for Windows XP Embedded) and
| ActiveSync. We sold a hundred copies of it.
| huevosabio wrote:
| > I was getting married and I volunteered to do the seating plan
| for our wedding reception. It sounded like a relatively
| straightforward optimization problem, as we only had 60 guests
| and no family feuds to worry about. But it was surprisingly
| difficult to get right.
|
| Man, this sounds way too familiar!
| palata wrote:
| Makes me nostalgic of desktop software. I hate that everything
| today is a website and requires a ridiculously fast internet
| connection. And what seems to be in fashion for "desktop
| software" today is to ship a website together with a whole
| browser and pretend it's not a website.
|
| I wonder how the licensing works: do people pay for newer
| versions? Or do people just buy one version but more people get
| married every year, bringing new customers? I guess it is not a
| subscription model, right?
| hermitcrab wrote:
| You buy a perpetual licence for version N. You can then
| optionally upgrade to version N+1 later at a 60% discount.
| lotsoweiners wrote:
| The best business model.
| beached_whale wrote:
| I am also ok with one like Jetbrains where you subscribe
| and after a year you can keep the last version you paid
| for. They do a lot of updates, so the money is going into
| the product but one isn't forced to stay in order to use
| it.
| DrBenCarson wrote:
| Confusing IMO because they use years as the major
| version. If I subscribe May 24 - May 25 and they don't
| release 2025.1 until just after my sub ends...which
| version do I get?
|
| That said I'm a jetbrains fan and like their recent move
| to include all features in community editions (need
| licensing for commercial use obviously)
| beached_whale wrote:
| I didn't exactly know, but found
| https://sales.jetbrains.com/hc/en-
| gb/articles/207240845-What...
| DrBenCarson wrote:
| Sounds like the fallback license is for the version
| available on the date the 12 mo subscription started
| dehrmann wrote:
| It's not actually that different from the subscription
| model; the interval is just longer. At some point, you'll
| upgrade your computer and find the old version of the app
| no longer works, and you'll be forced to upgrade. Depending
| on how quickly the app evolves, you might prefer the
| subscription model so you can follow new how-tos, and it
| can be more reliable since developers are only supporting a
| few versions out in the wild.
|
| I'm not saying you need to be on the bleeding edge, but if
| any part of your personal tech stack is older than ~4
| years, it'll start to have problems, and you're going to be
| left behind.
| ch33zer wrote:
| Really? I'm still using sublime 2 from 10 years ago and
| it still works great across Mac and windows.
| antaviana wrote:
| I believe it is in this interview from 1996 where I saw
| Bill Gates saying the same thing about Microsoft
| products, he saw them as subscriptions. It's a long but
| interesting interview.
| https://www.youtube.com/watch?v=VFFlO7yBIBM
| hermitcrab wrote:
| Microsoft is very good at backward compatibility. So 10+
| year old versions of PerfectTablePlan probably work on
| Windows 11.
|
| Apple is much less good at backward compatibility. It is
| a bit of a two edged sword. Customers have to upgrade,
| you also have to keep updating libraries and releasing
| new versions to keep up.
| _kush wrote:
| >At some point, you'll upgrade your computer and find the
| old version of the app no longer works, and you'll be
| forced to upgrade.
|
| It comes down to the developers to make sure the older
| versions are regularly updated and make sure they run on
| newer operating systems and architectures.
| dehrmann wrote:
| This is why the model doesn't work. You can't support
| shrinkwrap software indefinitely.
| hiAndrewQuinn wrote:
| I especially like this if the 60% multiplier becomes 60%2 at
| N+2, 60%3 at N+3, and so on. Feels like you're getting
| rewarded for hopping on early.
| hermitcrab wrote:
| Too complicated. I charge the same for v5 -> v7 and v6 ->
| v7.
| hiAndrewQuinn wrote:
| Well, I like it anyway.
| anthropodie wrote:
| You mentioned you have been developing Indie products
| since 2005 in your about section. Can I read about this
| somewhere?
| hermitcrab wrote:
| Pretty much the entire https://www.successfulsoftware.net
| blog is about that. Maybe start with:
|
| https://successfulsoftware.net/starting-a-microisv/
| palata wrote:
| Do you have a lot of people buying upgrades? Still wondering
| if this market is not full of people who buy it one time for
| their wedding :-).
| thinkcontext wrote:
| Probably wedding planners are the biggest customers.
| rvz wrote:
| > Makes me nostalgic of desktop software. I hate that
| everything today is a website and requires a ridiculously fast
| internet connection. And what seems to be in fashion for
| "desktop software" today is to ship a website together with a
| whole browser and pretend it's not a website.
|
| Funny isn't it? These days developers experienced with building
| typical desktop software are being asked Leetcode hard puzzles
| to find the most optimal solution on the first attempt.
|
| Yet when they are hired most of them choose what I see as the
| most inefficient (in both memory, disk space and runtime),
| suboptimal and very low quality software as the "solution".
| When I mean "the most" it really is _the_ worst solution
| possible, which is all these Electron based "desktop apps"
| which is an entire browser rebranded as a "desktop app".
|
| It is even laughable that those who believe using a faster
| language when using Electron would make it more performant.
| This has never been more further from the truth as the worst-
| case performance still applies as long as you are using
| Electron.
|
| SWEs not being able to build (native) desktop apps or apps that
| don't use a browser is a skill issue.
| nobankai wrote:
| > SWEs not being able to build (native) desktop apps or apps
| that don't use a browser is a skill issue.
|
| It's a runtime issue. If developing a native app requires an
| expensive SDK, complex distribution agreement or
| multiplatform codebase, any rational software engineer will
| choose to ship once and run anywhere. Anything else is a
| waste of time and money unless management dictates otherwise.
|
| Electron will be king until shipping native interfaces is as
| equally accessible as web development.
| zoom6628 wrote:
| This. And I live in hope that WASM runtimes can address
| some or all of this one day.
| xp84 wrote:
| So then we can ship a binary on top of JavaScript in a
| browser engine on top of the native platform! ;)
| vram22 wrote:
| Yeah!!!
|
| Time for Greenspun's _eleventh_ rule: ;)
|
| https://en.m.wikipedia.org/wiki/Greenspun%27s_tenth_rule
| TeMPOraL wrote:
| > _Anything else is a waste of time and money unless
| management dictates otherwise._
|
| Management won't say otherwise because management relies on
| what software engineers tell them, as _it 's the job of the
| engineer_ to consider quality, reliability and operational
| efficiency, and advise management on the tradeoffs
| involved. An engineer can _choose_ to not pick the cheapest
| possible option.
|
| Your "rational software engineer" instead sounds more like
| someone that's happy to go with substandard solution that's
| bad for the user _and bad for the entire field of software
| engineering_ (the more it 's used, the more it's
| normalized), and then hide behind greedy management and
| penny-pinching beancounters.
|
| People sometimes wonder if software wouldn't get better
| (boy technologically and socially) if software engineering
| was a licensed profession. Well, _we don 't deserve to be_
| licensed professionals, because we've abandoned respect and
| loyalty to our field, and became just "professionals" in
| the cultural sense of doing cheapest stuff the fastest and
| dumping all externalities on customers (on third parties).
| sigseg1v wrote:
| > People sometimes wonder if software wouldn't get better
| (boy technologically and socially) if software
| engineering was a licensed profession.
|
| In some countries such as Canada, it is a licensed
| profession and if you refer yourself as an engineer
| without holding a PEng you can have legal action taken
| against you.
|
| However, all this has done is make it such that nobody
| actually holds a software PEng. The only software PEng I
| know works at the university nearby and I've never met a
| colleague with designation. Everyone gets a SEng degree
| but knows no PEng to do a mentorship under so never gets
| designated. Lack of participation is likely a contributor
| to being an underdeveloped field. General public
| confusion from positions in the USA that wildly throw
| around the title "software engineer" for non-PEng doesn't
| help.
| nobankai wrote:
| Conflating fewer native interfaces with the loss of
| respect software engineers have is like saying plumbers
| all went soft at the invention of the plunger. Native
| apps are a waste of time if you want to sell a successful
| product. It really just is that simple, I'm sorry all the
| success stories like Slack don't use the native interface
| on your OS but that doesn't justify attacking the field
| as a whole.
|
| It's true; this is and will be an OEM issue until the end
| of software engineering itself. Manufacturers will either
| align their incentives or get thrown to the wayside by
| everyone that makes money today.
| bitwize wrote:
| > Your "rational software engineer" instead sounds more
| like someone that's happy to go with substandard solution
|
| A grizzled software engineer was telling me about how we
| were just moments away from AI that would pretty much do
| almost all the coding for us, leaving software engineers
| to make only the highest level decisions. My response
| touched on the low quality of such software and of the
| tendency of engineers who use AI assistance to develop
| "skill issues" to the point that they cannot function
| without the AI tool.
|
| "Yes," he told me, "but what I care about is my PAYCHECK.
| And AI helps me ship much faster."
|
| A rational software engineer cares about their paycheck.
| A rational software company cares about revenues vs.
| expenses. If you can get a lot of revenue out of very
| little effort investment by using solution X, you use
| solution X. Period. End of statement.
| tonyedgecombe wrote:
| Native apps don't require an expensive SDK, it's free on
| all the main desktop platforms.
|
| They also don't require a distribution agreement (as long
| as you aren't putting them in an App Store).
|
| It's really not that hard, Fork is a great example of a
| cross platform app with a rich UI developed by just two
| people.
|
| https://git-fork.com
| nobankai wrote:
| Wow, it's just like gitg except it costs an arm and a leg
| instead of being free and open source!
| hermitcrab wrote:
| $59.99 = "arm and a leg"?
| nobankai wrote:
| For a git interface with multiple open source
| alternatives? Yeah, this is a tax for people too stupid
| to figure out commit -am.
| fuzztester wrote:
| >And what seems to be in fashion for "desktop software" today
| is to ship a website together with a whole browser and pretend
| it's not a website.
|
| yeah! shipsters
|
| /s
|
| ugh
| skinner927 wrote:
| I am fully aware how much more performant native desktop
| applications can be compared to the "let's ship a browser"
| popular alternative.
|
| That said, do you, or anyone else who often makes this (fair)
| complaint, have any experience writing native desktop
| applications? Have you ever tried to implement drag and drop,
| animations (like accordions), modals, gradients, and custom
| elements? Not to mention, GPU acceleration.
|
| I can only speak for Windows and Linux, but the native APIs are
| atrocious. The frameworks for these native APIs are cumbersome
| and inflexible. Styling is, without a doubt, the most complex
| part. It's all so complex that shipping a browser + an api to
| talk to the host is easier.
| jeremyjh wrote:
| If you use Qt, like in TFA, then you don't have those issues.
| You use a markup language for layout if you want, javascript
| if you want, C++ if you want.
| andrekandre wrote:
| > Have you ever tried to implement drag and drop, animations
| (like accordions), modals, gradients, and custom elements?
|
| not to sound like a salesperson but its not too hard in
| (apple) appkit [1] using cocoa and core animation [2]
|
| (and all of this is even easier in swiftui especially
| animation and styling [3])
|
| [1] https://developer.apple.com/documentation/AppKit/drag-
| and-dr...
|
| [2] https://developer.apple.com/library/archive/documentation
| /Co...
|
| [3] https://swiftui-lab.com/custom-styling/
| koakuma-chan wrote:
| You have to own a MacBook though.
| nikau wrote:
| Call me a boomer, but I preferred old apps that had a
| consistent interface instead of all the random wheel
| inventing.
| riffraff wrote:
| I don't recall a single time I thought "gosh, I wish this
| app used an accordion". But custom controls, e.g. the
| table-and-chair view in TFA seems a sensible thing to have
| in specific apps.
| mixmastamyk wrote:
| Don't style it, please. I chose my system theme for a reason.
| gmueckl wrote:
| You found the reason why Qt is popular.
| lazypenguin wrote:
| You are right, building a good UI for the desktop has become
| exceedingly difficult. In my experience new UI toolkits try
| to mimic the web experience (kivy, QML, Slint, Flutter, etc.)
| and end up being threadbare with the simplest widgets
| available. In my opinion, every new UI toolkit since
| QtWidgets/WinForms/Delphi/WPF/Win32/Gtkmm era has missed the
| point. The desktop is a power tool and requires powerful
| widgets. Virtualized lists, data grid with complex
| interactions, drag and drop, OS integration, modals,
| background tasks, docking windows, etc. A toolkit that puts a
| slider, some text and buttons on the screen doesn't solve the
| harder problems and the web browser will run circles around
| that workflow. Easier UX can be built in anything really.
| Until there's a desktop app framework that solves the hard
| problems in desktop UI dev then desktop will languish and
| hard stuff will continue to be hard.
| ogoffart wrote:
| I'm developer of Slint and I'm glad to see Slint mentioned.
| I want to clarify that we're not trying to mimic the web.
| We have a great vision for the desktop integration, but we
| unfortunately have limited resources. Our team is fairly
| small and we are mainly working with paying customers to
| pay the bills, which are mostly in embedded space at the
| moment. I agree with your points, and while there's still a
| lot to do, I hope Slint can become a strong option for
| building powerful complex desktop applications.
| lazypenguin wrote:
| I like Slint, the technical work is extremely impressive.
| I even contributed to the project! I hope you can realize
| those goals, you would fill a massive vacuum in the wider
| ecosystem.
| codelion wrote:
| That's a really good point about the complexity of native
| desktop development. I've definitely felt that pain trying to
| wrangle native APIs for even simple UI elements. It took me a
| while to figure out how to get smooth animations working in one
| project.
|
| On the other hand, shipping a whole browser feels so wasteful,
| especially for smaller apps. I've been experimenting with Tauri
| recently, which uses the system's webview. It's a nice middle
| ground, and the performance is noticeably better than Electron
| from what I've seen.
| hiAndrewQuinn wrote:
| >I hate that everything today is a website and requires a
| ridiculously fast internet connection. And what seems to be in
| fashion for "desktop software" today is to ship a website
| together with a whole browser and pretend it's not a website.
|
| Earlier this week I cobbled together a tiny, totally self-
| contained pocket dictionary between Finnish and English [1].
| It's a TUI, but I tested it on Mac and Windows and the program
| works perfectly fine there -- double clicking on it just pops
| open a little terminal for tsk to do its thing in.
|
| The first bit of advice I got when posting it online to my
| usual places was "Why not make it a normal GUI program, or
| better yet, use React?" While I did briefly consider it, it
| really seemed like overkill for the very simple problem I was
| trying to solve here, and it might balloon the ~30 MB exe to
| >100. To be fair, I have negative interest in monetizing this
| kind of thing.
|
| [1]: https://github.com/hiAndrewQuinn/tsk
| palata wrote:
| > it really seemed like overkill for the very simple problem
| I was trying to solve here
|
| Usually people throw heavy frameworks at simple problems just
| because it's easier, not because it's needed.
|
| I like a lightweight TUI a lot better than a huge ElectronJS
| app.
| DrBenCarson wrote:
| Yes and most engineers building GUIs professionally use
| those frameworks day in and day out so they're just very
| comfortable with using them
|
| Independent of the implementation, people build GUIs to
| make the functionality accessible to a LOT more users
| _kush wrote:
| The most common model I see these days is a lifetime license
| and one/two year of free updates with it. Once your free
| updates are over, you can keep using the last covered version
| forever, or purchase another year of updates for a discount
| (20% to 40% off of the original license price).
|
| This has 2 advantages:
|
| - You can buy the additional updates whenever you want in the
| future so it's leaner than a subscription.
|
| - It also makes sure you get at least 1 year of updates, as
| opposed to unknown time period of updates when the licenses are
| tied to a major version.
| asim wrote:
| Kudos to you. The only piece of software I wrote was open source
| and could never find a way to monetize it beyond consulting and
| VC funding. A sustainable long term business selling a piece of
| software that just works is all we could ever hope for as
| developers.
| mezod wrote:
| Living legend! Lifestyle biz bootstrappers ftw.
|
| Since I cannot ask you your actual ARR, can you answer if you
| believe it's feasible to reach high 7 figures/low 8 figures in
| ARR as a solopreneur over a long period of time? I don't mean 1
| year $10M ARR AI trendy apps, but a consistent $10M ARR business
| year after year >20 years.
| hermitcrab wrote:
| I can think of 1 solo bootstrapped founder who says he is doing
| ~$1 million dollars per year. But he is an outlier.
|
| The more sales you make the more admin/sales/support overhead
| there is. Eventually you reach a point where your sales plateau
| or you take on staff to keep growing.
| aqueueaqueue wrote:
| Yes. Not me, but check out indiehackers as they show stripe-
| verified revenues.
| hermitcrab wrote:
| But not their expenses? Revenue != Profit.
| aqueueaqueue wrote:
| Most of these businesses are software as a service so it is
| mostly profit. There will be some hosting and marketing
| costs sure.
|
| Unlike startups they are solo operated and usually won't
| hire people unless they can really afford it an need it.
| hermitcrab wrote:
| Advertising can be very expensive.
| aqueueaqueue wrote:
| 90%+ of those IH businesses must be making a profit. They
| are bootstrapped by frugal people. They aren't likely to
| blow all their profit on ads once they hit 1M arr.
| jwr wrote:
| >$300k ARR is definitely doable with a B2B product and it lets
| you live comfortably in most places in the world without
| worrying about money.
|
| I think >$1M ARR is hard, you need an exceptional niche (high
| margin, low support load, easy marketing) and luck.
|
| I can't see a >$10M ARR happening for a solo-founder business.
| At least not for my business niche.
|
| Bear in mind that growing a SaaS takes time and it's a multi-
| year project.
| sgerenser wrote:
| I'm sure its possible, but I'd be very surprised if this
| particular product (due to being fairly niche, and one-time
| purchase vs. subscription) was earning > $1M ARR, let alone
| $10M. But I could be wrong!
| henning wrote:
| It's cool to see a product that apparently uses evolutionary
| algorithms do so well.
| pmkary wrote:
| Makes me so happy to see people like this exist. All good
| software, really all good software, is indie small ones made with
| love and care whose authors also lived a good life outside of the
| cubicle mess. (I know about the exaggeration, but really, 95% of
| what I love is indie software, you don't find that kind of
| creativity and love in any company)
| emeril wrote:
| yeah - I'm sure Everything by voidtools is precisely that
| Tossrock wrote:
| Spacemonger is this to a tee.
| p3rls wrote:
| it's true, you can always tell a product that is loved from a
| product that grew up without it.
|
| i'd add as a caveat that your users probably will not be able
| to tell the difference and it will break your heart if you care
| about these things too much.
| bnastic wrote:
| There are a lot of small companies / single devs working in
| very technical, pro-oriented, industries. They still thrive in
| the days of browsers and javascripts and what not, writing
| super optimised, super inovative, native code.
|
| Like all the 'audio plugins' people that essentially write
| .so's that go into the big desktop audio workstations, doing
| anything and everything with sound, while also experimenting
| with various UI/UX paradigms, unrestricted by what's possible
| in the DOM/CSS, integrating hardware into it all etc. (I
| imagine similar in the video/rendering industry, but I'm not
| too familiar with that side)
| m463 wrote:
| > The lowest point was the pandemic, when sales pretty much
| dropped to zero.
|
| Don't know why there wasn't a perfect table plan 6-foot edition.
|
| I remember going to an event where someone took out one of those
| segmented collapsing ruler things to put people a minimum
| distance apart.
| hermitcrab wrote:
| There is a social distancing option, added due to the pandemic.
| ;0)
| LoftyHobbitMan wrote:
| This cracks me up. Sounds like a good selling point though.
| wvenable wrote:
| This post makes me nostalgic for the old Joel on Software forums.
| hermitcrab wrote:
| I miss Joel's writing. Erik Sink as well.
| wvenable wrote:
| I'm glad you're still doing well. I envy your position; I've
| always wanted to work on a single piece of software of my
| own.
|
| I built a few things while working for startups but nothing
| stuck. Now I build lots of software in a nice secure
| corporate environment. I mostly get to do what I want and how
| I want it but ultimately it's not mine.
| hermitcrab wrote:
| Sounds like you have a reasonable mix of job security and
| freedom. The grass is always greener on the other side!
| wvenable wrote:
| It is exactly that reasonable mix -- it's why I've stayed
| for as long as I have. Previously I was a contractor and
| so ran my own business I remember the negatives of that
| sort of thing.
|
| Some of the things I've built could be entire businesses
| on their own and it feels like a lot of missed
| opportunities.
| hermitcrab wrote:
| >Some of the things I've built could be entire businesses
| on their own and it feels like a lot of missed
| opportunities.
|
| It is very hard to know what will succeed and what won't.
| jwr wrote:
| Now compare the longevity and sustainability of this software
| product to VC-funded startups, which are more like blips on the
| radar before they disappear by going bankrupt or getting
| acquired.
|
| Having multiple people in a company does not guarantee that it
| will stick around. People saying "but it's a one-person business,
| I can't trust it in the long term" are wrong.
| louthy wrote:
| > People saying "but it's a one-person business, I can't trust
| it in the long term" are wrong.
|
| The problem is: people aren't immortal. That one person could
| be dead tomorrow. So, you can't trust any one person business
| in the long term, by definition.
| xp84 wrote:
| Depends on what level of trust you need to have. Obviously
| you can't even trust a multibillion-dollar public company
| like Google to keep maintaining a product forever, or even
| for a couple years.
|
| On the other hand, someone selling a stable piece of desktop
| software doesn't even require a tremendous amount of trust.
| Just the trust not to ship malware or massive security holes.
| Even if they fully retire and delete the source code, your
| software will keep working. That's more than I can say for
| Google reader, or the Humane AI Pin.
| cfn wrote:
| When he dies, if not before, he or his family can sell the
| business. There's even websites/communities where you can
| post this kind of business for sale.
| chgs wrote:
| The software will still work for years even if his who
| family is wiped out in a plane crash.
|
| A saas product will die when the credit card bounces a
| couple of months later.
| hermitcrab wrote:
| >even if his who[le] family is wiped out in a plane
| crash.
|
| Thanks for that cheery thought.
| tonyedgecombe wrote:
| At age 59 there is a 5% chance he will die in the next year.
| What's the chance that your enterprise SaaS is going to get
| canned in that period?
| fuzztester wrote:
| y
|
| see: our incredible journey
|
| side note: after I typed "our incredible j", and then in this
| very text box, mind you, not even in Google, the full word
| "journey" popped up as a choice for me to select.
|
| shows ...
| fuzztester wrote:
| here you go, downvoter dude (we can guess you're from one of
| the types described below, or aspire to be, meaning the
| startups that gets acqui-hired, and dumps their users ):
|
| https://www.gyford.com/phil/writing/2013/02/27/our-
| incredibl...
|
| https://ourincrediblejourney.tumblr.com/post/89180616013/wha.
| ..
|
| https://ourincrediblejourney.tumblr.com/about/
| raziel2p wrote:
| nah I just don't like your writing style.
| keepamovin wrote:
| It's all just mindgames bullshit to get you to accept worse
| terms, or ignorance. Your characterization is right. VC boosted
| products are sometimes like shit crops sewn in bad soil but
| laden with chemical fertilizer to force growth. They might have
| no fundamental strength.
| ozim wrote:
| After 15+ year building stuff for others I would totally like to
| have one app that earns money and I don't get requirements from
| bunch of business people.
| fragmede wrote:
| you'd end up getting requirements from users yourself, instead
| of business people
| J_McQuade wrote:
| Yeah, but I'd hope that I can understand my users.
| ozim wrote:
| At least someone who knows the system and cares about it with
| ability to say no instead of promising BS to any stupid idea
| to inflate quarterly results and then leave to a different
| job.
| robocat wrote:
| > web. But I couldn't face rewriting PerfectTablePlan from
| scratch for the web.
|
| Someone will develop for the web. But perhaps you don't want to
| make it easier to clone.
|
| Building a business to sell for your retirement funds would need
| much more work and would get more money if SaaS for Planners?
| Unless you sell your engine to a wedding planner software
| specialist.
|
| The browser as a platform is daunting (touch support, small
| screen support, CSS, HTML, DOM, connections, browser versions,
| frameworks).
|
| > Javascript. Ugh.
|
| I personally never found JavaScript to be the problem - I think a
| single developer can good engineering workarounds. Avoid the bad
| parts.
|
| I developed for the browser using JavaScript: without using
| frameworks because my engineering was better than what was
| available. I personally would still avoid a frameworks unless I
| needed accessibility (which is crazy hard to support).
|
| > Also PerfectTablePlan is quite compute intensive, using a
| genetic algorithm to generate an automated seating plan and I
| felt it was better running this on the customer's local computers
| than my server. And some of my customers consider their seating
| plans to be confidential
|
| Sounds like a price point: standalone should be more expensive.
| However likely difficult to hit that enterprise sale point (re
| patio11?)? Ideally you want to charge expensive wedding planners
| much more. Low end planners could still use your web version.
|
| I assume you've had competitors that have sunk because you are
| best value for money?
|
| Loved the writeup.
|
| I'm guessing I've written a bunch of ignorant stuff - I'm just
| practicing my thinking by writing... Most important, I presume
| you're looking forward to finishing up and not doing more work. I
| was.
| hermitcrab wrote:
| >Someone will develop for the web.
|
| A number of web based alternatives to PerfectTablePlan have
| appeared over the years.
| fragmede wrote:
| What's not mentioned is marketing. I tried a couple of queries
| into Google, and this software didn't come up. I wonder what a
| couple k of marketing and ad spend a would do for revenue.
| There's clearly a need for this kind of software, and little bit
| of marketing could help others find it when they need it.
| hermitcrab wrote:
| If there was a way to spend $X and get $2X back and it didn't
| require a lot of my time, I would be on it.
| fragmede wrote:
| The problem is we as engin-nerds don't want to pay for
| something nebulous like marketing, with no proof that it pays
| off. And back before the Internet, that was the world of
| advertising. How do you track if that crazy expensive
| billboard in Times Square was seen by people and resulted in
| an uptick in sales? But thanks to tracking, it's easier to
| quantifiy results.
|
| Time is money so I'd suggest finding somewhere/someone and
| giving them the money for their expertise, but it doesn't
| takes much time, you could do it yourself. Create a Google
| AdWords account and buy AdWords for "wedding planning seating
| chart" or other combination, and see how many hits you get
| for that, and judge for yourself if it's worth it. A
| competitor (zola.com) already has the first result for that,
| but that should be enough to for you started. My email's in
| my bio if you want to chat more.
| hermitcrab wrote:
| I've been doing PPC for PerfectTablePlan since the days
| before it was even called Google Adwords.
|
| https://successfulsoftware.net/category/adwords/
|
| PPC used to be very lucrative, but the bid prices have
| inflated to the point that it is increasingly borderline.
| I'm currently turning PPC on and off alternate weeks to try
| and see if the ROI is positive. This is an off week.
| fragmede wrote:
| oh wow thank you for blogging about it too! sorry for
| assuming you hadn't
| kayo_20211030 wrote:
| Love it. Keep on keepin' on.
| mparnisari wrote:
| Loved this post! It's my dream too to come up with an idea for
| software that doesn't exist, that I can build, and that people
| are willing to pay me for ;)
| racl101 wrote:
| Ok that Perfect table plan software looks amazing. I so wish I
| could work on something like this. A standalone desktop app that
| solves a need and that people keep coming back to year after
| year, that people love, that people will buy.
|
| You are living the dream!
| 4rt wrote:
| You're living the dream, great work.
|
| Looks like an impressive bit of software and not some flash in
| the plan disruption nonsense.
| bsnnkv wrote:
| Reading this gave me a lot of hope.
|
| I started selling software licenses this year, and I would be
| very happy if I were able to write a post like this about the
| same software 20 years from now!
| alberth wrote:
| > It is about 145,000 lines of C++.
|
| Huge respect for maintaining such a large codebase.
| kylecazar wrote:
| This is awesome and I love stories like this. I miss installable
| software.
|
| "It has seated royalty, celebrities and heads of state"
|
| Reminded me that there really are more potential attack vectors
| in software than one would think. Not immediately sure what a bad
| actor could do with manipulating or stealing seating charts but
| I'm sure thre's something.
| hermitcrab wrote:
| Google "supply chain attack". It is a worry.
| tasuki wrote:
| > A well known wedding magazine ran a promotion with a valid
| licence key clearly visible in a photograph of a PerfectTablePlan
| CD. I worked through the night to release a new version of
| PerfectTablePlan that didn't work with this key.
|
| This is weird to me on several levels.
|
| - Why would it require "working through the night" to blacklist a
| key? In large enterprise software, sure. But in a one-person
| project?
|
| - If past versions still work with the leaked license key, what
| does this solve? If someone wanted to steal your software, they'd
| find a key anyway, no?
|
| [Edit]: But a very cool project and a nice writeup! I enjoyed!
| Good luck!
| tonyedgecombe wrote:
| You would be surprised how sales are affected by piracy. Making
| it just a little harder can have a noticeable impact.
|
| All that stuff you read about piracy having no commercial
| impact is bullshit used to make people feel better about what
| they are doing.
| lozenge wrote:
| I'm guessing CICD isn't a priority on a desktop product that
| doesn't need to be released all that often.
| ChrisMarshallNY wrote:
| I've used (and paid for) BBEdit, for more than 30 years.
|
| https://www.barebones.com/products/bbedit/
| ilamont wrote:
| > but I preferred to keep it as a lifestyle business
|
| Can we please retire this term? It's a business. Moreover, it's a
| _real_ business, with profit and risk and product and customers,
| which is a lot more than many investor-funded businesses can say.
|
| The fact that it's flexible and even enjoyable? Wunderbar. And it
| doesn't even require foosball tables or free snacks or an in-
| house masseuse or an on-site gym.
| hermitcrab wrote:
| I think 'lifestyle business' is a useful term and plan to keep
| using it, unless someone comes up with a better term.
|
| I think it is hilarious that investors sometimes use it as an
| insult.
| guestbest wrote:
| That's pretty incredible. The oldest software I still support as
| a microisv is in the iOS App Store at 15 years old.
| bennettnate5 wrote:
| What sticks out to me is that the overarching UI design is
| largely unchanged. OP didn't spend time jumping from hot new UX
| framework to framework, instead they focused on keeping their
| core customers happy. Seems like a recipe for success for small
| software businesses
___________________________________________________________________
(page generated 2025-02-22 23:02 UTC)