In preparation for the launch of the BlackBerryCentral app today, we sat down with our in-house developer Christian for some Q&A. A kind hearted, cat loving, hardworking guy; he (along with our Founder, Dylan) created the trending app which you can download from BlackBerry World HERE.
So, are you part of a Development Team?
BlackBerry 10 development is a hobby for me so for the BlackBerryCentral App I was the only developer, joining forces with our own Dylan Habkirk who provided me with all the graphical assets, icons, and collaborated on design layouts. It was a constant flow of feedback which was really great! A shout out also goes to the awesome people on the Focus Group and the Team of BlackBerryCentral that did their fair share of testing and making suggestions for our app.
Why did you choose BlackBerry 10 development?
BlackBerry had a great campaign to get developers on board and their first presentation of BB10 behind closed doors in July 2012 really impressed me. BB10 looked so amazing and new I was almost ready to trade my 9900 for one of their prototype devices. I got a Dev Alpha A back at this event and even with it running a sort of PlayBook OS at the beginning, it drew my attention and I started developing. I stuck with BlackBerry 10 development because it’s a fun hobby for me and BlackBerry 10 is the best mobile OS for me out there.
What are your top 5 favourite BB10 apps?
- Reddit in Motion
- iGrann Pro
- Central for BlackBerry 10
What apps have you made?
The first App I did for BB10 was called “BonusBücher” and only available for German users. Developed with web technologies it was a database for almost 3 million books, their authors, description, summaries and sometimes even trailer videos. This app certified me for a Red Z10 Limited Edition which I’m still a proud owner of.
With BB10 still as a hobby I did some prototypes of games, social media apps and tools but sadly none of them ended up in BlackBerry World.
Any tips for aspiring BlackBerry Developers?
With the Blackberry Developer Community being fairly small I feel like getting in touch with each other is one of the best things you can do. Most of the developers I meet and get to know are really nice and dedicated people. Check if there’s a BlackBerry Developer Group close to you, it definitely is worth the while. Always keep an eye on the developer forums of BlackBerry, sometimes you find a treasure in there with people sharing their codes and ideas for solving certain problems. Oh and there are a lot of good blogs and sites out there that have really great articles when it comes to Cascades. Sites like: http://bbcascadescode.tumblr.com, https://appbus.wordpress.com or the archive of the “Weekend Coder” Segment on CrackBerry.
Will you elaborate your thoughts on native BlackBerry 10 development? Some good people have left; do you think the native Dev scene has changed?
Back when BB10 was introduced to us developers at the BlackBerry Jam Events I had a strong feeling that BB10 would be the comeback for BlackBerry. The Developer Relations People from BlackBerry where really nice and committed. I got in touch with a lot of People from BlackBerry like Luca Sale, Tim Neil, Adam Stanley, Tim Windsor, Aaron Aridi and Kamel Lajili. They all were really dedicated and committed to supporting us developers. I feel like Thorsten Heinz really knew that it requires a lot of developers to make a new mobile OS successful and I’m pretty sure we developers did a fair share amount of marketing for BlackBerry too. Most of the Devs I knew recommended it to their friends and got new people to try out BB10. I helped 3 of my closest friends to make the switch to BB10.
With John Chen becoming the CEO of BlackBerry and his measures to make BlackBerry profitable again, I feel like Developer Relations was one of the first thing he cut. Most of the people I mentioned before are no longer working for BlackBerry and that gives us developers a real hard time to get in touch with someone when we need help. To make things worse the developer roadmap for the Native SDK was wiped after the release of 10.3.1; despite having requested features and APIs on it – the ones BlackBerry developers asked for a long time.
On 10.3.2 builds BlackBerry even stopped delivering part of the debug symbols developers need. Developers reported bugs for 10.3.1 that haven’t been fixed since and there is still no update to the documentation for any upcoming device(s). This should have happened long time ago if the roumoured slider is running BB10.
In my opinion the biggest thing that upset developers was when BlackBerry announced their deal with Amazon to bring the Amazon AppStore to BlackBerry 10. They run a massive campaign to bring Android Apps to BlackBerry 10 and many developers I know were upset by that. They spent a lot of time to learn Cascades with all its features and caveats and suddenly BlackBerry told us Devs to move to Android development with an aggressive newsletter campaign and webcasts.
Many third-party companies and developers also stopped supporting BlackBerry 10; most recently Unity, which is used for many games currently in BlackBerry World. There are others like Flurry Analytics which gives us devs a hard time.
Some developers might have left because their profit was too small, some that didn’t want to do other apps or games anymore after Unity stopped supporting BB10 or relied on any other kind of Framework or SDK. I can also understand that some devs felt let down by BlackBerry because of their recently ‘missing’ commitment to the Native Developer Community.
Other mobile platforms, such as Android and iOS, have many ‘indie’ developers along with big name developers. 5 years down the line, which one do you wish to be? Any specific reason you wish to be one and not the other?
I’m currently working for a company that maintains two hybrid apps for Android/iOS and BB10 development is my hobby besides work. The company is not that big so I consider ourselves still “Indie” and it is fun. You do the app, put it on the app store and see all the amazed customers. I feel like Indie would be my way to go; rather do a small amount of apps with your heart and soul than doing tons of them that aren’t good or where you lack of dedication.
Coming to the BlackBerryCentral app, I know you have spent a good chunk of your time on developing it. The end result has been phenomenal, comparing to the earlier versions that I beta tested. Did you face any coding roadblocks, such as lack of features on the SDK or some other coding kits?
While still being fairly new to Cascades, QML and C++ it sometimes gave me a hard time, but nothing I couldn’t solve myself. One of the features still missing since BB10.0 is the possibility to embed pictures in your app from the Web, so you have to develop this yourself, downloading and putting the image somewhere. Luckily someone at the Blackberry Support forums published a solution for this and I was able to use it. But why the #%^ isn’t this available in a SDK first released in 2012 is something beyond me, the Internet wasn’t something new at this point. Oh and you might have guessed that, that’s one of the points BlackBerry wiped from the Native SDK wish list.
One of the biggest roadblocks was the diversity of BlackBerry 10 Versions out there. I started with the 10.3 SDK which was the current one back in October 2013 when we started working on the app and I have to admit that I was always running leaked version of BB10. Some people from America reported that they still run 10.2 and can’t test or use the app. With the Classic arriving in December 2013 I switched to the 10.3.1 SDK to fully support the track-pad and Passport users started complaining they couldn’t use the app anymore which really troubled me because I had to remove some of the Classic optimizations to make the app work again for them. Luckily this is something BlackBerry has addressed in last months with global rollouts of newer BB10 versions.
As a cross-platform developer, what are your thoughts on the BlackBerry Priv which runs Android 5.1.1? Do you think this device will have more uptake in the Enterprise market primarily?
From an enterprise perspective I think it’s a bad move, BlackBerry does a lot of work on security software but I doubt they’re able to make Android as secure as BB10. Google has a whole department of people finding security holes in other developers’ applications and services but they couldn’t secure Android and avoid exploits like Stagefright. With the lowered manpower at BlackBerry at the current time I feel like completely securing Android isn’t something they can accomplish since Google themselves can’t do it. To be fair Android security has improved by a lot with recent versions but I think it’s still not on par with BB10. I would suggest to stick with BlackBerry 10 if you’re not depending on one of these Android Apps OR it doesn’t work on BB10 Android Runtime. To be honest, I think a work phone doesn’t have to run a load of apps and focus more on security than entertainment. Might differ from enterprise to enterprise but I’m uncomfortable to see a bank employee managing my finances and confidential data on an Android Phone.
Over the years, many organizations included other platforms in their mobile fleets reducing BlackBerry’s share. While at the OS level, nothing beats BB10 in enterprise; do you think this ‘marriage’ between the Android app library and BlackBerry security is good for developers?
It’s definitely not good for all the developers that are working with Cascades right now because their time to get trained for native development for BlackBerry 10 was wasted. Blackberry is shifting the focus from the Developer Community they have; to the Android or cross-platform developers. I feel BlackBerry might lose the visibility they now have in the sea of Android devices. For some of them, it might just be ‘another device of the 10,000 that I support’.
A noted developer ran a security assessment of some BB10 apps a few months back with surprising results. How would you factor in security in the current context and scenario? Do you feel developers should consider security and functionality both as top priorities?
I remember that story, even developers aren’t free of mistakes.
Security has changed a lot in the last few years. HTTPS became standard and all the security talk moved more into the public eye with the NSA/Snowden affair and other incidents. I have to admit sometimes it’s hard for a small developer to know all the tricks and features to make their app completely secure and sometimes you have to trade security for functionality or good user experience or vice versa. In an enterprise environment I would always favor security but for consumer grade apps I think the best solution is to find a decent ratio between both. You don’t want to ask the user for this password every time but you still want to make sure he is really the right person when he uses a function that works with confidential data.
While BlackBerry 10 does a lot to keep the users security it still requires people to read and understand what they are doing. Even the most secure OS can’t stop a user from accidentally publishing a photo or his private data on the internet. If you see the app requires permission for accessing your Microphone or reading your calls you should think twice about if that really makes sense. We BB10 users have the advantage of being able to turn specific permissions on and off.
If BlackBerry asked for a wish-list for an upcoming SDK/NDK, which points will make this list? Any specific reasons for the additions?
Embedding Images from the Web, that should have been in there from day one and still every developer that needs this functionality has to figure a solution out for himself or has to do a fair share of searching the web before finding a solution.
Upgrading to Qt5 would be awesome, imagine BB10 with a development framework that is a lot faster then the current version used on BB10, that could be outstanding and a more recent version of Qt could attract more developers to the platform.
I remember Media/Video Editing was on the roadmap but scrapped too, I would have love to seen that, maybe some image generation toolkits for example to easily generate charts inside your app.
Improved components for QML would be great too, imagine how you could add additional content at the top of the left-side menu; for example an image of the current user and his name.
BlackBerry also has TTS integrated in BB10 for accessibility but isn’t exposing it via API which is a pity too. Did I mention that a Blend API would be cool and API for BBM?
And one thing that concerns many developers is the limitations for the headless apps. Maybe they could lower them a little to help developers create more awesome solutions.
Hopefully new SDK’s are coming for the new hardware on the slider phone? (joking).
Big thanks to Christian for sitting down for some questions, and an even bigger thanks for the hard work and contributions to the Central app for BlackBerry 10!