Beginning to learn Swift

As a professional .NET developer (C# these days), I have been anxious to try something new. Since I got my Mac, I can now run XCode and program in Swift, something I’ve been wanting to try.

I’ve noticed that most of the Swift samples online are sans-semicolon, I’m not sure how I feel about that. :) I think the biggest adjustment I’m going to have is letter casing on variables and methods. Also, the difference in how Swift defines interfaces. If I’m not mistaken, they’re called prototypes in Swift.

The language looks nice. I’m hoping I can find it as enjoyable as C#. I’m guessing I’ll be looking through C# glasses to solve my problems. It’s going to be a challenge to forget the things that don’t serve me in Swift and remember the things that do.

I’ve got a few ideas for apps that I can make. One of them requires that I get a patent license from a patent that was granted in 1994 and hasn’t been used since 2000 (I don’t think). There’s an app on the app store that’s using the idea, but I don’t think they have legal permission.

I’m not one of those people that thinks I’m going to be an overnight millionaire because I have a killer app idea. I’m just the opposite, I think my app development is going to cost me $99 a year just to stay current with the Apple developer program. Hopefully, I can get it to pay for itself, but I doubt it.

Will I develop for Android? I don’t know. Probably not. Mostly because I’m going to be writing apps that integrate with the Health data on iPhone and also integrate with iCloud for storage. I’m sure there are Google equivalents (I could also use the Microsoft Azure toolkits on both platforms, but something tells me iPhone users will want to stick with Apple and Android users will want to stick with Google).

I suppose I could also subscribe to the Xamarin toolkit and write my apps for either platform using C#, a language that I already know. However, I think I would serve my future career better by learning Swift outright.

I personally believe that Apple is going to continue to lead in the mobile space. When I was an Android user, I was constantly frustrated by the fragmentation of the Android devices. Sure, there are now multiple screen sizes for both the iPhone and the iPad as well as different resolutions, but the Android fragmentation was really a hassle when I was developing apps for the tablet at my last job. Hopefully, developing for iDevices won’t be as bad.

I know that Android and Apple are constantly trading places as the #1 mobile platform, but I still think I’ll stick with Apple for now.

Swift is my personal development hobby now. I haven’t learned a new programming language since I switched from Visual Basic 6 to C# and VB.NET. I’m long overdue for something. I briefly glanced at Python and learned the basics, but never programmed anything of substance with it.

This should be fun.