Here are my predictions in no particular order…
I know this is a repetition from my 2016 predictions but I have different reasons this year:
- In 2016 I obtained my CISSP certification which gave me such a better appreciation for Security and everything it encompasses.
- In the recent US election, cyber attacks were a hot topic. If Security is getting that kind of visibility I think that trend will only continue.
Apps, apps, and more apps.
Organizations are racing to put out apps that support their customers. Furthermore, tools like Xamarin allow developers to write business logic code that can be re-used on iOS, Android, or Windows.
Honestly, I think this one is a no brainer.
I know this is fairly generic, but I do feel organizations are looking for ways to automate wherever they can. They’ve experienced the pain points of manual effort and aren’t interested in continuing that trend.
With that said, automation can mean many things. It could refer to integration, decommissioning, re-writing, or net new.
- Big Data
- Internet of Things (IoT)
Note: This article does not relate to Windows Mobile apps.
If you’re developing for iOS you’ve probably already downloaded Xcode and you’ve familiarized yourself with Objective C.
If you’re developing for Android you’ll need to learn Java. But when it comes to IDEs, your choice comes down to Eclipse or Android Studio. Android Studio was developed by JetBrains and since I’m an IntelliJ fan I decided to go with this one.
Choosing the right tools is critical to any project. Some people are so anxious to start coding that they don’t even bother to implement proper CI/Revision Control or they claim that they’ll add it later on when they have time. Trying to implement this later on is much more difficult. Most people just end up abandoning the idea once frustration sets in. Setting up the right tools at the beginning will make your life a whole lot easier.
My advice is to go with Git. If you already have an internal Git repository you’re off to a good start. If not, no need to worry. There are plenty of free online tools. If you have an open source project, just create a repository on GitHub. However, if you’re looking for an online private repository you can use Bitbucket, which is also free but you can pay extra for additional services.
When it comes to mobile, CI is a bit of a different beast. For example, to run CI against an iOS application requires that you have dedicated Apple hardware to run the build. Thankfully, there is an alternative. Online services exist that provide CI for mobile applications. cisimple is one such tool that is easy to get up and running quite quickly. Basically, you can connect to your Git repository via HTTPS or SSH and run a build. The free version gives you just that. For an extra fee you include services that will run your unit tests and provide an online simulator to run/test your application.
The race to get your app to the App Store or Google Play and eventually in the hands of potential users can definitely work as a competitive advantage. However, you don’t want to release an application that has not been properly tested. Users are not that forgiving when it comes to bug infested applications. They’ll just move on to the next best thing. You’re much better off taking the time to put these tools in place and release a product that is high in quality even if it doesn’t have all the functionality.
CISimple has ceased operations. However there are other such tools available: