background preloader


Facebook Twitter

Problems - CodeStepByStep. You must disable your AdBlock software for our web site in your browser to use this site.

Problems - CodeStepByStep

You don't have to turn off the ad blocker entirely; just disable ad blocking for, then refresh this page to continue. It is easy to disable AdBlock for just one site while leaving it enabled for other sites. Just click the "stop sign" icon in the top-right of your browser, then un-check the "Enabled for this site" checkbox.

If your UI doesn't match the screenshot below, you may want to Google for how to add a "whitelisted domain" to your ad blocker to allow ads from to be shown. Thank you for your understanding and helping us to keep this service free of cost for all students to use. If you are still seeing this message after disabling your ad blocker, try clearing your browser history and refreshing the page. If you are certain that you are not running AdBlock or any other ad-blocking software, but you are still seeing this message, please Contact Us. Online Learning: A Bachelor's Level Computer Science Program Curriculum (Updated) Introduction [Update: See also the follow-up post to this piece, An Intensive Bachelor's Level Computer Science Curriculum Program.]

Online Learning: A Bachelor's Level Computer Science Program Curriculum (Updated)

A few months back we took an in-depth look at MIT’s free online Introduction to Computer Science course, and laid out a self-study time table to complete the class within four months, along with a companion post providing learning benchmarks to chart your progress. In the present article, I'll step back and take a much more broad look at com-sci course offerings available for free on the internet, in order to answer a deceptively straightforward question: is it possible to complete the equivalent of a college bachelor’s degree in computer science through college and university courses that are freely available online?

And if so, how does one do so? The former question is more difficult to answer than it may at first appear. Yet, this does not mean that all the necessary elements for such a curriculum are not freely accessible.


Learn C++ Make Your Own Programming Language, Part 1. This is the first in a 5-part tutorial on how to implement a programming language.

Make Your Own Programming Language, Part 1

It is intended for people with some programming experience, who want to know how their compiler, interpreter or virtual machine works. Hint: it's not magic. In the introduction I explained why you might want to make your own programming language, and why you might want to learn it from me. Now we'll start actually doing it. I encourage you to experiment; don't follow my examples blindly. Derek Banas. Programmed Introduction to MIPS Assembly Language.

This is a course in assembly language programming of the MIPS processor.

Programmed Introduction to MIPS Assembly Language

It emphasizes the topics needed for study of computer architecture: bits, bit patterns, operations on bit patterns, and how bit patterns represent instructions and data. This course is equivalent to a semester-long junior college or university course (except, perhaps, for the emphasis on bit patterns). The emphasis of the course is on understanding how computers work. This will provide a basis for further study of computer architecture and computer software.

The MIPS processor, the subject of this course, has a well designed architecture and is particularly fruitful to study. Introduction to Electrical Engineering and Computer Science I. Share and Discover the best programming tutorials and courses online. Made with Code_Google. CS50x: Introduction to Computer Science. CS50x is Harvard College's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience.

CS50x: Introduction to Computer Science

An entry-level course taught by David J. Malan, CS50x teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development.

Web Development

Degree Programs. Python. Programming Basics (Beginners) Become A Programming Guru! Other Languages. Javascript. Java. Processing. Greenfoot. Alice. General Sources & Directories. App Development. Coding Resources. 5 Programming Projects. Times are tough, and as society moves increasingly towards digital services and everything online, there is never a lack of jobs for those with tech skills.

5 Programming Projects

If you’re sitting there thinking “you know, I really ought to learn some new skills”, then peruse this list and find something that appeals to you. You never know – magic might happen. Start learning some programming today, and you might find yourself sitting on the next Twitter, or perhaps the next MineCraft. Unity 3D Game Engine Unity is a cross-platform 3D engine and development environment, though not limited to gaming. My interest in Unity is that the Oculus Rift developer kits will support Unity out of the box, which means I’ll be able to fully immerse myself in any 3D worlds I create.

Where to start? And the Unity guys themselves have a wealth of video material. PHP/MySQL For web development, the combination of PHP server scripting and MySQL database is arguably the king of the Internet. Computing at School. Resources: Physical Computing.

Game Design

Scratch. Raspberry Pi. Minecraft Pi. Arduino.