Skip to main content

New software product viability in the age of AI

Coding is cheaper?


In the current day and age, since the start of AI coding agents, the new software products are getting high rocketed. The official GitHub stats are proving this already. 
https://innovationgraph.github.com/global-metrics/developers#global-developers
https://innovationgraph.github.com/global-metrics/git-pushes#global-repositories
https://innovationgraph.github.com/global-metrics/repositories#global-repositories



There're news that GitHub is barely holding against new traffic with AI agents and some companies like Anthropic are trying to switch to new version controlling systems that can scale with the rate of AI agent traffic.

This means coding is a software product is getting cheaper and cheaper everyday compared to coding with humans as it used to be. This means new software products are getting created and people are starting to build new products even without any developing or engineering background who are vibe coders. 

Now, it seems a unique code or a feature is not going to be a flagship product to a certain company anymore. This is getting proven everyday with replicating products of flagship brands that used to dominate the market. We're seeing replicas of Office suites, image editing, video editing suites popping up more than ever. Yet they're in the same quality as the well known products that used to dominate the market. 

So, having a great software feature is not going to stick your customers loyal to you any longer in this day and age coz the mere users can develop their own software with the help of AI.

New software prone to copy?


This is situation is more troubling to new entrepreneurs who are planning to build their own software products form scratch. Having a great product idea or a feature set is not going to guarantee a great product anymore. Coz anyone can just build it within hours to days.

Knowing this, how do we start a business with new software products? This is a great question that we all will have to find answers. 

Here are some of the things that I gathered so far to answer this. 

We can consider this as more of a checklist before starting a software product.

  1. Can someone reproduce 80% of the product's value using AI tools in a few days?
    • Can a competitor build something that most of your solution trying to do using ChatGpt, Claude or any existing AI products in a short time?
  2. Do we have something valuable that competitors cannot easily access?
    • eg: industry expertise, proprietary data, exclusive partnerships, or established customer relationships.
  3. Does our product become better as more customers use it?
    • Look at the continuous improvement plan based on the user feedback. Can we extract useful patterns, insights that can improve the product further so it'll be helpful for the future users?
  4. Is our product deeply integrated into customers' everyday workflows?
    • See if the customers can use the product for their most recurring day to day work rather than occasional work.
  5. Would customers still choose us if a competitor offered the same features for half the price?
    • Determine if the customer would value your qualities like reliability, accuracy, trust, service quality, integrations, and proven results beyond the mere list of features.


It'll be a good idea to evaluate these factors before starting a new software product in the age of AI. Let me know if you can think of any more points that should come to this checklist. Leave a comment.

Comments

Popular posts from this blog

VLC skins

It's been a while from my first blog post, so today I thought to make a blog post about skins in VLC player. I think you all are familiar with VLC player if not, here's the link for the website www.videolan.org/vlc/index.htm l In brief, VLC player is a free and opensource player that can play almost all the types of media formats. Even though it is a such a nice player, it looks kind of old and rusty, like the windows classic look. But you can make it prettier by just adding some new skins to it.  You can download skins for the player from here http://www.videolan.org/vlc/skins.php Then place the downloaded skin file (.vlt file) in the " skin " folder in the installation directory.           eg:- in windows:    C:\Program Files\VideoLAN\VLC\skins           or in linux systems:  ~/.local/share/vlc/skins Then, open the VLC player and go to the preferences. ...

How to set terminal title in Ubuntu 18.04 LTS

In older Ubuntu versions, you could have just right-clicked on the Ubuntu Terminal window's title bar and set any title you would like. But unfortunately after Ubuntu 18.04 LTS this feature is gone. I used to love this feature because I'm multiple tabs in the single terminal window kind of a guy. I usually like to work in multiple named terminal tabs like below. By default, in newer Ubuntu version, it is showing just the current directory. Let's see how we can do this. Ubuntu prompt In ubuntu's Bash, there's an environment variable $PS1 which is responsible for the details that the command line prompts. You'll be able to echo this and see what's inside it. If I echo it it will print something like this. echo $PS1 \[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ If you really want to understand what this means, you can refer this page .  Updating the termina...

Java, how to create a list with a single element

 I wanted to create a Java List with a single element. Yet, I wanted to add more elements later. So, I was looking for a couple of ways to do this. So far there are multiple elegant ways to create a list with a single element with a one-liner. Not so much for a modifiable list though. Here's what I gathered so far. Followings are a few ways of creating a list with strictly a single entry. Can't add more elements. 1. Collections.singletonList() This returns an immutable list that cannot be modified or add more elements. // An immutable list containing only the specified object. List<String> oneEntryList = Collections. singletonList ( "one" ) ; oneEntryList.add( "two" ) ; // throws UnsupportedOperationException 2.  Arrays.asList() This returns a fixed-size list consisting of the number of elements provided as arguments. The number of elements provided would be an array hence the size is fixed to the length of the array. // Returns a fixed-size list List...