Things DrProject Has To Pay Attention To
Nice post from Brian Benzinger. But I already have (quick check) over 100 links on del.icio.us to things I need to check out as possible additions to DrProject… *sigh*
Nice post from Brian Benzinger. But I already have (quick check) over 100 links on del.icio.us to things I need to check out as possible additions to DrProject… *sigh*
DrProject has been in use in half a dozen courses at two universities for over six months. We’re mostly pleased with it, but it’s clear that the ticketing system needs a major overhaul. Most class projects need nothing more than a shared to-do list, but some (like DrProject and OLM) need the priorities, due dates, and so on that real ticketing systems provide.
Cutting it another way, I’m mostly opposed to telling students they have to use tools—I think it’s more likely to turn students off, and if the tool doesn’t appeal, it should be redesigned. There are times, though, when the whole point of a course is to teach students to work a certain way, and in those cases, I want to have a full-blown ticketing system for them to practice with.
How can we reconcile these competing forces? Options are:
Here’s a proposal, which I’d like everyone out in blogland to poke holes in. It’s inspired in part by Roundup, in which each ticket is its own dynamically-growing mailing list. Every message about the ticket is appended to the “list” (just like comments on tickets are appended to tickets); every time someone is cc’d on a ticket message, they are automatically added to the list, so that it grows to be as big as it needs to be. The system as a whole lets users define aliases for groups of people (like “QA” or “Customer XYZ”), so that groups can be added as well as individuals.
This proposal is also inspired by tagging, in which the vocabulary grows as it needs to. Many tagging systems (like del.icio.us) use typeahead to encourage people to re-use vocabulary; I think every extensible system should try to do that as well.
So, here’s a ticketing system that grows to be just as big and complex as its users need it to be:
Open questions:
See also:
Figure 1 shows that the number of women earning bachelor’s degrees in science & engineering has been climbing of late:

Figure 2 shows that the number earning bachelor’s degrees in Computer Science has been dropping, even while the male numbers have risen:

