October 10, 2017

Anyone making desktop applications?

12

Hi there,

I am curious if anyone else making desktop applications here? I have been working on a desktop application(Bulk Image resizer and watermarker) currently working on MacOS version.

I am not getting much attention. I love to hear some experiences/opinions/numbers about desktop apps.

Edit: I am working on Batch Image Resizer & Watermarker (with RAW formats like Canon/Nikon..PSD..) https://www.tealpod.com

Kishore


  1. 8

    Hey Kishore,

    You say that you're not getting much attention. What are you trying currently?

    I've been working on a cross-platform developer tool for the past two years called Insomnia (https://insomnia.rest). I did an IndieHackers interview a while ago which should have lots of good info: https://www.indiehackers.com/businesses/insomnia

    I also have details user and revenue data on the app's website if you're curious: http://insomnia.rest/transparency

    Let me know if you have any specific questions that I can answer.

    1. 0

      Hi Gregory,

      Thanks for your reply and I highly appreciate your transparency report (I will do the same one day).

      My product is batch image resizer & watermarker (with support for RAW formats like CR2, CRW, NEF, EFR, TIFF, PNG, BMP, PSD)

      I released this product 3 weeks ago. So far I have posted on Reddit, Facebook and few photographer forums. I have got 300+ visitors (30% of them are from IH, 10% from Producthunt, 50% from Facebook) and my application downloads are in double digit. I gave discount coupons and also reduced price.

      Few users asked for Mac version so I am working on Mac Version right now.

      I want to know how to get users to download my application and try it.

      1. 0

        That seems like a great start. I recommend making a simple website for it if you haven't yet. I find that posts on Reddit/HN/PH do well for a day or two, but the real traffic comes from years of small improvements and word of mouth. So, keep improving it and keep sharing your journey.

        Another thought. Are you able to put this on the Apple or Windows app stores? Insomnia started as a Chrome app, which drove a lot of organic traffic from users browsing the Chrome Store.

        1. 0

          I have a website for my product https://www.tealpod.com

          I am right now trying to publish in Windows Store, once the Mac Version is ready I will publish in Apple Store.

          Thank you.

    2. 0

      Hey Gregory, I just realized I've been using Insomnia for the past few months, great job with it!

      Your Transparency page is excellent. I'm developing with a friend an electron app as well (https://cashnotify.com), and can relate a lot with both your interview & transparency report.

      As of right now, we have no tracking whatsoever, no usage data, nada. And we're blind when trying to understand what's valuable or not.

      How do you get your numbers, specifically Active Users? Did you embed any tracking within the app, e.g. GA or Segment?

      1. 1

        Thanks! I'm glad you're enjoying it. Cashnotify looks pretty cool. I might have to give it a whirl :)

        Ya, I'm just using Google Analytics for tracking usage. I don't even know what I would do without that data. It literally guides everything I do. I highly recommend adding Analytics ASAP so you can start learning what parts of your app are valuable.

        1. 0

          Yeah, thanks. We really need to check that.

          GA seems enough then. I guess it gives you aggregate statistics, not some kind of per-user stats?

          1. 0

            Ya, you can't get per-user statistics. For Insomnia, I keep aggregate stars for each user and send them to the server if they're logged in. These stats include things like the number of times they've launched the app, what version they're on, and a number of other useful things.

            If you have a small number of users, I would suggest trying out Mixpanel. I think it's free until 1000, but it is really good at showing per-user information.

      2. 0

        You got me thinking...

        Would you be interested in having something like:

        a) Google Analytics for Desktop Apps

        b) Hotjar for Desktop Apps

        c) Something else

        Let me know, I have the same problem, so this could be interesting to build.

        -----

        I found one project, which might be helpful to integrate GA into your app -> https://www.npmjs.com/package/electron-google-analytics

        1. 0

          I built a service similar for tracking Electron apps (and potentially every desktop apps), still unreleased : https://nucleus.sh as I wasn't satisfied with the GA integrations for my Electron app.

          Eager to hear thoughts on that!

        2. 0

          Paddle provides limited desktop app analytics (only for Mac)

          https://paddle.com/docs/sdk-analytics-mac-app-store

        3. 0

          From my maker's POV, a hotjar-like tool would be awesome. But from a user POV, I don't like being tracked, let alone being tracked in so much details. So I won't add very detailed, personal tracking.

          However, I'd like to get aggregate stats on e.g. how many active users we have, how much specific features are used, etc. so we can better focus on what's valuable, or know if there are specific issues.

          I didn't found so much resource on desktop tracking, so I'm wondering if there is any best-practice or tool.

          ---

          I found this project which works painlessly with Redux (that's what we're using), seems like the easiest solution for us. Then, from Segment, we can dispatch to whatever makes sense, probably GA at that point.

          https://github.com/rangle/redux-segment

          1. 0

            Paddle provides some usage stats(limited) and custom tracks. https://paddle.com/docs/sdk-analytics-mac-app-store

            1. 0

              We're already using Paddle (and tbh, wondering if we should look elsewhere).

              Most of the advanced stuff (like stats, trials) require the macOS SDK, which is not compatible with Electron apps.

              1. 0

                I agree, also paddle is pain to use in Java application. And their developer support is not that great. I wrote a c++ wrapper to use it with Java (it should also work with Electron, Windows only). Let me know if you are interested I will opensource and publish it on github.

                If there is a demand for desktop analytics maybe Matt, you and myself can discuss further on that direction.

                1. 0

                  Thanks Prakis, unfortunately we're publishing a Mac app — Windows version might come later.

                  Anyway, not sure if I want to invest more time in Paddle's ecosystem. Like you, I'm a bit disappointed with their support.

                  We'd like to switch to a complete Stripe experience, however we're wary of how we can/should handle VAT-MOSS (b/c Stripe doesn't help you with that, whereas this issue just vanishes with Paddle, who acts as Merchant of Record).

                  1. 0

                    The reason I went with Paddle is their trial and license checking SDK. I couldn't find similar with any other providers.

                    1. 1

                      Have you came across DevMate? (https://devmate.com/features/)

                      They have partnered up with Paddle for payment, but they offer analytics, licensing, targeted at desktop app. They also have a beta version for Windows. They also have a lighter java version (https://github.com/DevMate/DevMateClientJava)

                      Less developer friendly you can use fastspring and their licence code generator, however it will require more work. (https://support.fastspring.com/hc/en-us/articles/207436086-Adding-Fulfillment-Actions-Emails-License-Codes-Download-Links-#license)

  2. 3

    I have made several applications for my customers, using Electron.

    Even that mobile is a future, I think there is still a HUGE market share for desktop applications. The reason is millions of office workers that spending on their desktop at least 8-9 hours a day. No matter what is the last iPhone/android series, this fact is not going to change in an observable future. Another fun fact is that those people are experienced computer users constantly seeking to optimize their workflow (and they have money for that). Bottom line I think that marketing opportunities are great, as long as you are target office workers.

    1. 0

      I initially thought of using Electron for my desktop application (Image Resizer and watermarker www.tealpod.com). Application size is too big and development style is strange compared to traditional desktop applications development(especially the inter communication, it feels more like I am porting a web app than building a desktop application).

      I will consider applications related to office workers for my next project. Thank you.

    2. 0

      This comment was deleted 12 days ago.

  3. 2

    Hi Kishore,

    firstly, thank you for what started this thread/topic, with the answers to your question, I learned a lot, found people to ask my questions, so I can share my opinions about the systems for analysts Paddle/DevMate (see below) and thoughts from my humble experience.

    Sorry for my English, I just after reading reviews I decided to write my thoughts and ask questions.

    =About me=

    I am developing a desktop application, started with iOS development but gradually moved on to developing for MacOS, mainly because I think there is still opportunity to build a business and there are more areas in which to make useful applications. Also in the near future I want to release the app for both platforms (Windows and MacOS) just in order to try and find out the prospects of development for Windows.

    My website www.noteifyapp.com can’t say that my application super successful, mostly testing ideas and market (mainly application in the Apple App store), on the other hand, there are two more or less successful applications (Command-Tab Plus, MaxSnap, UnDistracted) rasprostranyayutsya exclusively from the site, because due to limitations of Apple’s Sandbox can’t just be placed in the App Store. Having experience in sales of applications directly from the Apple App Store I can say that it is very difficult to attract customers through the site.

    For Analytics, payments and licensing I use a Paddle and DevMate, now fully migrate to DevMate, as the quality of the support Paddle and the Paddle SDK disgusting (I will write below in response to the discussion Paddle and DevMate).

    As for the Paddle I strongly recommend to use their solution and have with this company any business relationship!!!

    =Questions and (if you allow) that tips for you =

    You plan to deploy your app in any store?

    I mean Windows Store and Apple Mac App Store (when the version of your app for MacOS will be ready).

    In my experience (and the experience of my colleagues) placement in the Mac App store often enough for at least some success, as people come to the Mac App Store in order to find and purchase an app and are looking for a specific keyword, for sale directly you need to do a lot more work to attract customers (SEO, advertising … the fact that I don’t know).

    By the way, I previously watched the number of requests “watermarking tool”, and I think that with proper SEO you can get clients from Google Search.

    If you can tell me that that advice I would be very grateful if you have any questions you can reach me at sergey(at)noteifyapp.com.

    Regards

    Serge

    1. 0

      Hello Serge,

      Thanks for your reply. I am thinking to go with the AppStore first. Paddle is support is not great, very slow or sometimes irrelevant answer.

      You plan to deploy your app in any store?

      Yes, I am planning to use Appstore first for the Mac OS version.

      Right now I am facing some issues in publishing to Windows Store(Bridge mechanism and Windows OS version compatibility etc issues), I am working on it.

      Google Ad words seems like costly approach.

      If you can tell me that that advice I would be very grateful

      I am sorry I am not able to understand the above sentence..

      Thank you for the email I will surely keep your contact and get in touch with you.

      Kishore

  4. 2

    just use Electron with React & Vuejs like UI framework. And combine with Firebase. So you can ship it to everywhere

    1. 0

      I considered using Electron, I felt its too big for small applications(also the performance is not as good as native applications). My current Windows application is developed in .NET which takes very less memory and fast.

      I will consider Electron for future large applications, Thank you.

      1. 1

        yes you right. but we, indie hackers need ship fast. when your app become too big/successful, you can hire someone to do this.

        1. 0

          I will consider your suggestions for my next project. Thank you.

  5. 1

    I am also working on a Mac app. It is a desktop client for a well known saas project management. It is currently in Alpha. Windows version is also on the table if the Mac one is successful.

    1. 1

      Hello Wal,

      This forum is not allowing me to reply you on the above comment (maybe there is a limit for Child level) or a Forum bug. So I am replying here.

      Thank you for letting me know about DevMate Java integration. I read about DevMate but I was not aware of DevMate Java integration. If that works it will save alot of time for my Java project. Thanks again.

    2. 0

      That sounds very good idea to build something for an existing market/service. I am searching for a market like that for my next project.

  6. 1

    There are plenty of desktop app makers out there still. Check out Andy Brice's stuff, plus there are a few people on bootstrapped.fm doing this.

    And me! If, by desktop software, you also mean self-hosted. I think there's quite an overlap there.

    1. 0

      I will look into bootstrapped.fm .

      Thank you.

  7. 1

    There are a number of advantages to making a desktop app over the cloud but security isnt one in my opinion. While its possible to compromise cloud data its much easier to compromise someones desktop. Didn't want to go into great depth with that, but just wanted to point that out.

    The implementation method doesnt really matter to most people. they dont really care how to the code is written they just want to achieve their goals. the applications youre describing sound like tools people would use on the desktop so I think the issue must be with visibility or a lack of market demand (or price / desirability) rather than implementation.

    last thing ill mention is that marketing stuff is hard. if youve never done it you'd be surprised how picky the target audience might be. I dont do that part myself but from a third party perspective figuromg out how to reel in am audience is like a mix between research, experimentation, and black magic.

    1. 0

      Yes my products are tools for photographers and bloggers, sellers.

      Thank you for your reply.

  8. 1

    Hi Kishore,

    I haven't released this one yet, but I've been working on a desktop application to contour regions of interest in images, and assign properties to these regions easily. I'm using this to create datasets for object detection.

    I'm planning to continue using it personally for a while longer before I send it out into the world.

    Tom

    1. 0

      I am curious what is the target market for your product.

      1. 1

        Anyone working with machine learning in order to detect the location of objects in an image. In order to do this very accurately with the use of a deep learning model, you need a substantial data set with the locations of the objects you're trying to detect indicated (with a mask, bounding box, etc.)

        As I said it isn't on the market yet, but I'm using it in my own projects to generate the datasets I need as quickly as possible, and export them into the formats needed to train a model using popular frameworks (i.e. Tensorflow).

        For example, if you are trying to detect the location of windows on buildings, an ML method might be to point out the location of these windows in a few thousand images (maybe only hundreds if you're lucky), and then use this dataset to train a neural net to recognize the location of windows in images. My tool can be used to build and then export the dataset.

        Once I've kicked the tires on it for another while I'd like to see if anyone else might get some use out of it.

        1. 1

          Thats very interesting work. Good luck.

        2. 0

          Have you looked at medical imaging as an application for this? There is a huge market for ML and automating interpretations of images and multi slice scans.

          I can see a time in the very near future when we don't have to put highly trained radiologists sitting in dark rooms staring at screens.

          1. 0

            From what I understand, deep learning is being used to great effect in that field. I have no domain knowledge there, but the intent with the tool I'm building is to make it easy (relatively speaking) to create the types of data sets you might need to perform precise object detection in images.

            For now I'm just building it to be useful for my own projects (I am not a radiologist), but I see no reason that it could not be eventually applied to what you're talking about.

            1. 0

              Well good luck with it.. definitely a field that will be interesting to watch..

  9. 1

    I'm working on a desktop Map app, as well. For personal finance. Just launched it though so I don't have much to tell yet.

    Desktop Mac was a strategic choice for my partner and me because we care about data safety; we didn't want to be hosting people's bank data on a server or even handle sensitive information at all. That ruled out web apps. We chose Mac simply because that's what we use so testing is easier.

    Why did you choose desktop as your target? And Mac?

    Do you intend to add other platforms later?

    Who is your target user and why do they prefer desktop (if at all)?

    1. 0

      Thanks for the reply @Hnvance

      Why did you choose desktop as your target?

      My previous work experience is one of the reasons for choosing desktop apps. I have a lot of experience in building desktop applications for scientific tools, data analyzers, very large scale data visualizers etc. So I thought I will use my previous experience and build something easy and useful.

      Do you intend to add other platforms later?

      I have already developed Windows version of Image Resizer & watermarker (Version 1.3 https://www.tealpod.com ). Currently I am working on MacOS version and adding new features like watermark customization. My idea was to develop it first for Windows and then port it to MacOS, now I feel its a bad idea. I should have started with Mac version and then worked on windows.

      My products allows to

      • Resize large images to upload on web, blogs, Etsy, eBay, Pinterest etc

      • Convert Proprietary Camera image formats like Canon, Nikon RAW images (also PSDs) to JPG and PNG format

      -Add logo, company watermark to their images.

      I can say the target users are photographers, bloggers, online sellers on Etsy, ebay who like to add their logo watermark to their images.

      Why desktop

      Uploading 1000s of images to a web app just to resize takes a lot of time also Saas models are costly (they charge monthly) where as desktop app is a one time purchase.

    2. 0

      This comment was deleted 13 days ago.

  10. 0

    Interestingly, just yesterday, I was thinking that a lot of the technical complexity in what I'm trying to build in my side project is because I'm having to jump around managing state and identity management because I'm dealing with my main dev platform for the last 20 years (the web).

    I stepped back, had a think, and realised I could produce something much more elegant, powerful and simpler if I just built a desktop application where state is inherent, as opposed to the web which of course has to be stateless.

    I'm an Apple guy most of the time, so I'm going to pick up Swift and target macOS with cross-platform ports coming if I think it's worth it. Moving to an iOS app should be doable for some pieces of this as well, and so I'm going to keep my core logic in well organised reusable libraries where possible.

    When you do some digging around the indie software scene you realise that desktop apps were where it was "at" some years ago (think shareware), but more people were able to make a living out of the Mac environment than they were the Windows market, because the former had a higher number of people in it prepared to pay for software from indie houses compared to the much larger Windows market.

    Most of the indie scene has now moved to online SaaS because "scale", but I think with recent scares around personal data, over the next few years that might be an appetite from consumers to have local applications again.

    1. 0

      I agree that for some domains, desktop application is much more suitable than web app. I felt batch image resizing is something where users doesn't need to upload thousands of images just to resize or add watermark.

      I started believing that there are not many paid users on Windows market. Once I release the Mac OS version I will publish my user stats online.

      I too feel the same that most of the Saas models are web based now.

      Thank you for your reply, its informative.

  11. 0

    As a web dev, I always felt curious about desktop development. I think nowadays everybody is taking the Electron route, am I right? I'd be interested in doing something native, I've taken a look at QML bindings to golang. Seems interesting.

    1. 0

      Yes I am hearing alot of applications developed on Electron. I have solid experience on Java(Swing , JavaFX) and .NET(WPF) guy. I considered Electron for my application but I felt it is too heavy(application download size is around 60MB ~ 80MB) . Memory (RAM) usage is also high on end user app. My current .NET app takes around 11MB download size and takes less than 30MB in RAM. Also application development is more like web app, event model communication is strange more like web ajax. I thought for a small application(with little UI) it is better to go with native development.

      That sounds interesting I never looked into QT or Golang.

  12. 0

    I've made a solitaire card game for Mac Desktop:

    https://solitairegamecenter.com/

    I've made it in React, so it works for web as well. I've made the Mac version using Electron and I plan to release on the Windows App Store as well soon.

    I don't know much about your app, but SEO applies to app stores as well (often called ASO). If you're haven't optimized your ASO, people haven't got a chance of finding you when they're searching for the tool you've made for them.

    1. 0

      My application (Batch Image Resizer & Watermarker) right now only works for Windows. I am developing Mac OS version.

      I am curious to know how are your sales for solitaire game? what is the visitor to download ratio?

      I will look into SEO for apps. Thank you.

  13. 0

    Hey Kishore, I'm working on Ottifox (desktop app for Mac, and eventually Windows): ottifox.com

    I just launched in September (after 9 months of dev work). The biggest lesson for me so far, is that you should be focusing 50% of your time on marketing activities, and product quality. For example improving usability of features after getting feedback and also creating relevant content for your audience. Looking back that's what I would change; market even before the product is ready.

    What's your approach to getting inbound traffic and capturing it? For me the hook I've used has been to sign up to download the build. Arguably I could flip that around, have them download first then sign up at first launch (will likely experiment with that path in the future).

    I chose desktop because it seemed easier than working on a cloud infrastructure that I'm less experienced with. Tough since the tech stack I'm using is web based, technically that option is open for the future.

    1. 1

      Ottifox.com looks interesting.

      I realized marketing is lot big work than I thought. I am working on Mac OS version(with improvements) of my product Batch Image resizer & Watermarker. I am planning for to give more importance to usability and marketing for the next version.

      I like your idea about asking the user email after download.

  14. 0

    I'm working on a desktop app that does text message data analysis. It used to be a website but the user experience was too hard, and with a desktop app having access to the file system is 100x better for users.

    1. 0

      I can see the value in making the desktop app. Good luck. Let me know once it is ready to release.

  15. 0

    I’m working on a desktop app, first time.

    I’ve found a niche space (with a friend) where an app with NLP capabilities may be profitable, so we’re looking into it.

    The market size would be pretty small, but relatively high revenue per customer if it pans out.

    1. 1

      I think finding the niche area is the first big step. Few years back I worked on a NLP project in python for time period extraction from documents. That was a heavy cluster app with a web interface, this was before Bid Data time.

      Good luck.

      1. 0

        Nice.

        I’d be interested to hear how it went (development, sales, etc.) if you ever have time to share.

        1. 0

          That product failed. Big companes(Amazon is one) are only interested to acquire the company than take the services. And the founder was not interested to sell it. After the funding tried up(they fired most of the development team) and went into services with half-baked product and got few clients for data extraction. I was surprised by the type of companes interested in that product, especially Laywers in US used that product to analyze and fetch some past case details.

          This is how the application works.

          -Search web(webscrap) and also local documents(we feed lot of text, doc, pdf, other formats) to the application.

          -Remove all decoration (html and meta data) and store in a bucket.

          -Seperate each line in the document and store in a list.

          -Run the inteligent analyzer on these lines of each document.

          -There are few types of analyzers like relational analyzer, person details extraction(who are the people in the doc), validity etc, the most complex and interesting one was Time Analyzer.

          -Time Analyzer extracts time details from the document, example what is the time period this document talking about.

          If the document is something like this,

          Bill gates launched Microsoft in 1975. ... Step down as CEO in Jan 2000 and continued as Chairman. Fourteen years later he stepped down from that post.

          Time extracter fetch the following data from the document.

          This document is talking about the period 1975 to 2014

          1975 - Launched Microsoft

          2000 - Character-1 Chairman Start period

          2014 - Character-1 Chairman End period

          Character-1 (here Bill Gates)

          Character-2 Balmer etc...

          Once that is done we can run all types of queries against the results. What happened during 2007? Result: during 2007 Bill Gates was Chairman of Microsoft.

          We implemented rules engine in simple XML(not in regex) so that anyone can write a rule.

          Simple rule is like anything following Mr.xxx is 99% name and if the following letter is verb/ etc

          <Rule startsWith="Mr." Weightage="99%" >

          <FirstFollowingWord location="After" Condition-Not-A="verb/....etc" ... />

          <SecondFollowingWord If-Not="nount/verb/..." .... />

          We had rules with different weightage and acuracy. Once the rules are applied it returns a complete navigatable relational object document.

          That program needed thousands of rules/corrections/testing but I was forced to design and implement in 6 months. Results were only 40% accurate for high quality documents and for some they were complete garbage.

          If you want to know anything more let me know.

          1. 0

            Thanks for sharing that!

            We are doing something similar in terms of taking an input, breaking it out into separate lines, then running NLP analysis on each line.

            A difference is that we are processing PDFs, not web pages. I’m learning more than I ever wanted about PDF along the way.

            We are planning to build a pre-processor (in python) in order to get break each document into the separate lines and ready for the NLP step.

            Good to hear our approach is at least similar to someone else’s!

            1. 1

              That application was also developed in Python (except for few core modules in Perl). All web-scraping, Pre-processing like line breaking, storing, Rules to RegEX conversion, data fetching was done in Python.