The Evolution of CS Papers


This post was prompted by a Facebook interaction regarding Dijktra’s famous “GO TO Statement Considered Harmful” article, a letter he sent to the editor of CACM back in 1968. Seen through the lens of currently accepted research reporting practices, Dijsktra’s article reads like a technical rant, something that we might find in today’s blogs, but that have been essentially abolished from peer-reviewed research publications. Here’s a person stating his strong opinion about a language construct that he dislikes, starting with a strong premise about the negative effects of that construct without presenting any data whatsoever supporting that premise! As far as anyone can tell, the premise was based entirely in his own experience and intuition — which happened to go against opinions of other famous Computer Scientists at the time like Knuth. Granted, this was just a letter to the editor, not a full-blown technical article. However, the influence of this letter is unquestionable! Following Dijsktra’s rage against GO TOs, practically all programming languages that came after it avoided that construct, and the ones that didn’t, work hard at hiding it from programmers, sort of like “oops! sorry! there’s goto, but try to avoid it, ok?” (Also, this letter was single-handedly responsible for starting the meme “X considered harmful” that has been going on in CS since then, although credit for that meme goes, not to Dijkstra, but to the CACM editor, who spiced the title a little bit from its original “A case against the GO TO statement.”)

Whether GO TO is harmful or not, is besides the point. In the process of writing my upcoming book, I spent a considerable amount of time over the past year looking through old CS literature. It’s fascinating! The topic of this post is the evolution of methods in Computer Science research for the past 60 years, and the changing ways by which ideas are considered well-argued for.

Continue reading

Posted in academia, research | 5 Comments

Immersive VR is here and it's awesome

oculus 041

Virtual Reality is one of those ideas that has been part of the tech folklore for ever, but that haven’t quite taken off. Popularized in the 80s, VR has seen a number of ups and downs, hits and misses, hypes and backlashes — the most recent one being the rise and fall of Second Life. With VR, it’s always been two steps forward, one step back. Suddenly, a programmable, kickstarter-funded $300 headset falls in our laps from out of nowhere, and… it’s another two or four steps forward!

Continue reading

Posted in simulation, virtual reality | 4 Comments

The Story of a Journal Proposal

This is the story of Jan Vitek and I approaching the ACM Publications Board with a proposal for publishing the OOPSLA papers in a journal. Even though we did this together, the analysis and opinions in this post are mine alone.

TL;DR: if there’s any lesson to be learned from the ACM Publications Board’s policies on scientific publication is this: pay attention to their policies, then do the exact opposite.

[WARNING: this post is irrelevant for all but academics]

Continue reading

Posted in academia, conferences, research | 20 Comments

The Future of Conferences


I’ve seen the future of conferences. And it runs my code!

Continue reading

Posted in conferences, simulation, social software systems | 12 Comments

Open Access = Authors Pay

The market of scientific publications is such an organic mess, there’s no end to topics that can be beaten over their heads. This post is about “open access” publications. Lately there has been a push back against publishers that keep their content behind pay walls, coupled with a big favoritism for publishers that offer their content in “open access.” There’s no such thing as free lunch, ever. That’s the case here too. If readers don’t pay publishers of “open access” content, someone needs to pay. Guess who?

Continue reading

Posted in academia, commentary | 6 Comments

CS Conference Simulation

Serving as Program Committee Chair of OOPSLA 2013 has been an enlightening experience, and I’d like to share one more insight I’ve gained (I wrote about another one here). Specifically, I want to focus on the acceptance rate.

Continue reading

Posted in academia, conferences, simulation | 1 Comment

Conferences vs. Journals: The Hidden Assumptions

Some conversations I’ve been having over the past year led me to a deeper exploration of the issue of conferences vs. journals in Computer Science. The debate, so far, seems to be missing a few critical observations regarding scientific journals and our own ACM, and therefore it is somewhat incomplete. This essay lays out my thoughts on it.

Warning: No one except academics cares about this!

Continue reading

Posted in academia, commentary | 9 Comments

Design and Implementation of a Virtual Collaboration Environment


Some time ago, 2 of my PhD students were facing the prospect of going away to do their research elsewhere for a few months. In both cases, and for different reasons, it made a lot of sense for them to go. But we needed to stay in touch, and I needed to keep tabs on what they were doing. These days, with tools like Skype and Google docs, collaborating over the Internet is really easy. However, neither Skype nor Google docs are designed for supporting the specific kinds of interactions that go on between advisor and student, and within small academic units (aka “Labs”). First, we need to run them both independently. Second, and more importantly, we can’t really share a PDF or powerpoint document in the way that we do when we are working face to face going through a paper or a presentation — pointing, highlighting, using words like “here”, “this paragraph”, “this picture”, “go to next page”, etc. So I built my own virtual lab.

Continue reading

Posted in academia, social software systems | 4 Comments

Trolls, Bullies and People with Personality Disorders

Recently, a number of women in Tech have come out publicly describing horribly close encounters with misogyny and outright aggression on the Internet. I’m not talking about subtle attitudes of discrimination that don’t hurt immediately but that hurt women’s careers in the long run  — those are real discriminators, I’m afraid, and I’ll write about them some other time. This post is about explicit hostility and intimidation of the kind we have seen happening with Kathy Sierra, and more recently with Sarah Parmenter.

Continue reading

Posted in life | Comments Off on Trolls, Bullies and People with Personality Disorders

Handling large data in MySQL

In a very large DB, very small details in indexing and querying make the difference between smooth sailing and catastrophe.

[This post was inspired by conversations I had with students in the workshop I’m attending on Mining Software Repositories. It has been updated a few times.]

Continue reading

Posted in advice, software repositories | Tagged , | 5 Comments