Programming Languages

Provided by:
8/10 stars
based on  6 reviews
Provided by:
Cost FREE
Start Date On demand

Course Details

Cost

FREE

Upcoming Schedule

  • On demand

Course Provider

Udacity online courses
Udacity gives students the opportunity to create hands-on projects that can be put into their portfolios and used to demonstrate their skills to future employers. You'll have a personal coach who helps provide feedback on your assignments and projects to assist you in reaching your goals and staying on track in your online classes. Throughout your education experience, you'll be able to track your development, complete in-class projects, have access to interactive exercises and videos and ...
Udacity gives students the opportunity to create hands-on projects that can be put into their portfolios and used to demonstrate their skills to future employers. You'll have a personal coach who helps provide feedback on your assignments and projects to assist you in reaching your goals and staying on track in your online classes. Throughout your education experience, you'll be able to track your development, complete in-class projects, have access to interactive exercises and videos and earn a verified certificate at the end of the course as proof of all that you've learned. You'll be learning from knowledgeable professors across various schools and parts of the globe. Learn about computer science from Dave Evans, an instructor at the University of Virginia, or delve into app development with Samantha Ready, a Developer Evangelist at Salesforce.com.

Provider Subject Specialization
Sciences & Technology
102 reviews

Course Description

This class will give you an introduction to the fundamentals of programming languages. Key concepts include how to specify and process valid strings, sentences and program structures.
Reviews 8/10 stars
6 Reviews for Programming Languages

Ratings details

  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.

Sort By
Greg Hamel profile image
Greg Hamel profile image
8/10 starsCompleted
  • 116 reviews
  • 107 completed
5 years, 9 months ago
Programming languages uses the goal of writing web browser as a platform to teach topics related to writing programming languages. The class covers the process of lexxing strings of HTML to transform it into sequences of tokens and then parsing those tokens into syntax trees that can be passed to an interpreter to display the web page represented by the HTML. Wes Weimer is a good teacher and brings a fun attitude and some cringe-worthy jokes and drawings to the table. He has a habit of throwing in random historical and other educational tidbits to lectures, which can be good or bad depending on your mood. His wit helps to mask the dryness of the material and the fact that it may not be especially useful to you unless you plan to build a language, a browser, a parser, etc. yourself. It is good, however, to have a basic understanding of how computers process language and certain topics like regular expressions and list comprehensions a... Programming languages uses the goal of writing web browser as a platform to teach topics related to writing programming languages. The class covers the process of lexxing strings of HTML to transform it into sequences of tokens and then parsing those tokens into syntax trees that can be passed to an interpreter to display the web page represented by the HTML. Wes Weimer is a good teacher and brings a fun attitude and some cringe-worthy jokes and drawings to the table. He has a habit of throwing in random historical and other educational tidbits to lectures, which can be good or bad depending on your mood. His wit helps to mask the dryness of the material and the fact that it may not be especially useful to you unless you plan to build a language, a browser, a parser, etc. yourself. It is good, however, to have a basic understanding of how computers process language and certain topics like regular expressions and list comprehensions are very useful outside of the context of this course.
Was this review helpful? Yes1
 Flag
brian c profile image
brian c profile image
6/10 starsCompleted
  • 3 reviews
  • 3 completed
4 years, 11 months ago
I have a tough time rating this course--I'm sure it's really great if you want to learn about creating and parsing a language. Although you do learn import concepts like regular expressions, there are far more effective ways to learn the basics in language parsing. This course goes in depth into esoteric concepts that the average programmer would never use. If you're looking to develop your own language or write a program that does a crazy amount of parsing, this is the class for you. Otherwise, you can find something better!
Was this review helpful? Yes0
 Flag
alinsoar profile image
alinsoar profile image
9/10 starsCompleted
  • 3 reviews
  • 3 completed
