-
Operant Conditioning by Software Bugs
Have you ever used a new program or system and found it to be obnoxiously buggy, but then after a while you didn’t notice the bugs anymore? If so, then congratulations: you have been trained by the computer to avoid some of its problems. For example, I used to have a laptop that would lock…
-
Is the Browser the New OS?
Yes, this is an old question. I still think it’s interesting. Disclaimer: I haven’t tried out a Chromebook yet. First, let’s look at the situation as of late 2012. The applications I use generally fall into three categories: Web-based. Native, but easily available on Windows, Mac, and Linux. These include a file browser, a shell, Emacs,…
-
Software Testing Using Easy Cases
Chapter 2 of Street Fighting Mathematics is called Easy Cases. The idea is very simple: A correct solution works in all cases, including the easy ones. Solution 2 in this writeup of the napkin ring problem is a fun example of applying this principle. Easy cases can be exploited for software testing as well as…
-
Oracles for Random Testing
Random testing is a powerful way to find bugs in software systems. However, to actually find a bug it’s necessary to be able to automatically tell the difference between a correct and an incorrect execution of the system being tested. Sometimes this is easy: we’re just looking for crashes. On the other hand, there are…
-
How Does Formal Verification Affect Software Testing?
This has been a difficult piece to write and I’ve already deleted everything and started over more than once. So, I’m going to take the easy way out and structure it as a sequence of questions and answers. What does formal verification mean? Something like “using mathematical techniques to convincingly argue that a piece of…
-
Minimum Pubs for a PhD in CS?
Some of the faculty in my department would prefer that we don’t award a PhD to any candidate who hasn’t published at least three good papers. I’m curious if this is common and if people generally have strong feelings either way about this kind of requirement? Some web searching turned up not much information: UConn…