What the admissions folks want to know is whether you can handle the workload and can contribute something of significance in the form of a thesis or a project. As about workload, you will invariably encounter systems programming, operating systems, compiler construction and some theory class. Of course, this may not be true everywhere but is an indication of a good grad program's basic requirements. To succeed in those classes (and beyond), you would be advised to have a good grasp of at least C, Java or C++, data structures and algorithms.
Now, if you really want to go through with this, you can succeed if you spent some time studying. Start with MIT OpenCourseWare. Master the intro class with python as a gentle intro (checkout Google's Python class for great intro). Then write those some programs in Java. Then, write those same programs using Object Oriented Programming.
Then look into data structures (arrays, lists, hashes, trees) and the big algorithms (start with path finding - dijkstra, other shortest paths, sorting, and if you have time - strongly connected components, suffix tries, etc.) Another big concept you need to understand is Big O notation - something that tells you how complex a given program or algorithm is (it's nice to know sometimes to compare one algorithm to another on basically how fast it can run - e.g a big O of n^2 O(n^2) is worse than O(n))
Now, all of the above is just good preparation for the fun parts you will do in a Master's. You should spend some serious time hacking around with C (get this book - http://en.wikipedia.org/wiki/The_C_Programming_Language_%28b...). The best way to play around with C is to mess around with Systems Programming in UNIX. Get Systems Programming book (http://www.amazon.com/Advanced-UNIX-Programming-Marc-Rochkin...)
Having said all of the above, do you know what you are interested in doing with a degree in C.S? There are some nice interdisciplinary programs where you may not have to do all the hardcore stuff I mentioned above but still dabble into as much detail as you'd like. Look into programs like Michigan's School of Information, for example.
Hope that helps.
He started off consulting and worked his way up through a lot of hard work. Point is, I actually think it would be faster to do this (assuming you're willing put in the effort) than to aim for a master's program with the hope the end result is a better opportunity. After your first programming job, experience and recommendations matter much more than a degree.
After going through that exercise, you should be able to build some non-trivial apps.
For web side, you can benefit from learning at least one web framework (yes, HN folks will flame throw you with framework do's and don't, but for learning sake, just pick one and stick with it). Ruby on Rails is a pretty popular framework and some Ycombinator startups have built extremely impressive sites (scribd, justin.tv, Loopt to name a few).
So, assuming you put in work on the python tutorial or even if you didn't, I highly recommend this online ruby tutorial in 15 minutes. http://tryruby.org/
I'd recommend this Ruby on Rails online tutorial - http://www.railstutorial.org/book#top. It is very new-comer friendly and dips into industry-relevant points that other tutorials don't necessary cover; by that, I mean this tutorial touches base on version control (a program to keep track of what you added or changed in your code) and unit testing (you need this when your code gets ridiculously huge).
And, even though this may sound too early (it's not), look at job boards of places where you may want to work for (this would and should change as your learning progresses). In those places, look at skills required and the tools they use. You'd be surprised how often some jobs care about what you have built and how smart you are rather than your impressive educational credentials (though that can help).
There really is nothing stopping you from starting to build a portfolio now. Start simple, some well designed static html/css pages. Then get some jquery in. Then get on a shared host and start with php/python/ruby.
I assume if you've made it to hackernews you are slightly technically competent. And if not I don't think a masters program will even admit you and if they did I don't think they'd be teaching you the things you need to learn.
If anything I'd suggest a web design program.
http://www.cis.upenn.edu/grad/mcit/
Looks like it's designed for people like you. Not sure how this would be seen by employers - perhaps some others can answer this.
For anyone on the hiring side of a web company: would it be better for a non-CS undergrad to go through a masters program like the ones at Penn/Chicago, or would it be better if someone took a year off, taught themselves, and actually built some stuff?
University of Chicago - http://masters.cs.uchicago.edu/
If U of Chicago is doing it, likely there are others. I would also suggest looking at UK universities - the 1 year taught course Master's degree is a popular cash cow for many universities.