Google I/O kicks off a busy developer season this week. Followed by Microsoft's developer conference later this week, then Facebook's F8 and finishing up with Apple's Worldwide Developers Conference in June. Leo says that both Google and Microsoft will have a message on Progressive Web Apps. These are apps that will be web centric, with the idea that you can download pieces of the app that will operate off line, but with the rest of the work on a backend in the cloud. Leo says that it's no longer about the operating system.
Joe is an app developer and is looking to create an app for AR. Since Joe already has a parking app he's developed, Rich thinks he should elaborate on that and use the phone's camera to decipher parking signs. A user could simply point his or her camera at the sign, and the app could return a big check mark or red 'x' on if it's ok to park there at that time. The issue will be gathering the information for the backend. But if he can make submitting data easy and fun, and it works, then he'll have a winner.
Steve has an idea for an app. Can he get a company to make the app and pay him a royalty? Leo says that app ideas are a dime a dozen. It's the execution that's really more important. The idea alone is not enough.
Stephanie would like to build an app. How can she find someone who can help her? Leo says that app ideas are a dime a dozen, and the trick is how to get the right person to make it and market it. There are great places to find a programmer. eLance is one such place. She should ask for references.
Rick wants to know why apps have to have access to all his contact information and other data? Leo says that both Apple and Android developers to ask permission to access stuff. So it's all "chunked up," so that it doesn't ask dozens of questions for permission. Android has at least changed it to where it asks permission when it needs to. Not all at once. Asking for permission for access to contacts is problematic because it could be abused. But games sometimes ask for that, or Apple's Find Friends, so that they can use it so you can contact other people to join in.
Angelo feels like he's being ripped off after hiring a devloper for an app. All he got was a step by step on how to create it, and not the app itself. Leo says that may be the first step - a paper mockup of what the app will be and how it works. It's called a "functional specification." But if they want more money for that, it may be time to look elsewhere. The hard thing is, when just starting out, you don't know what to look for in an app developer.
Devin wants to learn how to write apps to create games. Leo says that the skill is in high demand and every kid is taking computer science classes to learn it. Leo advises starting at iTunes U, which is free. For Android, most of it is written in Java. There are a lot of tools to write in both platforms. Google has great resources on how to write for Android at Android.com.
Dave is wondering if there will be an Apple Watch app for the TIVO. Leo says there probably will. There is an iPhone TIVO app. But most companies haven't had access to the Apple Watch until this week. There are 2000 watch apps in the store, but with time, that number will grow as more developers get their hands on it.
Spivy created a poker game for casinos and he wants to turn it into a smartphone app. Leo says that's a good idea if people like it. But if it's a betting app, with cash involved, Apple won't let him do that. But if it's just a fun game, then he'd just need to find a developer. There are a lot of places to go. eLance is a great place to find them and he can have people bid on the gig. Many are in Russia, India and Eastern Europe. It'll cost him less than he'd think.
Doug wants to get a computer for his kids and teach them about technology, computers, and programming. His son is 18 and is thinking about a career in technology. Leo says that everyone has a favorite bias and language, and he guarantees that whatever he teaches him now, it'll be obsolete within a few years. It's better to understand how a computer thinks and keeping up to date on how the computer will change. Understanding and expressing problems in an abstract way that isn't specific to a set programming language is key.