Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Boil

macrumors 68040
Oct 23, 2018
3,466
3,157
Stargate Command
I of course can't speak to your budget - If the iPad addition is within reasonable budgeting and (1) you want one anyway; Yeah go for it. Something is always better than nothing for learning. And Swift Playgrounds comes with a lot of "learn to code" lessons, so it's a decent start. That said, I'd say the experience is notably nicer on the Mac versus the iPad - Especially if you don't have (2) a physical keyboard attached, since programming is of course text and typing heavy and touch may not lend itself so well to that longer term. But it definitely works decently using Swift Playgrounds if all you need/want is Swift - though (3) the iPad isn't all that versatile for other development needs than Swift.
  1. I've been wanting a tablet for quite some time, just have not followed thru on purchasing; plenty more uses for an iPad than just Swift Playgrounds...!
  2. I would get the Logitech Folio Touch to use with the iPad Air...
  3. I would be using Swift Playgrounds to get a start with learning while I wait for a M2 / M2 Pro Mac mini, then I would switch over to Xcode/Swift/SwiftUI on the mini...?
 
Last edited:

casperes1996

macrumors 604
Jan 26, 2014
7,593
5,764
Horsens, Denmark
  1. I've been wanting a tablet for quite some time, just have not followed thru on purchasing; plenty more uses for an iPad than just Swift Playgrounds...!
  2. I would get the Logitech Folio Touch to use with the iPad Air...
  3. I would be using Swift Playgrounds to get a start with learning while I wait for a M2 / M2 Pro Mac mini, then I would switch over to Xcode/Swift/SwiftUI on the mini...?

For for it, mate. Sounds like a plan :)
 

GSWForever8

macrumors 6502a
Apr 10, 2021
530
497
Hello everyone,

I just joined the forum after many years lurking around because recently I took a short programming course of Swift (at website called codecademy). I realize it is an introduction free course so I would like to ask indications of courses, books, videos, etc or just anything you think it should be useful for someone taking her first steps coding. I would prefer free, open-source material, but if it is something worthy I might be able to spend some money with it too.

I also have a question: What is the difference between Swift and SwiftUI?

Thank you for your help and attention.
Swift playgrounds is great. You should also try this: https://developer.apple.com/learn/curriculum/
 

CocoaNut

macrumors member
Sep 8, 2011
72
38
Switzerland
I highly disagree with you about them being the best. Nick Walter's has way better courses.
I'd suggest OP to stay away from Angela Yu Moneygrabbin hoe.
She has so many outdated courses, is annoying, can't teach. Nick Walter's courses are way better + you learn macOS development.
https://www.udemy.com/course/swiftui-apps-on-all-devices-iphone-ipad-mac-watch-tv/ Way better than Angela
The first guy you recommended was good though. He's good. Angela is horrible.
I have to disagree with you on Angela Yu's course being rubbish. Her teaching style may not be for everybody, but I can recommend her courses for a few different reasons:
  • you get results after you try the assignments/challenges, perhaps getting stuck along the way;
    • on some, I had to take a day or two off to absorb the material necessary to complete the task, and also spank my hand if I was trying to get ahead of myself... i.e. listen, and learn!
  • don't rush to whatever goal you want to publish on the AppStore, just follow along and be willing to learn;
  • she often mentions that web searches are a coder's daily bread;
  • there's no shame in going over the same video several times if you get stuck -- there are very few cases in life where a solution will be fed to you by tube;
  • and remember that if it isn't fun, your time will best be spent somewhere else.
If you are looking for a quick menu to your first app, then perhaps ANY course will not be right for you. Coding is a skill which must be trained, and as with any skill, it will not become natural unless you face some hard times.
 

igauravarora

macrumors regular
Feb 16, 2017
110
161
I have tried many courses and I can recommend Angela Yu's course. Although I have only been 25% through (I always fell off the wagon due to my laziness), I can tell that it's the best one out there for beginners. I have a computer science background so I knew the basic concepts of programming languages i.e Loops, functions etc but Angela explains them in a very easy way with visual representation of how everything works. My vote goes to Angela's course.

Second one I would suggest is stanford's cs193p.

I tried stanford's course first. I was able to get through first 3-4 lectures with minimal difficulty but it got way harder for me at that point. All I can say is that these two complement each other. An important thing to note here is that they both are using different frameworks. Angela is primarily using UIkit and stanford's course is primarily SwiftUI. Older versions of stanford's course were in UIkit if you can find it. SwiftUI is newer and will be supported more in the future but UIkit is fine if you have already started it. Angela's course has a SwiftUI section but I haven't gone through it.

Apple's old iTunes U app featured Stanford's course so you can count on it to be good.

You should also try and start building your own projects alongside it. Maybe have a goal of an app that you want to develop and try to incorporate the concepts you learn into that project.

I had in my mind to develop a podcast app like the Overcast. Overcast was my inspiration at that time. I found this guy who has his own courses and making a podcast app was one of them link I tried to watch it but it was also too advanced for me. I have included the link above if you want to check it out although I cannot vouch for it to be good or bad. I do think there must be some neat tricks involved in making an app like that and one can get a sense of general overview on how things work.
 

iHorseHead

macrumors 68000
Jan 1, 2021
1,579
1,998
I have to disagree with you on Angela Yu's course being rubbish. Her teaching style may not be for everybody, but I can recommend her courses for a few different reasons:
  • you get results after you try the assignments/challenges, perhaps getting stuck along the way;
    • on some, I had to take a day or two off to absorb the material necessary to complete the task, and also spank my hand if I was trying to get ahead of myself... i.e. listen, and learn!
  • don't rush to whatever goal you want to publish on the AppStore, just follow along and be willing to learn;
  • she often mentions that web searches are a coder's daily bread;
  • there's no shame in going over the same video several times if you get stuck -- there are very few cases in life where a solution will be fed to you by tube;
  • and remember that if it isn't fun, your time will best be spent somewhere else.
