Showing posts with label stanford. Show all posts
Showing posts with label stanford. Show all posts

Thursday, November 24, 2011

More free online courses from Stanford University

In addition to the previously posted free online courses from Stanford, the under-listed courses are also available:
Do yourself some good and register to learn some new things in 2012. It's free, so you've really got nothing to lose, right?

Free Online course from Stanford University on Design and Analysis of Algorithms I


Tim Roughgarden, Associate Professor of Computer Science and (by courtesy) Management Science and Enginering at Stanford University will be taking a course in Design and Analysis of Algorithms in January 2012.

In the course you will learn several fundamental principles of algorithm design. You'll learn the divide-and-conquer design paradigm, with applications to fast sorting, searching, and multiplication. You'll learn several blazingly fast primitives for computing on graphs, such as how to compute connectivity information and shortest paths. Finally, we'll study how allowing the computer to "flip coins" can lead to elegant and practical algorithms and data structures. Learn the answers to questions such as: How do data structures like heaps, hash tables, bloom filters, and balanced search trees actually work, anyway? How come QuickSort runs so fast? What can graph algorithms tell us about the structure of the Web and social networks? Did my 3rd-grade teacher explain only a suboptimal algorithm for multiplying two numbers?

Prerequisites: How to program in at least one programming language (like C, Java, or Python); familiarity with proofs, including proofs by induction and by contradiction; and some discrete probability, like how to compute the probability that a poker hand is a full house. At Stanford, a version of this course is taken by sophomore, junior, and senior-level computer science majors.

You can learn more or register for the course here.

Free Online Course on Software As A Service (Saas) from Stanford University




Armando Fox, Associate Professor at UC Berkeley and David Patterson, Pardee Professor of Computer Science at UC Berkeley and  current Director of the Parallel Computing Lab will be taking a course on Software Engineering for Software as a Service in February 2012.

The course will teach the engineering fundamentals for long-lived software using the highly-productive Agile development method for Software as a Service (SaaS) using Ruby on Rails. Agile developers continuously refine and refactor a working but incomplete prototype until the customer is happy with result, with the customer offering continuous feedback. Agile emphasizes user stories to validate customer requirements; test-driven development to reduce mistakes; biweekly iterations of new software releases; and velocity to measure progress. We will introduce all these elements of the Agile development cycle, and go through one iteration by adding features to a simple app and deploying it on the cloud using tools like Github, Cucumber, RSpec, RCov, Pivotal Tracker, and Heroku.

Prerequisites for the course are: Programming proficiency in an object-oriented programming language such as Java, C#, C++, Python, or Ruby. Basic Unix command-line skills are helpful; we will provide a cheat sheet. You must also have a computer running Windows, Mac OS, Linux, or Solaris operating systems and running x86 or AMD64/Intel64 hardware on which you can install and run VirtualBox virtual machine. It should have at least 512 MB of memory, or at least 1 GB if running Windows. See www.virtualbox.org.

Recommended Textbook: "Engineering Long-Lasting Software: An Agile Approach Using SaaS and Cloud Computing," Beta Edition, by Armando Fox and David Patterson, to be available January 17, 2012.

You can register for the course here.

Free Online Course on Technology Entrepreneurship from Stanford University


Chuck Eesley (Professor in Stanford University's Management Science & Engineering group) will be taking a course on Technology Entrepreneurship in January 2012.

The class will mix in-depth case studies and research on the entrepreneurial process. How do you create a successful start-up? What is entrepreneurial leadership in a large firm? What are the differences between an idea and true opportunity? How does an entrepreneur form a team and gather the resources necessary to create a great enterprise? This and many more are areas that will be covered by Professor Chuck Eesley.

Register for the course here.

Free Online Course on Lean Startup by Steve Blank


I guess you know who Steve Blank is? In case you don't, Steve Blank is a serial entrepreneur and has been a founder or early employee at 8 startups, including 4 resulting in successful IPOs. The San Jose mercury news called him one of the 10 influencers in Silicon Valley.

In this course, you'll learn how to turn a great idea into a great company.

We now know that startups are not smaller versions of large companies. Large companies execute known business models. They use big company tools - business plans, income statements, revenue models, etc. to help organized their execution. In contrast startups search for a business model. And all the big company tools are irrelevant in the early days of a startup. This class is not about how to write a business plan. It's not an exercise on how smart you are in a classroom, or how well you use the research library. The end result is not a PowerPoint slide deck for a VC presentation. Instead you will be getting your hands dirty as you encounter the chaos and uncertainty of how a startup actually works.

You'll learn how to use a business model canvas to brainstorm each part of a company and customer development to get out of the classroom to see whether anyone other than you would want/use your product. Finally, you'll see how agile development can help you rapidly iterate your product to build something customers will use and buy. Each week will be a new adventure as you test each part of your business model.

The course starts in February 2012.

Register for the Lean Startup Online course by Steve Blank here

Free Online Course on Probabilistic Graphical Models from Stanford University



Professor Daphne Koller of Stanford University (Rajeev Motwani Professor in the School of Engineering), will be instructing a free online course in Probabilistic Graphical Models.

In this class, you will learn the basics of the PGM representation and how to construct them, using both human knowledge and machine learning techniques; you will also learn algorithms for using a PGM to reach conclusions about the world from limited and noisy evidence, and for making good decisions under uncertainty. The class covers both the theoretical underpinnings of the PGM framework and practical skills needed to apply these techniques to new problems.

Topics include:
(i) The Bayesian network and Markov network representation, including extensions for reasoning over domains that change over time and over domains with a variable number of entities;
(ii) reasoning and inference methods, including exact inference (variable elimination, clique trees) and approximate inference (belief propagation message passing, Markov chain Monte Carlo methods);
(iii) learning methods for both parameters and structure in a PGM;
(iv) using a PGM for decision making under uncertainty. The course will also draw from numerous case studies and applications, so that you'll also learn how to apply PGM methods to computer vision, text understanding, medical decision making, speech recognition, and many other areas.

You can register for the course here.

Wednesday, November 16, 2011

Learn iPhone/iPad Application Development for free courtesy of Stanford University



If you are interested in learning iOS app development, the instructors at Stanford University are offering a course in iOS 5 focused on iPhone Application Development. The course is offered for free and you can take the course without actually being a student of Stanford. The course is available on iTunes U.


Throughout the course, students will develop several iPhone and iPad apps that help automate tasks in their day-to-day life including games and social networking apps.

Before taking the iPhone Application Development class there are two prerequisites you must complete, Programming Methodology and Programming Abstractions, which are also available on iTunes.

It's worth checking out if you are interested in developing iOS apps.