I’ve arrived to the conclusion – probably not for the first time in my professional life – that – resolving problems of business & the demand from users and businesses is bigger and more important than the technology. It does not matter what is the feature and complexity it may bring to the table. How it fits in the non-tech mind and context is the tricky part. Here is the same opinion of Steve Jobs.
Technological Psychology
The important features that some software will bring will be far far away to the majority of people than the psychology it is wrapped with. The playing with the mind is the Price & Usage of the Web sites & Services.
- Facebook – selling user interests
- Google – selling google searches
- Apple – selling hardware and taking advantage of the closed and controlled ecosystem.
- Marketplace Web Sites that are mostly free, but have fees.
- Chat Platforms – Most of them are free, but, they again store your data that may be a privacy issue.
- Open Source Packages – They could be seen as free, but they are not.
- You need technical knowledge.
- You need support and upgrade.
The Bitcoin case
The bitcoin is
- Public/Private Cryptography
- Timestamping & Hashing
- Torrent protocol empowered by the solution of the Byzantine General Problem.
Beyond these tech stuff – it is also:
- The Network Effect –
- That creates Security
- Search & Demand.
- Independence of a single centralized authority
In the end of the day – all is psychological. But let not get into that fussy area and skip to the tech.
What technology should I pick?
Implementing stuff with Web Technologies will reach all users. Almost all types of devices that have screen and internet connectivity have a browser. It may be a little bit limited – depending on the device type, but, it will still be a browser. Old devices and desktops also have browsers. They may fail to work only because of two big breaking changes in the web standards.
- Newer application APIs in use like
- Payment & Crypto API
- devices & accessories API (Camera, OpenGL, etc)
- Web Sockets, Data Storing APIs (Indexed DB, Local Storage, SQL Web Database(deprecated) )
- Insecure SSL protocols – Servers Upgrade the allowed crypto algorithms, so older browsers may not work.
Many times you need features and user experience that are beyond the web. In this area, with whatever disadvantages they have, Cross Platform Frameworks are the solution.
I personally have dived into Flutter:
- because it is developer friendly
- Have the promise to reach all platforms with native apps – Android & iOS, Windows, Linux, Mac, even Chrome OS and Web.
The Real Need
People and business just:
- want to make money,
- to save money,
- or to save time.
The things beyond this – are health, security, popularity, happiness and other feelings, that are subjective – beyond the software itself.
Who do you serve?
Users & Clients want to save their own time, not yours (the developer, or the seller of a product or service). Saving our own time as developers is good idea, but it is not sellable to a non-tech. Before a coder dives into the technicality, requirements should be well established, otherwise a lot of temporary solutions are created that also pollute with bugs and issues and make both parties – unhappy.
Marketing & Selling is about selling first and creating after that. This is especially important, when the tasks require a lot of work. And here again is tricky to find the common ground between the creator and the consumer (business analysis). That’s why there are individuals that work specially in this area. A developer may think Egoistically – that – he is the one that actually creates the products, but – the things he builds will never reach his desktop, if there was no selling first.