background preloader

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

aGupieWare: 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.] 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. Introductory Courses

Related:  Helpful ArticlesComputer Science EducationProgrammingProgrammingWeb Based Courses

HowToGeek Screencasting guide Screencasting can seem a bit daunting at first. Open Broadcaster Software is a powerful, free program that will do everything you need, but you’ll need a few minutes to learn its interface. Screencasts are often used to demonstrate how software works, but they can also be used to give presentations or do many other things. Creating your own screencast is easy, but Windows doesn’t include software to help. Screencasting 101: Using Open Broadcaster Software We recommend using Open Broadcaster Software for screencasts.

Could Storytelling Be the Secret Sauce to STEM Education? In the short story “The Ones Who Walk Away from Omelas,” author Ursula Le Guin describes a utopian city that has everything people want or need — beauty, religion, happiness — but it’s all possible because one child is kept in the dark, separated from all joy and light. Citizens of the city have to go and see this boy, but some can’t take the guilt and walk away. After reading the story, Lev Fruchter and his class talk about what elements make up utopia and use the conversation as a jumping-off point to talk about equations. They talk about adding good things and multiplying them if they’re really great or, inversely, subtracting things that make people unhappy and dividing the really bad elements. This is all a way of thinking about the math that will eventually run a computer program. Fruchter loves words, but is comfortable enough with math and science that he was called upon to teach them.

Problems - CodeStepByStep You must disable your AdBlock software for our web site in your browser to use this site. 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. Map / Reduce – A visual explanation Map/Reduce is a term commonly thrown about these days, in essence, it is just a way to take a big task and divide it into discrete tasks that can be done in parallel. A common use case for Map/Reduce is in document database, which is why I found myself thinking deeply about this. Let us say that we have a set of documents with the following form: And we want to answer a question over more than a single document.

27 Ways to Learn to Program Online Whether you are looking to switch careers and become a full-time programmer, want to try to build a website or app on the side, or are just looking to round out your skill set, learning to code has certainly been something a lot of people have started to do lately. And while being a programmer might not be for everyone, there is a lot to be said about gaining a better, more educated view of how all those pixels get moved around all those screens. Before we delve into our list of learning resources sites, we wanted to share some advice from Marissa Louie, a self-taught product designer for Ness Computing. A former startup founder, Louie told TNW that the hardest part of being self-taught – whether it’s design, programming, or any other discipline is, “gathering the courage. The most important barrier is just to overcome your fears” (she also said having the ability to follow instructions helps as well). 1.

How to Safely Download & Install Software All of these programs that I recommend are hosted on other sites, which is very typical and is no reason for concern. However, it means I have hand you off to another website that I have no control over and hope everything works out there as you download and install the software. Unfortunately, sometimes even a really, really good piece software is hosted at a site that... well, I wouldn't otherwise want to send someone to.

Should students learn coding? Students, schools disagree, poll finds SAN FRANCISCO — Parents across the U.S. are eager for their children to learn coding and other computer-science skills, but their message hasn't yet hit the in-box of school administrators. That's the finding of a new Gallup study commissioned by Google that spotlights a potentially perilous economic disconnect as tech companies struggle to enlarge their engineering talent pools. In the works for 18 months, the survey, called "Searching for Computer Science: Access and Barriers in U.S.

Make Your Own Programming Language, Part 1 This is the first in a 5-part tutorial on how to implement a programming language. 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. The Programmers Idea Book – 200 Software Project Ideas and Tips to Developing Them – Ebook : The Coders Lexicon Based on the popular web board thread, created by Martyr2 and viewed by over 350,000 visitors, this new eBook contains hundreds of platform independent programming projects, tips and more. It features: 200 programming project ideas for all skill levels 10 different project categories Over 100 pages of project ideas Expert tips for tackling each programming project Projects for any programming language (platform independent) Programs that you can get started on in minutes! What is this ebook all about? This new ebook is chock-full of programming project ideas with each project idea featuring a difficulty level (from 1 – 10), detailed description of the project, expert tips for how to think about tackling the project in a general non-platform specific way and suggestions for making the project more advanced.

Programming resources Programming knowledge is not mandatory for LessWrong but computer science and programming is a popular topic among LessWrong members and it is also instrumentally useful to understand how computers work and how to program them. Even if you are not interested to learn to program, you might want to be able to at least interpret the most basic pseudo code as you might come across various snippets of code in discussions and top-level posts outside of the main sequences. Below you will find a list of links to books and other resources. Most categories are sorted by their difficulty in ascending order. Resources that can be understood with little or no knowledge of computer science and programming are marked EASY.

The Best Web Hosting Services Are you looking for the best web hosting services for your needs? Whether you need a place to host your small personal blog or a major corporate website, the following list will help you identify the best hosts to use. Finding the best web hosting service isn’t quite as straightforward as searching Google and choosing the one with the lowest price. There are a lot of issues to consider, including the reasons for why you need hosting and how you intend to use it. Once you have a handle on that, finding the right host becomes much easier. Browse All Skip to main content Sort By Newest First Downsize homework because, like a job, students should be able to do the work during business hours. Programmed Introduction to MIPS Assembly Language This is a course in assembly language programming of the MIPS processor. 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).

Interpreted Languages: Perl, PHP, Python, Ruby (Sheet One) - Hyperpolyglot a side-by-side reference sheet sheet one: version | grammar and execution | variables and expressions | arithmetic and logic | strings | regexes | dates and time | arrays | dictionaries | functions | execution control | exceptions | threads sheet two: streams | asynchronous events | files | file formats | directories | processes and environment | option parsing | libraries and namespaces | objects | inheritance and polymorphism | reflection | net and web | gui | databases | unit tests | logging | debugging sheet two: streams | asynchronous events | files | directories | processes and environment | option parsing | libraries and namespaces | objects | inheritance and polymorphism | reflection | net and web | gui | databases | unit tests | logging | debugging version used