ArsDigita University 204
Philip Greenspun, whose name you may recognize from photo.net or Philip and Alex's Guide to Web Publishing, is founding a tuition-free program in computer science that's intended to provide the equivalent of four years' worth of CompSci in a single, 6-day-a-week, 12-hour-a-day year. You heard it right: tuition-free. And they're accepting applications. There are a few catches: you'll need a bachelor's degree already, and you'll need to be so bright that people put on sunglasses when you walk into a room. But even the rest of us can eavesdrop with lectures and course notes to be made available online. See this column about the program, or visit ArsDigita University.
Re:His comments on LISP and Perl (Score:1)
As someone with a wide variety of computer-language skills, I must say that your focus is pretty limited.
I've been programming for almost 20 years, and am fluent in over a dozen languages, from 3 different flavours of assembly, through higher-level languages such as C and Pascal, to scripting languages such as Perl, Rexx, and others.
While Perl is useful to an extent, it is easily the worst language I've ever used. It's difficult to learn, and even harder to read. I've had way to many nights trying to understand bad Perl.
And just as a disclaimer, I've never been to MIT (and Lisp isn't one of the lanugages I know.)
Oh, and by the way, Perl rules the universe.
Yes? And MS Rules the PC-desktop, - was your point that "Crap floats to the top"?
Just because something is popular, doesn't make it good.
Degree Plans (Score:3)
There are 3 "basic" computer related degrees.
As for the scientist part. It is an applied science. Mathematics, Physics, Philosophy. Problem solving at its very finest. I think you would find it very hard to write a 3D engine without a hard background in both Math and Physics. You would also find it hard to write an operating system without a good knowlege of processor and hardware design.
It also has grounds in complexity theory. Computer programs are by their very nature complex, and cannot be simplified. Physics is moving closer and closer to a unified theory, but no matter what you do, programs you write will be complex.
I'll shut up now.
the long winded AC
Re:No such thing as computer "science" (Score:3)
Look for a program that emphasises data structures, OS implementation, compiler construction, and Mathematical aplications. Don't wind up a slave to someone elses proprietary program and don't work on any thing that you could not re-implement yourself given adequate time.
Bah (Score:2)
Translation: You need to already have a degree very similar to the one offered, and be willing (and financially able) to go for a year without holding a steady job so you can study to earn what amounts to the same degree you already have. Remind me again why anyone would want to do this? I'm looking forward to graduation so that I can start earning money, and NOT have to study for 12 hours a day anymore. This sounds like a novel idea, but rather useless...
--
Seems reasonable to me (Score:1)
Some people here have asked [1] why someone with a bachelor's would attend and [2] what's with the 6x12 work estimate.
As far as [1] is concerned, I would guess that this program is mainly aimed at people with degrees in something other than CompEng/Sci who need the technical skills from the ground up. A person who already has most of the technical skills can just attend the three week bootcamp or do the home study course.
As far as [2] is concerned, the 72 hours/week includes homework so it doesn't seem unreasonable to me, considering that it is supposed to be an MIT-level curriculum.
-- OpenSourcerers [opensourcerers.com]
Re:Lisp hackers were too busy arguing with Perl ha (Score:1)
I have no idea if it is a "good" web server but I thought people might be interested to know that there is a Lisp-based web server project at MIT [mit.edu].
-- OpenSourcerers [opensourcerers.com]
Re:Don't be fooled by philanthropic SCAM !! (Score:1)
ArsDigita university only has one section in its curriculum that covers the work that ArsDigita.com does. Mostly ArsDigita University covers the sort of computer science theory you would find in a major university.
-Dean
Re:His comments on LISP and Perl (Score:1)
IMO, your reaction is valid to an extent. Surely you can see however, that a CS degree is not about learning a language (that you can then apply in a job or in a project). It is about educating you about how to solve problems using computation. Unfortunately, that's a wide remit that also includes hacking up a guestbook CGI script.
A lot of people fall into the trap of talking of 'ivory towers' in disparaging terms and suchlike. The techniques and knowledge you gain by applying yourself to a CS degree (if it was good) are not 'one trick ponies'. Sure, Perl is useful. But surely, more useful, is the mindset that can pick up and run with whatever language is going, because of the familiarity and experience of the type of language it is. That mindset will probably design a solution that is better. Sure, you don't need a CS degree and millions code really well without one. But a CS degree is not a lesson in coding. That's not what the point is.
The point is, that ArsDigita uses Tcl because it suits their requirements. Lisp might have, if their requirements were different. It could well be that no set of requirements nowadays results in the adopting of Lisp. That doesn't matter. Lisp will still suffice to illustrate points. Lisp may not be useful in production environments, but the job of a CS lecturer is not to prepare you for the workplace. That's your job.
If you want to be prepared for the workplace, then get experience in using the languages you want to work with. Of course, a CS degree will give you the background to run with these languages much faster. There's theory and implementation.
thenerd.
Who is it for? (Score:1)
I think it's a great idea, and the syllabus and talent they've put together looks great. But who will take advantage of it? How many people are interested in learning theory and doing programming (usually means fairly young, I suspect), and can afford to go a year without pay, and are not already CS graduates? Of course, they only have space for 30, so it doesn't need to be a big market, but I feel like I must be missing something.
Re:University isn't all about books... (Score:1)
Re:Yes but ... (Score:1)
Most universities don't give scholarships for masters students. They also usually take more than a year to complete.
Re:Getting rid of the obsolete stuff. (Score:1)
Re:No such thing as computer "science" (Score:1)
My rule for CS is: if it can't be figured out in a few hours without a computer, it can't be programmed with one, regardless of the number of 72-hour weeks one puts in.
His comments on LISP and Perl (Score:1)
LISP: "Lisp is the most powerful and also easiest to use programming language ever developed. Invented by John McCarthy at MIT in the late 1950s, Lisp is today used by the most sophisticated programmers pushing the limits of computers in mathematical physics, computer-aided engineering, and computer-aided genetics. Lisp is also used by thousands of people who don't think of themselves as programmers at all, only people who want to define shortcuts in AutoCAD or the Emacs text editor. The best introduction to Lisp is also the best introduction to computer science."
And here's what he says about Perl: "Lisp programmers forced to look at Perl code would usually say 'if there were any justice in this world, the guys who wrote this would go to jail.'"
Elsewhere on the site, he has this to say about Perl: "As nasty and tasteless as Tcl is, it is a positive dream compared to Perl. The only conceivable way to write a correct Perl program IMHO is cutting and pasting from someone else's code."
I'm up on free education as the next joe, but take into account how biased this type of education may be. If you read on in the site, you'll read more about "MIT this" and "MIT that." Perhaps that's why he thinks LISP is so great. From what I understand, MIT is a haven for LISP and Emacs bigot, whereas evereywhere else most everyone uses Perl, C, shell, Python, and other useful programming languages.
And that's another comment I'd like to make. Almost every LISP bigot I've heard of talks about how "beautiful" LISP is. My reaction is, So what if it's beautiful? Computer languages are written to be useful, not just beautiful. Is anyone actually developing anything useful in LISP? I think it's pretty obvious that Perl is very useful.
I apologize if this seems off-topic, but for me I feel wary of education which may actually be rife with a bunch of MIT intellectual "LISP is beautiful!" garbage. If LISP is so great then why does ArsDigita use Tcl instead of the almighty beautiful LISP?
Oh, and by the way, Perl rules the universe.
Response (Score:1)
Phillip, there's no need to get uppity. If I'm in the wrong, and I often am, then simply pointing out to me where I'm wrong and educating me as to the truth in this situation will be sufficient to change my point of view.
Why do we use Tcl for this last step? We don't anymore. ArsDigita will build you a 100% pure Java site and support it.
This is not an improvement! Java has proven itself to be nothing but hype and nothing but slow. Where is this supposed "Java revolution" that's supposed to have happened? Tcl/Tk (or Perl/Tk, for that matter) is more cross platform than is Java and faster, too. It is Java which has earned the moniker "Write once, Debug everywhere," not Tcl/Tk.
It turns out that AOLserver is a great efficient proven Web development tool. It happened to include a compiled-in Tcl interpreter. So we used it.
Why didn't AOLserver include a compiled-in LISP interpreter? For that matter, why isn't there any web server which includes a comiled-in LISP interpreter? If LISP is as great as you people claim it is, then certainly there should be at least one, right? Several people have come to your defense by saying, "The reason that AD didn't use LISP is because they used AOLserver, which used Tcl." I think that's a cop-out. The response is obvious: Then why didn't AD select a web server which uses LISP?
If we were as smart as you, we'd have rewritten the whole thing in Perl instead of building a $20 million (revenue) profitable business.
If you have built a $20 million in revenue profitable business then you have built one more $20 million in revenue business than I have, and that is to be congratulated. Why then do you feel the need to make such snide comments to me like the one above?
If you don't know about any of the advancements in computer technology developed at MIT over the last 40 years nor any of the useful innovative software systems written in Lisp, maybe you should take a computer history course.
Why don't you just tell me some of them? Provide hyperlinks if available. I will be convinced and believe your point of view if I see good evidence that LISP is as great as you claim it to be. But as is, you look much more like an upset, MIT snob than an effective defender of LISP.
Answer (Score:1)
Phillip,
Thank you for your thoughtful response. I can see your point of view. At the same time, I think it enables me to put mine into better perspective.
My whole point is that I feared a course in programming coming from a person who was a LISP/Emacs/MIT bigot. Mind you, this is my impression of MIT people: they think they are smarter than everyone else, they think Emacs is better than any other application (I believe you wrote on your web page, "All good programmers will spend most of their time in Emacs," from which I infer that if you aren't spending most of your time in Emacs, then you're not a good programmer), and they think that LISP is better than any other programming language. In short, they are elitist snobs. I used a few of your quotes regarding LISP and Perl to illustrate.
But am I wrong about MIT people? Are they not snobs? Is LISP really a useful programming language? I don't know, I can be convinced otherwise. But I think that I'm not the only one who has this opinion.
If you look back on some of the things in your respone to my response, I think they can still reinforce my point:
Lisp programmers were too busy congratulating themselves for being smarter than C programmers.
As for Lisp, a lot of language bigotry caused Lisp programmers to waste time arguing and reimplementing Lisp instead of building apps.
So I can't be all wrong about LISP programmers being snobs.
And as to your claims about what LISP as produced,
The operating system. Time-sharing. RSA encryption. TCP/IP and a lot of earlier network stuff.
This does not really look all that impressive. Isn't it true that several of these concepts were also implemented in other langauges other than LISP? Isn't it also true that there are hundreds of other concepts in the field of computer science that were implemented in languages other than LISP? In short, what makes LISP so great? What makes it stand out among the other languages? To me, the only thing that makes it stand out is the LISP "bigots" who are "too busy congratulating themselves for being smarter than C programmers."
And another question, I understand that you are tired of people arguing about which language is better than the other, and I certainly understand that. Why then did you go into detail about how awesome LISP is and how horrible Perl is? If the tools are unimportant, then I don't see the point in all the LISP touting and Perl bashing.
I must add that what I am totally against is a few people being elitist about some "lots of inane and stupid parentheses" language that no one is using except for some research projects at MIT. Personally, I think it's what gives MIT programmers a bad name.
I appreciate the discussion.
Yes, and? (Score:1)
I don't understand what your point is in posting this. The book is posted on an MIT site. It's written by three people who are obviously affiliated with MIT. So of course they're going to fawn over the incredible awesomeness of LISP. That is one of my beliefs: that the only people who talk about how great LISP is are MIT people. My question is this: are there any non-MIT people who will rave on and on about how great LISP is?
I beg you: prove me wrong. Show me that LISP advocacy is more than just MIT snobbery.
More "credentialism"... (Score:1)
...to use Lester Thurow's epithet.
As a college dropout who wants a CS/MIS degree, I'm kind of oversensitive on this subject, but I've become "educated" enough to want to quit the bullsh*t and move on to the training end of it. But making a baccalaureate degree a prerequisite to this "deep-dipping" program just creates a different kind of stumbling block.
Generally, I scowl at the notion that a college degree is really a bellwether of competence and an entry visa of sorts into the world of IT profressionals. My father, a self-taught manufacturing engineer, suffered a similar fate at the hands of an industry that increasingly admitted only college-trained individuals -- never mind their lack of experience and useful knowledge -- to the ranks of "made guys."
(Donning flameproof skivvies...)
Re:open-source is the business model (Score:1)
Hey, Phil....what's with the Bachelor's requirement?
Re:we don't think it is impressive (Score:1)
is this necessary? really? (Score:2)
but the idea that you cant get a technical degree without an undergrad cs degree just isnt true.
every school in the country is hard up for grad students in cs and electrical/computer (ece) engineering. im not just talking phds, but also master's programs. the labor shortage, remember? nobody wants to go to school for two to five more years when they can pull so much starting straight out of college. the result is that universities and plenty of them are taking lots of people into masters' programs that have undergrad in a field completely unrelated to cs or engineering. its weird, but its definitely happening.
im a biology major from a small liberal arts college, and i got into terminal master's electrical/computer engineering programs at both uTexasAustin and cornell. (admittedly i got rejected from mit, hahahaha.) this arsdigita is really only for english/psych/polisci majors. people who majored in a science can definitely get into a master's program. and seriously, i think a master's is worth more. both education-wise and vocationally.
ok, so it will definitely take me longer than a year (im thinking 2 to 2 1/2) and it costs me money, but one year at UT costs less than half of what one year at my current school is. and so engineering!=CS but you kind of see what im saying. if youre willing to get rejected by MIT, it is still possible for you to major in something completely unrelated to computer science and still get into a CS (or related) graduate program.
with the testing-requirements as high as have been listed, the people arsdigita is shooting for may very well have these options available. finally, i too want to see what the attrition rate of arsdigita will be. to be honest, i dont think that kind of acceleration can be done well. you can only cram in so much knowledge per day. people just stop learning after a certain period- like that far side cartoon, where the guy says "can you excuse me? my brain is full." 12 hours of class a day is just too much structured work time. even if most of it is basically study hall to complete assignments, its still worse than the traditional lecture then do work in your free time aspect of college life. i dont want to sound overly critical, but i seriously feel that the biggest problem is going to be the human attrition rate to that kind of scheduling.
nevertheless, good luck. i hope the program succeeds- if only because i want my free instruction materials on the web!
unc_
6 days a week, 12 hrs a day?! (Score:1)
Now weary traveller, rest your head. For just like me, you're utterly dead.
Re:Cheaper than "Berrington College" (Score:1)
How did they arrive @ 3744 hrs.? (Score:1)
Re:Getting rid of the obsolete stuff. (Score:1)
MSCS and other "trade certificates" are not so useful
Since when is a "master of science in computer science" degree regarded as a trade certificate? I agree with you if you are referring to MCSE etc., though.
--
Re:Getting rid of the obsolete stuff. (Score:3)
I mean, can you imagine what the people that have spent 6 years getting a MSCS have gone through? Let's see, in 1994 they were using Win3.11/Dos5. 1995, Win95A. '96-Win95B. 1998 - Win98. 1999 - Win98SE. Toss in the changes made to Windows NT/2000 (That would be from 3.51 to W2K) and all of the different *nixs and look what you have... People with a lot of knowledge about outdated, mundane, obsolete technology. I guess you could argue that they still have that knowledge and can use it towards modern stuff, but I would still rather have the education in things that can help me get a job today...
A university degree in CS is not about knowing how to use an operating system. It's about the concepts and the theory behind it. If you want to learn to use a specific technology, get a MCSE or equivalent.
--
Re:University isn't all about books... (Score:3)
Re:Getting rid of the obsolete stuff. (Score:1)
Eh? What's so new about Java?
`Computer science' is *not* `computer literacy' (Score:1)
"1994 they were using Win3.11/Dos5. 1995, Win95A. '96-Win95B. 1998 - Win98. 1999 - Win98SE. Toss in the changes made to Windows NT/2000 (That would be from 3.51 to W2K) and all of the different *nixs and look what you have..."
So? Where's the connection between these two statements?
Upon starting his CS education, a friend of mine told me that he was suprised that the CS curricula didn't include courses on how to use various operating systems and other pieces of software.
I told him that CS wasn't about being able to use some piece of software (or hardware), but about the concepts that go into the creation of those things.
There are indeed operating-systems courses that one may take when persuing a CS degree, but those are in OS-design, not -use.
CS isn't about learning to use the latest version of Windows anymore than mathematics is about knowing where all of the buttons on the latest TI graphing calculator are.
Re:His comments on LISP and Perl (Score:1)
Point about "Engineer" term taken (Score:2)
Unless your university was a true visionary about your eventual future employment, your exposure to the field of CS was cursory at best. You might have sat in a Fortran class, maybe even a C--or, heaven forbid--C++ class, taken some abstract assembly of an imaginary processor, and patted yourself on the back about all the computer stuff you knew. Your computer training in any case would have been heavily firmware oriented, as befits an EE. You learn to bit-twiddle, and anything that doesn't look like bit-twiddling is greeted with contempt.
Now to reality: learning the nuts and bolts of computer programming (bit-twiddling) is only the first step of a long and arduous journey. The real challenge lies in complete systems, in seeing the bigger picture, the forest as it were. EEs seldomly get past the trees. The EE equivalent would be to learn the basics about semiconductors, inductors and capacitors, and then immediately have to design an entire working system from these scraps of knowledge.
EEs are woefully unprepared to deal with large software systems. I know because I've done much of the typical EE course work, and I've worked for years with entire departments of EEs. My university required more than a cursory exposure to EE subjects for my CS major, so I've mingled with both the people and the attitudes quite freely. My previous job at TVA amongst people designing power systems (substations, hydroplants, nuclear generators) has taught me quite well the superficial exposure of EEs to computer programming.
There's a world of difference between squeezing the last cycle of performance out of an 8051, and writing objects that must interface with hundreds of other ones, and making it all actually work, and work seamlessly. The programming focus of EE and CS degrees is worlds apart, as it well should. A good CS degree will expose you to the necessary notions and ideas that hopefully in the future will get you on the right path.
Now I'm not claiming that a CS degree in itself will teach you everything you need to know. In fact, it will probably teach you very little of what you will eventually need. But it will expose you to the subject matter, and at some distant point in the future you will hopefully remember sufficiently to know where to start looking. You will have a significant leg up on the EE working with you, who will have to start from first principles on a lot of those same things. It's very analogous to the EE that might have learned about MOSFETs and op-amps at some point, but will have to do some serious recap in any real job.
Let's face it, a very significant number of EEs end up working as programmers. I don't know the exact numbers, but there must be tons (same for physicists and mathematicians, incidentally, fields I originally pursued before I "wisened up"). Most of those EEs will never again use any of the EE material they spent many nights studying. Sad maybe, but that's the economic reality. There's much higher demand for high-level software than systems design or firmware. So in that light I find it ironic and slightly pathetic that it would be the EEs making fun of CS people.
To sum up, I would hire an EE if I was working close to hardware, maybe designing a board with some micro in need of firmware, or for device driver development. I would stay as far away as possible from an EE for anything with a grander scope. In my experience EEs suck above the detail level, and CS people suck below the system level. EEs can't wrap their mind around object thinking, and CS people can't shed object thinking. These are certainly grand generalizations, but I believe they conform to the broad strokes painted by the previous posters.
Uwe Wolfgang Radu
Re:I should have written YOU'VE (Score:1)
I'm sure they'd hire any black jewish gay female paraplegics who subscribe to their brand of fanaticism.
That's what I hate about plaintext. Sarcasm is so hard to detect.
Re:Degree Plans (Score:1)
Good job explaining the fundamental differences between the majors. I have to say that I have seen a lot of two year colleges and other specialty schools that offer basically the out of a box MCSE deal. This has gotten to the point of being semi annoying just since a lot of us are working on 4 year degrees and these certification schools try to level themselves as being equals of those degrees.
oh well small rant
Moderate up parent, please. (Score:2)
I'm quoting from memory so I probably got it slightly wrong, but that's the gist of what he said. And he's right. Tools come and go. Vendors come and go. If you understand what you're doing, you're a professional. If you don't understand what you're doing, you're a trained monkey.
Re:His comments on LISP and Perl (Score:2)
--
"But, Mulder, the new millennium doesn't begin until January 2001."
Re:wacked (Score:3)
--
"But, Mulder, the new millennium doesn't begin until January 2001."
Re:12x6? (Score:2)
Piece of cake. I code at work for 12 hours a day six days a week, and all it takes is 5mg of Ritalin every 3 hours.
Accredidation (Score:4)
However, it is a good brush-up course for those who already have a degree. It would also be a way to reach to the people who can't afford college or can't get into it for some reason.
Re:Requirements (Score:2)
"deterministic"
--
Re:Requirements (Score:2)
If you will settle for 3 out of 4, I will nominate Ada.
> Market it correctly so that it goes into wide use.
Well, maybe not Ada. Though it does seem to be catching on in France for some reason.
--
Re:Requirements (Score:2)
As you were saying?
--
Re:Getting rid of the obsolete stuff. (Score:2)
Computer science is about computers as much as astronomy is about telescopes.
Kaa
12x6? (Score:2)
Riiight. I'll be amused to see what their burnout rate is.
Also, comparing this to a Comp Sci degree is a bit silly. This is essentially what all of the "computer colleges" out there are offering - intensive skill-based training. It may be free, and taught by some of the best people in the world, but that is still what it is.
Here's the bus model (Score:2)
Do you think that Greenspun's company might be able to emply the services of a few of the grads?
Think about it - what does it cost for them to recruit people? And once they are recruited, they still have to learn their (*cough* eliteist) AOLServer/Tcl/Emacs/Oracle way of doing things anyways.
Now you create a place to "educate" (really train them on what *you* want them to learn) people for "free" and you get to hire the best ones for your company. They get a free supply of people all ready to slam right into their workforce.
The $1M that it will cost is nothing compared to what it will save them in hiring/training costs, and I'm sure they get the tax writeoff on top of that.
Re:wacked (Score:2)
Isn't that an oxymoron?
In all seriousness, I know plenty of people who are smart who aren't cut out for a career in computer programming. They don't neccissarily equate, and getting yourself into a 12 hour a day, 6 day a week program isn't likely the best way for you to find out either.
Re:you're a bright future in business (Score:2)
I run my own small business, so I do know about tax deductions, but wasn't my point at all.
You may say that you would only hire a couple of people, but I would doubt that. These people just spent pratically their entire lives for a year immersed in your culture and learning your way of doing things. More than a couple will wind up joining you.
That said, if you say that isn't your prime motive then I respect that.
Good luck hiring 200 web developers in the next year - we're in short supply
Re:$125K? (Score:3)
It really surprises me that you'd think that an MIT/Stanford-style CS curriculum can be apprehended within just one year. I'm a senior CS student at CMU and while I don't doubt that all of the CS lectures I've had could fit into the schedule you specified, I don't imagine that a student would retain much of that knowledge.
You simply don't get a good knowledge of CS from just listening to a lecturer tell you about CS. You need to go off on your own and struggle with the problems. You need to spend days at a time banging your head against a wall until you can find and then prove your algorithms correct. And you need to do that over and over again, until, upon getting a new problem, you immediately say to yourself: "I can use such-and-such a theorem to reduce that problem to finding a true quantified boolean formula -- darn, that's P-SPACE complete!" (or "wow! I've proved that P=P-SPACE" if you're a supa-genius)
And what's more, this knowledge is cumulative. You simply WON'T get it in 3 months, or 4 months, or 2 years. You might be smart enough to recite every single proof you've ever encountered so far (perhaps you were an accomplished actor) but I seriously doubt that any of your students will magically transform themselves into creative computer science students within the period of just one year of listening to someone else talk about computer science or solve problems for them.
If you think it'd be fun, go ahead and teach whatever curriculum you'd like, but I have a feeling you'll lose your students after a month or two if you don't give them any time to let them struggle with difficulty. And heck, beyond just learning the formalism in CS, when are they even going to have time to hack on large projects? You don't learn software engineering by attending lecture. You learn it by building horribly unmaintanable programs (unintentionally, of course) and reflecting on that after the fact.
If this program will be valuable to anyone, it's probably for people who write about technology and want to get a sense of the depth of CS (beyond programming), but don't expect to become proficient in it.
Re:wacked (Score:2)
No obsolete stuff in a real degree (Score:2)
We learned algorithm analysis, language theory, computer architecture, etc. None of this stuff is obsolete or ever will be (with the possible exception of architecture).
It's job experience that gets obsolete. That's why those "I ain't got no book larnin'--I'm a self-made man!" types always make me laugh.
--
Value to students (Score:2)
LetterRip
Mills post-bacc programs (Score:3)
Mills College in Oakland, California, where I teach, has had programs since the mid 80s to teach computer science to people who already have a bachelor's degree in some other field.
In one program, students take computer science courses and then go into industry or CS grad school. Last year, one student went on to graduate school in CS at University of Washington, another to University of Virginia.
Another program leads to a MA degree in Interdisciplinary Computer Science, in which students take computer science courses and do an interdisciplinary thesis combining their old area with computer science. We've had some really interesting people come through.
While our programs aren't free, we do offer teaching and research assistantships. As at MIT or ADU, your teachers will be from MIT and comparable schools. (Like philg, I'm MIT^3.) Unlike MIT, classes are small (generally fewer than 20 students).
For more information, see the web page [mills.edu] or send me email [mailto].
What kind of brightness? :-) (Score:2)
You mean like through self-immolation [timesofindia.com]?
Absurd! (Score:5)
You could also argue that if you're smart enough to get into this program in the first place, you're probably smart enough to figure out most of the stuff by yourself anyway. Computer Science degrees are really about teaching you how to approach solving computer-related problems. A vast majority of the classroom content is either out of date or has little practical application for most graduates. So whether you get that in a year or 4 is irrelevant. What you're missing is the years of training your brain to look at and solve problems that are fundamentally different from most other disciplines.
I don't believe you can compress that experience into one year, and I certainly wouldn't consider hiring someone who claimed to have accomplished it in that timeframe.
Re:Requirements (Score:2)
Requirements (Score:2)
Re:Requirements (Score:2)
I never said I wanted to be a theoretical computer
Re:Requirements (Score:2)
Re:Requirements (Score:2)
Re:Requirements (Score:2)
Yes, certainly college imbues the qualities of persistence and determination. Having had to solve challenging problems in the past will help one in solving challenging problems in the future. However I reached a certain point where I was sick and tired of solving problems and jumping through hoops for their sake alone. There is a point at which the itch to actually DO something is too great. So I scratched that itch. Yes, perhaps I dropped out too soon. I originally majored in physics. I guess if I just endured another three years I might be doing something really interesting.
Well, that is great for MIT. MIT also happens to be an engineering oriented university in the first place. Go somewhere much larger and more general (do advisors remember who you are at MIT?) and faculty access and meaningful research opportunities (i.e. something more than a lab technician job, titrating all day) are harder to come by.
Yes, the tone might not have been the most appropriate...but it comes from exasperation. I used to be on the "right track". But it sure looked like if I held on I would be coming out as yet another preconfigured cog.
Re: Degree :: Union Card (Score:2)
I wholeheartedly agree. College is only a
Re:Requirements (Score:2)
Yes, so I've heard. Actually the later courses I had just started to taste (well, one at least), was pretty cool. It was a "hands-on" engineering approach to networking, the final project being the creating of a working (but virtual) telephony system.
Actually the field is moving so fast, my daily work (enterprise Java) could
Re:Requirements (Score:3)
I have done all of the above, and am happy to say I am merrily on my way to a fulfilling career as yet another cubicle dwelling valued employee and productive human resource.
Re:Requirements (Score:3)
Well, I guess this is the fundamental point I disagree on. I too had pipe dreams of magical self-exploration and actualization. But, at least at Big University, it turns out to be pretty much high school all over again, except that you now pay through the nose for being told what to do. You are free to explore all sorts of alternative education avenues, as long as you do it on your own time, or "any color as long as it's black" (so what does college buy me, then?). As for being learning-resistent I have interests in many different topics, with varying ranges of depth, but certainly not things I'd have time to pursue if I were doing rote work. I'm pretty much entirely disillusioned with college in general. The fantasy that it is some enlightening journey of self-exploration is utter bs.
University isn't all about books... (Score:3)
The most valuable thing I learn't at University was about interaction with others, I've found since that the most productive team members are not always the best read, but the best able to communicate their ideas.
Re:Requirements (Score:2)
Education can allow you to see the errors of those who have gone before you so you don't repeat those mistakes. You know you've achieved enlightenment when you realize how shockingly little we really know about anything, and how we manage to make do anyway. You appear to have a long way to go before you reach that point my friend...
So while you're waiting to go the valley and make your millions, here are some problems you can work on to fill your time...
1) Solve all of the "research"-level problems in Knuth's "Art of Computer Programming".
2) Prove whether or not solutions can be obtained for NP-Complete problems.
3) Create a programming language that has the functional elegance of LISP, the systems programming ability of C, the type-checking system of ML, and objects like Java. Market it correctly so that it goes into wide use. Wallow in cash.
I breathlessly look forward to hearing from you...
It is going to cost us $30,000 per year! (Score:2)
I admit to secretly hoping that schools with $billions in the bank (e.g., Harvard and MIT) will find other ways to raise money than shaking down middle class families. But really the point of ArsDigita University is just what we say it is... to teach the undergrad CS curriculum to folks who might have missed it when they were in college studying liberal arts or biology or whatever.
MIT would agree with you (Score:2)
But there is nothing wrong with engineering! It is fun and satisfying to build real-world things, even if we're never going to cure cancer.
-- Philip (kicking back at ArsDigita London where the flowering trees are really beautiful all over the city)
Fear not (you can always use Macsyma and Maple) (Score:2)
And if the students don't learn calculus, they can always become lamers like me and use Maple or Macsyma
I'm not uppity (okay, maybe a little) (Score:2)
Why didn't AD select a Web server that uses Lisp? There weren't any back in 1995 that could talk to an RDBMS. We wanted to build applications to solve real users' problems, not get mired in a tools debate. So we built apps instead of tools. SAP was written in COBOL initially. I'm sure that they didn't like COBOL but they wanted to solve the ERP instead of the language problem so they did (and now SAP is the world's #2 market cap software company, after Microsoft).
Why was I snide? I'm sick of hearing arguments about languages and development tools. It is what gives programmers a bad reputation for being losers.
A few MIT things? The operating system. Time-sharing. RSA encryption. TCP/IP and a lot of earlier network stuff. Computer algebra (and the Lisp-based Macsyma, which is still the most useful computer algebra system (though I admit that Maple is easier to install and use)). As for Lisp, a lot of language bigotry caused Lisp programmers to waste time arguing and reimplementing Lisp instead of building apps. But some good apps were built, esp. in the areas of electronic design and automated mechanical design. A lot of systems used Lisp as an extension language, e.g., the Interleaf publishing system and the AutoCAD drafting system. And a lot of the good ideas from Lisp made it into Java.
But the bottom line is that tools per se won't make much difference. At MIT, we teach our students to generate entire Web sites (including all the scripts) from machine-readable specs. Instead of arguing over tools and maybe getting a 3X productivity improvement (e.g., from using Apache/Perl instead of Netscape Enterprise Server/Java), they are writing programs that write programs. They'll get a 1000X productivity improvement over even the best Perl coder even if their ultimate target language is EDSAC machine code.
The future of Web development is high-level specification and automatic generation of sites. This is what we try to teach students, where we do at ArsDigita when appropriate for a service, and where we are pushing toolkit development.
I thought I was done with my PhD Thesis Defense... (Score:2)
If I were intelligent or level-headed, I would have gone to medical school like my brother Harry.
But rest assured, ArsDigita University students won't have to suffer with me all year. I'm only teaching one course (though I might be a TA for some of the others).
(Note to the rest of you: before you start a little online community like photo.net, be aware that you might get "a few dozen" unsolicited emails over the years from someone like this anonymous coward. It is one of the great joys of being a non-commercial Web publisher.)
intensive learning (Score:2)
1300 on the SATs might be good enough if you took them before the rescaling. Your HS career is certainly better than mine! (see photo.net/samantha/ for an account of my high school achievements). Anyway, we don't stop people from taking the SATs again and crushing them like a bug.
Why do we focus on SATs? MIT has a huge admissions bureaucracy that does a great job but costs more money to run than our whole little school. So we needed some criteria that would yield us a high-quality student body but that wouldn't take up a lot of time to administer.
Re:Global Leanings (Score:2)
I'm in London (Score:2)
open-source is the business model (Score:3)
Not only have we open-licensed all of our content but we're going to spend summers inviting people from around the world to come learn how to teach our curriculum.
Basically the world right now is floating in money. And many of those with money are in fact quite generous. What is in scarce supply is knowledge and human resources. By showing other people how to do what we're doing and helping them do it, we hope to encourage imitators.
you're a bright future in business (Score:3)
As for whether this is a recruiting pipeline for us, it isn't a very effective one. We need to hire 200 developers in the next year or so. The first ADU graduate won't be available for more than 14 months. Many of them will return to their professional lives (some are university profs or MDs or PhDs in other fields). Some will wish to start their own businesses. Some will wish to work for large companies. We might end up hiring a couple. That would be $500,000 per person in recruiting expenses. Plus a lot of distraction. So it wouldn't be very good business.
Lisp hackers were too busy arguing with Perl hacke (Score:3)
Engineering excellence doesn't mean having a fancier system; it means having a system that solves the users' problem better faster and cheaper.
Am I bitter? No worse than Medea...
(I'm also confused by the person who claims that pgreesnpun isn't me. I am me, dammit!)
we're pathetic and small (Score:3)
If you look at Michael Saylor, who started his school with $100 million, you see the difference that more money makes. He is trying to do a whole liberal arts curriculum. He is trying to innovate in the method of instruction (online instead of face-to-face). I predict that he will have a tougher time than we will, even though he isn't constrained by money. When looking for teachers across a broad range of subjects, he will have a tough time just figuring out whom to call. Whereas I'm only one degree of separation from any qualified CS teacher in the world.
If we were to start giving bachelor's degrees we'd have to ask ourselves in what way we were better than Harvard or MIT. Those schools have, respectively, about 350 and 150 years of experience doing what they do. We would be tuition-free but so will they in the long run (I think). The guy below who said that I was an egomanaic is mostly right. I don't like to be involved in something unless it can be the world's best. I know how to make the world's best post-bacc CS program. But I don't know how to build a great college that will do all the things that need to be done for 18-22 year olds.
previous programming background? (Score:3)
As for "struggle with the problems" our students will have ample time for that. Only 2 or 3 hours per day (out of 12) are spent in lecture. The rest if problem sets.
When will our students have time to "hack on large projects"? The rest of their frigging lives! We want to do the best that we can with one year and then send our graduates on their way. We don't expect them to become Richard Stallman-grade programmers during one year with us or anyone else.
Finally, who ever said that we were teaching programming? We're teaching computer science! Some of our students might choose to go on to grad school at CMU and bury themselves in complexity theory or parallel algorithms or whatever. (We do have a couple of courses in software engineering but those are only two out of 11).
We don't do engineering in Tcl, God Dammit!!!! (Score:4)
Why do we use Tcl for this last step? We don't anymore. ArsDigita will build you a 100% pure Java site and support it. Our toolkit is about getting the data models and workflow models right, not about language religion. Beyond that, we use whatever is most expedient. It turns out that AOLserver is a great efficient proven Web development tool. It happened to include a compiled-in Tcl interpreter. So we used it. If we were as smart as you, we'd have rewritten the whole thing in Perl instead of building a $20 million (revenue) profitable business.
If you don't know about any of the advancements in computer technology developed at MIT over the last 40 years nor any of the useful innovative software systems written in Lisp, maybe you should take a computer history course.
$125K? (Score:5)
But you're kind of missing the point. This isn't career prep. We don't teach C programming or Oracle DBA. We teach the standard MIT/Stanford-style CS curriculum. We want to teach people who are going to change the world in some interesting way, not get all excited about $125K one way or the other (that's kind of like a rounding error for someone skilled in IT).
On the social life score, all I can say is that we expect our students to enjoy the same rich social life enjoyed by top computer science students around the world
MIT really is better (Score:5)
If Elliot had looked at the curriculum, he'd have noticed that, just like MIT, we don't actually teach any computer languages. We expect the students to be bright enough to pick up the syntax as they learn the concepts (we might have to break the rules a tiny bit at http://arsdigita.org/university/ because we're introducing Java relatively early and Java has so much syntax and machinery).
As for teaching the "elite", Elliot, well we're sorry that we don't meet your standards. But with my piddling $1 million/year that I could afford to invest, we can't innovate too much. We're going to teach the Stanford/MIT stuff to people who had the qualifications necessary to get into Stanford and MIT in the same way (face-to-face education) used by Stanford and MIT. We're also going to let it all hang out on the Web for those who want to be monsters of self-motivation, but we don't judge ourselves by how well those folks learn.
Anyway, the bottom line Elliot is that if we had your intelligence and generosity, we could do more. But we don't so we're limited to just teaching 30 people/year in Cambridge for free.
Re:Requirements (Score:2)
Well, there are rote learning sheep who are doomed to live in mediocrity; and there are those that are genuinely interested in their field, probably part of a life long quest to understand the world around them. You can do both at academic institutions at the undergraduate level.
Your comment seems to be a negative assertion regarding the average curriculum's structure, if I'm not mistaken. My answer to that is: yes, there is certainly needless repetition in every undergraduate education -- however, this repetitive mnemonic approach is often necessary to lay the foundations from which one would have a greater understanding of the problems ahead, and shouldn't be mistaken with an attempt to manufacture or program students. It's definitely a downside if you're ahead of the curve, but most will not likely be able to find the intellectual support systems that one needs to grow, outside of the academic community.
Even if you find it a painful experience, there's always graduate programs where you can have lots of fun
Re:His comments on LISP and Perl (Score:2)
And that's another comment I'd like to make. Almost every LISP bigot I've heard of talks about how "beautiful" LISP is. My reaction is, So what if it's beautiful? Computer languages are written to be useful, not just beautiful. Is anyone actually developing anything useful in LISP? I think it's pretty obvious that Perl is very useful.
Let me first quote RMS:
Why isn't it used more ? Read Richard P. Gabriel's article"LISP: Good News, Bad News, How to Win Big" [mit.edu] for some of the reasons.As for LISP successes (they were asked for in an earlier post): Common Lisp had the first standardized object oriented language (CLOS). There are few, if any, OO languages that can even begin to touch the dynamism possible in CLOS (with the meta-object protocol, of course). EMACS anyone ? Garbage collection hmmm... user extensible programs ? ahem. I think it has been very successful, it just took a lot of flak from the failure of AI in the 80's.
The beauty in LISP is that it is really the language that you want it to be. LISP macros are actually code that transforms expressions into other expressions before evaluation or compilation; so in essence you can write a compiler (yes, LISP is usually compiled to native code) for your own language. This means abstraction without the usual overhead. This property has been used for instance to implement Prolog(ish) compilers on top of LISP.
LISP is the second oldest programming language still in use (Fortran is older) and it has been designed to be extensible; for instance, today's usual plugin hacks with DLL's or .so's are as easy as (load "filename"). Lisp has evolved for 40 years and IMO Common Lisp is a very mature language. All this dynamism is not without a cost however. Real CL systems take up a lot of memory, because the environment is almost like an OS. Imagine keeping GCC in memory for every C program you run.
Why do I like it ? Bottom-up programming, self-modifying programs, goto ;), function builders, macros, strong typing, closures, extreme multi-paradigm support... actually I can't specify, it's the whole package that rocks.
And the point is ... ? (Score:2)
Now don't get me wrong, just because you are done with school, doesn't mean you are done with learning !
If you ALREADY need a degree to be able to participate, then what's the point of spending ANOTHER 6-day-a-week, 12-hour-a-day year ?
"If I protest an illegal tax, does that make me an illegal tax protestor ?" - Pohoreski
wacked (Score:4)
If that isn't wacked, I don't know what is.
Re:we offer financial aid (Score:2)
A Scenario (Score:2)
Nearly preaching to the converted (Score:2)
The argument has shifted past debate over whether or not tech firms are trying to screw american workers and into examining fundamentally why the scarcity exists. The consensus seems to be that the quality of CS faculty is decreasing, becoming more and more isolated from the world outside of academia.
This could be amazing, injecting an academic perspective into the career-oriented IT pool. The concept of a free university is wonderful. But the big crippling problem I see is why should this be a post-bachelor program? If someone's got a degree, they don't really need a program like this as badly as say, someone who didn't have the financial means to go to/finish college in the first place.
Let's face it, the current university programs aren't doing a good job at making graduates understand the industry. An institute like this could take care of that problem.
If this program gets off the ground, I would like to see them courting the biggies like Cisco, Oracle, the IPO darlings (Hey, RHAT is going down but they've still got serious market capitalization value) for some heavy heavy endowments. That way they could dramatically widen the entitlement to prospective students.
With this sort of arrangement, prospective IT professionals get something more in-depth than an MCSE mill, and the tech companies get a solidly-trained work-force of people that really understand the concepts at hand.
-carl
OT, but about Greenspun (Score:2)
Oh well, sorry for the WOB.
Take care,
Steve
========
Stephen C. VanDahm
Re:Getting rid of the obsolete stuff. (Score:2)
It's about the concepts and the theory behind it.
I'll second that. I am just finishing up my CS degree.
The vast majority of the "real" CS classes are theory. We write very little code. A lot of it is math and optimization techniques.
Most of what is taught transcends any operating system, or even a programming language. I've had a few classes where we can turn in our homework/projects in any language we'd like, just as long as the professor can check it on a computer on the network in the college. (Which includes C/C++, Java, Pascal, FORTRAN, ADA, even MATHLAB.)
In my college the 20x level "CS" classes are things like Microsoft Office and really basic programming. My guess is the initial poster has these classes confused with "real" Computer Science.
Computer Science is the science of solving problems using computers. It is not the science of how to use an operating system.
- Bunny
Re:Requirements (Score:2)
After being bored and insulted with
Are you refering to the John S. Knight Freshman writing seminar? That's considerably more than a "remedial writing class" -- it exposes you to writing in different fields of study, like philosophy, government, literature, etc.
And to put it bluntly, from the writing ability you displayed in your post, your writing really isn't that wonderful.
====
Re:Bah (Score:2)
Here in England, it's really common to find yourself with a nearly useless degree and then do a Masters in CS in order to get a programming job (at least, lots of the people in the company I work for have done this). In which case, a free one year second degree is mighty lots cheaper than doing a Masters and possibly more sensible.
Re:Getting rid of the obsolete stuff. (Score:2)
People seem to forget (or not know in the first place) that a good computer science degree isn't about learning how to use the latest operating system, or how to use the latest languages, but rather the principles behind each. Sure, we learn various languages, but we also learn the common features between languages, and the different styles of programming. Makes it really easy to pick up a new language when you've already seen one similar to it in the past.
As for staying current, sure, the stuff that's used out in the world changes fairly frequently, but to use your example of the Windows line, how different in Win95 from Win98? WinNT? Win2K? Not *that* different. As for Unix, well, it pretty much looks the same (from the command prompt, anyway) as it did back in 1995 when I started my degree. The only really new language that's come out has been Java, and it's not exactly a hard language to learn. Regardless, if you're interested in computers as a whole, keeping on top of the latest operating systems or the latest language shouldn't be too much of a problem. If you're not interested in the field, well, one has to wonder why you got a CS degree in the first place.
As always, my two cents on the whole issue.
It Depends On The CS Curriculum (Score:2)
Your above example depends on the strength of the computer science department at whatever college you attended. In general a good computer science degree will not be bogged in specifics of any one operating system or language except as tools to teach specific concepts. For instance here at GeorgiaTech the OS of choice is primarily Unix, every CS student takes intensive classes in compiler and translation theory (code in C, lex and yacc), object oriented programming ( 1 class in Java and 1 in Smalltalk), operating system components (write hard drive controllers and other low level system components in C/C++), automata theory, proofs and applied combinatorics as well as a design class that involves creating a shipping product for a local company of choice. What I have just described is the mandatory CS curriculum that every CS student takes before branching of into specializations. Now with this non-OS specific (yet primarily *nix based) curriculum I have friends who will be working at MSFT in the summer (Yes, even though most of their school-based experience of NT is simply as the OS where their code is written because they don't want to boot Linux or Solaris) as well as others who will be working on next gen web applications using technologies that were still drafts a year ago. Now the jobs and positions most of my friends and I have gotten are irrespective of applications we used in school because employers know we have the background to pick up new technologies and understand the concepts behind technologies and not just how to use them.
Case in point, I recently turned down a position at Intel working on testing compilers for a new generation of chips for mobile processors because I hate testing. I got this position even though I have no knowledge of assembly because I have the knowledge of compiler theory concepts and know how to program. The poeple at Intel realized rightly that this was more important than merely knowing the specifics of a language, in their words if you believe you can pick up assembly, the job is yours.
On the other hand at my girlfriend's university the entire CS curriculum is taught by 2 professors and is peppered with classes like Programming with Visual Basic, Introduction to C++ and Using Computer Applications. I agree that such a curriculum will create students that will be obsolete before they graduate.
Stanford undergraduate CS is new (Score:2)
Stanford didn't offer an undergraduate program in computer science until the late 1980s. Big political battles preceded that decision, but that's another story.
The ArsDigita curriculum looks reasonable. The MIT influence is clear; they start with Structure and Interpretation of Computer Programs. LISP as a first language seems strange today, though. Perhaps the idea is that learning LISP, like learning Greek, improves your thinking.
I have misgivings about trying to do it all in one year; the students won't have much time to do anything with what they're learning. Two years, maybe.
Re:No, it really is wacked (Score:2)
The problem is, I'm not in particularly "unfortunate circumstances" yet there's no way I could do this. On the other hand if they consider not being able to have no income for a year unfortunate, I should be encourgaing them in other charitable activities. ;?
-Kahuna Burger
Getting rid of the obsolete stuff. (Score:3)
I mean, can you imagine what the people that have spent 6 years getting a MSCS have gone through? Let's see, in 1994 they were using Win3.11/Dos5. 1995, Win95A. '96-Win95B. 1998 - Win98. 1999 - Win98SE. Toss in the changes made to Windows NT/2000 (That would be from 3.51 to W2K) and all of the different *nixs and look what you have... People with a lot of knowledge about outdated, mundane, obsolete technology. I guess you could argue that they still have that knowledge and can use it towards modern stuff, but I would still rather have the education in things that can help me get a job today...
OK, so now I've pissed off every moderator with a degree in computer science...
kwsNI
to all you c.s. geeks (Score:2)
had this been available two years ago, i would have given it strong consideration (my degrees are in history). a senior professor in the humanities at a research university makes around 60-70k a year - adjuncts and TAs make around 15K a year, so the income a smart, non-cs major would forfeit would be negligible.
Re:we offer financial aid (Score:2)
Likewise, as in the job world, having a hard requirement for having a Bacheleor's degree may exclude some very bright people who already have achieved an equivilent (or superior) level of understanding through self-learning and practical experience, but just don't have a piece of paper to prove it.
If you are going to set up a non-traditional program like, why limit yourself to traditional selection criteria? I can understand your desire for exclusivity, but why not use this opportunity to try out new approaches for achieving that goal?
Speaking for myself, I'd love to apply for your program -- it sounds very exciting to me. Unfortunatly, I never finished my BS degree (but somehow still managed to become a hard core SQL/OOP geek). While I do meet the other requirements, I'd still have to figure out how to support my family and pay my mortgage for a year without working. [And, frankly, Calculus makes my head hurt :-)] I guess I'll just have to follow along on the web.
"The axiom 'An honest man has nothing to fear from the police'
What's the bus model (there ain't one) (Score:2)