6 ms·
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 com
by kardos 6y ago
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?
- JCharante 6y agoMy university has been offering seminars on how to use Matlab for years. They also offer a course on getting you proficient in SolidWorks. I get your point that it should be offered by a company that specializes in training, but it's nice when universities go beyond pure theoretical concepts and teach things that can be used for side-projects.
- armadsen 6y agoI'll go a step further. When I was in college, as an electrical engineering major, we were required to take a Matlab course in our first year. Matlab was used fairly heavily in courses where it was useful throughout the rest of my major.
- mhh__ 6y agoMatlab code is still not the same as writing Apps for a locked in ecosystem - The company that owns matlab wants matlab everywhere, Apple wants everywhere to be in iOS
- bredren 6y agoApple has a lot of programming related courses and tools. The docs, and their relative quality has been discussed a lot here. But in general universities have been teaching the tools of specific industries for a long time. Sometimes entire departments or buildings are sponsored by specific companies or programs underwritten as “industry-academic partnerships” when the research aims are aligned with strategic goals of a particular company. For example, Oregon State University’s College of Forestry has a Tallwood Design Institute: “Its core tenets are the importance of industry collaboration, through outreach, education and feedback from professionals.” So, teaching a particular framework may be more explicit, but it isn’t unusual activity. http://blogs.oregonstate.edu/collegeofforestry/2019/04/09/tallwood-design-institute-building-the-future/ http://blogs.oregonstate.edu/collegeofforestry/2019/04/09/ta...
- DavidAdams 6y agoWhen I was an English major we studied a bunch of commercial products, and we had to buy them from huge corporations. Sometimes the authors of those products were alive enough to actually receive a royalty, sometimes not.
- acomjean 6y agoI had to buy HP32s calculator as an undergrad. That thing is great but pricy for a university student. I imagine for this class owning a mac is a minimal requirement. I think your talking about books though.. I didn't like it when Profs used there own books.
- gumby 6y agoI also think it's weird too but decided it's my problem/snobbery even. Universities have a bunch of roles and one of them is to teach skills you'll need in a given job. While some of those skills are truly general (problem solving, certain mathematics, thermo) you still learn the ones most common in your discipline. When you start a job as a new graduate you should have some familiarity in the tools and language of your discipline -- what units are used, how people talk (different disciplines can use different terms for the same thing), and yes, the most important tools. When I was an undergraduate we used Bridgeport mills (yes, it was pre CNC -- they were installed the very next year) because those were the common tools. Many of the things I learned back then are obsolete, but I realize that most of the time was spent on the stuff that has lasted: diff eq, thermo, "deep skills". However I could not have been of any use to any employer if I didn't know (in my case) how to program a Lisp machine.
- acomjean 6y agoIts not completely uncommon. Sometimes its very specific the tooling you use. In this case the fact that this knowledge is going to benefit one particular company might be seen as problematic. You aren't going to use these skills in Linux or Windows development. A lot of programming classes utilized specific tech (The Extension school at the University I work at teaches classes on React and Vue and Laravel, R, Python....) These are cross-platform tools and generally free. I think it can be useful to have this knowledge out there. The parts of it that are good might end up in Open Source projects or give people ideas of different ways of doing things.
- seshagiric 6y agoIf it helps someone be better prepared for the job market then why not? Should colleges stop teaching Java or C# because they are 'owned' by commercial entities?
- vincnetas 6y agoJava or C# is just a tool to teach CS concepts. Teaching iPhone development is more specialized and knowledge is less transferable.
- deleted 6y ago[deleted]
- yardie 6y agoIt's par for the course. When I was in university you had to submit papers in MS Word, Excel, or Powerpoint. Computational Math courses were either Mathematica or Matlab. Engineering courses were AutoCAD, Revit, and Solidworks. And programming migrated away from STL C++ to VS C++. The free, opensource equivalents weren't quite there yet. Using proprietary software/tools is not the worse thing universities have done (looking at you $700 biology dept textbooks).
- mgbmtl 6y agoWhen I was in university, we had to submit working algorithms in C, Java or whatever the prof chose, but we didn't learn the language in class. The prof would show snippets of code, but never discuss the language itself. Same for Word/Excel. There were books at the university library if needed.
- yardie 6y agoMy CS experience was the same. We saw snippets of code in class. But I enjoyed CS193 much more. Just being able to follow along, as they debug and step through it was a much more cohesive experience to me than "here's a bit of code, to learn more go read the book after class." It was difficult for me to learn that way.
- Gorbzel 6y agoHuh. 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 think that after decades of deeply-rooted institutional ties between Apple and Stanford that they wouldn't have a genuinely beneficial relationship and respect for one another?
- jeroenhd 6y agoIt 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 is the best at teaching people proper coding techniques for their platform; they have trouble keeping their API documentation up to date, I don't expect them to be that great at teaching people how to use them. Different approaches taught by different institutions are often a great way to improve your software design as well, because if you only learn from a single track then you can easily become too blinded by how things should be done to think of how things can be done. So, different places teaching how app development works rather than letting Apple be the guide towards the platform is a good thing in my eyes. I can understand the ties behind the Stanford connection, but I would expect a university to at least design a course to be platform-neutral. Focussing a course on extending the very closed app store ecosystem from an educational institution feels sketchy to me.
- ronyeh 6y agoThe 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.
- tester756 6y agoIt's always been like that Excel, Power Point, etc.
- closeparen 6y agoYou 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.
- Drew_ 6y ago> 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.
- closeparen 6y agoWhat low-resources device are you going to actually program though?
- bfung 6y agoI’m sure there’s a lot of sun sparc machines in a closet in a computer lab that has less ram and cpu power than today’s iPhones. 1/2 joking, 1/2 truth. It’s client/server, no need to be specifically mobile phone as a course. I do agree about practical hands-on training is like riding a bike; just ride it to know how.
- filoleg 6y agoOn a higher conceptual level, I agree with your premise in full. In this specific scenario, however, I don't think it applies. Let's imagine you want to teach your students a course on native mobile development. How would you do it without turning it into a "course on how to work with a specific commercial product", given that your only two relevant choices are Android and iOS, and both are commercial products?
- jefflinwood 6y agoApple has its own app class curriculum available, but this Stanford class predates it by quite a few years. If you want to learn about mobile application development, you have to pick a specific platform to target, and anything other than mobile web is going to be commercial. Ideally, the things students learn in the class aren't just various APIs, but instead how to build a product, work as a team, and solve problems. FWIW, I teach a very practical class in mobile application development at a university.
- Dig1t 6y agoYes, 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 just reading the documentation and tutorials on various websites. I'm sure it makes sense for some students, but it just kind of seems like a waste of money to me for most people.. It's good that it's free now.
- superbcarrot 6y agoWhat 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.
- minhazm 6y agoIt'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.
- mturmon 6y agoYou'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 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?
- ronyeh 6y agoI went to Stanford (albeit as a grad student). The CS193* classes are electives for the undergrad CS majors. I think this one is popular simply because lots of Stanford students want to make apps for the phone they have in their pocket. The core curriculum is based around algorithms, data structures, theory, discrete math, etc etc that you expect from a top university in CS. They use a variety of languages like python, java, lisp, C, etc to illustrate these concepts through class projects. Learning the SwiftUI API is not a required part of the core curriculum at Stanford.
- userbinator 6y agoI 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.
- mhh__ 6y agoPeople suspend their principles when Apple dangle a new toy in front of them
- wly_cdgr 6y agoShould Princeton stop using Java in their CS curriculum because Java is a commercial product?
- mhh__ 6y agoAs if there aren't fully open source Java implementations?
- r00fus 6y agoAbout as unusual as my Uni teaching based on Sun Java or Microsoft Visual Studio back in the 90s...
- sircastor 6y agoUniversities are walking a tightrope right now. It used to be they’d teach you domain knowledge and theory and you’d figure out application elsewhere. The expense and demands of college have meant (in many ways) ensuring that they can hit the ground running, so to speak. Do courses like these provide practical skills along side the their theory courses.
- reaperducer 6y agoIs it weird that a /university/ is offering this course on how to work with a specific commercial product? Not any more weird than my old college offering courses in Java and .NET-related things. Or high schools that teach people how to use Microsoft Word. Or a trade school teaching people how to use specific types of machinery only made by one company. Or secretarial schools that only taught people how to use IBM Selectrics.
- heavyset_go 6y agoI agree with the sentiment, but I believe this is an elective class. When I looked, the school I went to had electives for tools like AutoCAD, Adobe tools Photoshop and Premiere, Python, Android development, MySQL etc. If students or professors had interest in learning or teaching about a specific set of tools, often they'd offer classes on them for a few semesters as long as there was interest.
- mosdl 6y agoStanford (like many others) has continuing education classes as well.
- suyash 6y agoApple has been doing it for ages, more universities should take inspiration from his and teach students practical skills and not just archaic programming technologies.
- simscitizen 6y agoIt's an elective course.
- Razengan 6y agoDid you somehow miss the decades of schools teaching DOS Windows Excel Word etc. because that’s what everybody used?