Courses tagged with "Computer Science" (79)
HTML5 is the standard language of the Web, developed by W3C. For application developers and industry, HTML5 represents a set of features that people will be able to rely on for years to come. HTML5 is supported on a wide variety of devices, lowering the cost of creating rich applications to reach users everywhere.
Whatever mobile phones, connected objects, game consoles, automobile dashboards, and devices that haven’t even been considered yet, HTML5 helps write once and deploy anywhere!
In this course, you will learn all the new HTML5 features to help create great Web sites and applications in a simplified but powerful way. HTML5 provides native support for video and audio without plug-ins, provides support for offline applications, for games with smooth interactive animations, and much more.
This course was developed in partnership between W3C and Intel®.
Learn the basics of Web design and style to give your Web sites a professional look and feel. The Intel® XDK team and experts from the World Wide Web Consortium (W3C) will guide you step-by-step in how to use the latest Web standards to create a site to be proud of.
During the course, you will learn the basic building blocks of Web design and style – HTML5 and CSS – to give your site a professional look and feel.
By the end of the course, you should understand all the fundamental elements – from headers and links to images and sidebars – and leave having built a basic framework for your own Web site.
This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not "computation appreciation" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
Have you just begun your journey into Web development? This course will introduce you to the basics of Web design and teach you how to style your Web site for a professional look and feel.
The Microsoft team and experts from the World Wide Web Consortium (W3C) will guide you step-by-step in using the latest Web standards to structure your content and presentation like a professional. In this course, you will explore numerous CSS features to help you control the look and feel of your site such as colors, fonts and layout. By the end of the course, you should understand all the fundamental elements of CSS and how to use them effectively.
It is recommended that you are at least a little familiar with HTML before taking this course, but we will be providing you with the HTML code when necessary.
- It allows you to add interactivity to your Web sites;
- Include reusable widgets and learn how to use third party libraries;
- It is powerful, easy to learn, and quick to write;
- It has great tools (editors, runtimes, lint tools, browsers) as well as great online support through plenty of active open source communities.
The world of software engineering requires high flexibility, an influx of new ideas, and the courage to challenge traditional approaches. As a software engineer, you need to know the methods, workflows and tools to handle continuously growing complexity and shortened development cycles. You must be able to work in teams to build high-quality software.
In this course, we will introduce the basic concepts of object-oriented software engineering. You will learn and apply UML modeling, patterns and project management techniques that are used when developing complex software systems.
This course is interactive. You will watch videos in which we explain critical theory. You will participate in online exercises to practice your knowledge including quizzes, UML modeling with peer reviews, and programming exercises with immediate feedback
Would you like to build the skillset necessary to power the next generation of Windows Server optimized networks, applications, and web services? Then you’re in the right place!
This self-paced course will help you understand and implement an IP addressing scheme, and set up a Dynamic Host Configuration Protocol (DHCP) network infrastructure. You will also implement a Domain Name Services (DNS) infrastructure, including resource records, zones, and security.
Through videos, discussions, hands-on labs, and assessments you will put in place the appropriate networking strategy for your Windows Server environment.
Part of the Microsoft Windows Server 2016 Fundamentals XSeries, this course will improve your skills in configuring and managing networks and help you decide.
Organizations are increasingly moving their critical information and assets to the cloud. Understand the technology, best practices, and economics of cloud computing, and the rewards and risks of this rush to the cloud.
In this course, part of the Cloud Computing MicroMasters program, you will learn the essentials of cloud computing, including Infrastructure As A Service (IaaS), Platform As A Service (PaaS), Software As A Service (SaaS), and other "X as a service" platforms.
You will explore how the cloud can support businesses by increasing productivity and effectiveness.
Gene sequences and the rest of the genome play an important role in determining how an organism functions normally and reacts when situations change. DNA sequences can also be used to determine relationships between organisms and form the underpinnings of the Tree of Life.
Since DNA sequences play such an important role in any organism it should not be surprising that any changes to a sequence could lead to alterations in behavior or response. For example, a small number of specific changes in DNA sequence have been shown to lead to tumor development in mammals or the production of enzymes with altered properties.
One of the jobs of a bioinformatician is to help determine where these changes are in a DNA sequence and sort out in that context what effects may result, which is usually done by aligning the sequences in question.
In this course, part of the Bioinformatics MicroMasters program, you will learn about the theory and algorithms behind DNA alignments, practice doing alignments manually, and then perform more complicated alignments using web and software based approaches.
Want to gain software testing skills to start a career or are you a software developer looking to improve your unit testing skills? This course, part of the Software Testing and Verification MicroMasters program, will provide the essential skills you need for success.
Software needs to be tested for bugs and to insure the product meets the requirements and produces the desired results. Software testing is essential to providing a quality product.
Learn the techniques Software Testers and Quality Assurance Engineers use every day, which can be applied to any programming language and testing software.
No previous programming knowledge needed. This course will use Java and JUnit, however, for examples and assignments.
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.
This course is the second course in a series of two. Both courses provide a solid foundation in the area of reliable distributed computing, including the main concepts, results, models and algorithms in the field.
In order to ensure that IT infrastructures - a key engine of operations for any organization - operate at full capacity and efficiency, it is vital to understand its core: distributed algorithms. To achieve this, the infrastructure itself must be reliable and resilient. This course continues on the foundations of distributed algorithms, introduced in ID2203.1x, and builds on these concepts at a higher level of complexity to develop the skills needed to build and maintain reliable and efficient distributed systems.
ID2203.2x covers specific advanced abstractions and algorithms including sequence consensus and multi-Paxos; atomic broadcast and replicated state machines. It also covers dynamic reconfiguration of services; the use of physical clocks in distributed systems; the CAP theorem, and weaker consistency models, including eventual consistency and conflict-free replicated data-types.
Students will experiment and develop a variety of distributed algorithms in an interactive, engaging programming environment using the Scala programming language. They will be guided throughout the programming assignments and provided with intuitive examples to help them get started.
To complete the course with a full grade (100%) students are required to answer the graded quizzes provided every week, as well as the programming assignments.
In the information age, data is all around us. Within this data are answers to compelling questions across many societal domains (politics, business, science, etc.). But if you had access to a large dataset, would you be able to find the answers you seek?
This course, part of the Data Science MicroMasters program, will introduce you to a collection of powerful, open-source, tools needed to analyze data and to conduct data science. Specifically, you’ll learn how to use:
- jupyter notebooks
- And many other tools
You will learn these tools all within the context of solving compelling data science problems.
After completing this course, you’ll be able to find answers within large datasets by using python tools to import data, explore it, analyze it, learn from it, visualize it, and ultimately generate easily sharable reports.
By learning these skills, you’ll also become a member of a world-wide community which seeks to build data science tools, explore public datasets, and discuss evidence-based findings. Last but not least, this course will provide you with the foundation you need to succeed in later courses in the Data Science MicroMasters program.
Welcome to The Quantum World!
This course is an introduction to quantum chemistry: the application of quantum theory to atoms, molecules, and materials. You’ll learn about wavefunctions, probability, special notations, and approximations that make quantum mechanics easier to apply. You’ll also learn how to use Python to program quantum-mechanical models of atoms and molecules.
HarvardX has partnered with DataCamp to create assignments in Python that allow students to program directly in a browser-based interface. You will not need to download any special software, but an up-to-date browser is recommended.
This course has serious prerequisites. You will need to be comfortable with college-level chemistry and calculus. Some prior programming experience is also encouraged.
The Quantum World is ideal for:
- Chemistry majors who want extra material alongside an on-campus course
- Chemistry majors at an institution that does not offer quantum chemistry
- Physics or CompSci majors who want to branch out to chemistry
- Graduate students refreshing on quantum mechanics before their qualifying exams
- Professional chemists who want to brush up on their skills
This course will cover all you need to know to get up and running and start building functional websites using TypeScript 2.3
Knowing TypeScript is becoming more and more a must have skill for web development since many of the web development libraries now are using TypeScript. For example, TypeScript is a must when it comes to using Angular 2 in a web application. TypeScript also can be used in server-side applications. Knowing TypeScript is your way to become a full stack developer. Therefore, if you are considering a career in web development, TypeScript is an important gear in your tool box or skillset.
Organizations often spend considerable money on collaborative tools – but those tools are of no use unless there’s widespread adoption across teams. How can an organization ensure that the tools in which they’ve invested reach full adoption?
In this course, you will learn methods for engaging users and building internal support for new tools. You’ll learn how to conduct effective training, as well as ways to develop content that will spur adoption. You will learn how to improve productivity and communicate the process for overall collaborative improvement.
Want to learn advanced HTML5 tips and techniques? This is the course for you! Find out more about the powerful Web features that will help you create great content and apps.
This course is a natural follow up of HTML5 Coding Essentials and Good Practices. In this course, we continue the exploration of HTML5-based APIs, but also introduce some advanced features related to HTML5, such as Web components, advanced multimedia, audio for music and games, etc.
Like in the first course, you will learn by doing, study the interactive examples and have fun with proposed development projects. One of them will be to create an HTML5 game, so jump in and learn lots!
Nunca antes el mercado de los videojuegos se ha encontrado en un mejor momento. En la actualidad existen multitud de plataformas disponibles y la irrupción de los dispositivos móviles ha revolucionado el sector.
La existencia de múltiples plataformas implica grandes retos para los desarrolladores en la toma de decisiones, tanto en la elección de las plataformas como en el dimensionamiento de los equipos de trabajo.
Una solución a estos problemas es utilizar un motor de juegos, y sin lugar a dudas el motor más popular y usado del momento es Unity.
Unity es el motor más popular por razones como sus poderosas herramientas, su capacidad de generar juegos en más de 20 plataformas distintas, su excelente curva de aprendizaje y los centenares de complementos disponibles para él desarrollados por terceros.
- Introducción al entorno
- Conceptos básicos de Unity
- Introducción al motor de juegos
- Unity y las diferentes plataformas
- Unity en acción
Everywhere you look today, enterprises are embracing big data-driven customer relationships and building innovative solutions based on insights gained from data. According to IBM, every day we create 2.5 quintillion bytes of data — so much that 90% of the data in the world today has been created in the last two years. This data comes from everywhere: sensors used to gather climate information, posts to social media sites, digital pictures and videos, purchase transaction records, and cell phone GPS signals, just to name a few. This data is big data.
The demand for storing this unprecedented amount of information is enough of a challenge, but when you add the need for analytics, the technology requirements truly start pushing the envelope on state-of-the-art IT infrastructures. Fortunately, the Open Source community has stepped up to this challenge and developed a storage and processing layer called Apache Hadoop. Add the dozens of other projects integrating with Apache Hadoop and you have the whole Hadoop ecosystem.
The Hadoop ecosystem, along with the data management architectures it enables, is growing at an unprecedented rate, with 73% of Hadoop cluster deployments now in production — a number which continues to rise.
The demand for individuals who have experience managing this platform is also accelerating. According to the IT Skills and Certifications Pay Index research from Foote Partners, “the need for big data skills also continues to lead to pay increases — about 8% over the last year.” Now is exactly the right time to build an exciting and rewarding career managing big data with Apache Hadoop.
This introductory course is taught by Hadoop experts from The Linux Foundation’s ODPi collaborative project. As host to some of the world's leading open source projects, The Linux Foundation provides training and networking opportunities to help you advance your career.
This course is perfect for IT professionals seeking a high-level overview of Hadoop, and who want to find out if a Hadoop-driven big data strategy is the right solution to meet their data retention and analytics needs. This course will also help anyone who wants to set up a small-scale Hadoop test environment to gain experience working with this exciting open source technology.
Este curso trata la Teoría de Grafos desde el punto de vista de la modelización, lo que nos permitirá con posterioridad resolver muchos problemas de diversa índole. Presentaremos ejemplos de los distintos problemas en un contexto real, analizaremos la representación de éstos mediante grafos y veremos los algoritmos necesarios para resolverlos.
Resolveremos problemas que aparecen en la logística, la robótica, la genética, la sociología, el diseño de redes y el cálculo de rutas óptimas, mediante el uso de la Teoría de Grafos. Nuestro objetivo será presentar tanto los contenidos de la misma como la modelización de los casos planteados.
En cada tema comenzaremos presentando el problema a resolver. Posteriormente introduciremos la teoría y los algoritmos correspondientes, modelizaremos el problema propuesto y finalmente hallaremos su solución. En general explicaremos en qué consiste y cómo se deduce cada algoritmo, haciendo para ello una traza a modo de ejemplo.