background preloader

Coding

Facebook Twitter

Learn to Program: Crafting Quality Code. About the Course Most programs are used for years and are worked on by many people.

Learn to Program: Crafting Quality Code

Having programs that are easy to understand is essential, in the same way that a well-organized essay is far easier to follow than a disorganized one. We’ll show you an approach that helps to break down problems into smaller tasks that are easier to both solve and read. This design approach also makes it more straightforward to find and fix flaws. You'll be introduced to the tools that professional programmers use; they're called "testing" and "debugging". For most complex problems, there are many programs that solve them. Recommended Background. Creative, Serious and Playful Science of Android Apps. Creative Programming for Digital Media & Mobile Apps. About the Course This course will teach you how to develop and apply programming skills to creative work.

Creative Programming for Digital Media & Mobile Apps

This is an important skill within the development of creative mobile applications, digital music and video games. It will teach technical skills needed to write software that make use of images, audio and graphics, and will concentrate on the application of these skills to creative projects. Additional resources will be provided for students with no programming background. Course Syllabus Week 1: Introduction: sonic painter Week 2: Interactive D/VJ app. Coding the Matrix: Linear Algebra through Computer Science Applications. About the Course When you take a digital photo with your phone or transform the image in Photoshop, when you play a video game or watch a movie with digital effects, when you do a web search or make a phone call, you are using technologies that build upon linear algebra.

Coding the Matrix: Linear Algebra through Computer Science Applications

Linear algebra provides concepts that are crucial to many areas of computer science, including graphics, image processing, cryptography, machine learning, computer vision, optimization, graph algorithms, quantum computation, computational biology, information retrieval and web search. Linear algebra in turn is built on two basic elements, the matrix and the vector.

An Introduction to Interactive Programming in Python. About this course: This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications.

An Introduction to Interactive Programming in Python

Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple. These applications will involve windows whose contents are graphical and respond to buttons, the keyboard and the mouse. In part 1 of this course, we will introduce the basic elements of programming (such as expressions, conditionals, and functions) and then use these elements to create simple interactive applications such as a digital stopwatch. Part 1 of this class will culminate in building a version of the classic arcade game "Pong".

Heterogeneous Parallel Programming. About the Course All computing systems, from mobile to supercomputers, are becoming heterogeneous, massively parallel computers for higher power efficiency and computation throughput.

Heterogeneous Parallel Programming

While the computing community is racing to build tools and libraries to ease the use of these systems, effective and confident use of these systems will always require knowledge about low-level programming in these systems. This course is designed for students to learn the essence of low-level programming interfaces and how to use these interfaces to achieve application goals. CUDA C, with its good balance between user control and verboseness, will serve as the teaching vehicle for the first half of the course. Students will then extend their learning into closely related programming interfaces such as OpenCL, OpenACC, and C++AMP. Learn to Program: The Fundamentals. About the Course A computer program is a set of instructions for a computer to follow, just as a recipe is a set of instructions for a chef.

Learn to Program: The Fundamentals

Laptops, kitchen appliances, MP3 players, and many other electronic devices all run computer programs. Functional Programming Principles in Scala. About the Course This course introduces the cornerstones of functional programming using the Scala programming language.

Functional Programming Principles in Scala

Functional programming has become more and more popular in recent years because it promotes code that’s safe, concise, and elegant. Furthermore, functional programming makes it easier to write parallel code for today’s and tomorrow’s multiprocessors by replacing mutable variables and loops with powerful ways to define and compose functions. Scala is a language that fuses functional and object-oriented programming in a practical package.

It interoperates seamlessly with Java and its tools. Web Development Course (CS253) When does the course begin?

Web Development Course (CS253)

This class is self paced. You can begin whenever you like and then follow your own pace. Programming Languages Course (CS262) When does the course begin?

Programming Languages Course (CS262)

This class is self paced. You can begin whenever you like and then follow your own pace. It’s a good idea to set goals for yourself to make sure you stick with the course. How long will the course be available? This class will always be available! How do I know if this course is for me? Take a look at the “Class Summary,” “What Should I Know,” and “What Will I Learn” sections above. Can I skip individual videos? Yes! How much does this cost? It’s completely free! What are the rules on collaboration? Collaboration is a great way to learn. Why are there so many questions? Udacity classes are a little different from traditional courses. What should I do while I’m watching the videos? Introduction to Computer Science -