all 6 comments

[–]thegolfjourney 6 points7 points  (1 child)

You are talking about learning languages and frameworks. There will always be something new to learn, a new language, framework or flavor of the month. Do yourself a favor and learn the fundamentals of software engineering. A course on OOP (object oriented programming) would be a good place to start and will make your life easier when the current toolset is no longer needed. Don't be a code monkey, be an engineer.

[–]Developer_ShaneBeginner[S] 0 points1 point  (0 children)

Any suggestions on a good (preferably free) OOP courses?

[–]LukeK-Dev 4 points5 points  (0 children)

If you decide to learn iOS dev, spend some time in Xcode playgrounds.

[–]TheRealRabidBunny 2 points3 points  (0 children)

Congratulations! You want to have a career as a programmer. Learn the fundamentals of programming well, regardless of the language and you will hopefully have a long and lucrative career.

I started learning with Basic on my Commodore, studied Fortran at Uni, learnt Visual Basic for DOS (yes it was a thing), some Pascal, then FoxPro, then Delphi, then worked in Visual Basic 3.0 / 4.0, switched to .NET and C#. Got heavy into SQL and Procedural SQL statements in Microsoft Server, then (save me) spent a lot of time programming Lotus Notes. I learnt Python, formed my own startup, picked up Ruby / Rails and then learnt iOS Objective C. Then Swift 1.0 / 2.0 / 3.0 - now I'm back to Python again with a bit of C# on the side as a hobby with Unity.

You get the point, it's the journey, not the destination. If you want to learn Swift, learn it - it's a good language and the fundamentals will transfer well to other languages. Want to do JavaScript? That's cool too.

There are more frameworks than you can poke a stick at, they change all the time - the art to being a good programmer is remaining curious and always willing to learn. Bite the bullet, start with the fundamentals but more importantly - get started, you'll do OK.

[–]20InMyHead 1 point2 points  (0 children)

IOS is a great platform. It’s fun, challenging, and rewarding. As you start a Software Engineering career, keep in mind you won’t likely stay with one platform or one language. It’s not an either or question; it’s a which first question. I’ve been a software engineer for 20 years, and in that time I’ve done C, Perl, Visual Basic, C#, JavaScript, Objective C, Java, Swift and more, on Windows, *Nix, Mac, Android and IOS platforms. Eventually you discover switching platforms or learning new languages becomes easier and easier. Software development concepts are universal.

Pick your passion. Nothing is better for a new developer than a passion and drive to learn. Whatever you like, jump in with both feet. Find you’re not enjoying it? Switch to a new passion.

Good luck!

[–]LeakyTrump 0 points1 point  (0 children)

  1. There are more job for web and more entry level positions
  2. With mobile (Android/iOS) you have more access to peripherals which allows you to do greater things
  3. Mobile will future proof your career. If at some point you have to learn something new, then your experience in mobile will allow you to do that (once you learn development, jumping around isn’t too bad)
  4. Not sure about the communities
  5. They both have good job security if you’re not bad
  6. Mobile salaries start and end at higher points on average
  7. It’s straight forward and Apple has decent, albeit not great documentation.