5 years, 3 months ago
Finished the full course in 5 days (without final exam, that does not interest me). For somebody who already knows the subject, the course is easy, and the single effort is just to write some recursive functions for some of the quizzes. This is another child course born by simplifying SICP. The particular experience of the professor Wes shared in his videos makes the course interesting to follow. He inserted too many jokes in the lectures, which can be tiring for some persons in some mood. Definitively, it is not the best course to follow as an introduction to the subject, if you do not already know the subject. The course teaches the basic ideas about lexers, parsers, and implements a sublanguage of html + js using ply. To represent graphically the output, the professor extracted a file named graphics.py from a latex compiler implemented in python, and uses that library that already renders tokens identical to html/ For example, ope... Finished the full course in 5 days (without final exam, that does not interest me). For somebody who already knows the subject, the course is easy, and the single effort is just to write some recursive functions for some of the quizzes. This is another child course born by simplifying SICP. The particular experience of the professor Wes shared in his videos makes the course interesting to follow. He inserted too many jokes in the lectures, which can be tiring for some persons in some mood. Definitively, it is not the best course to follow as an introduction to the subject, if you do not already know the subject. The course teaches the basic ideas about lexers, parsers, and implements a sublanguage of html + js using ply. To represent graphically the output, the professor extracted a file named graphics.py from a latex compiler implemented in python, and uses that library that already renders tokens identical to html/ For example, opentag(tag), closetag() from html are present in this latex library, hence the output of the final html/js evaluator will be generated as a pdf. Definitively, it is worth taking this course, but does not allocate so high priority comparing to other courses.
Was this review helpful? Yes0
 Flag
No one of consequence profile image
No one of consequence profile image
9/10 starsCompleted
  • 30 reviews
  • 18 completed
6 years, 3 months ago
One of my favorite online classes. I had taken a class on compilers and programming languages with Alex Aiken many years ago, but I needed a refresher. My previous course was more intensive, but for my needs, I preferred this course. The instructor, Wes Weimer, was extremely knowledgeable and fun, and the quizzes and exercises kept me on top of things. The class was well thought out and had a number of satisfying problems to solve. The last final exam question in particular beautifully summarized the lessons of the course. The biggest downside of the class is that there's not enough of it. Although it's advertised as "Building a Web Browser", it's really more about writing a lexer, parser, and interpreter. Those are key to the process, to be sure, but I was hoping to have my own browser at the end, and missed a bit of the big-picture motivation for all the regular expressions, finite state machines, et al. that we covered. I would al... One of my favorite online classes. I had taken a class on compilers and programming languages with Alex Aiken many years ago, but I needed a refresher. My previous course was more intensive, but for my needs, I preferred this course. The instructor, Wes Weimer, was extremely knowledgeable and fun, and the quizzes and exercises kept me on top of things. The class was well thought out and had a number of satisfying problems to solve. The last final exam question in particular beautifully summarized the lessons of the course. The biggest downside of the class is that there's not enough of it. Although it's advertised as "Building a Web Browser", it's really more about writing a lexer, parser, and interpreter. Those are key to the process, to be sure, but I was hoping to have my own browser at the end, and missed a bit of the big-picture motivation for all the regular expressions, finite state machines, et al. that we covered. I would also have liked more material about the design of programming languages themselves, even if it meant losing some detail on things like generating the chart of parser states. I hope they will consider a follow-up class that covers these subjects in more detail. If you're thinking about taking the class, you may want to consider whether this class is important to the work you hope or plan to do. I've rated the class based on the quality of the instruction, which was very high, but in my experience, this material has not been as directly applicable to my work as, say, Udacity's Web Development course. You may also want to consider whether you're prepared for it. The only listed prerequisite is CS101, but I think you would find it easier going if you already had experience writing programs with trees or other large data structures. That said, the course was entirely self- contained and everything you needed was explained. Here's hoping Professor Weimer decides to teach some more online classes!
Was this review helpful? Yes1
 Flag
Afref Fetter profile image
Afref Fetter profile image
9/10 starsCompleted
  • 12 reviews
  • 12 completed
