Careers360 Logo
Interested in this College?
Get updates on Eligibility, Admission, Placements Fees Structure
Compare

Quick Facts

Medium Of InstructionsMode Of LearningMode Of Delivery
EnglishSelf StudyVideo and Text Based

Course Overview

This course is offered by the University of Washington which is one of the oldest state-supported universities for higher education and one of the best research universities in the world. This course will help you know your strength, apply your analytical skills, and provide you with the confidence to perform efficiently at your workplace or start your own business. 

Students are introduced to the basics of programming languages and with additional focus on functional programming, using languages like ML, racket, and Ruby to teach the ideas to the student community, but the course aims to make students learn about how they can fit together any language to make an effective program in any language and learn new ones.

This course combines programming specifics and theoretical knowledge about the programming languages, providing a framework for understanding how a language can be used to create programs in an effective manner. This will demand you to put your analytical thinking to use, more, by selecting different languages as compared to in terms of the particular syntax of one language.  For learning how to write a robust, reusable, composable, and elegant program, it is very essential to learn about functional programming which offers the most important ideas in the latest languages. 

The Highlights

  • Free of cost of the course
  • Shareable certificate 
  • Online recorded classes
  • Flexible schedule
  • Intermediate level course 
  • Approximate 29 hours to complete

Programme Offerings

  • Real World assessment
  • Case Studies
  • 24 hour technical Grievance Redressal
  • downloadable certificate
  • video lectures
  • Flexible learning.

Courses and Certificate Fees

Fees InformationsCertificate AvailabilityCertificate Providing Authority
INR 3275yesCoursera

Coursera offers this programming language part A course for free of cost. Other than that, you can purchase the course to earn a certificate as well. To simplify it further, here we have broken down the fee structure for the course below - 

Programming Languages Part A Fee Details:

Type of Programme

Amount

Full Course, No Certificate

Free

Purchase Course

Rs. 3,275


Eligibility Criteria

Eligibility Criteria

No prerequisites are necessary to opt for the course. However, an understanding of programming languages such as C, C++, and Java will prove to be beneficial for you.

Certificate Qualifying Details

Students can purchase the shareable certificate. After completing the course, the certificate will be uploaded on the accomplishment page. Students can share the certificate from the accomplishments page to their LinkedIn profile or attach the same to their CVs.

What you will learn

Programming skillsMachine learning

After completing the Programming language Part-A course, you will master the following skills:

  • Understand the concepts of recursion
  • Learn the basic concepts of programming languages
  • Get in-depth knowledge about high order function
  • Get an understanding of the concepts and framework of pattern matching
  • Understand the core concepts of functional programming
  • Learn basic programming languages such as ML, Racket, and Ruby 

Who it is for

The training is ideal for Developers, IT managers, HR managers, and Graduates who want to surge ahead in their careers by getting better opportunities or get a well-paid job. 


Admission Details

Gaining admission is quite seamless and easy when it comes to enrolling yourself in the courses at Coursera. The certificate will be made available if you pay a certain amount or you can even pursue the course for free.

Application Details

You can enrol in the course by providing your email ID, password, and full name or use your Facebook, Google, and Apple IDs for the purpose of enrolling in the courses. 

Step 1: Visit the Coursera URL

Step 2: Click on the ‘Sign Up’ option 

Step 3:  Enter your name, ID, and password

Step 4: Use Facebook or Gmail to create an account 

Step 5: Click ‘Join’ 

Step 6: Click ‘Enrol’ on the Course page which you want to study 

Step 7: Make the payment as per your convenience (either a one-time or recurring payment) 

Step 8: Read the course material and access videos

The Syllabus

Videos
  • Welcome! (And Some Course Mechanics)
  • Optional: Who I Am / Acknowledgments
  • What the Course is About / Initial Motivation
  • Recommended Background
  • Why Part A, Part B, Part C
  • Grading Policy
  • Optional: Very High-Level Outline
Readings
  • Start here!
  • About the Course
  • Some More Perspective on Recommended Background
  • Why are there 3 courses (Part A, Part B, Part C)?
  • Grading Policy Details
Discussion Prompt
  • Discussion Forums: Why Are You Participating?

Videos
  • Software Installation Introduction
  • Emacs installation
  • SML installation
  • SML Mode installation
Readings
  • Part A Software Installation and Use: SML and Emacs
  • Why Emacs? (Optional)
  • Homework 0 Detailed Peer-Assessment Instructions
Programming Assignment
  • Homework 0 (Auto-Grader)
Peer Review
  • Homework 0 (Peer Assessment)

Videos
  • ML Variables Bindings and Expressions
  • Rules for Expressions
  • The REPL and Errors
  • Shadowing
  • Functions Informally
  • Functions Formally
  • Pairs and Other Tuples
  • Introducing Lists
  • List Function
  • Let Expressions
  • Nested Functions
  • Let and Efficiency1
  • Options
  • Booleans and Comparison Operations
  • Benefits of No Mutation
  • Optional: Java Mutation
  • Pieces of a Language
Readings
  • Section 1 Welcome Message
  • Section 1 Reading Notes
  • Code Files for All Section 1 Videos
  • Homework 1 Detailed Guidelines for Peer Assessment
  • Hints and Gotchas for Homework 
  • Extra Practice Problems
