hop lublin meetup #5 - mobile development 101 - what i learnt from creating my first app

63
#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu Mobile Development 101 What I learnt from creating my first app Stefan Buttigieg M.D

Upload: stefan-buttigieg

Post on 11-Jul-2015

393 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Mobile Development 101What I learnt from creating my first app

Stefan Buttigieg M.D

Page 2: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

About me! 5 MsMedical GraduateMalteseM.D GeeksMasters in Health InformaticsMobile Developer(iOs,Android)

@karambinustefanbuttigieg.com

Page 3: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

#hopstartups#mobiledev

Page 4: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Stefan?

Page 5: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

It shouldn’t be like this!A true story from a medical doctor on a

deep dive into mobile development

Page 6: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

I want to create a mobile app!That is usually the one-liner that starts it off

Page 7: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Why? How? What? When?

Page 8: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Why?The first question to start off with!

Page 9: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Why?

Are there any existing solutions which solve this problem better?

To solve Problem X/everyone has one!

If not, move one step forward

Why do you want to create this mobile app?

Page 10: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

How?Now, this is quite a tricky question!

Page 11: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

How?Please tell me…...

Page 12: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Step 1:Wireframe and Prototype!

You can use paper too. Vision and imagination is a must.

Page 13: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

You can start off from something like this...

Page 14: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Then this...

Page 15: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

and then maybe this...

Page 16: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

The full lists(everything)

http://bit.ly/wiretools

Page 17: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

What tools do I use?

Page 18: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Step 2:Research and DevelopYou can start off with Google. NOT

Page 19: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Research and Develop - 4 set of questions

Native? Web? Hybrid?Android? iOs? Windows Phone? All of them

Phones? Tablets? or maybe both!and most importantly...

What are the main features that I want to include in the first version of the app?

Page 20: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Myself or Someone Else?Why even bother going through the first steps if someone else is doing it for me?

Page 21: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Aha!You’re the courageous one!

Page 22: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Are you ready to?

● Spend time and money?● Go through a bit of a rollercoaster ride

(varying from pure frustration to explosive joy)

● Make the world a little bit better?

Page 23: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Join me on this adventure!

Page 24: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Mobile Developer’s ToolkitThe tools of the trade

Page 25: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

I.D.E & SDKNo, this is not Interplanetary Dust

Experiment & Skin Decontamination Set

Page 26: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Integrated Development Environment &

Software Development Kit

It really depends on which platform you choose

Page 27: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

AndroidJava - Android SDK

Google Play Developer Program25$/year

Page 28: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Android Studio

Page 29: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Android Studio

BetaGoogle’s Choice of I.D.E for Android DevelopmentBased on IntelliJBest Option

Page 30: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 31: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Eclipse

Page 32: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 33: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Eclipse

The more stable optionDownload ADT Bundle from Android Developer Site

http://developer.android.com

Page 34: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 35: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

iOS

Page 36: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

XCode 6Objective-C or Swift - iOS 8 SDK

Apple Developer99$/year

Page 37: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 38: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Windows PhoneC# - Windows Phone 8 SDK

Windows Phone Store Developer14 EUR/year

Page 39: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 40: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Platform - Language

I.D.E Developer Fees

Documentation

iOs - Objective-C XCode 99$/year developer.apple.com

Android - Java

Eclipse/IntelliJ/Android Studio

25$/year developer.android.com

Windows Phone - C#

Windows Visual Studio

14€/year dev.windowsphone.com

Basic Summary

Page 41: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Is there one native solution for all of them?

There are many! I recommend one!

Page 42: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 43: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

C# - Code Sharing up to 70%

Page 44: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Ok, Great!but…..

Page 45: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

How do I develop in......Objective-C,Java,C#,HTML,CSS?

Page 46: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Good Question!

Page 47: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Learning ResourcesWhere to start from!

Page 48: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Learning Resourcescode.org

teamtreehouse.comcodecademy.comcodeschool.com

microsoftvirtualacademy.comdocs.xamarin.com

Page 49: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

What will help you truly learn programming?

Page 50: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Truly learn...

Start off from HTML & CSS(to understand concepts)Understand Basic Programming Concepts(teamtreehouse/codecademy)Choose one language at first and off you go!

Page 51: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Ok, so now you’re ready to start with your tools of choice

Page 52: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

...then you get STUCK!

Page 53: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 54: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Developer Community to the rescue!

Page 55: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 56: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 57: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 58: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Learning Resource ForumsThey can also be great!

Page 59: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Page 60: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Attend Conferences, Workshops and Startup Events

Page 61: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Make Friends :)

Page 62: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

...and you may even end up winning something!

Page 63: Hop lublin Meetup #5 - Mobile Development 101 - What I learnt from creating my first app

#mobiledev #hopstartups | Hop Lublin Meetup #5 | @karambinu

Thank You :)Any Questions?

@karambinuemail : [email protected]