Connect with us

Archives

What Has Changed for Developers in the Last 20 Years

Published

on

What Has Changed for Developers

I asked this question on Hacker News last week to understand the shifts in software development over the last 20 years. From 1995 to 2015, there has been a dramatic change in the developer ecosystem.

I thought I’d summarize all the changes and try to make sense of the trends. In this post I am only going to focus on the identification of the trends, as opposed to the analysis. I would love your thoughts on trends I may have missed.

1. The rise of open source options: In 1995, there were about 5 open source languages for the web including Perl. Now there are over 100 languages including Ruby, PhP and Javascript.

2. Plethora of libraries and frameworks: From < 10 libraries and frameworks to over 200 (Bootstrap, Javascript frameworks, etc.) The only libraries available in 1995 were those for Javascript. Today, there are over 100 libraries and frameworks for Php alone.

3. From waterfall approach to development to Agile: Most early software development was based on Requirements -> Design -> Architecture -> Development -> Testing -> Release. Now with agile methodologies being followed by many development teams, we are seeing a rise of faster release and in many cases daily releases.

4. Client-server application development to Web apps to Mobile apps: The overall changes are from PC (dekstop / laptop) client software to web applications and now to mobile applications. We have gone from native clients to browser based apps back to native mobile apps all over again.

5. Phenomenal rise of consumer apps, thanks to mobile : Personal finance (Intuit), to 1+ Million consumer apps thanks to mobile. PC’s were largely (90%) used for “work” with few consumers having home PC’s. The home PC’s rose thanks to the web, but now everyone has a mobile phone. Which has led to a phenomenal increase in # of consumer apps, not just business or productivity apps.

6. Increased availability of application level API’s: From providers such as Facebook, Twitter, and others on programmable web. The abstraction of core API’s from just Operating system SDK’s to application level API’s has made the move for apps to be built on the next level of the application stack.

7. Ease of looking up coding examples, tutorials and sample code: Thanks to Stack Overflow and Github, there are many more samples, code snippets and examples that developers can use to be more productive quicker.

8. Rise of coding / hacking schools: From no programming skills to employed developer in less than 6 months. Most developers, 20 years ago, needed to have an education in Computer science, before they could code.

With the rise of frameworks and libraries, along with higher level languages, there has been a significant rise in number of coding schools and bootcamps to get anyone with any degree be a developer in less than 6 months.

9. Increase in the number of indie developer (solo): With the rise of consumer mobile apps and mobile games, there has been a significant rise in # of solo developers who are able to make a living based on building applications for niche audiences.

10. The change in market share of complied versus interpreted languages: 20 years ago, most programs and applications were compiled (C, C++) and the share of interpreted languages was small. Now, with Javascript Ruby and Php taking the forefront, most applications are interpreted not compiled. The only exception is mobile apps – which are still compiled.

11. The rise of DevOps: Developers are now being asked to not just build and architect, but also release and push their apps to production. Roles that were previously performed by specialized system administrators and release engineers are now performed by the software developers themselves.

12. The fall of software testing: More developers are also being asked to test their own code and software applications, instead of handing off the testing to a separate team.

13. The changes in app distribution – App Stores: Discovering, installing and using apps is a much more smoother and easier process now than before thanks to App stores.

14. The availability of Cloud infrastructure for app development: The biggest change for developers over the last 10 years has been the rise of AWS and other cloud services, which allow developers to provision, build and deploy instances and machines much faster than 20 years ago.

I’d love your feedback on the relative ranking of these trends and if I have missed any trends I’d love your feedback on those as well.

Continue Reading
Click to comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Archives

Creating Artificial Constraints as a Means to Innovation

Published

on

By

Artificial Constraints

Many of the entrepreneurs I know have created new innovative startups thanks to real constraints they had. For example, I was hearing AirBnB’s Brian Chesky, on the Corner Office podcast and he mentioned that when he and his cofounder were trying to get some money to get started and the only way to keep afloat was to “rent” their air bed they had in their room. That, then led to Air Bed and Breakfast, which is now AirBnB.

This was a real constraint they had – no money to “eat” so they had to make it happen somehow.

I have heard of many stories of innovation where in the protagonists had real constraints of either financial, technology, supply, demand, economic, social or any number of other characteristics.

The interesting story that I have also recently heard of how Facebook has “pivoted” from being a desktop offering to getting a significant part of their revenue from mobile is how they were given the arbitrary constraint of only accessing Facebook via the mobile phone.

So there are ways that you can create “artificial” constraints to force innovation to happen.

