Macbook Wheel pushes HCI envelope

January 6th, 2009

The new Macbook Wheel is really pushing the Human Computer Interface envelope.

StackOverflow asks programmers to pick their favorite cartoons on programming

December 9th, 2008

Stack Overflow has a popular question asking Whats your favorite programmer cartoon?. Nearly 150 have been submitted to date, commented on and sorted by community votes. You’ll recognize a lot of these — XKCD and Dilbert dominate — but I saw many I’d never seen before.

Here’s how Stack Overflow describes itself.

“Stack Overflow is a programming Q & A site that’s free. … We don’t run Stack Overflow. You do. Stack Overflow is collaboratively built and maintained by your fellow programmers. Once the system learns to trust you, you’ll be able to edit anything, much like Wikipedia. With your help, we can build good answers to every imaginable programming question together. No matter what programming language you use, or what operating system you call home — better programming is our goal. Stack Overflow is as frictionless and painless to use as we could make it. We believe finding the right answer to your programming questions should be as easy as falling into the pit of success. And maybe even a little fun along the way.”

It’s a bit overwhelming, but it’s fun to check in on the questions that are most popular, like the cartoon question. You can follow questions about your own narrow interest by subscribing to the RSS feed for appropriate tags (e.g., python, AI, or Semantic Web.). You can also search for questions based on a set of key words, like those mentioning games and AI

Sarah Palin defeats bot in Loebner Prize competition

October 14th, 2008

I guess this is the ultimate question for a Turing Test. At least for this Fall.

Reporter Will Pavia of The Times was one of the judges a the 2008 Loebner Prize competition last week. In a story in The Times yesterday, Machine takes on man at mass Turing Test, he revealed his question that gave away one of the cold, lifeless, mechanical bots.

“The other correspondent was undoubtedly a robot. I asked it for its opinion on Sarah Palin, and it replied: ‘Sorry, don’t know her.’ No sentient being could possibly answer in this way.”

Of course, this could have been an ironic response from a clever person who was mocking VP candidate Palin’s stock question of “Who is Barack Obama?”.

(spotted on Languae Log)

Guess who is coming to grad school!

October 2nd, 2008

UMBC alumnus Alark Joshi (PhD 2007) pointed out this great comic yesterday on Jorge Cham’s Phdcomics site. It shows one upside to the current financial crisis. Now that might sound self-serving, since I am part of the higher education industry that stands to profit. I think our society benefits as a whole if more people pursue an advanced degree, especially if the alternative is to become a yet another hedge fund manager.

Keep your lab motivated

September 28th, 2008

Sometimes worse is not better, it’s just very bad. Here’s a good motivational poster for those of us who express ourselves in code or formal models.

According to Wikipedia, "On September 21, 1997, a divide by zero error in the USS Yorktown (CG-48) Remote Data Base Manager brought down all the machines on the network, causing the ship’s propulsion system to fail."

When you see this post, it will be 08:08:08 08/08/08

August 8th, 2008

This post is scheduled to be released at an interesting moment in time: 08:08:08 on 08/08/08. The bad news is you’ve probably seen this sort of nonsense before — like eleven months ago. The good news is that we’ll only have to put up with it for another four years, after which we can take a break until early in the morning on January 1, 2101.

Stanford Superconducting Supersocializer seeks elementary particles of social interaction

July 20th, 2008

Last month we blogged about UMBC Sociologist Zeynep Tufekci who views social media from the perspective of social physics.

Sociologist Kieran Healy puts the ideas together with a different result, as his post on discovering the elementary particles of social interaction) shows. (Spotted in a post by Mark Liberman on Language Log)

“I’m looking forward to spending a bit of time at the Center for Advanced Study in the Behavioral Sciences this fall. Think of the CASBS as the CERN of social science: even as we speak, hard-working technicians are putting the final touches to the Stanford Superconducting Supersocializer, which will come online once the relevant IRB gods committees have been placated with a sufficient amount of cargo detailed forms. The SSS will propel local college sophomores at tremendous speeds into unfamiliar groups of people in an effort to plumb the structure of the elementary particles of social interaction. Despite the success of the standard model, there is much to be learned.”

“The organization of the Quirks is of course well known, with some of the early triumphs of post-war research focused on the internal dynamics of the quirk-matrix (Up, Downer, Charm, Strange, Top Bloke, Asshole). The complex of interactions centered on W and Z remains wholly mysterious, however. The Liketons, too, pose difficult questions, though the recent discovery of observer-dependent YouTube effects has gone some way toward clarifying their role. Finally, the famous Biggs Hangeron also remains problematic, as it is not only notoriously easy to observe but in fact also impossible to ditch at parties.”

Ten essential numbers you need to know to be successful, and why

May 26th, 2008

Numbers make the world go around. Here are ten digits that form the foundation for success. Mastering these can enrich not only your professional life, but your personal one as well. The path to successful integer management is not hard and you can start today. Many common mistakes can be avoided by mastering these ten digits. Once you have these down, you can put them together in various ways to improve your personal mathematics, unleash success, and accomplish your life goals. Remember: you are in control.

