Showing posts with label Software Development. Show all posts
Showing posts with label Software Development. Show all posts

Tuesday, 3 March 2015

iOS vs. Android reaches stalemate and 7 other mobile development trends

Programmers seem to impact just about everything these days and mobile developers, in particular, are playing an ever-growing role in the world. The ubiquity of smartphones and tablets and the rise of the Internet of Things (IoT) make the people who are creating the apps and tools for all the smart devices in our lives all the more important. A new global survey helps to shed light on the trends among mobile developers and the mobile economy, in general.

The 8th edition of VisionMobile’s Developer Economics: State of the Developer Nation Q1 2015, was released earlier this month. The report is based on a survey of over 8,000 mobile developers in 143 countries. Among other things, it reveals trends in the platforms they target, the tools they use, and what motivates their work. Use the arrows above to learn 8 things about mobile developers that you might not have known.

The battle between iOS and Android for developers is at a stalemate

Android is the primary platform for 40% of full time mobile developers worldwide, while 37% of developers build for iOS primarily, a split that hasn’t changed much in a year. iOS dominates for developers in North America and Europe (42% vs 33% for Android), while Android is the dominant primary platform for developers in the rest of the world (48% to 30% for iOS). Windows Phone is in a distant third place among mobile developers, being the primary platform for just 8% of them worldwide followed by those who primarily target mobile browsers, at 7%.

Report quote: “The positions of the platforms are becoming entrenched. Apple cannot move down-market without cannibalising their high-end sales. Android handset makers are increasingly unable to compete effectively for the premium customers. …the battle may already be effectively over.”

Editor's Note: If you are unable to advance to the next slide, try disabling AdBlock. We apologize for the inconvenience.

Mobile developers are adopting Swift at unprecedented rates
Just months after Apple first released Swift, 20% of mobile developers across the globe are already using it, although, just 2% are using it as their primary language, reflecting a decision to proceed cautiously with the new language. Swift is the 7th most popular language among mobile developers, with Java being number one, used by 57% worldwide, with 29% of developers using it as their primary language. The vast majority of developers who’ve adopted Swift, 77%, are already using Objective-C; 29% of Swift programmers still use Objective-C as their primary language.

Report quote: ”... it’s fair to say that adoption levels are totally unprecedented. For a language that’s still evolving and for which the tools are not yet mature … this is highly remarkable.”

The middle class of app developers is disappearing
There’s a growing polarization in the revenues developers earn from apps, with most earning either a whole lot or a whole little. Worldwide, just 24% of mobile developers earn between $1,000 and $10,000 per month in app revenue; more than half (52%) make less than $1,000 per month in app revenue, and 24% earned more than $10k per month. The middle class of app developers is smaller in more developed regions, around 20% in Oceania, North American and Western Europe, than in less developed areas such as South American, Eastern Europe and Russia, where it’s closer to 30%

Developers who do iOS development primarily tend to make the most money and have the largest middle class; 15% earn more than $50,000 per month in revenue, while 37% of iOS-first developers make less than $500 per month. Things are bleaker and more polarized for Android-focussed programmers: 55% earn less than $500 per month in app revenue, while 7% earn more than $50k per month.

Report quote: “In the more mature markets with higher smartphone penetration, the middle class of small independent app developers is disappearing. This is understandable as they compete with larger and more sophisticated developers for direct revenues from the stores but also for contract work with those in other countries with lower living costs. This is causing revenues to polarise.”

Most mobile developers are creating software for the Internet of Things
While the market for software for the Internet of Things (IoT) is still relatively immature, more than half of mobile developers (53%) are already working on IoT projects. However, it appears that most are just experimenting with creating IoT software at this point; 30% of mobile developers working on IoT projects are doing so as purely as a hobby (30%) or as a side project (just under 20%). The top IoT market being targeted by mobile developers is that for home and building management (targeted by 37% of developers) followed by wearables (35%).

Report quote: “The major smartphone players are making their bids for several IoT markets by extending their existing software ecosystems. The most popular [IoT] markets for those developers to target are the ones where the smartphone platforms have their biggest bets.