Most larger companies and some smaller ones as well, have to constantly find ways to create artificial constraints – to find a way to innovate and be more be a pioneer.

While some constraints are good – lack of funds at the early stage for example and lack of resources, there are entrepreneurs that are stymied by these constraints and those that will find  a way to seek a path to go forward.

I think this is a great way for you to think about innovating in a new space. If you have constraints, find a way to use it to your advantage.

Continue Reading

Archives

The Great Mobile App Migration of March 2020

Published

on

By

Mobile App Migration

Over the last few weeks as many in the world have been in lockdown, there has been a temporary “mobile app migration” happening. There are new apps downloaded and they replaced existing apps on the “home screen”.

While some of these apps are likely temporary use, for e.g. I have 6 “conferencing apps” – Zoom, Uber Conference, Webex, Google Hangouts, Blue Jeans and Goto Meeting. That is because of the many people I have conference calls with – each company seems to have chosen a different web conference solution.

Other apps seem like they will have staying power – Houseparty, for e.g. which has games, networking and video conferencing all built into one app to keep in touch with friends and relatives.

Houseparty

The apps that have moved away from my “home” screen, which I expect will come back once the crisis will be behind us include – Uber, Lyft and all the airline apps from Delta, Alaska and United.

Continue Reading

Archives

Perseverance with the Ability to Pivot on Data: 21 Traits We Look for in Entrepreneurs

Published

on

By

Perseverance with the Ability to Pivot

There are 5 key inflection points I have noticed which makes founders question their startup, to either make a call to continue working on their startup, pivot to a new problem or quit their startup altogether.

It is at these points that you really get to know the startup founder and their hunger and drive to be successful. I don’t think I can characterize those that choose to quit as “losers” or “quitters” because of many extraneous circumstances, but there is a lot of value that most investors see in entrepreneurs who face an uphill part of their journey to come out on the other side more confident and stronger.

These five inflection points are:

  1. When you have to get the first customers to use and pay for the product you have built after you have “shipped” an alpha / beta / first version. Entrepreneurs quit because they have not found the product-market-fit – because the customer don’t care about the product, there is no market need, or the product is really poorly built, or a host of other reasons.
  2. When you have to start to raise the first external round of financing from people you are not familiar with at all. Entrepreneurs quit because while it is hard to get customers and hire people, it is much more harder to get a smaller set of investors to part with their money, if you do not have “traction”, or “the right management team” or a “killer product”.
  3. When you have to push to break even (financially) and sustain the company to path of being self sufficient. Entrepreneurs quit at this stage because they have now the ability to do multiple things at the same time – grow revenues and manage costs, and many of them like to do one but realize it is hard to do that without affecting the other. So, rather than feel stuck they decide to quit.
  4. When you have to scale and grow faster that the competition – which might mean to hire faster, to get more customers, to drive more sales, or to completely rethink their problem statement and devise new ways to grow faster. Entrepreneurs quit at this point because they are consumed by the magnitude of the problem. They overassess the impact the competition will have on their company, give them too much credit or focus way too much on the competitors, thereby driving their company to the ground.
  5. At any point in the journey, when the founders lose the passion, vision or the drive to succeed. Entrepreneurs quit a these points because they have challenges with their co founder, they don’t agree with the direction they have to take, or encounter the “grass is greener on the other side” syndrome.

While I have observed many entrepreneurs at these stages at  discrete points in time, I have also had the opportunity to observe some entrepreneurs in the continuum, and I am going to give you my observations on 3 of the many folks I have known, who, have quit.

Perseverance separates great entrepreneurs from good ones
Perseverance separates great entrepreneurs from good ones

One went back to college to finish his MBA after getting a running business to a point of near breakeven, another found the business much harder than he originally thought he would and got a job at a larger company and the third was just unable to have the drive to go past 11 “no’s”‘ from angel investors.

Over the last 8 years, if I look at my deeper interactions with over 90 entrepreneurs, who I would have spent at least 100+ hours each, I would say that of the 24 people that are not longer in their startup, the one thing that stands out among the ones that persevere is that it is not “passion” or “vision” at all.

It is the inherent belief that they are solving a problem that they believe is their “calling”. They also don’t believe that there is any other problem that’s worth solving as much, even though there may be easier ways to make money.

So most of my questions of entrepreneurs to test whether they will pivot or quit are around why they want to solve this problem (which I am looking to see if they know enough about in the first place) versus any other one.

The answer to that question is the best indicator I have found to be the difference between the pivots, the leavers and the rest.

Continue Reading

Trending