Headlines for Monday:

  1. Excited about my DemoCamp presentation! (136 words)
  2. Demo camp: Online grading and code review (180 words)
  3. Demo Camp: Quotiki (168 words)
  4. Demo Camp: Broken Tomb: The world's first commercial Smalltalk host (118 words)
  5. PBJ 1.0 (92 words)
  6. Hello world (22 words)
  7. Emacs presentation was a blast! (19 words)



1. Excited about my DemoCamp presentation!: 16:21

I've written a totally small-time presentation thingy that cues me thanks to Emacspeak. ;) Here's the setup code:

(progn ;; Setup
  (defvar democamp/presentation-file "~/democamp.el")
  (defvar democamp/cue-buffer "*DemoCamp*")
  (defun democamp/next ()
    (let (start sexp)
      (with-current-buffer (find-file-noselect democamp/presentation-file)
        (setq start (point))
        (setq sexp (buffer-substring-no-properties start (point))))
      (eval (read sexp))))

  (defun democamp/previous ()
    (let (start sexp)
      (with-current-buffer (find-file-noselect democamp/presentation-file)
        (setq start (point))
        (setq sexp (buffer-substring-no-properties (point) start)))
      (eval (read sexp))))

  (defun democamp/repeat ()
    (let (start sexp)
      (with-current-buffer (find-file-noselect democamp/presentation-file)
        (setq start (point))
        (setq sexp (buffer-substring (point) start))
      (eval (read sexp))))

  (defun democamp/say (text)
    (with-current-buffer (get-buffer-create democamp/cue-buffer)
      (insert text)
      (goto-char (point-min))
      (call-interactively 'emacspeak-speak-buffer)))
  (global-set-key (kbd "") 'democamp/next)
  (global-set-key (kbd "S-") 'democamp/previous)
  (global-set-key (kbd "C-") 'democamp/repeat)

On Technorati: , ,

Random Emacs symbol: gnus-multiple-choice - Function: Ask user a multiple choice question.

2. Demo camp: Online grading and code review: 18:50

The online grading and code review system demonstrated by Greg Wilson's students from the University of Toronto is really cool, and the kind of thing I'd love to see open-sourced and spread. I know my alma mater would find it handy!

Things I particularly like about it:

  • You can highlight a region and attach either a predefined comment or a new comment.
  • The support for rubrics makes grading much easier and more consistent.

Hmm, maybe the student view can be improved by making it easier for students to see all their projects.


  • Per project views, etc.
  • Accessibility guidelines
  • Downloadable spreadsheets
  • Usable for code reviews for open source projects? Won't be grading, of course, but interesting for annotation...

The developers said that Turbogears made development much easier. One of the biggest challenges that faced them was cross-browser Javascript. Another is that the school uses a different authentication system (Kerberos) than the one used by Turbogears.

On Technorati:

Random Emacs symbol: nnvirtual-find-group-art - Function: Return the real group and article for virtual GROUP and ARTICLE.

3. Demo Camp: Quotiki: 19:09

Quotiki has live search for quotes, which would be good if it was more responsive. For example, the search "caesar" just shows the results for "ca" even after a while. Tagging and bookmarking is great, of course, and if I can get a fortune file or RSS for my favorite quotes (there *must* be an RSS feed for this and all the other views), then that would be fun to pull into my blog.

Hmm. They've got some kind of hyperlinking going on when you hover over the quote, which may make it difficult to copy the text.

A podcast of quotes, too. Hmm. It's nice to go into the history of these quotes. =)

Hmm, interesting. Stumbledupon gave them lots of traffic.


  • Digg-style: Add some information to the large graphic elements at the left of each quote.
  • Blog widgets! Lots of blog widgets! QOTD, random quote, stuff for the sidebar...

On Technorati:

Random Emacs symbol: muse-replace-regexp-in-string - Function: Replace REGEXP with REPLACEMENT in TEXT.

4. Demo Camp: Broken Tomb: The world's first commercial Smalltalk host: 19:18

Look! It's the Demo Camp of the Living Dead Languages! =D

Smalltalk is a fun language. I ran into it when a friend told me about Squeak, which is this *totally* awesome little 3D Smalltalk environment which you should try if only so that it can warp your brain.

I would do more Smalltalk, but Squeak is not fun to use when you don't really have a mouse. =) Maybe when I get a proper computer.

But really, it's adorable!

Okay, the demo is back on track. Okay... AJAX for Smalltalk... <laugh>

Murphy's Law unfortunately strikes again. I'll check this out later.


Random Emacs symbol: nnmail-purge-split-history - Function: Remove all instances of GROUP from `nnmail-split-history'.

On Technorati:

5. PBJ 1.0: 19:37

Kudos to the presenter for structuring the presentation for quick and early audience participation, and for taking on the challenge of writing something in realtime! =) He's doing a quick tic-tac-toe game with the help of some PHP code he prepared before and a framework called PBJ, which isn't linked on the Democamp site and is near-impossible to search for.

Look at that, programming with maybe a hundred people in the audience catching missing parens and stuff like that. =)

On Technorati:

Random Emacs symbol: gnus-article-washing - Group: Special commands on articles.

6. Hello world: 19:53

This is a blog entry

On Technorati:

Random Emacs symbol: eshell-script-load-hook - Variable: *A list of functions to call when loading `eshell-script'.

7. Emacs presentation was a blast!: 21:40

Had too much material (of course), but had tons of fun anyway. =) Blew people's minds. Yay!

On Technorati:


  1. Greg Wilson
  2. Andrey Petrov
  3. Andrew Louis
  4. Kristan Uccello - interviewed for vidcast, democamp.ca !!
  5. Steven Dodd - CAST Software Inc.
  6. Olivier Yip Tong
  7. Rohan Jayasekera
  8. David Dougherty
  9. Ryan Coleman, Clay tablet Technologies
  10. Matthew Burpee
  11. Jevon MacDonald firestoker
  12. Ben Vinegar
  13. Sunir Shah
  14. Mark Kuznicki - Remarkk!
  15. Aaron Kim
  16. Kaleem Khan
  17. Shawn Ellsworth - Quotiki
  18. Joshua Wehner
  19. Olivia J. Kerr - IQ PARTNERS
  20. Shvetank Jain - gophernow
  21. Josh Overland - Service Beacon
  22. Gabriel Mansour
  23. Sandy Kemsley
  24. Jamie McQuay
  25. Nilesh Bansal, BlogScope.net
  26. Kevin Robb
  27. Scott Brooks, ConceptShare.com
  28. Bernie Aho, ConceptShare.com
  29. Chris Daoust, ConceptShare.com
  30. Yanni Chiu
  31. Stefan Powell, Standard Interactive
  32. Joyce
  33. Bart Gajderowicz, bartgdev.com
  34. Pema Hegan
  35. Jason Roks, Digital Alchemist
  36. Noah Godfrey
  37. Daniel Chmielewski
  38. ZachCox, Charles River Analytics
  39. Richard McCann
  40. Randy Glenn
  41. Mira Jelic
  42. James M Woods, DictaBrain
  43. Arshad Merali, Arshad Merali Ventures
  44. Craig Hayashi
  45. Alan Hietala
  46. Patrick Dinnen
  47. Matt McCausland
  48. Rob Hyndman
  49. Varun Mathur
  50. Rick Mason NOW Magazine - FITC
  51. James Walker, Bryght
  52. Jordan Christensen, Indigo Books and Music
  53. Steve van Egmond, Tiny Planet
  54. Rob Della Fortuna
  55. Cliff Mees
  56. Sander A. Smith, AutoSSL
  57. Jennifer Smith, Sericon Consulting
  58. Brian Gomes, Interweb Marketing
  59. Wesley Moxam
  60. Matt Solo
  61. citizen_ziggy, digitalpeasants
  62. Taylan Pince
  63. Chris Nguyen, JobLoft.com
  64. Lee Liu, JobLoft.com
  65. Sunny Mokha, JobLoft.com
  66. Andy Lai, JobLoft.com
  67. Bryce Johnson
  68. Neal Pollock
  69. Jyotika Malhotra
  70. Ryan Dewsbury, http://gpokr.com
  71. Patrick Ryan
  72. citizen_ziggy - uberlog.org
  73. Kevin Chan
  74. Estelle Havva - have to leave at 7:30PM
  75. Tim Quinton
  76. Geofrey Josef Flores
  77. Pat Keenan, The Movement
  78. Jorge Aranda
  79. Derek Longmuir - asked about Japanese cat taglines
  80. Jaafer Haidar
  81. Paul Forest
  82. DavidHarris
  83. Mark Ruddock
  84. Tim Smith
  85. Gisela McKay
  86. Martin Cleaver
  87. Libin Pan
  88. Andrew Reynolds
  89. Andrew Burke

E-mail sent

  1. E-mail to Stephen Perelgut
  2. E-mail to "Fernando D. Contreras, Jr."
  3. E-mail to Jerry Rapes
  4. E-mail to jr, rmtan, macoy, Rafael 'Dido' Sevilla
  5. E-mail to Simon Rowland
  6. E-mail to doug.carroll
  7. E-mail to Stephen Perelgut
  8. E-mail to Dominique Cimafranca
  9. E-mail to Simon Rowland
  10. E-mail to Rafael 'Dido' Sevilla