Courses tagged with "EdX" (24)
Other topics covered in this software engineering course include:
- How to form, organize and manage small programming teams
- Introduction to design patterns: what they are and how to recognize opportunities to apply them
- Using Rails for more advanced features like third-party authentication and elegantly expressing design patterns that arise frequently in SaaS
There will be four homework assignments: two programming assignments, an open source assignment and one assignment about operations/deployment. There will also be several short quizzes. The videos and homework assignments used in this offering of the course were revised in October 2016.
This intermediate computer programming course uncovers how to code long-lasting software using highly-productive Agile techniques to develop Software as a Service (SaaS) using Ruby on Rails. You will understand the new challenges and opportunities of SaaS versus shrink-wrapped software and learn to apply fundamental Rails programming techniques to the design, development, testing, and public cloud deployment of an Software as a Service (SaaS) application
Using best-of-breed tools that support modern development techniques including Behavior-Driven design, user stories, Test-Driven Development, velocity, and pair programming, learners will discover how modern programming language features in Ruby on Rails can improve productivity and code maintainability.
Weekly coding projects and quizzes will be part of the learning experience in this SaaS course. Those who successfully complete the assignments and earn a passing grade can get a verified certificate from BerkeleyX. The videos and homework assignments have been updated to use Ruby 2, Rails 4 and RSpec 3. The new class also includes embedded live chat with Teaching Assistants and other students and remote pair programming with other students.
Algorithms power the biggest web companies and the most promising startups. Interviews at tech companies start with questions that probe for good algorithm thinking.
In this computer science course, you will learn how to think about algorithms and create them using sorting techniques such as quick sort and merge sort, and searching algorithms, median finding, and order statistics.
The course progresses with Numerical, String, and Geometric algorithms like Polynomial Multiplication, Matrix Operations, GCD, Pattern Matching, Subsequences, Sweep, and Convex Hull. It concludes with graph algorithms like shortest path and spanning tree.
- Sorting and Searching
- Numerical Algorithms
- String Algorithms
- Geometric Algorithms
- Graph Algorithms
This course is part of the Fundamentals of Computer Science XSeries Program:
What do self-driving cars, face recognition, web search, industrial robots, missile guidance, and tumor detection have in common?
They are all complex real world problems being solved with applications of intelligence (AI).
This course will provide a broad understanding of the basic techniques for building intelligent computer systems and an understanding of how AI is applied to problems.
You will learn about the history of AI, intelligent agents, state-space problem representations, uninformed and heuristic search, game playing, logical agents, and constraint satisfaction problems.
Hands on experience will be gained by building a basic search agent. Adversarial search will be explored through the creation of a game and an introduction to machine learning includes work on linear regression.
Want to learn how your radio works? Wondering how to implement filters using resistors, inductors, and capacitors? Wondering what are some other applications of RLC and CMOS circuits? This free circuit course, taught by edX CEO and MIT Professor Anant Agarwal and MIT colleagues, is for you.
The third and final online Circuits and Electronics courses is taken by all MITElectrical Engineering and Computer Science (EECS) majors.
Topics covered include: dynamics of capacitor, inductor and resistor networks; design in the time and frequency domains; op-amps, and analog and digital circuits and applications. Design and lab exercises are also significant components of the course.
Weekly coursework includes interactive video sequences, readings from the textbook, homework, online laboratories, and optional tutorials. The course will also have a final exam.
This is a self-paced course, so there are no weekly deadlines. However, all assignments are due by June 15, 2019, when the course will close.
“Brilliant course! It's definitely the best introduction to electronics in Universe! Interesting material, clean explanations, well prepared quizzes, challenging homeworks and fun labs.” - Ilya.
“6.002x will be a classic in the field of online learning. It combines Prof. Agarwal's enthusiasm for electronics and education. The online circuit design program works very well. The material is difficult. I took the knowledge from the class and built an electronic cat feeder.” - Stan
Today, computer graphics is a central part of our lives, in movies, games, computer-aided design, virtual reality, virtual simulators, visualization and even imaging products and cameras. This course, part of the Virtual Reality (VR) Professional Certificate program, teaches the basics of computer graphics that apply to all of these domains.
Students will learn to create computer-generated images of 3D scenes, including flybys of objects, make a real-time scene viewer, and create very realistic images with raytracing. We will start with a simple example of viewing a teapot from anywhere in space, understanding the basic mathematics of virtual camera placement. Next, you will learn how to use real-time graphics programming languages like OpenGL and GLSL to create your own scene viewer, enabling you to fly around and manipulate 3D scenes. Finally, we will teach you to create highly realistic images with reflections and shadows using raytracing.
This course runs for 6 weeks and consists of four segments. Each segment includes an individual programming assignment:
- Overview and Basic Math (Homework 0: 10% of grade)
- Transformations (Homework 1: 20% of grade)
- OpenGL and Lighting (Homework 2: 35% of grade)
- Raytracing (Homework 3: 35% of grade)
This term, students who earn a total score of 50% or greater will have passed the course and may obtain a certificate from UC San DiegoX.
Information Technology (IT) is everywhere. Every aspect of human activity depends on it. All IT processes, whether they drive mobile phones, the Internet, transportation systems, enterprise systems, publishing, social networks or any other application, rely on software.
In this new and improved version of the course, you will learn to write software with a progressive hint system for first time programmers. The core skill is programming; not just the ability to piece together a few “lines of code,” but writing quality programs, which will do their job right, and meet the evolving needs of their users. Anyone can write a program; this course teaches you to write good programs.
The course starts from the basics of computing and takes you through a tour of modern object-oriented programming, including classes, objects, control structures, inheritance, polymorphism, and genericity.
Throughout the course, you will have the opportunity to learn the principles of programming as well as the techniques for designing correct and reliable programs by using the Eiffel programming language and notation. You will be trying out example problems to provide your solution, and see it immediately compiled and tested from within your browser. To this end, we are using the Codeboard;web-based IDE, developed at the Chair of Software Engineering (ETH Zurich).
Beyond programming, you will also get a glimpse at theoretical computer science, the set of mathematical techniques that underlie computation and makes today’s IT-based world possible.
In this third edition of the course we specifically focus on helping students with little or no programming experience. To this end, we have improved the introductory material about the Eiffel language, and we have implemented a progressive hint system students can use to get guidance on how to solve the programming exercises.
"Really good course. Followed it with a couple of experienced colleagues all of them having a computer science background. They really liked the concepts and programming in Eiffel a lot. Many thanks to the team making this course available! Can not wait to start with the advanced course!" --Previous CAMSx Participant
Previous edition course evaluation:
Overall course rating (1: worst grade, 6: best grade):
Grade Resp. %Resp
1 1 2%
2 0 2%
3 3 6%
4 9 18%
5 20 40%
6 17 34%
Total respondents: 50
Looking to get started with computer science while learning to program in Python?
This computer science course provides an introduction to computer science that’s both challenging and fun. It takes a broad look at the field of computer science through a variety of demonstrations and projects. We’ll cover both low- and high-level concepts, from how the circuits inside a computer represent data to how to design algorithms, as well as how all of this information affects the technology we use today. Additionally, we’ll teach the basics of Python programming, giving us a a way to put our new CS knowledge into practice.
No need to know any programming before starting the course; we’ll teach everything you need to know along the way. All you need to start is a good grasp of algebra, and you can fall in love with both the concepts and the practice of computer science.
Data structures play a central role in computer science and are the cornerstones of efficient algorithms. Knowledge in this area has been at the kernel of related curriculums. This course aims at exploring the principles and methods in the design and implementation of various data structures and providing students with main tools and skills for algorithm design and performance analysis. Topics covered by this course range from fundamental data structures to recent research results.
This course is presented in Mandarin.
In what language will this course be offered?
Will the text of the lectures be available?
Yes. All of our lectures will have transcripts synced to the videos.
Do I need to watch the lectures live?
No. You can watch the lectures at your leisure.
Will certificates be awarded?
Yes. Online learners who achieve a passing grade in a course can earn a certificate of mastery. These certificates will indicate you have successfully completed the course, but will not include a specific grade. Certificates will be issued by edX under the name of DelftX, designating the institution from which the course originated.
Can I contact the Instructor or Teaching Assistants?
Yes, but not directly. The discussion forums are the appropriate venue for questions about the course. The instructors will monitor the discussion forums and try to respond to the most important questions; in many cases response from other students and peers will be adequate and faster.
Is this course related to a campus course at Tsinghua?
Yes. This course corresponds to the campus courses 00240074 (elective for undergraduates of all majors) and 30240184 (required for CS undergraduates), both named Data Structures.
What is the textbook of the course?
Junhui DENG, Data Structures in C++, Sep. 2013, 3rd edn., Tsinghua University Press, ISBN: 7-302-33064-6. (in Chinese)
What is the grading breakdown?
60% - 12 problem sets
40% - 4 programming assignments
6.00.2x will teach you how to use computation to accomplish a variety of goals and provides you with a brief introduction to a variety of topics in computational problem solving . This course is aimed at students with some prior programming experience in Python and a rudimentary knowledge of computational complexity. You will spend a considerable amount of time writing programs to implement the concepts covered in the course. For example, you will write a program that will simulate a robot vacuum cleaning a room or will model the population dynamics of viruses replicating and drug treatments in a patient's body.
Topics covered include:
- Advanced programming in Python 3
- Knapsack problem, Graphs and graph optimization
- Dynamic programming
- Plotting with the pylab package
- Random walks
- Probability, Distributions
- Monte Carlo simulations
- Curve fitting
- Statistical fallacies
How do you design a mobile app that truly changes people's lives? How can you understand how a new service is being used, both quantitatively and qualitatively? How can you use all of the rich sensing and I/O capabilities of mobile devices to create experiences that go far beyond what's possible on a traditional computer?
Mobile devices are changing the ways that we interact with each other and information in the world. This course will take you from a domain of interest, through generative research, design, usability, implementation and field evaluation of a novel mobile experience. You'll finish the course with a working, field-tested application suitable for release in the app store as well as a deep understanding of human interaction with mobile devices and services.
Based on a popular MIT class that has been taught since 2006 by Frank Bentley of Yahoo Labs and Ed Barrett, a Senior Lecturer at MIT, this course will explore what makes mobile devices unique. A primary focus will be on studying existing behavior and using key findings for design. While writing the code for an app is a part of the class, the majority of the topics will cover designing and evaluating a unique mobile experience. Along the way, you will have opportunities to share your work with other students from around the world! Java experience (or Objective C for iOS users) and a smartphone are required.
All required readings are available within the courseware, courtesy of The MIT Press. A print version of the course textbook, Building Mobile Experiences, is also available for purchase. The MIT Press is offering enrolled students a special 30% discount on books ordered directly through the publisher’s website. To take advantage of this offer, please use promotion code BME30 at The MIT Press site.
Week 1: A first simple neuron model
Week 2: Hodgkin-Huxley models and biophysical modeling
Week 3: Two-dimensional models and phase plane analysis
Week 4: Two-dimensional models (cont.)/ Dendrites
Week 5: Variability of spike trains and the neural code
Week 6: Noise models, noisy neurons and coding
Week 7: Estimating neuron models for coding and decoding
Before your course starts, try the new edX Demo where you can explore the fun, interactive learning environment and virtual labs. Learn more.
Go beyond the basics of programming to understand object-oriented methodology, the approach to modular and reusable software systems.
- Introduction to Object Oriented Programming
- Classes and Methods
- Standard Library of C++
This course is part of the Fundamentals of Computer Science XSeries Program:
Basic concepts of computer programming are introduced, starting with the notion of an algorithm. Emphasis is on developing the ability to write programs to solve practical computational problems.
- Elements of C/C++ programming languages
- Basic data types
- Sequential and conditional execution
- Iterative solutions
- Arrays, matrices and their applications
- Sorting and searching
- Elements of string processing
- Introduction to pointers
- Basics of Software Engineering
- File Processing
Learners will read and understand many sample programs, and will have to write several on their own. This course deals with basic programming, and sets the foundation for solid programming practices for beginners.
This course is part of the Fundamentals of Computer Science XSeries Program: