Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Game development and embedded systems are big on writing assembly to optimize as much performance as possible.
Game development uses little or no assembly language. Unless you really, really understand 100% exactly what you're doing when writing assembly, compilers can produce better/faster code (using C or whatever) than you can. This isn't the age of 6502 CPUs anymore.

--Eric
 
  • Like
Reactions: JoshDoug
I want to start learning Swift, since it seems like a clean slate (no coding experience all). Anybody know of a good step by step resource (not video based) I could follow?

Stanford has a course on iOS development and they upload everything to iTunes U (latest was Spring 2016 with iOS 9). From videos to slideshows and even programming assignments! To go further, you can google the course's website and download their project files
 
  • Like
Reactions: Mr. Dee
This. I hate that language so much. I want to do Android development so badly. And while I am still learning it, the thing that makes it not fun is that dreaded language. :/

Java is verbose, but unless your issue is with OO in general then it's a pretty decent C-Style language with a ton of open source frameworks and libs. It's understandable though, 'Java is terrible' was what I thought when I first started out.
 
  • Like
Reactions: Toutou
I want to start learning Swift, since it seems like a clean slate (no coding experience all). Anybody know of a good step by step resource (not video based) I could follow?
I'll second the recommendation of Big Nerd Ranch's "Swift Programming" (2nd Ed.), which starts off with Playgrounds to teach basic Swift 3.0 language constructs before introducing you to the greater intricacies of Xcode 8 projects ~one-third the way in: https://www.amazon.com/Swift-Programming-Ranch-Guide-Guides/dp/013461061X

Once you have the fundamentals of the Swift language down, their book "iOS Programming" (6th Ed.) is a great next step (see what I did there?) that walks through development of ~five iOS apps using Swift 3.0*: https://www.amazon.com/iOS-Programming-Ranch-Guide-Guides/dp/0134682335

FWIW, the (free) Stanford CS193P iTunesU course has been recently updated for iOS 10, but IMO assumes a previous familiarity with programming concepts you might not yet have: https://itunes.apple.com/us/course/id1198467120

* IIRC, the 4th Ed. was the last edition to be written for Objective-C.
 
Last edited:
As an Amazon Associate, MacRumors earns a commission from qualifying purchases made through links in this post.
  • Like
Reactions: Mr. Dee
Exactly. People and businesses don't switch to a new language for the hell of it, there's a huge amount of effort involved. A language doesn't just have to be better for most to make the switch, it has do be substantially better and provide considerable time & efficiency savings to make up for the time investment of learning and switching to it.

In the case of Swift, it is _very_ compatible with existing Objective-C code, so you can easily take an existing Objective-C code base, make it support Swift code, and write all your new code in Swift.
 
  • Like
Reactions: JoshDoug
Most Java applications are server side these days.

Blame the developers for the crap applications you've used, not the language.

OHTD, I've used some great Java applications on the desktop.
Java is so security NOT that the Mac OS makes it difficult for the end-user. The idea of write-once-run-everywhere is a good idea but it just doesn't seem to work as expected.
 
If you want multilingual, you can always learn more languages like Objective-C, C, C++, Java, Python, Ruby, BASIC, and so on. Swift uses one language: Swift. And if you suggest that keywords should be adapted from other languages, that is a rat's nest of evil problems waiting for the developer.
you misunderstood their comment, they were meaning multilingual not polyglot
 
More impressive is Go jumping from 48 to 17 and many top tier organizations like Twitch, NTPSec, etc. have migrated to it. Swift is more of a hobby language in comparison and orphaned since the lead developer jumped ship to Tesla.

https://blog.twitch.tv/gos-march-to-low-latency-gc-a6fa96f06eb7#.til0eizcq

https://blog.ntpsec.org/2017/01/18/rust-vs-go.html

https://making.pusher.com/golangs-real-time-gc-in-theory-and-practice/

http://blog.parse.com/learn/how-we-moved-our-api-from-ruby-to-go-and-saved-our-sanity/

https://www.iron.io/go-after-2-years-in-production/
 
More impressive is Go jumping from 48 to 17 and many top tier organizations like Twitch, NTPSec, etc. have migrated to it./

Go is a C variant, but with the drawbacks of garbage collection (i.e. no ARC) and no support for generics or operator overloading. Seems like a giant step back from where the rest of the programming world is headed. That said, I'm sure its the perfect alternative language for Googoids, but I wouldn't see the point otherwise. If I had an appropriate project I'd be far more inclined to learn Rust. As always, YMMV.
 
  • Like
Reactions: firewood
Swift is hardly "orphaned." The lead developer left, and has been replaced with another lead developer (who has been working on it for years). It's not the product of a single person.

--Eric
 
  • Like
Reactions: firewood and John.B
Yep, agreed. Since I went freelance around the end of 2014, I've been working in Swift. Although I have to say, I still have to battle prejudices. One C# developer commented that the exceptions make the language slow (no) and one Objective-C freelancer claimed last week that Swift is not worth it, since the language is still changing (not since version 3).

But compared to Objective-C, the code is so much cleaner.

Objective C is way more powerful though.
 
One can write Swift in Emoji. It's definitely multilingual.
poopy-swift-code-example.jpg

Swift is supposed to be a serious language for serious work, not a kids toy. And since 95% of IT things happen in English (language keywords, documentation, variable names, web discussions), no one really needs it to be multilingual. Besides that, a multilingual source code would be kinda unnecessarily difficult to parse.
 
Objective C is way more powerful though.
That's news to me. Or let's say, anything that a reasonable person would do in Objective-C, they can do more easily in Swift. There are things that you can't do in Swift, and thank heavens for that.
 
I wish there was a person or group that could help you out quickly if you get stuck in a course like udemy or even big ranch. I haven't tried Lydia.
 
That's news to me. Or let's say, anything that a reasonable person would do in Objective-C, they can do more easily in Swift. There are things that you can't do in Swift, and thank heavens for that.

Optional protocol? None IDE generated header? Faster compile time? None borked type ahead?
Use of NSMutableSet without annoying generic type check? Cleaner debug po data object?
....etc.... I can go on and on......

There just isn't anything that is easier in Swift than ObjC. Or maybe unwrap/wrap for those who needs it?
In fact, it's most likely gonna be slower and harder for the most part. In both performance and production speed.
 
  • Like
Reactions: akash.nu
Optional protocol? None IDE generated header? Faster compile time? None borked type ahead?
Use of NSMutableSet without annoying generic type check? Cleaner debug po data object?
....etc.... I can go on and on......

There just isn't anything that is easier in Swift than ObjC. Or maybe unwrap/wrap for those who needs it?
In fact, it's most likely gonna be slower and harder for the most part. In both performance and production speed.

Half of the things you mention are related to Xcode and the compiler. That said, I do understand where you're going; the type system does make Swift complex sometimes.
 
Wow... Assembly is at #13.

I remember writing assembly routines for my BASIC games for the ZX Spectrum when I was 12. I wasn't even aware it's still used today.

Any compiled language - C, Swift, COBOL - ends up as assembler.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.