Saturday, February 24th, 2007

Computer Science Departments will not survive

Filed under: Academia/Research, Science and Technology — Daniel Lemire @ 11:41

When asked what would happen if Computer Science departments do not collaborate in the creation of a new Academic field, Web Science, Ben Shneiderman, from the University of Maryland, said: “they will not survive.” At least, his point of view is clear.

Writing and Maintaining Software are not Engineering Activities

Filed under: — Daniel Lemire @ 10:59

Raghavendra Rao Loka, an experienced software developper working for Synopsys, wrote a column for IEEE Computer (February 2007, pages 110-112), Software Development: What Is the Problem? He has written what I claimed earlier is known to anyone who has done real software development for a living, that is…

Many developers view software development (…) as a science or engineering activity(…) Writing software is neither: I view it as a craft or art, similar to the work required of teachers and writers. (…) So it’s not clear why we call software development software engineering. (…)

Compare this with what I wrote earlier…

(…) saying that software projects fail for lack of engineering is like saying that the latest Stephen King’s novel is boring because he forgot to draw a UML diagram of the book.

One nagging bit we inherit from the myth of software development as software engineering are schedules. Raghavendra Rao Loka could not be clearer on this topic: “I expect experts to be forthcoming about schedules and their irrelevance.”

Further reading:

Friday, February 23rd, 2007

Why is Computer Science Education Obselete?

Filed under: Academia/Research, Audio podcast, Science and Technology — Daniel Lemire @ 10:12

I spent a great deal of time last time thinking about why Computer Science education fails to attract as many students as it once did. One of the most significant event as of late, has been the launch of the Web Science Research Initiative. Basically, Tim Berners-Lee has concluded that a Computer Science education is not an ideal foundation to study the Web. Why is that? I think the answer is probably related as to why, if we discard Software Engineering, Computer Science is really the new Physics: attracting a few bright individuals, but failing to attract crowds.

Computer Science was founded by Mathematicians and Physicists as a Data Processing Science. And because Computers are Data Processing Devices, this new science would be the science of computers. What an attractive proposition!

Except that computers are not data processing devices: they evolved beyond this initial status. Modeling computers as Turing Machines is no longer useful in most cases. The Web is hardly a physical network of Turing Machines. Computers are very social and cultural devices. Building a new application like YouTube has very little to do with programming a data processing device. It would seem like Tim agrees with me:

Within computer science, Web-related research has largely focused on information-retrieval algorithms and on algorithms for the routing of information through the underlying Internet. Outside of computing, researchers grow ever more dependent on the Web; but they have no coherent agenda for exploring the emerging trends on the Web, nor are they fully engaged with the emerging Web research community to more specifically focus on providing for scientists’ needs. (Berners-Lee et al., Science, 2006)

Information Technology is more important than ever. Computers are more important than ever. But, alas, it does not follow that Computer Science is still relevant. I studied carefully many programs out there and it seems obvious to me that Computer Science education is not adapting to what computers really are used for in 2007. It is basically staying true to the vision of Computer Science as a data processing science.

See also my post More CS Ph.D.s than ever, what about research jobs?

Subscribe to this blog
in a reader
or by Email.

 
icon for podpress  Standard Podcast [4:54m]: Play Now | Play in Popup | Download

Wednesday, February 21st, 2007

TexMaker: a cross-platform LaTeX editor

Filed under: — Daniel Lemire @ 10:33

I just installed TeXMaker. this is one of the best LaTeX editor I have come accross. Better yet, it runs under Linux and MacOS. Version 1.5 just came out.

Tuesday, February 20th, 2007

Taking charge of your IT

Filed under: — Daniel Lemire @ 18:13

CIO (and slashdot) reports on the new trend where users take charge of their IT needs. I’m one of these pesky users. I have my own server (daniel-lemire.com) complete with wikis, blogs, version control and so on. I use google mail for my email. I manage my own computers.

This is not limited to IT, by the way. I also bypass almost entirely my school’s library. I use Google Scholar. All UQAM gives me is access to documents through a proxy.

This trend is not really new. Back 30 years ago, secretaries would type scientific papers. Today, you have to be a pretty rich researcher to have a secretary who types your papers and technical reports. (Admittedly, I’m more than happy to delegate some of my funding applications.)

Computers are about giving users more control, not less. We shall delegate less to human beings in the future, not more. But we will grow more dependent on computers. Let us hope they do not become evil!

This does not mean that we will all be out of a job in the near future. But if you do a lot of routine labor, and managing a server is routine labor, then plan on getting a better job. Either your job will get outsourced, or servers will get smarter.

Monday, February 19th, 2007

JavaScript is interesting

Filed under: — Daniel Lemire @ 8:56

If you think JavaScript (errr… ECMAScript) is uninteresting. Think again! This Yahoo! talk ought to change your mind (part 1 of 3):

Friday, February 16th, 2007

How artificial intelligences are already at war with us

Filed under: — Daniel Lemire @ 20:51

In the most recent Communications of the ACM (February 2007), Joshua Goodman and his coauthors tell us, in Spam and the Ongoing Battle for the Inbox1, that it is very difficult to build reliable CAPTCHAs or (reverse) Turing tests, to differentiate machines from human beings. In the most reliable tests, machines had a success rate of 5% whereas in other cases they had a success rate of 67%. This may seem to be a high failure rate (95%), but this only means that the machine needs to try 20 times on average to succeed once. So you slow down the machine by a factor of 20 (in the best of cases), and since machines are thousands of times faster than human beings, you have achieved very little. They do not report human error rates, but I know that I fail Blogger’s tests routinely and I’m not an idiot (though you may think otherwise if you wish), not blind, and so on.

This is not just a theoretical concern. I have used visual CAPTCHAs before on my blog and they failed me. I still got spammed. The solution I know use is to apply a very simple CAPTCHA but one that is unique to my blog. Since I am not a very popular blogger, I hope that spammers will not bother breaking my CAPTCHAs. If I ever, by some strange turn of events, became a popular blogger, my solution would be to craft routinely new CAPTCHAs.

This means that there are AI bots out there at war with legitimate bloggers.

To those who doubt AI can be used for evil purposes, well, there you go. There are people out there purposely designing AIs for evil (spamming is certainly unethical). We are not talking about the military. We are not talking about crazy scientists. We are talking about the worst kind of evil masterminds: greedy unethical capitalists.

1- They cite Using Machine Learning to Break Visual Human Interaction Proofs by Chellapilla and Simard.

Next Page »

33 queries. 0.376 seconds. Valid XHTML

Powered by WordPress

Subscribe to this blog in a reader or by Email.