More mobile developers are using cross-platform tools
83% of mobile developers reported using at least one 3rd party tool. User analytics tools are the most popular, used by 47% of all developers, followed by ad networks (31%), cross-platform tools (30%), push notifications (24%) and games development tools (24%). Developers who primarily targeted iOS were the most likely to use 3rd party tools, with 57% of them using user analytics tools (vs. 47% of Android coders), 36% using app store analytics ( Android: 14%) and 17% using cross-promotion networks (Android: 6%). Cross-platform tools are increasingly popular, now used by 30% of all mobile developers, 40% of mobile browser developers, 34% of iOS programmers, and 25% of Android coders.

Report quote: “Both web hybrid approaches and Xamarin are increasingly popular with enterprise-focused developers. This has resulted in cross-platform tools moving from being uncorrelated with revenues to having a positive correlation. ... there’s a lot of demand from enterprises for cross-platform development.

More mobile developers are using cross-platform tools
83% of mobile developers reported using at least one 3rd party tool. User analytics tools are the most popular, used by 47% of all developers, followed by ad networks (31%), cross-platform tools (30%), push notifications (24%) and games development tools (24%). Developers who primarily targeted iOS were the most likely to use 3rd party tools, with 57% of them using user analytics tools (vs. 47% of Android coders), 36% using app store analytics ( Android: 14%) and 17% using cross-promotion networks (Android: 6%). Cross-platform tools are increasingly popular, now used by 30% of all mobile developers, 40% of mobile browser developers, 34% of iOS programmers, and 25% of Android coders.

Report quote: “Both web hybrid approaches and Xamarin are increasingly popular with enterprise-focused developers. This has resulted in cross-platform tools moving from being uncorrelated with revenues to having a positive correlation. ... there’s a lot of demand from enterprises for cross-platform development.

Mobile developers are increasingly targeting the enterprise
While most mobile developers (64%) still target consumers first, 20% of all mobile developers now primarily target the enterprise, up from 16% six months ago. The greater willingness of businesses to pay for useful software also translates into more revenue for enterprise developers: 45% make more than $10,000 per month vs. just 19% of consumer-focussed developers. Programmers targeting the enterprise are also more likely to develop for cross-platform, since businesses often require it; for example, 11% of enterprise developers target mobile browsers primarily vs. just 5% of consumer-oriented mobile programmers.

Report quote: “... demand for good mobility solutions for enterprises outstrips supply at the moment and really well executed products and services are getting a lot of word-of- mouth marketing. Also, the competition for consumer attention is so fierce that getting a large user base for any app is often prohibitively expensive.

iOS developers, more than others, are motivated by money
VisionMobile segmented mobile developers based on their motivation. Almost half of all developers were classified as either Explorers, those using side projects to gain experience, (23%) or Hunters, those looking build an app business in order to make money (23%). A slightly larger percent of developers who target Android primarily are Explorers (26%) and slightly fewer are Hunters (21%). The largest segment of programmers developing primarily for mobile browsers are Guns For Hire (those developing apps on commission, 19%) followed closely by Explorers (18%). iOS developers, on the other hand, are mostly motivated by money, with 31% being Hunters, 20% classified as Guns For Hire and only 17% being Explorers.

Report quote: “The greater numbers of Hunters [among iOS developers] reflect the higher revenues available and more Guns for Hire reflect a contract market where almost every major business wants their app on iOS.

Mobile developers are chasing the wrong revenue models
The vast majority of mobile developers (73%) are building apps with revenue models based on either app sales (37%) or advertising (36%). However, the revenues generated by both of these models ($40.5 billion in 2015 for app sales and $34 billion by advertising) are dwarfed by the revenue generated by e-commerce ($300 billion). Only 9% of mobile developers are building e-commerce apps, suggesting that they’re missing out on significant revenue opportunities.

Report quote: “Despite the enormous revenue opportunity offered by mobile e-Commerce only 9% of developers are using this revenue model. Unless there’s a lot of e-Commerce related development being done through other models … then there’s a big gap in the market here.




Best Microsoft MCTS Certification, Microsoft MCITP Training at certkingdom.com

Wednesday, 31 July 2013

How one software developer lived entirely on Android

I made the switch to an (almost) entirely Android environment, and you can too.

Over the last few months, my household has become increasingly “Android-centric.” Between my Nexus 7 and my Samsung S3, roughly 90% of my computing needs (reading news, email, messaging, etc.) have been taken care of. Even my game console and TV have become Android-powered (with mixed results).

This got me thinking...