nine. Often confused for a six, nine is significant partly because it’s the largest single digit integer. Don’t listen to people who try to muddy he issue by talking about other bases — you are living in a base 10 world. Or should be. Nine is a perfect square, to boot. It’s a keeper.

eight. Crazy, some say, but as a child I developed a soft spot for this snowman of an integer. When I learned that it was two cubed, I knew it was special.

seven. Lucky seven. Seven-up. 7-11. Seventh son of a seventh son. Need we say more?

six. Wikipedia sums it up nicely: “6 (six) is the natural number following 5 and preceding 7.” It has found its niche and is a perfect fit.

five. Now five is definitely odd and considered untouchable, a combination that some find unique. You need five for a basketball team and, well, just look at one of your hands or feet.

four. Lots of things come in fours: bridge games; corners on a a square; Bob, Carol, Ted and Alice; and apocalyptic horsemen. Most vehicles have four wheels.

Read the rest of this entry »

Words your mobile phone is not allowed to say

March 3rd, 2008

Language models are widely used in processing both written and spoken language. They are used for part of speech tagging, sense tagging, disambiguation, text similarity metrics, and many other tasks, including predicting the words a person intends when typing on a telephone keypad. The last application has some interesting wrinkles, as this video we spotted on Language Log explains.

The most popular predictive text system in use today is T9, developed by Nuance Communications. You can check out the video’s examples using this T9 demo.

Hand, foot, circles and sixes

February 28th, 2008

I think our nervous systems must be wired up a bit strangely.

hands and feet, circles and sixes

Screedbot, the scrolling typewriter text generator

February 18th, 2008

Screedbot is an “animated scrolling typewriter text generator” service. You enter some text, click CREATE SCREED and get an animated gif image. You can define the width, font size and colors of your screed.. Screedbot was written by Zach Beane in Common Lisp. (Spotted on Lemonodor).

Screedbot rants about screedbot

How Dr. Seuss would prove the halting problem undecidable

January 19th, 2008

I just discovered (via an extraordinary proof of the halting problem by linguist Geoffrey Pullum, now at the University of Edinburgh. What’s unusual about it is that it’s written as a poem in the style of Dr. Seuss.

Geoffrey K. Pullum, Scooping the loop snooper: An elementary proof of the undecidability of the halting problem. Mathematics Magazine 73.4 (October 2000), 319-320.

It’s a marvelous proof, sure to liven up any undergraduate theory of computation class. But I noticed errors in the proof — not logical errors, but a transcriptional ones in the form of a mangled word, perhaps introduced by an OCR system. The third line of the fifth stanza reads “that would take and program and call P (of course!)” which has problems in syntax, semantics, rhythm and meter. I’d guess it should be “that would take any program and call P (of course!)”. Similarly, “the” in the third line in the third stanza should probably be “they”. Most of the online version I found had these errors, but I eventually found what I take to be a correct version on the QED blog. I’ve not been able to get to the original version in Mathematical Magazine to verify the corrected version which I include below.


Scooping the Loop Snooper
an elementary proof of the undecidability of the halting problem

Geoffrey K. Pullum, University of Edinburgh

No program can say what another will do.
Now, I won’t just assert that, I’ll prove it to you:
I will prove that although you might work til you drop,
you can’t predict whether a program will stop.

Imagine we have a procedure called P
that will snoop in the source code of programs to see
there aren’t infinite loops that go round and around;
and P prints the word “Fine!” if no looping is found.

You feed in your code, and the input it needs,
and then P takes them both and it studies and reads
and computes whether things will all end as they should
(as opposed to going loopy the way that they could).

Well, the truth is that P cannot possibly be,
because if you wrote it and gave it to me,
I could use it to set up a logical bind
that would shatter your reason and scramble your mind.

Here’s the trick I would use – and it’s simple to do.
I’d define a procedure – we’ll name the thing Q –
that would take any program and call P (of course!)
to tell if it looped, by reading the source;

And if so, Q would simply print “Loop!” and then stop;
but if no, Q would go right back to the top,
and start off again, looping endlessly back,
til the universe dies and is frozen and black.

And this program called Q wouldn’t stay on the shelf;
I would run it, and (fiendishly) feed it itself.
What behaviour results when I do this with Q?
When it reads its own source, just what will it do?

If P warns of loops, Q will print “Loop!” and quit;
yet P is supposed to speak truly of it.
So if Q’s going to quit, then P should say, “Fine!” –
which will make Q go back to its very first line!

No matter what P would have done, Q will scoop it:
Q uses P’s output to make P look stupid.
If P gets things right then it lies in its tooth;
and if it speaks falsely, it’s telling the truth!

I’ve created a paradox, neat as can be –
and simply by using your putative P.
When you assumed P you stepped into a snare;
Your assumptions have led you right into my lair.

So, how to escape from this logical mess?
I don’t have to tell you; I’m sure you can guess.
By reductio, there cannot possibly be
a procedure that acts like the mythical P.

You can never discover mechanical means
for predicting the acts of computing machines.
It’s something that cannot be done. So we users
must find our own bugs; our computers are losers!

Read the rest of this entry »