I looked at some statistics last time in 2011, almost a 4 years back. Interesting to observe the changes and the evolution.
You can find the facts at AppBrain (http://www.appbrain.com/stats)
From ~175.000 applications in 2011 the number passed 1,5 million in February 2015. Surprisingly the number of apps with in-app billing is only 108.000. It feels like almost any application comes with this “feature”, pretty much every serious game.
I also logged into the developers console again, just remembered I published some simple apps in 2011 to learn about the physics of the appstore.
Interesting enough they were downloaded 700+ and 200+ times. Wonder what figures this experiment would render when I start it again.
On newer phones the manufacturer hide away the debug option, maybe to prevent regular users from enabling it without knowing what risk it could expose.
On the Samsung S5 you have to navigate to the System Settings / About and click 5 times on the About label.
Samsung S5 About Device
Some things did not change since the early coding days with Linux and Android Phones , you still need to tinker with system files to allow USB access to the phone. Without the below steps you get “no permission” and offline errors in the Android Device Monitor.
Android Phone Settings
- Out-of-the-box the phone does not allow debugging. You need to find the developer options under phone settings and specifically allow USB debugging.
Ubuntu Settings Continue reading
It has been quite a while since I touched an Android phone the last time for code projects. I got in contact first time with an Android phone during an open source conference in 2008 in Sydney when I met Chris DiBona (Director of Open Source at Google). Announcing the SDK 1.0. Soon after I got the G1, aka HTC Dream phone which was the first Android phone available. I could not even imagine this platform would be so widespread adopted and pushed in the years to come. I was even thinking about the investment that time, spending a few hundred dollars on a phone that might be just a experiment. In 2010 I also bought the Nexus One.
Anyway I created some apps for personal use, experimented with the apps market but due to other development and work focus lost it out of sight and just remained normal Android user.
Now my interest returned, at least to update my knowledge about this technology. Today things are becoming a bit easier (IDE, documentation) but also more complex, mainly due to the massive range of devices and manufacturers which makes screen design quite challenging, but also to security concerns as more spam and junk apps are around, users are no longer so flexible with the app security settings.
Coding becomes more convenient, now Android got its own IDE, the Android Studio. After an initial download and subsequent additional downloads of required packages you can start with your projects straight away.
With Ubuntu just just download the linux package, make sure you have a JDK installed, and execute the studio.sh shellscript in the bin folder.
AWS still puzzles me at times. While the range of products and services is so huge and there is hardly something you cant accomplish with AWS at hand, still you find little gaps which can annoy, see my earlier discussion around VPC and VPN.
I though every service would be accessible through the admin console. While looking for an alternative to place log data I came across AWS SimpleDB, just to learn there is no function in the web admin console to control it. I even created a support issue believing the service was not enabled for my account. You have to go through local html files (aka scratchpad) to access the console.
AWS Admin Console
While I can handle the above case, I cant appreciate the approach AWS chooses with the MFA they actively promote. Is a very good feature and you can opt for a hardware based MFA or a bit simlpler, with the virtual device. But here comes the contradiction, due to geo restrictions you cant download the AWS MFA app to your Android device if you dont have an US AWS account. Seriously, how much sense does this make ? I confirmed this with the AWS support.
You could go for an alternative solution with the Google Authenticator, but this creates a dependency to another third part which I am not willing to add, my “contract” is between AWS and me.
Is it related to this: http://en.wikipedia.org/wiki/Export_of_cryptography_from_the_United_States ?
You have little chance today to get your hands dirty with electronics or computer hardware, either we deal with small devices like mobile phones, tablet and notebooks which are not made to be opened and tinkered with or our hardware is virtual only and sits in the cloud (no screwdriver required). Few people now still own a desktop size PC where one can add or change hardware (major hardware companies claiming massive loss due to dropping sales in this market).
During my studies in the 90’s we still dealt with CPU’s at a very low level which helped to ‘see’ and understand what’s going on.
If time allows I am doing some DIY projects with Arduino or Raspberry Pi, 2 electronic platforms which seam to be similar at the first glance, but operating very differently.
The Arduino is a progammable microcontroller, designed to work with sensors or to control external components like relays or motors. Is a very hardware oriented device, no OS or whatsoever included. It does basically what you program it to do. More info and getting started at http://arduino.cc
The Raspberry Pi on the opposite end is rather a miniature computer, running an OS from a SD card and equipped with ethernet, HDMI and USB plugs. It is clearly more a software platform which can be used for more powerful applications than the Arduino. More info and getting started at http://www.raspberrypi.org
You have the option to combine both, to have processing power of a computer and the myriad of inputs and outputs to the real physcial world.
We started to operate servers for our customers at AWS within one (root) account. Each customer environment is inside a separate VPC for maximum separation and ease of inter-instance access. Now with the second customer requiring a VPN connection I hit the wall with AWS the first time. You can’t have multiple VPC’s with VPN’s pointing to separate IP’s.
AWS support: “Unfortunately, due to routing restrictions in our regions we only allow a CGW IP to be used once per region.”
conflict among chosen gateway ip addresses
There is quite a number of discussions and threads around this, anyway without a straightforward technical solution (and installing software VPN is not suitable solution for me), I use a different workaround. I create additional accounts for every customer and link them back to our root account for consolidated billing. As nice side-effect, billings becomes more transparent for every account linked to one of our customers.
More info: http://docs.aws.amazon.com/awsaccountbilling/latest/about/consolidatedbilling.html