Would it be possible for me to live entirely on Android devices? This ends up being a pretty tall order, as my “work life” is pretty all over the map. In order for this to be viable, I need a way to build Linux, Windows, Mac and DOS software, as well as do general web development, write and do some graphic design for my comics.

Basically, I'm asking my Nexus 7 to be a complete desktop PC replacement – which it was never really meant to do. No PC. No Linux (other than within Android). No Windows. No Mac. No laptops. No desktops. Just Android tablets and phones.

Want to know something crazy? It worked. And it worked really, really well (at least for me). Here's how I went about it.

For my graphic design needs, I make use of Photoshop Touch (for general layered design needs) and Pixelesque (as I do a fair bit of pixel-art). Neither is perfect - Photoshop Touch, for example, has an astoundingly under-powered Text tool - but both are pretty doggone good.

For my writing, things get really simple. There are plenty of Office Suites available within the Google Play store – some are even completely free. But, for me, I ended up just using good-old Google Drive. It’s not the most feature-filled word processor on the planet, but it has served my needs well. And having all of my documents always available on every device using the same interface? Glorious.

Which brings me to software development.

This one seemed like the biggest potential problem to start with. Is the screen large enough to edit large quantities of code? How about for GUI designing? Are there tools even available to build desktop PC apps on an Android device? Do these little devices have enough horsepower to handle this?

That's when it dawned on me... remote desktop. Here's how I approached it.

I got myself a virtual private server from a hosting company. You can find a decently powerful rig (2+ gigs of ram, lots of storage, etc.) for pretty cheap. I'm currently paying around $30 bucks a month and have a server running that I can dual boot Windows and Linux (actually triple boot: openSUSE and Ubuntu) and connect via VNC, Splashtop or RDC (depending on my mood and which protocol is fastest on any particular system).

Then connect a USB or Bluetooth keyboard and mouse (yes, Android handles mice just like any desktop computer operating system) and you've got a desktop replacement in every sense of the word. You could say that I'm not really “living in Android” if I'm remoting in to a non-Android system to do some work, and you'd kinda-sorta be right.

But, in practice, that works quite well. Is it as fast as having a dedicated, brand-new, dev PC sitting on my desk? No. Certainly not. But it's close, and for most purposes it’s definitely fast enough. And the benefits far outweigh the downsides.

The big benefit: I have my full dev system with me wherever I go. My phone. My tablet. Anywhere. And the screen resolution on newer Android phones and tablets is pretty comparable to that on any laptop you might get – heck, the Nexus 10 has a 2,560x1,600 display. That handily beats my primary monitor on my desk.

Some other benefits:

I don't need to buy a new PC.
I don't need to pay for power for a big PC.
I don't need to find a place to stick a PC.
When I want a new, more powerful, development machine... I simply upgrade to a new virtual private server with any hosting company I like. (I keep everything stored in Dropbox and GitHub... so moving to new machines is just a few-minute process.)
If I need desktop PC functionality for any other reason... it's right there, ready for me to use.

Approaching it from this angle makes me mobile. Very, very mobile. I'm also not tied to any particular device. For a guy like me, that means a lot.

So, it works. It provides me with all of the functionality of having a dedicated tower PC sitting on my desk, except it’s more mobile and flexible.

But what about the financial side? How does that compare?

The only additional cost for me is the dedicated server, which is currently running $30 per month. This can range from $15 to upwards of $100 monthly, depending on your needs and choice of host. Assuming I stick with the $30 server (which is working thus far) my total cost for my dev server is $360 per year.

Let's say you upgrade your PC every three years. If you would typically spend more than $1,080 on a new dev machine... you’re saving money by simply using a remote server (especially after you factor in power). If you'd normally spend, say $600 bucks, well then having a remote server is going to be more expensive for you during a 3-year cycle.

Another variation on this would be to buy yourself a little cheap, low-power PC (such as a higher-end Atom powered Net-top rig) and let that be your dedicated PC that you remote into. That would save a few bucks overall.

For me, this approach saves me money – though only a little, especially after you factor in any accessories (like portable Bluetooth keyboards and such) – and makes me more portable, which is a big win.

In short: Is it possible for most Software Developers, Writers and Artists to live entirely on an Android device?

Yes, if they're willing to have a remote PC somewhere to pick up the slack.

Best Microsoft MCTS Certification, Microsoft MCITP Training at certkingdom.com