If you are looking for a quick menu to your first app, then perhaps ANY course will not be right for you. Coding is a skill which must be trained, and as with any skill, it will not become natural unless you face some hard times.
I'm not even sure you read what I wrote.🤔
It's also suspicious that you are so inactive. I'm not going to explain the same thing again.
 

casperes1996

macrumors 604
Jan 26, 2014
7,593
5,764
Horsens, Denmark
Angela is primarily using UIkit and stanford's course is primarily SwiftUI. Older versions of stanford's course were in UIkit if you can find it. SwiftUI is newer and will be supported more in the future but UIkit is fine if you have already started it. Angela's course has a SwiftUI section but I haven't gone through it.

SwiftUI is newer, yes, but I don't see them as competing in that way. SwiftUI co-exists with UIKit and AppKit and builds on top of those frameworks and does not aim to replace them, but complement them. I don't see Apple dropping AppKit and UIKit for SwiftUI. - They live in harmony
 
  • Like
Reactions: DianaofThemiscyra

igauravarora

macrumors regular
Feb 16, 2017
110
161
SwiftUI is newer, yes, but I don't see them as competing in that way. SwiftUI co-exists with UIKit and AppKit and builds on top of those frameworks and does not aim to replace them, but complement them. I don't see Apple dropping AppKit and UIKit for SwiftUI. - They live in harmony
Well, for now. Hardly anyone use Objective C for example unless it's some legacy code for a big company. I knew they are different in regards that one is a framework (UIkit/SwiftUI) and other is programming language (Swift/Obj C). No one knows though but it's generally a good idea to learn a newer/latest thing if someone is a beginner. There's a reason Stanford completely opted for SwiftUI in their latest course and they even say that it's gonna be SwiftUI from now on in their course and I trust the words coming from Stanford than the forum posts but ymmv. SwiftUI is gonna get better and updated every year just like it happened in the past few years. Nonetheless, at present moment it doesn't matter much but down the road who knows.

Overcast recently switched entirely to SwiftUI according to Marco (Developer) and they talked about it in the podcast. There were few headaches in doing that he layed out in the podcast if anyone is interested in that.

These are just my opinions though from what I have experienced going through all this. If your approach/opinion is different then by all means go ahead and do what you like. ✌️
 

casperes1996

macrumors 604
Jan 26, 2014
7,593
5,764
Horsens, Denmark
Well, for now. Hardly anyone use Objective C for example unless it's some legacy code for a big company. I knew they are different in regards that one is a framework (UIkit/SwiftUI) and other is programming language (Swift/Obj C). No one knows though but it's generally a good idea to learn a newer/latest thing if someone is a beginner. There's a reason Stanford completely opted for SwiftUI in their latest course and they even say that it's gonna be SwiftUI from now on in their course and I trust the words coming from Stanford than the forum posts but ymmv. SwiftUI is gonna get better and updated every year just like it happened in the past few years. Nonetheless, at present moment it doesn't matter much but down the road who knows.

Overcast recently switched entirely to SwiftUI according to Marco (Developer) and they talked about it in the podcast. There were few headaches in doing that he layed out in the podcast if anyone is interested in that.

These are just my opinions though from what I have experienced going through all this. If your approach/opinion is different then by all means go ahead and do what you like. ✌️

I'm not saying I completely disagree with you n'or Stanford :)
I would advice people learn SwiftUI, whether new or experienced. I would advice using it where it makes sense moving forward - in new projects and when time and resources permit perhaps even migrating existing views to it.

But I do not believe there will ever come a point where using AppKit or UIKit will be impossible and/or deprecated. SwiftUI is built on top of UIKit and AppKit. It uses those frameworks internally. UIKit got a massive update just last WWDC with a completely new Button. SwiftUI and UIKit/AppKit are different ways of approaching the UI creation problem with different pros and cons. The existence of Swift has not, and never will, make it impossible to write and run C code on a Mac either, because they excel at different things. I would not recommend using C to build applications, but if you're writing a highly optimised memory allocator for an entity system in a game engine you're making; C/C++/Rust/Zig makes a whole lot more sense. - Different tools for different jobs, and there are some views that you can very very easily express with SwiftUI and some views you can more easily express with UIKit. Sure, maybe over time it will be that all views will be easily expressed in SwiftUI - I doubt it because different ways of approaching problems tend to have trade-offs rather than ultimate superiority, but it's possible - Apple would still need to maintain AppKit and UIKit since SwiftUI depend on them and you need platform specific UI libraries backing up a platform agnostic system like SwiftUI so they might as well expose that to the programmer as well. Speaking of platform agnosticism; Unless SwiftUI begins allowing you to break platform agnosticism more there will be certain things it can never do unless you break its container and get its AppKit internals - like programmatically manipulating the window itself on macOS - because the concept of a window is not a concept of a view on other platforms.

In short, yes learn SwiftUI. Yes, use it as your primary tool for application development. But I have many reasons for thinking it's not killing off UIKit and AppKit. That doesn't mean you shouldn't be using it where it makes sense, which will be a lot of places and almost every new project probably. Two things can co-exist and mutually benefit each other
 
  • Like
Reactions: DianaofThemiscyra

CocoaNut

macrumors member
Sep 8, 2011
72
38
Switzerland
I'm not even sure you read what I wrote.🤔
It's also suspicious that you are so inactive. I'm not going to explain the same thing again.
Erm, ok sir, whatever floats your boat. 🙂 And please don't judge people who don't spend a lot of time in forums. I come here every once in a while, got plenty of other stuff to do.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.