I wanted to share some interesting data following a recent presentation looking into Modern Windows development.
Table of Contents
75% of Windows Desktops use Windows 10!
Windows 10 is now used by 3 out of every 4 Windows desktop machines! This market share is up around 10% in 2020, having originally passed Windows 7 back in late 2017.
Windows 7 is down to around 18% and falling. In part as Enterprises continue to shift to Windows 10 following Windows 7 going End of life in January. Windows 8.1 is stable at around 4%
What does it mean for me as a developer?
You need to make sure your applications are Windows 10 ready more than ever. Windows 10 has made fundamental adjustments to the UI layer in reaction to a number of hardware innovations, and patterns of use. This includes adjustments for PerMonitor support for different resolutions and DPI’s, and the enhancements around HighDPI support.
HighDPI support is no longer an optional item, without it, your application could be rendered unusable on certain screens and the end-user experience will suffer.
That said, there is still a reason to have backward compatibility with older versions of Windows. (Something the VCL helps support with its implementation of the new Windows 10 controls – YES – you can run then on Windows 7 and Windows 8 if you use the VCL)
If you are looking to add HighDPI support to your Windows applications, then I suggest starting with images, and check out the new TImageCollection and TVirtualImageList and also watch this webinar replay
For more about Windows 10, and some of the new controls and Windows 10 features in RAD Studio for Delphi and C++Builder, this 5 Unique Features for Windows 10 blog post is a good summary.
Windows and Android rule the roost!
The numbers are pretty clear.
- 38.51% – Android
- 36.27% – Windows
- 14.12% – iOS
- 08.25% – macOS
- 00.83% – Linux
When it comes to the type of devices on the mobile side – it is mobile (50.33%) and desktop (47.04%) all the way, with Tablets accounting for just 2.63% of the market share.
What does it mean for me as a developer?
It means Android (and also iOS) are a key platform and technical asset to target to expand the technical capabilities of your desktop applications. This barrier to entry is low as the adoption is high. This makes it an ideal target to enhance your product offering and maximize development return.
With more mobile devices in use than desktops, mobiles can not be ignored when it comes to product innovation. Mobile devices offer a developer a key different set of technical capabilities. e.g. Camera, Accelerometer, Compass, etc., and when paired alongside Desktop solutions, enable innovative ways to do data capture.
With the core System libraries in Delphi being cross-platform, it means you can fast track your mobile development through the use of a single code base as well. Large parts of the business logic can move from Windows, over to iOS and Android rapidly.
It’s also worth looking at the Enterprise version of Delphi to get access to InterBase ToGo for mobile as a run-time royalty-free database. The full on-disk encryption of the database provides the highest level of data security, typically reserved for enterprise servers, yet still within a small footprint, highly distributable database.
If you are looking to use a mobile alongside a local application, (and don’t need the data to go centrally first for processing) then the unique approach of AppTethering is certainly worth a look. AppTethering avoids the need for pushing data to a central server, making it faster (as data is local). If this sounds of interest, then definitely check out this webinar replay.
Alternatively, RAD Server is a great way to take existing business logic and make it accessible as a remote API. Click for more blogs on RAD Server
Regional Specific Trends
If you want to delve deeper into regional-specific trends, then I would suggest visiting StatCounter and using the Interactive chats, powered by Fusion Charts (which also recently became a member of the Idera Group)
The post “Key Target Platforms Update” appeared first on Stephen Ball’s Technical Blog.