When I hear people talk about taking online courses I hear the usual marketplaces mentioned. While these are great places to learn I find it a little odd that iTunes U is usually a place that people forget about.
If you weren’t aware iTunes U is the world’s largest catalog of free education content.
- Choose from more than 1 million free lectures, videos, books, and other resources on thousands of subjects from leading educational and cultural institutions around the world.
- Share your favorite courses with friends using Twitter, Facebook, Mail, and Messages.
- iTunes U includes materials from Stanford, Yale, MIT, Oxford, McGill University, La Trobe University, University of Tokyo, Museo Nacional del Prado, Smithsonian Libraries, National Theatre, Library of Congress, and much more.
In this article, I am going to give you 6 courses that can help you grow as a Software Developer. While some of the courses on iTunes U are a little out of date I believe these courses can be of help to you right now.
DEVELOPER IOS 10 APPS WITH SWIFT
Tools and APIs required to build applications for the iPhone and iPad platforms using the iOS SDK. User interface design for mobile devices and unique user interactions using multi-touch technologies. Object-oriented design using model-view-controller paradigm, memory management, Swift programming language. Other topics include object-oriented database API, animation, mobile device power management, multi-threading, networking and performance considerations.
MACHINE LEARNING
This course provides a broad introduction to machine learning and statistical pattern recognition. The course also discusses recent applications of machine learning, such as to robotic control, data mining, autonomous navigation, bioinformatics, speech recognition, and text and web data processing. Topics include supervised learning (generative/discriminative learning, parametric/non-parametric learning, neural networks, support vector machines); unsupervised learning (clustering, dimensionality reduction, kernel methods); learning theory (bias/variance tradeoffs; VC theory; large margins); reinforcement learning and adaptive control.
INTRO TO ALGORITHMS
This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.
INTRODUCTION TO PYTHON
This course will show you the basics of Python and you will be able to create some basic programs using it. You will need Python, which can be downloaded from the Python website, and also easygui which can be downloaded from the easy GUI website!
INTRODUCTION TO JAVA
An introduction to the fundamental features of the Java language. Topics include object-oriented programming, generics, collections, and I/O.
THIS IS CS50 2016
“Demanding, but definitely doable. Social, but educational. A focused topic, but broadly applicable skills. CS50 is the quintessential Harvard (and Yale!) course.”
Introduction to the intellectual enterprises of computer science and the art of programming. This course teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development. Languages include C, Python, SQL, and JavaScript plus CSS and HTML. Problem sets inspired by real-world domains of biology, cryptography, finance, forensics, and gaming. Designed for majors and non-majors alike, with or without prior programming experience.