Pages

Sunday, September 30, 2007

Programming Language Video Lectures

This month I present to you my findings on programming language video lectures. I found some good introductory lectures on C++, Java, Perl, Python and a full blown course on Symbolic Programming from UC Berkeley. Have fun! :)


Introduction to Symbolic Programming (University of California Berkeley)

Topics covered are the following:
  1. Exploration: introduction to the course and to programming.
  2. Procedures and functions: evaluation, words and lists, functional programming.
  3. Variables: data types, inputs to procedures and functions, scope of variables, assignment.
  4. Predicates: conditional evaluation.
  5. Recursion (several models): linear- and tree-recursive operations.
  6. Planning and debugging.
  7. Functional operators.
  8. Other control structures, e.g. iteration, non-local exit.
  9. Other data structures, e.g. trees, hash tables, property lists, files.
  10. Programs as data.

C++ for Particle Physicists

Series of 13 lectures that was presented at CERN in Geneva by Paul Kunz from Stanford University. The lectures are very clear and start with the basics in an attempt to teach C++ to Particle Physicists. Each lecture is about an hour and a half long.

More information about these 13 lectures can be found here: http://www.wlap.org/cern/lectures/tech/c/


C++ Programming Tutorial


Bjarne Stroustrup’s Video Lecture on C++0x Standard

Dr. Bjarne Stroustrup is the original designer and implementer of the C++ Programming Language.

Quoting Him: "A good programming language is far more than a simple collection of features. My ideal is to provide a set of facilities that smoothly work together to support design and programming styles of a generality beyond my imagination. Here, I briefly outline rules of thumb (guidelines, principles) that are being applied in the design of C++0x. Then, I present the state of the standards process (we are aiming for C++09) and give examples of a few of the proposals such as concepts, generalized initialization, being considered in the ISO C++ standards committee. Since there are far more proposals than could be presented in an hour, I'll take questions."



Java Programming basics

An excellent video lecture course in Java Programming.
Students who view the complete video course will:
  • Understand fundamentals of programming such as variables, conditional and iterative execution, methods, etc.
  • Understand fundamentals of object-oriented programming, including defining classes, invoking methods, using class libraries, etc.
  • Gain exposure to the important topics and principles of software development.
  • Have the ability to write computer programs to solve specified problems.
  • Be able to use a software development environment to create, debug, and run programs.


Introduction to Perl: The Friendly Programming Language

Adam Trickett gives a short talk introducing the Perl scripting / programming language. This talk does not require any previous knowledge of Perl.

The talk covers history of Perl, Perl's parent programming languages, Hello world program, Perl's books, CPAN (Comprehensive Perl Archive Network) and Useful Perl resources/websites.



Beginning Perl for Nonprogrammers

This is an instructional video outlining the basics of the Perl scripting language.


Audrey Tang - Perl 6 Today


Introducing Python

This 24 minute video contains interviews with luminaries from the Python community interspersed with A Python Love Story. It was created for use as an introductory activity in a computer science course using Python.


Why I Like Python

Jim Dennis gives a short talk on the aspects of the Python programming language that he most appreciates. This talk requires some basic programming knowledge.


Intro to programming with Python and Tkinter

(Sorry, I couldn't find lectures 1 and 2). Starts with lecture 3:

More details on these tutorials at Intro to programming with Python and Tkinter wiki.



Related Posts
  • Free Computer Science Video Lecture Courses
    (Courses include web application development, lisp/scheme programming, data structures, algorithms, machine structures, programming languages, principles of software engineering, object oriented programming in java, systems, computer system engineering, computer architecture, operating systems, database management systems, performance analysis, cryptography, artificial intelligence)

  • Programming Lectures and Tutorials
    (Lectures include topics such as software engineering, javascript programming, overview of firefox's firebug extension, document object model, python programming, design patterns in python, java programming, delphi programming, vim editor and sqlite database design)

  • Programming, Networking Free Video Lectures and Other Interesting Ones
    (Includes lectures on Python programming language, Common Lisp, Debugging, HTML and Web, BGP networking, Building scalable systems, and as a bonus lecture History of Google)

  • More Mathematics and Theoretical Computer Science Video Lectures
    (Includes algebra, elementary statistics, applied probability, finite mathematics, trigonometry with calculus, mathematical computation, pre-calculus, analytic geometry, first year calculus, business calculus, mathematical writing (by Knuth), computer science problem seminar (by Knuth), dynamic systems and chaos, computer musings (by Knuth) and other Donald E. Knuth lectures)

  • Computer Science Lectures
    (Courses include higher computing (intro to theory of computation), intro to computer science, data structures, compiler optimization, computers and internet, intro to clojure, the akamai story, cryptography, EECS colloquium videos at Case Western Reserve University)

  • Computer Science and Programming Lectures
    (Includes Haskell functional programming lecture, C++ and object oriented programming course, Java programming and Java app. development course, operating systems course, data mining course, cluster computing and map reduce lectures, internetworking & networking lectures, information systems lectures, computers and society course, human-computer interaction lecture course, java and web framework comparison lectures)

  • Computer Science Courses
    (Includes introduction to computer science and computing systems, computational complexity and quantum computing, the c programming language, multicore programming, statistics and data mining, combinatorics, software testing, evolutionary computation, deep learning, data structures and algorithms and computational origami.)

13 comments:

  1. Are those the only C++ lectures you were able to find?

    I am very surprised that there aren't a lot of video lectures that teach C++ on the web.

    ReplyDelete
  2. Hi,
    Thank you very much for the compilation of these excellent resources.

    Regards
    Sandesh

    ReplyDelete
  3. Yea thanks a lot those C++ videos are going to come in handy. I've tried books but always got left behind in some of the fancy text so maybe seeing it will help me better understand it.

    ReplyDelete
  4. DTV JAVA is the good place to watch cool java videos

    ReplyDelete
  5. You can find other Java SE and EE lectures at www.parleys.com

    ReplyDelete
  6. "Why I Like Python" - that guy is pretty poor at writing Python off the top of his head. Though I'm sure doing it in front of an audience would throw me off as well.

    Decent session though.

    ReplyDelete
  7. Really glad I found your blog.
    If you could spend a moment, please check my blog and add a link to it in your blog if found useful.

    http://www.sharpprogrammer.com
    Advanced Programming Tips Tricks

    ReplyDelete
  8. hi.their ant fee for this. and how can i apply for this.
    Thanks
    Harsh Mahwari

    ReplyDelete
  9. Hi!!! thanks a lot my friend.. I gain more knowledge from your vedio.

    ReplyDelete
  10. much respect buddy ...hats off 2 u bruv

    ReplyDelete
  11. thanks a lot for this excellent effort

    ReplyDelete
  12. To all data analyst, data managers, software engineers and data miners.


    Take the online survey for Molecular Algorithm: A Better Approach in Data Integration

    ReplyDelete
  13. Hi,

    it really nice work and this blog is very help full for me because i have to start learning recently start c c++ programming language.

    I am very thanks full to you for sharing a nice material.

    Nadeem Rao
    learn unix c c++

    ReplyDelete