background preloader

Computer Programming

Facebook Twitter

45 Free Online Computer Science Courses | Super Geek Land. Copyright © 1999-2012 GoDaddy.com, LLC. All rights reserved. *One FREE .COM, .CO, .NET or .ORG with purchase of a new 12-, 24- or 36-month website builder plan. Plus ICANN fee of $0.18 per domain name per year. You must add the domain name into your cart before purchase, and you must select a domain term length equal to or less than the term length of your website builder plan to qualify for the free domain offer. . + New .COMs $7.99/yr plus 18 cents/yr ICANN fee. 100+ Open Courseware Collections for Aspiring Web Devs | Web Hos. Machine Learning | Stanford Video Course. Introduction to Computer Science and Programming | MIT Video Cou. Introduction to Algorithms | MIT Video Course. Programming Optimization: Techniques, examples and discussion.

In the old days, it was pretty easy to understand that writing your programs in assembly would tend to yield higher performing results than writing in higher level languages. Compilers had solved the problem of "optimization" in too general and simplistic a way, and had no hope of competing with the sly human assembly coder. These days the story is slightly different. Compilers have gotten better and the CPUs have gotten harder to optimize for.

Inside some research organizations the general consensus is that compilers could do at least as well as humans in almost all cases. But have compilers really gotten so good that humans cannot compete? On a Pentium, it is ordinarily beneficial to declare your data so that its usage on inner loops retains as much as possible in the cache for as long as possible. The pentium also has an auxiliary floating point execution unit which can actually perform floating point operations concurrently with integer computations. Programming Challenges Audio. At its best, computer science is an exciting blend of programming, mathematics, and problem solving. This course will introduce an interesting variety of subjects in programming, algorithms, and discrete mathematics though puzzles and problems which have appeared in the International ACM Programming Contest and similar venues.

These audio lectures are derived from my course Programming Challenges taught at Stony Brook and based on the book Programming Challenges: The Programming Contest Training Manual by Steven S. Skiena and Miguel A. Revilla, Springer-Verlag, New York, 2003. Lecture notes and audio for the 2003 version of the course: Week 1 -- Getting Started in html and PDF.