Kyle Harms received his Ph.D. in Computer Science in 2017 at Washington University in St. Louis. Under the supervision of Dr. Caitlin L. Kelleher, he investigated leveraging completion problems to help enable middle school students to learn computer programming independently. He has completed and published research on a variety of topics relating to young learners and learning how to code, both through structured programs and through self-taught methods. His software work is available on the novice programming environment, Looking Glass, and the open source program github.
JavaScript
Programming
Overview and Courses
The basis of web development, both front- and back-end, starts with a good foundation in JavaScript. Gaining experience in this simple programming language will enable you to substantially expand the functionality of your websites.
In this certificate program, you will practice fundamental programming skills and build web interactivity through the use of JavaScript. Beginning with a simplified visual JavaScript library called Blockly, you will start by constructing simple programs to perform simple tasks. As you build your skills through the use of more advanced code structures and techniques, you will write JavaScript to create a variety of interactive web elements, from forms to image galleries. You’ll also have the opportunity to explore how to streamline your implementations and expand the functionality of your programs with libraries and asynchronous programming. In order to take JavaScript beyond the web, you’ll explore progressive web apps and even build a rudimentary app that runs offline. Upon completing the certificate, you will have developed a strong grounding in programming fundamentals and be well positioned to advance your skills in JavaScript as well as any number of programming languages.
You will be most successful in this program if you have some familiarity with HTML and CSS.
The courses in this certificate program are required to be completed in the order that they appear.
In this course, you will plan and create programs that can respond to interaction in differing ways depending on the user input. Through the use of conditional and logical expressions, you will code programs that can perform more complex actions, such as a web form that displays certain information depending on user input. You will also practice tracing and debugging to identify, distinguish, and resolve logical and syntax errors.
Fundamentals of Programming is required to be completed prior to starting this course.
In this course, you will begin by organizing data in the form of indexed and associative arrays. From here, you will begin combining programming constructs in order to perform more complex actions on data through the use of loops and nesting. In order to build more resilient programs, you will practice implementing means of recognizing and recovering from errors in your programs. Finally, you will tie this all together by writing code to create a program based on a specification document that incorporates the constructs and error handling covered throughout the course.
Fundamentals of Programming and Writing Programs That Make Decisions are required to be completed prior to starting this course. on
In this course, you will begin using functions to create cleaner and more efficient code. You will begin using built-in functions as well as writing your own functions to accomplish a specific task. In order to find solutions to more complex problems, you will practice breaking down large programming tasks into smaller, well-defined pieces. At the same time, you will define and execute plans to build those solutions.You will further practice planning, coding, and debugging as a full end-to-end process in order to strengthen your skills as a novice programmer.
Fundamentals of Programming, Writing Programs That Make Decisions, and Coding Multi-Part Problems are required to be completed prior to starting this course.
In this course, you will begin using libraries to expand the functionality of your programs, such as using an API to dynamically generate content. You will use multidimensional data with a library to simplify the implementation of your programs. Through this work, you will also learn how to evaluate whether a new library will provide you the functionality you need for your specific problem or implementation. Finally, you will use various methods of programming to load data asynchronously.
Fundamentals of Programming, Writing Programs That Make Decisions, Coding Multi-Part Problems, and Solving Problems Using Functions are required to be completed prior to starting this course.
In this course, you will differentiate JavaScript in the browser from implementation on the local computer. You will begin writing command-line scripts to automate tasks and overcome development challenges when working locally. You will also explore working with existing codebases as well as the social and ethical considerations of programming. In the project, you will build a simple progressive web app, extending JavaScript beyond the web.
Fundamentals of Programming, Writing Programs That Make Decisions, Coding Multi-Part Problems, Solving Problems Using Functions, and Expanding Functionality With Libraries are required to be completed prior to starting this course.
How It Works
Faculty Author
- Write modular code using functions
- Break a large programming task into small, well-defined pieces
- Use loops and conditional statements together to perform multi-part operations on sets of data
- Analyze function execution to identify the source of errors
- Apply software development best practices to solve problems programmatically
- Expand the functionality of a program through libraries and asynchronous programming
- Streamline the development of JavaScript programs in local command-line environments while developing a simple progressive web application

Download a Brochure
Not ready to enroll but want to learn more? Download the certificate brochure to review program details.
- JavaScript Programming Certificate from Cornell Computing and Information Science
- 84 Professional Development Hours (8.4 CEUs)
Who Should Enroll
- Novice and self-taught programmers
- Web development career starters
- Small business owners managing a website

{Anytime, anywhere.}

JavaScript Programming
Select Payment Method | Cost |
---|---|
$3,600 | |