20 years working on the same software product

(successfulsoftware.net)

433 points | by hermitcrab 18 hours ago

28 comments

  • palata 16 hours ago
    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?

    • hiAndrewQuinn 7 hours ago
      >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 4 hours ago
        > 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 1 minute ago
          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

    • hermitcrab 16 hours ago
      You buy a perpetual licence for version N. You can then optionally upgrade to version N+1 later at a 60% discount.
      • lotsoweiners 16 hours ago
        The best business model.
        • beached_whale 16 hours ago
          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.
        • dehrmann 8 hours ago
          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.

          • hermitcrab 7 hours ago
            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 3 hours ago
            >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.

          • antaviana 8 hours ago
            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
          • ch33zer 8 hours ago
            Really? I'm still using sublime 2 from 10 years ago and it still works great across Mac and windows.
      • palata 4 hours ago
        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 41 minutes ago
          Probably wedding planners are the biggest customers.
      • hiAndrewQuinn 7 hours ago
        I especially like this if the 60% multiplier becomes 60%² at N+2, 60%³ at N+3, and so on. Feels like you're getting rewarded for hopping on early.
    • _kush 3 hours ago
      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.

    • skinner927 14 hours ago
      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.

      • andrekandre 13 hours ago

          > 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/

      • lazypenguin 11 hours ago
        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 8 hours ago
          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 2 hours ago
            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.
      • gmueckl 13 hours ago
        You found the reason why Qt is popular.
      • nikau 13 hours ago
        Call me a boomer, but I preferred old apps that had a consistent interface instead of all the random wheel inventing.
        • riffraff 3 hours ago
          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.
      • jeremyjh 14 hours ago
        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.
      • mixmastamyk 13 hours ago
        Don't style it, please. I chose my system theme for a reason.
    • codelion 11 hours ago
      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.

    • rvz 15 hours ago
      > 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 12 hours ago
        > 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.

        • TeMPOraL 6 hours ago
          > 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 26 minutes ago
            > 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 12 minutes ago
            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.

        • tonyedgecombe 3 hours ago
          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 17 minutes ago
            Wow, it's just like gitg except it costs an arm and a leg instead of being free and open source!
            • hermitcrab 13 minutes ago
              $59.99 = "arm and a leg"?
              • nobankai 9 minutes ago
                For a git interface with multiple open source alternatives? Yeah, this is a tax for people too stupid to figure out commit -am.
        • zoom6628 11 hours ago
          This. And I live in hope that WASM runtimes can address some or all of this one day.
    • fuzztester 15 hours ago
      >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

  • pmkary 16 hours ago
    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)
    • bnastic 2 hours ago
      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)

    • p3rls 5 hours ago
      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.

    • Tossrock 8 hours ago
      Spacemonger is this to a tee.
    • emeril 15 hours ago
      yeah - I'm sure Everything by voidtools is precisely that
  • huevosabio 17 hours ago
    > 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!

  • piker 17 hours ago
    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 17 hours ago
      Also worth noting that a more detailed write up of the business elements would likely go down very well here!
      • hermitcrab 17 hours ago
        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 17 hours ago
          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 16 hours ago
            What is JD?
            • realityfactchex 16 hours ago
              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 16 hours ago
                Damn. I am familiar with that term but hit a cache miss.
            • dmoy 16 hours ago
              Juris Doctor, aka a lawyer
            • tiledjinn 16 hours ago
              Juris Doctor. A lawyer.
        • ryandrake 16 hours ago
          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.
      • gwbas1c 17 hours ago
        Yeah, I'm really curious how the author was able to get the kind of sales needed to support a family.
    • thfuran 13 hours ago
      So they called his bluff.
  • jwr 16 hours ago
    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 14 hours ago
      > 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 10 hours ago
        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.

      • tonyedgecombe 3 hours ago
        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?
      • cfn 7 hours ago
        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 6 hours ago
          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 6 hours ago
            >even if his who[le] family is wiped out in a plane crash.

            Thanks for that cheery thought.

    • keepamovin 13 hours ago
      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.
    • fuzztester 14 hours ago
      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 ...

  • mezod 16 hours ago
    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 16 hours ago
      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.

    • jwr 16 hours ago
      >$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 16 hours ago
      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!
    • aqueueaqueue 16 hours ago
      Yes. Not me, but check out indiehackers as they show stripe-verified revenues.
      • hermitcrab 16 hours ago
        But not their expenses? Revenue != Profit.
        • aqueueaqueue 16 hours ago
          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 16 hours ago
            Advertising can be very expensive.
            • aqueueaqueue 15 hours ago
              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.
  • 101008 17 hours ago
    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.

    • losradio 1 hour ago
      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.

    • eikenberry 16 hours ago
      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 16 hours ago
        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 15 hours ago
          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 2 hours ago
            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 16 hours ago
      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 16 hours ago
        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 16 hours ago
          I don't understand where gender, age, and ethnicity come into play in this.
          • hermitcrab 16 hours ago
            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.

          • crackez 15 hours ago
            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 4 hours ago
          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.
    • achillesheels 15 hours ago
      Emphasis on ride.

      El camino es mejor que la posada.

    • jebarker 16 hours ago
      +1 this is the dream career!
  • tasuki 5 hours ago
    > 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 3 hours ago
      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 1 hour ago
      I'm guessing CICD isn't a priority on a desktop product that doesn't need to be released all that often.
  • asim 16 hours ago
    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.
  • wvenable 16 hours ago
    This post makes me nostalgic for the old Joel on Software forums.
    • hermitcrab 16 hours ago
      I miss Joel's writing. Erik Sink as well.
      • wvenable 15 hours ago
        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 15 hours ago
          Sounds like you have a reasonable mix of job security and freedom. The grass is always greener on the other side!
          • wvenable 15 hours ago
            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 1 hour ago
              >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.

  • NKosmatos 17 hours ago
    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 16 hours ago
      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

  • ChrisMarshallNY 5 hours ago
    I’ve used (and paid for) BBEdit, for more than 30 years.

    https://www.barebones.com/products/bbedit/

  • racl101 14 hours ago
    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!

  • m463 16 hours ago
    > 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 16 hours ago
      There is a social distancing option, added due to the pandemic. ;0)
      • LoftyHobbitMan 13 hours ago
        This cracks me up. Sounds like a good selling point though.
  • ilamont 1 hour ago
    > 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 1 hour ago
      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.

  • kylecazar 13 hours ago
    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 7 hours ago
      Google "supply chain attack". It is a worry.
  • robocat 16 hours ago
    > 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 15 hours ago
      >Someone will develop for the web.

      A number of web based alternatives to PerfectTablePlan have appeared over the years.

  • bsnnkv 13 hours ago
    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!

  • 7thaccount 17 hours ago
    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 17 hours ago
      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).
  • mparnisari 15 hours ago
    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 ;)
  • ozim 16 hours ago
    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 15 hours ago
      you'd end up getting requirements from users yourself, instead of business people
      • ozim 8 hours ago
        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.
      • J_McQuade 15 hours ago
        Yeah, but I'd hope that I can understand my users.
  • 4rt 14 hours ago
    You're living the dream, great work.

    Looks like an impressive bit of software and not some flash in the plan disruption nonsense.

  • alberth 13 hours ago
    > It is about 145,000 lines of C++.

    Huge respect for maintaining such a large codebase.

  • kayo_20211030 15 hours ago
    Love it. Keep on keepin' on.
  • fragmede 15 hours ago
    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 7 hours ago
      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 6 hours ago
        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 6 hours ago
          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 6 hours ago
            oh wow thank you for blogging about it too! sorry for assuming you hadn't
  • antithesis-nl 17 hours ago
    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.
    • aiauthoritydev 16 hours ago
      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.
    • dylan604 17 hours ago
      You're clearly not preparing them correctly. You have to ground them down to a fine micro-plastics powder.
    • chrisweekly 16 hours ago
      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 7 hours ago
        Follow the link - the CD was chewed by a dog
  • henning 16 hours ago
    It's cool to see a product that apparently uses evolutionary algorithms do so well.