Programming Assignment
  • Homework 1 (Auto-Grader)
Peer Review
  • Homework 1

Videos
  • Building Compound Types
  • Records
  • Tuples as Syntactic Sugar
  • Datatype Bindings
  • Case Expressions
  • Useful Datatypes
  • Pattern Matching So Far
  • Another Expression Example
  • Type Synonyms
  • Lists and Options are Datatypes
  • Polymorphic Datatypes
  • Each Pattern Matching / Truth About Functions
  • A Little Type Inference
  • Polymorphic and Equality Types
  • Nested Patterns
  • More Nested Patterns
  • Nested Patterns Precisely
  • Optional: Function Patterns
  • Exceptions
  • Tail Recursion
  • Accumulators for Tail Recursion
  • Perspective on Tail Recursion
Readings
  • Section 2 Welcome Message
  • Section 2 Reading Notes
  • Code Files for All Section 2 Videos
  • Homework 2 Detailed Guidelines for Peer Assessment
  • Hints and Gotchas for Homework 
  • Extra Practice Problems
Programming Assignment
  • Homework 2
Peer Review
  • Homework 2

Videos
  • Introduction to First Class Functions
  • Functions as Arguments
  • Polymorphic Types and Functions as Arguments
  • Anonymous Functions
  • Unnecessary Function Wrapping
  • Map and Filter
  • Generalizing Prior Topics
  • Lexical Scope
  • Lexical Scope and Higher-Order Functions
  • Why Lexical Scope
  • Closures and Recomputation
  • Fold and More Closures
  • Closure Idiom: Combining Functions
  • Closure Idiom: Currying
  • Partial Application
  • Currying Wrapup
  • Mutable References
  • Closure Idiom: Callbacks
  • Standard-Library Documentation
  • Optional: Abstract Data Types With Closures
  • Optional: Closure Idioms Without Closures
  • Optional: Java Without Closures
  • Optional: C Without Closures
  • Course-Motivation Introduction
  • Why Study General PL Concepts?
  • Are All PLs the Same?
  • Why Functional Languages?
  • Why ML, Racket, and Ruby?
Readings
  • Section 3 Welcome Message
  • Section 3 Reading Notes
  • Code Files for All Section 3 Videos
  • Homework 3 Detailed Guidelines for Peer Assessment
  • Hints and Gotchas for Section 3
  • Extra Practice Problems
Programming Assignment
  • Homework 3
Peer Review
  • Homework 3

Videos
  • Section Introduction
  • What is Type Inference
  • ML Type Inference
  • Type Inference Examples
  • Polymorphic Examples
  • Optional: The Value Restriction and Other Type-Inference Challenges
  • Mutual Recursion
  • Modules for Namespace Management
  • Signatures and Hiding Things
  • A Module Example
  • Signatures for Our Example
  • Signature Matching
  • An Equivalent Structure
  • Another Equivalent Structure
  • Different Modules Define Different Types
  • Equivalent Functions
  • Standard Equivalences
  • Equivalence Versus Performance
  • Part A Wrap-Up & Parts B&C Preview
Readings
  • Section 4 Welcome Message
  • Section 4 Reading Notes
  • Code Files for All Section 4 Videos
  • Nothing (yet) (explanation)
  • Information About the Exam (Required Reading)
Assignments
  • Practice Exam for Part A
  • Exam for Part A

Evaluation process

On the successful completion of the course which includes classroom videos as well as homework, an exam will be held. You will be awarded a certificate after you qualify for the exam.

Instructors

UW Washington Frequently Asked Questions (FAQ's)

1: What is a programming language?

A programming language is a set of codes that are easily understood by our computers. It can be defined as a set of instructions that we give to the computers to produce various kinds of results as per our requirements. 

2: How many programming languages are there?

There are approx. 700 programming languages, including esoteric coding languages.

3: Which are the best 3 programming languages to learn?

All the programming languages have their own benefits but to mention the best ones, you can go for learning Java, Python and JavaScript.

4: What languages are taught in this course?

Languages like ML, Racket and Ruby are taught in the Programming Language - Part A specialization course on Coursera

5: What is the major difference between various programming languages?

All programming languages are used for the same purpose. They only differ in their syntax, declaring variables, importing files, the code length, compiling the code and running the code.

6: Which university is offering this course on Coursera?

The University of Washington is offering this course on Coursera.

7: Is one programming language alone enough to get a job?

Knowing just one language can help you with any sort of job but will not get your job alone. You will not get paid to know just a single language. It is always advised to learn the basic concepts of various languages along with mastering one language.

8: Can self-taught programmers get a job?

Yes, as long as you can demonstrate your programming skills during the recruitment process, you will be able to get a job. You can take up some free programming language courses on Coursera to make your resume look appealing and gain some additional knowledge as well.

9: Do companies like Google hire self-taught programmers?

Yes, not only Google but companies like Facebook as well as other successful companies do hire self-taught people with no degree. You must be able to explain your programming skills during the interview and it can get you a high paying job at any company.

10: Can I access the course for free?

Yes, the course is available under the ‘Full Course, No Certificate’ mode. Here you will be able to access all the course material, submit the assignments and get graded although you won’t be able to get access to a certificate. 

Articles

Back to top