Live data from Hacker News

CS193p: Developing Apps for iOS

cs193p.sites.stanford.edu

111–120 of 174 posts

Re: CS193p: Developing Apps for iOS

#111
post #106
post #29

Is it weird that a /university/ is offering this course on how to work with a specific commercial product? Shouldn't this be the domain of Apple itself or a company that specialises in training?

Yes, I so agree with this sentiment. Also I feel a little bad for students at Stanford who actually take this class in person. It seems a little weird that these students come to this world class institution where leading minds are doing cutting edge research, and they are paying exorbitant tuition to sit in a class and learn about how to string simple API calls together. Most of this knowledge can be obtained by jus…

What you're describing would be a problem if they were studying only stuff that they can learn from docs and tutorials. But I'm sure that not every class is like this one and the students are getting plenty of exposure to theory and deeper knowledge in various fields.

Universities need to balance out the argument that you're making with the argument that CS education doesn't prepare people for having an actual job.

Re: CS193p: Developing Apps for iOS

#113
post #106
post #29

Is it weird that a /university/ is offering this course on how to work with a specific commercial product? Shouldn't this be the domain of Apple itself or a company that specialises in training?

Yes, I so agree with this sentiment. Also I feel a little bad for students at Stanford who actually take this class in person. It seems a little weird that these students come to this world class institution where leading minds are doing cutting edge research, and they are paying exorbitant tuition to sit in a class and learn about how to string simple API calls together. Most of this knowledge can be obtained by jus…

It's not like this is a required class. You still have to take the required set of theory classes. This is just an optional elective for students to take if they want to learn iOS development.

At the end of the day the day if you want to create a startup or even just get a job out college, taking practical courses like iOS development will put you in a much better position than spending all of your time taking theory classes.

Re: CS193p: Developing Apps for iOS

#114
post #83

What would be an advantage going for swiftui vs. React Native for a startup? I feel like the cross platform nature of React would be more beneficial for starting a new platform or business. Of course swift will operate better for ios but is the tradeoff that great with React Native?

Interested as well. I’ve heard a number of tech companies use react native on iOS targets which allows for easy reuse of components developed for web UI, and any mobile... certainly where I’d lean given the choice based on current information.

There was an engineering blog post from discord a number of months ago discussing their use of react native bottlenecking iOS app performance, and they ended up converting some key react data structures to native iOS constructs within the react native app and crushed those bottlenecks. My takeaway was that developer ease and reusability should be prioritized until you hit a performance wall at scale such as discord did, at which point you’ll have the money to pay other engineers to optimize the important parts of you don’t have the time or know-how ;)

Re: CS193p: Developing Apps for iOS

#115
post #29

Is it weird that a /university/ is offering this course on how to work with a specific commercial product? Shouldn't this be the domain of Apple itself or a company that specialises in training?

You can't really teach "mobile engineering" in abstract like you can with databases or computer vision or whatever. The only real way to do anything hands on is with one of the two commercial platforms. In 30 years maybe there will be an academic/open source "teaching OS" for mobile like there is for desktop Operating Systems classes today.

> You can't really teach "mobile engineering" in abstract like you can with databases or computer vision or whatever.

Sure you could. "mobile engineering" would just be a study of solving computer science problems with relatively low resources, a finite amount of power, etc. You don't need to make iOS/Android apps to study this. Many lessons I've learned while solving problems on mobile apps can be easily transferred from platform to platform. They weren't Android or Chrome specific for example.

Re: CS193p: Developing Apps for iOS

#116
post #83

What would be an advantage going for swiftui vs. React Native for a startup? I feel like the cross platform nature of React would be more beneficial for starting a new platform or business. Of course swift will operate better for ios but is the tradeoff that great with React Native?

The advice I give roughly to clients is to go native if your business heavily depends on mobile. Otherwise React Native is pretty viable, especially for small teams of generalists. In terms of SwiftUI, most businesses aren’t building entire apps in it yet.

Re: CS193p: Developing Apps for iOS

#117
post #83

What would be an advantage going for swiftui vs. React Native for a startup? I feel like the cross platform nature of React would be more beneficial for starting a new platform or business. Of course swift will operate better for ios but is the tradeoff that great with React Native?

React Native will get you to an MVP way faster than native/SwiftUI development. However there is the massive risk that you'll find yourself shackled to React Native if you want to grow the capabilities of your app to beyond what React Native can accommodate. React Native make development faster, but traditional native development is the safer option in the long term.

Re: CS193p: Developing Apps for iOS

#118
post #74

Earlier quoted context omitted.

Huh. Lots of different perspectives out there... - Is it weird that there's barely any training of practical software engineering in a university setting as it is, and now this question posits that one of the great durable examples of such a course is somehow against the norm? - Is it weird that a community would train someone in methods and concepts using the technologies invented up the street? - Is it weird to thi…

It depends what you expect from your education. I'd personally expect a university to focus on the academic side of computer science rather than teaching typical practical "busywork". The theory is what I expect to count in a university, the practice is just a nice side effect for testing the theory. Others expect a university to just teach you how to be a software dev as best as possible. I don't believe that Apple…

The core curriculum focuses on theory with lots of projects to apply what you learned.

CS193 classes are optional and are sometimes designed/lead by grad student lecturers who are interested in that topic.

It is clear that there is a demand by Stanford students for this class. If someone wanted to design and teach a mobile dev course that surveyed android & ios, html5 mobile dev, and mobile UX issues, they could do so. They could call it CS193m or something.

Re: CS193p: Developing Apps for iOS

#119
post #106
post #29

Is it weird that a /university/ is offering this course on how to work with a specific commercial product? Shouldn't this be the domain of Apple itself or a company that specialises in training?

Yes, I so agree with this sentiment. Also I feel a little bad for students at Stanford who actually take this class in person. It seems a little weird that these students come to this world class institution where leading minds are doing cutting edge research, and they are paying exorbitant tuition to sit in a class and learn about how to string simple API calls together. Most of this knowledge can be obtained by jus…

You're focusing on the apparent triviality of the coursework ("learn about how to string simple API calls together ... just reading the documentation and tutorials on various websites") versus the stellar skills and knowledge of the faculty.

This applies to a lot of 1xx classes anywhere! In particular, foreign languages, or beginning art classes.

My wife went to art grad school at UCLA. Her advisor (whose competence is beyond amazing, e.g. https://art.famsf.org/adrian-saxe) taught an undergraduate ceramics class, and one of his chores was to bust on his students who made bongs as their class project. Which he did with good humor. (Broke in the kiln, how about that!)

What can you say? Learning happens in all kinds of ways?

Re: CS193p: Developing Apps for iOS

#120
post #29

Is it weird that a /university/ is offering this course on how to work with a specific commercial product? Shouldn't this be the domain of Apple itself or a company that specialises in training?

I think it's weird from the perspective of Apple being a notoriously closed ecosystem - I have worked in CS teaching in the past and Linux/BSD and other FOSS was highly preferred over even Windows.
Post reply on HN