[Lowerbounds, Upperbounds]

Algorithms are everywhere.

Since STOC 2005, there has been a lot of discussion about theory funding and a task force has been set up by SIGACT to work on advocacy issues.

To start, you are referred to the post by Suresh Venkatasubramanian and a slightly later post by Lance Fortnow. Make sure you read the comment by Michael Mitzenmacher for a clarification on the purpose of the task force, directly from a task force member.

Let the message spread.

P.S. Jeff Erickson has an interesting post about basic research funding too.

You would think that there must be a utility in Unix like head or tail that would chop off the first few lines of a file and output the rest. Well, I haven’t found it yet.

In any case, perl worked.

cat foo.txt | perl -e "print splice @{[<>]}, 5"

I have installed a CAPTCHA plug-in to allow comments without requiring the poster to register and login first. Hope this will make it easier for those that don’t read this blog regularly to leave comments.

Note that if you have already logged in, you will not see any change. You only see it when posting comments anonymously.

I have come to know quite a few Pico die-hards over the years. Their primary reason for sticking with Pico is usually its simplicity. For this, I also think that Pico is hard to beat.

But it’s possible to match that simplicity while adding new features. Enter GNU Nano.

Among the many added features such as case-sensitive search, regexp search and replace, auto-indent and multiple file buffers, Nano also supports syntax highlighting. I guess even some Pico die-hards would agree that some of these are useful features. In fact I myself is a big fan of syntax highlighting (as you can see here).

Really, next time before you use Pico, give Nano a try. It may very well increase your productivity (which is why I am writing this). For starters, put these four lines into your ~/.nanorc and go:

set autoindent
set historylog
set multibuffer
set tabsize 4

Have fun!

The list has been posted. And before I know it, Anupam has already updated his page.

http://www.cs.cornell.edu/Research/focs05/list.htm

Many small annoyances of Windows are due to unreasonable default settings. For example, the dir command in the command prompt (cmd.exe) does not sort its output by default. Can you believe that this is year 2005?

I know, I know. It’s more convenient for the programmer to just dump the content from the master file allocation table, but we should focus on the user’s experience. And indeed sometimes a directory may be so huge that sorting the files would take seconds, but how many of the normal users would encounter such a directory?

In the end, I believe we all want to the output of dir to be sorted. The solution is to set the DIRCMD environment variable to /o, meaning that you want it to be sorted. (I myself also use /a, meaning show all files.) On the one occasion that you hit a huge directory and don’t want the output to be sorted, you can use dir /o- to disable it just for once.

Argh! I did it once again! This morning I was unzipping a zip file and stupidly it spilled some 9000 files onto my desktop.

Since you will probably encounter this later in your life, let me tell you how to deal with this situation. But even before that, let’s talk about preventing it from happening. It’s quite simple… you should always unzip a zip file into a directory. Suppose the zip file concerned is called foo.zip. Here is an example:

unzip foo.zip -d a_temp_dir\

This will place the new content into a subdirectory called a_temp_dir under the current directory. No spills.

But accidents do happen. What did I do to clean up this mess?

unzip -l foo.zip
| grep -E "[0-9]:[0-9]"
| cut -c 29-
| zip -@ -m removed.zip

(all these in one command)

  • Obtain a listing of the zip file with unzip -l.
  • Strip away the header and footer by retaining those lines that have a “digit colon digit” pattern with grep. The pattern is in the time-stamp.
  • Cut away the size and time-stamp from each line with cut. (Turns out these add up to 28 characters, so we want characters 29 onward; note that this could be platform dependent and so I recommend counting this yourself.)
  • Use zip to remove the files and put them in removed.zip. The parameter -@ says “read the file list from stdin” and -m says “remove the files after zipping them”.

Once you are happy with the result (probably by inspecting the remaining files in the current directory), you can remove removed.zip any time you want.

There is a caveat I know of. If there is already an empty subdirectory called bar in the current directory and if bar is also in foo.zip, then in the last step zip -m will remove bar since it is hard (although technically not impossible) to distinguish whether bar is created as a result of unzipping foo.zip or not.

‘nough said. Going back to work, work and work.

http://news-service.stanford.edu/news/2005/june15/jobs-061505.html

‘You’ve got to find what you love,’ Jobs says

This is the text of the Commencement address by Steve Jobs, CEO of Apple Computer and of Pixar Animation Studios, delivered on June 12, 2005 [at Stanford].

I am honored to be with you today at your commencement from one of the finest universities in the world. I never graduated from college. Truth be told, this is the closest I’ve ever gotten to a college graduation. Today I want to tell you three stories from my life. That’s it. No big deal. Just three stories.

Read the rest of this entry »

Michael Hyatt has the following five rules:

  1. Don’t give PowerPoint center stage.
  2. Create a logical flow to your presentation.
  3. Make your presentation readable.
  4. Remember, less is more.
  5. Distribute a handout.

You can read about it in full glory at http://www.michaelhyatt.com/workingsmart/2005/06/five_rules_for_.html and be sure to read the comments there too!

(Thanks to Mukesh for sending this link to me.)

Usability expert Don Norman has published his response to Edward Tufte’s The Cognitive Style of PowerPoint. As I have said in a previous post, not everyone, myself included, agrees with the opinion Tufte entirely. Well, according to Norman,

I respectfully submit that all of this is nonsense. Pure nonsense, accompanied by poor understanding of speech making and of the difference between the requirements for a speech-giver, the speech-listener (the audience), and for the reader of a printed document. These are three different things. Tufte-and other critics-seem to think they are one and the same thing. Nonsense, I say, once again.

For those of us that use PowerPoint for teaching, I highly recommend reading both articles, but bear in mind that we have a arguably different purpose of using PowerPoint—teaching is not just giving a (good) talk in a lecture hall.

BTW, even if you don’t have a chance to read Tufte’s work (\$7), I still recommend you to read Norman’s article. It has sufficient context for you to understand the issue.

From arXiv’s cs daily comes a theory paper that can be used to deal with matters of life and death. How could theory be any more practical than *that*? :P

The intuition here is that it is saying: “Regarding membership in L, if you put a gun to my head and forced me to bet on one of x or y as belonging to L, my money would be on f(x,y).”

Full information:
Read the rest of this entry »

Kedar Dhamdhere
Computer Science Department

Date: Friday, June 24, 2005
Time: 2 pm
Place: Wean 4623
Title: Approximation Algorithms for Metric Embedding Problems

Abstract:
Read the rest of this entry »

Matteo Fischetti
Department of Information Engineering, University of Padova

Friday, July 1, 2005
2:00 – 3:30 pm
388 Posner Hall

Mixed-Integer Cuts from Cyclic Groups: a Computational Study

Abstract:
Read the rest of this entry »

Piotr Indyk
MIT
Embedding Metrics into the Plane

Friday, June 24th
3:30pm
4625 Wean Hall

Abstract:
Read the rest of this entry »

Shuchi Chawla
Computer Science Department

Date: June 22
Time: 1:30 PM
Place: Wean 5409
Title: Graph Algorithms for Planning and Partitioning

Thesis abstract:
Read the rest of this entry »