Anyone want to talk about it at Toronto Technology Week?
Dale Dougherty, at O’Reilly, posted a rather pessimistic article titled “Us vs. Spam: Another War We’re Not Winning“. Scary stats: well over 90% of traffic is junk on some servers. Charging even $0.0001 per message would make spam uneconomic, but as with signing and other proposals, it seems socially infeasible.
Very indirectly, I came across a link to the SPA Conference in Cambridge (UK) today. Looks very cool — I’d never heard of it before, but wish I was going. Anyone been? Have experiences to report?
I should have posted this weeks ago: IBM’s Fran Allen won this year’s Turing Award for her work on optimizing compilers. Here are all the winners to date—I’m embarrassed to admit that I recognize fewer than half the names.
| 2006 | Frances E. Allen | For pioneering contributions to the theory and practice of optimizing compiler techniques that laid the foundation for modern optimizing compilers and automatic parallel execution. |
| 2005 | Peter Naur | For fundamental contributions to programming language design and the definition of Algol 60, to compiler design, and to the art and practice of computer programming. |
| 2004 | Vinton G. Cerf | For pioneering work on internetworking, including the design and implementation of the Internet’s basic communications protocols, TCP/IP, and for inspired leadership in networking. |
| Robert E. Kahn | For pioneering work on internetworking, including the design and implementation of the Internet’s basic communications protocols, TCP/IP, and for inspired leadership in networking. | |
| 2003 | Alan Kay | For pioneering many of the ideas at the root of contemporary object-oriented programming languages, leading the team that developed Smalltalk, and for fundamental contributions to personal computing. |
| 2002 | Leonard M. Adleman | For their ingenious contribution for making public-key cryptography useful in practice. |
| Ronald L. Rivest | For their ingenious contribution for making public-key cryptography useful in practice. | |
| Adi Shamir | For their ingenious contribution for making public-key cryptography useful in practice. | |
| 2001 | Ole-Johan Dahl | For ideas fundamental to the emergence of object oriented programming, through their design of the programming languages Simula I and Simula 67. |
| Kristen Nygaard | For ideas fundamental to the emergence of object oriented programming, through their design of the programming languages Simula I and Simula 67. | |
| 2000 | Andrew Chi-Chih Yao | In recognition of his fundamental contributions to the theory of computation, including the complexity-based theory of pseudorandom number generation, cryptography, and communication complexity. |
| 1999 | Frederick P. Brooks | For landmark contributions to computer architecture, operating systems, and software engineering. |
| 1998 | James Gray | For seminal contributions to database and transaction processing research and technical leadership in system implementation. |
| 1997 | Douglas Engelbart | For an inspiring vision of the future of interactive computing and the invention of key technologies to help realize this vision. |
| 1996 | Amir Pnueli | For seminal work introducing temporal logic into computing science and for outstanding contributions to program and system verification. |
| 1995 | Manuel Blum | In recognition of his contributions to the foundations of computational complexity theory and its application to cryptography and program checking. |
| 1994 | Edward Feigenbaum | For pioneering the design and construction of large scale artificial intelligence systems, demonstrating the practical importance and potential commercial impact of artificial intelligence technology. |
| Raj Reddy | For pioneering the design and construction of large scale artificial intelligence systems, demonstrating the practical importance and potential commercial impact of artificial intelligence technology. | |
| 1993 | Juris Hartmanis | In recognition of their seminal paper which established the foundations for the field of computational complexity theory. |
| Richard E. Stearns | In recognition of their seminal paper which established the foundations for the field of computational complexity theory. | |
| 1992 | Butler W. Lampson | For contributions to the development of distributed, personal computing environments and the technology for their implementation: workstations, networks, operating systems, programming systems, displays, security and document publishing. |
| 1991 | Robin Milner | For three distinct and complete achievements: 1) LCF, the mechanization of Scott’s Logic of Computable Functions, probably the first theoretically based yet practical tool for machine assisted proof construction; 2) ML, the first language to include polymorphic type inference together with a type-safe exception-handling mechanism; 3) CCS, a general theory of concurrency. In addition, he formulated and strongly advanced full abstraction, the study of the relationship between operational and denotational semantics. |
| 1990 | Fernando J. Corbato | For his pioneering work organizing the concepts and leading the development of the general-purpose, large-scale, time-sharing and resource-sharing computer systems, CTSS and Multics. |
| 1989 | William (Velvel) Kahan | For his fundamental contributions to numerical analysis. One of the foremost experts on floating-point computations. Kahan has dedicated himself to “making the world safe for numerical computations.” |
| 1988 | Ivan Sutherland | For his pioneering and visionary contributions to computer graphics, starting with Sketchpad, and continuing after. Sketchpad, though written twenty-five years ago, introduced many techniques still important today. These include a display file for screen refresh, a recursively traversed hierarchical structure for modeling graphical objects, recursive methods for geometric transformations, and an object oriented programming style. Later innovations include a “Lorgnette” for viewing stereo or colored images, and elegant algorithms for registering digitized views, clipping polygons, and representing surfaces with hidden lines. |
| 1987 | John Cocke | For significant contributions in the design and theory of compilers, the architecture of large systems and the development of reduced instruction set computers (RISC); for discovering and systematizing many fundamental transformations now used in optimizing compilers including reduction of operator strength, elimination of common subexpressions, register allocation, constant propagation, and dead code elimination. |
| 1986 | John Hopcroft | For fundamental achievements in the design and analysis of algorithms and data structures. |
| Robert Tarjan | For fundamental achievements in the design and analysis of algorithms and data structures. | |
| 1985 | Richard M. Karp | For his continuing contributions to the theory of algorithms including the development of efficient algorithms for network flow and other combinatorial optimization problems, the identification of polynomial-time computability with the intuitive notion of algorithmic efficiency, and, most notably, contributions to the theory of NP-completeness. Karp introduced the now standard methodology for proving problems to be NP-complete which has led to the identification of many theoretical and practical problems as being computationally difficult. |
| 1984 | Niklaus Wirth | For developing a sequence of innovative computer languages, EULER, ALGOL-W, MODULA and PASCAL. PASCAL has become pedagogically significant and has provided a foundation for future computer language, systems, and architectural research. |
| 1983 | Dennis M. Ritchie | For their development of generic operating systems theory and specifically for the implementation of the UNIX operating system. |
| Ken Thompson | For their development of generic operating systems theory and specifically for the implementation of the UNIX operating system. | |
| 1982 | Stephen A. Cook | For his advancement of our understanding of the complexity of computation in a significant and profound way. His seminal paper, “The Complexity of Theorem Proving Procedures,” presented at the 1971 ACM SIGACT Symposium on the Theory of Computing, Laid the foundations for the theory of NP-Completeness. The ensuing exploration of the boundaries and nature of NP-complete class of problems has been one of the most active and important research activities in computer science for the last decade. |
| 1981 | Edgar F. Codd | For his fundamental and continuing contributions to the theory and practice of database management systems. He originated the relational approach to database management in a series of research papers published commencing in 1970. His paper “A Relational Model of Data for Large Shared Data Banks” was a seminal paper, in a continuing and carefully developed series of papers. Dr. Codd built upon this space and in doing so has provided the impetus for widespread research into numerous related areas, including database languages, query subsystems, database semantics, locking and recovery, and inferential subsystems. |
| 1980 | C. Antony R. Hoare | For his fundamental contributions to the definition and design of programming languages. |
| 1979 | Kenneth E. Iverson | For his pioneering effort in programming languages and mathematical notation resulting in what the computing field now knows as APL, for his contributions to the implementation of interactive systems, to educational uses of APL, and to programming language theory and practice. |
| 1978 | Robert W. Floyd | For having a clear influence on methodologies for the creation of efficient and reliable software, and for helping to found the following important subfields of computer science: the theory of parsing, the semantics of programming languages, automatic program verification, automatic program synthesis, and analysis of algorithms. |
| 1977 | John Backus | For profound, influential, and lasting contributions to the design of practical high-level programming systems, notably through his work on FORTRAN, and for seminal publication of formal procedures for the specification of programming languages. |
| 1976 | Michael O. Rabin | For their joint paper “Finite Automata and Their Decision Problem,” which introduced the idea of nondeterministic machines, which has proved to be an enormously valuable concept. Their (Scott & Rabin) classic paper has been a continuous source of inspiration for subsequent work in this field. |
| Dana S. Scott | For their joint paper “Finite Automata and Their Decision Problem,” which introduced the idea of nondeterministic machines, which has proved to be an enormously valuable concept. Their (Scott & Rabin) classic paper has been a continuous source of inspiration for subsequent work in this field. | |
| 1975 | Allen Newell | In joint scientific efforts extending over twenty years, initially in collaboration with J. C. Shaw at the RAND Corporation, and subsequentially with numerous faculty and student collegues at Carnegie-Mellon University, they have made basic contributions to artificial intelligence, the psychology of human cognition, and list processing. |
| Herbert A. Simon | In joint scientific efforts extending over twenty years, initially in collaboration with J. C. Shaw at the RAND Corporation, and subsequentially with numerous faculty and student collegues at Carnegie-Mellon University, they have made basic contributions to artificial intelligence, the psychology of human cognition, and list processing. | |
| 1974 | Donald E. Knuth | For his major contributions to the analysis of algorithms and the design of programming languages, and in particular for his contributions to the “art of computer programming” through his well-known books in a continuous series by this title. |
| 1973 | Charles W. Bachman | For his outstanding contributions to database technology. |
| 1972 | E. W. Dijkstra | The working vocabulary of programmers everywhere is studded with words originated or forcefully promulgated by E.W. Dijkstra – display, deadly embrace, semaphore, got-to-less programming, structured programming. But his influence on programming is more pervasive than any glossary can possibly indicate. |
| 1971 | John McCarthy | For his contributions to artificial intelligence. |
| 1970 | J. H. Wilkinson | For his research in numerical analysis to facilitiate the use of the high-speed digital computer, having received special recognition for his work in computations in linear algebra and “backward” error analysis. |
| 1969 | Marvin Minsky | For his contributions to artificial intelligence. |
| 1968 | Richard Hamming | For his work on numerical methods, automatic coding systems, and error-detecting and error-correcting codes. |
| 1967 | Maurice V Wilkes | Professor Wilkes is best known as the builder and designer of the EDSAC, the first computer with an internally stored program. Built in 1949, the EDSAC used a mercury delay line memory. He is also known as the author, with Wheeler and Gill, of a volume on “Preparation of Programs for Electronic Digital Computers” in 1951, in which program libraries were effectively introduced. |
| 1966 | A. J. Perlis | For his influence in the area of advanced programming techniques and compiler construction. |
Prof. Ross Anderson (Cambridge University) is lecturing on the economics of information security on Thursday, March 15, 3:15 p.m., in SF 1105. Promises to be engaging…
Jeffrey Palermo describes a change that affected 200 files, but took only 7+N keystrokes (where N is the length of a namespace, typed in once). Piaw Na announces a new release of gtags, a shared code tagging tool developed at Google, and now available on Google Code. The future is here, it’s just not evenly distributed…
I spent some time this morning cleaning up and reorganizing my mail folders, which are stored on the Computer Science department’s server. I use Thunderbird as a client on both Windows and Mac, and the Windows machine in my office had no trouble at all figuring out the new arrangements. When I got home, though, things went south. I:
At this point I’m stuck. All I can think of is that somewhere on my Mac, Thunderbird is storing a configuration or state file that I need to delete, but I’m damned if I can find it. There’s nothing obvious in my home directory—anyone have any pointers?
One of my students asked me to be a reference for his application to be a student volunteer at this summer’s SIGGRAPH (the big annual computer graphics conference). I was happy to do it, but when I clicked on the link SIGGRAPH sent me, it took me to a registration form which asked for (among other things) my passport number—as a required field (with a little red star beside it). As if that wasn’t bad enough, I was also offered a link to an unsecure version of the form, just in case the site was having problems. *sigh*
Many apologies for the confusion. We experienced a technical problem today which caused the review form to appear behind a login screen. We just resolved the problem and the link you received in the e-mail should now function correctly.
The passport field appears on the general sign-up for new SIGGRAPH accounts and is NOT a required field. We certainly never intended to require references to create a SIGGRAPH account just to review an applicant, and we apologize for the confusion!
Thank you for your patience. Please try the link again and let me know if you have any further questions or problems.
This optional field was added to the electronic submission system in response to the massive number of visa letters that SIGGRAPH is asked to produce each year for our foreign student volunteers and attendees. For many, they have to produce an official letter from the conference as part of a visa application to get into the country to attend. By compiling this information on the front-end, we have helped streamline that process for our international attendees. If that is not an issue for any participant, or they would rather handle the data transfer in another way, they are welcome to do so.
For any questions related to ACM SIGGRAPH, The SIGGRAPH 2007 Conference, or the Student Volunteer Program, please tap us directly, we are delighted to provide the information you need to participate.
ACM SIGGRAPH Director for Communications – Mk Haley mk_haley@siggraph.org
Recent Comments