6 years, 11 months ago
Prior experience in the field: None. Like: Wes Weimer integrated pop-culture references really well with his lectures, making them very informative on non- technological issues as well. The lecturer's enthusiasm can fill a helium balloon and carry it to space. Loved it! The class was very engaging and had you hooked till the end. The assignments required you to put your thinking caps on, and not your "reading" caps like some other courses. Dislike: I feel I was unable to obtain a "complete picture" [a parser, lexer, etc. put together], but maybe that's just me. We didn't really make a web browser, only a superficial one. This was acknowledged by the lecturer. The code we wrote seemed too constrained by the particular language and library we were using (Python, etc.). The "general" idea [how to implement it] was lost. Overall: What is lacking in course content, Westley Weimer makes up for with his excellent teaching abilities. Don't e... Prior experience in the field: None. Like: Wes Weimer integrated pop-culture references really well with his lectures, making them very informative on non- technological issues as well. The lecturer's enthusiasm can fill a helium balloon and carry it to space. Loved it! The class was very engaging and had you hooked till the end. The assignments required you to put your thinking caps on, and not your "reading" caps like some other courses. Dislike: I feel I was unable to obtain a "complete picture" [a parser, lexer, etc. put together], but maybe that's just me. We didn't really make a web browser, only a superficial one. This was acknowledged by the lecturer. The code we wrote seemed too constrained by the particular language and library we were using (Python, etc.). The "general" idea [how to implement it] was lost. Overall: What is lacking in course content, Westley Weimer makes up for with his excellent teaching abilities. Don't expect to become too proficient at the subject, but definitely worth a try.
Was this review helpful? Yes1
 Flag
Gerard O'Neill profile image
Gerard O'Neill profile image
8/10 starsCompleted
  • 3 reviews
  • 3 completed
7 years, 2 months ago
I took CS262 Programming Languages back in April/May alongside CS212 and CS253. The whole idea behind the course was to gain an understanding of how programming languages are designed, both in theory and practice, by writing components of HTML and JavaScript parsers. I didn’t really struggle in this class, since it started pretty well into the compilers course that I was taking at Rutgers. Because of that, I had a pretty good understanding of most things that were taught. That’s not to mention the fact that I am fluent in HTML and JavaScript as well. Still, there was some stuff to be learned in this course! CS262 had a very healthy mix of theory and practice. In my compilers course, most of the class was theory, and then we had three major programming assignments. In CS262, you get to apply pretty much everything you learn right away. I thought this was awesome, especially because I got to apply some things from my compilers course t... I took CS262 Programming Languages back in April/May alongside CS212 and CS253. The whole idea behind the course was to gain an understanding of how programming languages are designed, both in theory and practice, by writing components of HTML and JavaScript parsers. I didn’t really struggle in this class, since it started pretty well into the compilers course that I was taking at Rutgers. Because of that, I had a pretty good understanding of most things that were taught. That’s not to mention the fact that I am fluent in HTML and JavaScript as well. Still, there was some stuff to be learned in this course! CS262 had a very healthy mix of theory and practice. In my compilers course, most of the class was theory, and then we had three major programming assignments. In CS262, you get to apply pretty much everything you learn right away. I thought this was awesome, especially because I got to apply some things from my compilers course that wasn’t tested in class (e.g. FSM minimization). The course was also taught using PLY (Python Lex-Yacc), which is a Python implementation of Lex and Yacc. Lex and Yacc are very well-known parsing tools used in the creation of programming languages. Overall, I think CS262 is an awesome course. Westley Weimer is extremely smart, and he made me laugh quite a bit, especially with his drawings. There’s not much else to say about the course, since I really had no issues with it. If you are interested in learning the basics of automata theory and how to build an interpreter or compiler, I highly recommend the course. Also, if you’re taking a similar course in a brick-and-mortar university like I was, this is definitely a great complement!
Was this review helpful? Yes1
 Flag

Rating Details


  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.