Priorities - A: high, B: medium, C: low; Status - _: unfinished, X: finished, C: cancelled, P: pending, o: in progress, >: delegated. Covey quadrants - Q1 & Q3: urgent, Q1 & Q2: important
A1XTesting (Computer)
A2XFind out overnight details
B1XCheck out http://www.tryscience.org (E-Mail from Dominique Cimafranca)

1. Playing around with planner-search-notes : 00:14

Categories: None -- Permalink
(defun planner-search-notes (regexp)
  "Return a buffer with all the notes returned by the query for REGEXP."
  (interactive "MRegexp: ")
  (with-emacs-wiki-project planner-project
    (let ((results (planner-search-notes-internal regexp)))
      (if results
             (get-buffer-create (generate-new-buffer-name
                                 (concat "Planner Search: " regexp))))
            (setq emacs-wiki-current-project planner-project)
            (mapcar (lambda (item)
                      (insert (car item) "\t"
                              (cadr item) "\n"))
            (goto-char point-min)
            (display-buffer (current-buffer)))
        (message "No results found.")))))

(defun planner-search-notes-internal (regexp)
  "Return an alist of all notes in daily plan pages containing REGEXP.
The alist is of the form ((REFERENCE . TEXT) (REFERENCE . TEXT))."
  (let ((pages (sort (copy-sequence (emacs-wiki-file-alist))
                     (lambda (a b)
                       (string< (car a) (car b)))))
        page start anchor text results)
    (while pages
      (setq page (caar pages))
      (when (string-match planner-date-regexp page)
          (insert-file-contents-literally (cdar pages))
          (setq start nil)
          ;; Find the first note
          (when (re-search-forward "\\.\\(#[0-9]+\\)\s+\\(.*\\)" nil t)
            (setq start (match-beginning 2))
            (setq anchor (match-string 1))
            (setq title (match-string 2)))
          (while (re-search-forward "\\.\\(#[0-9]+\\)\s+\\(.*\\)" nil t)
            ;; The text between start and (1- (match-beginning 0))
            ;; is the note body.
            (setq text (buffer-substring start (1- (match-beginning 0))))
              (when (string-match regexp text)
                (add-to-list 'results (list (concat page anchor)
            (setq start (match-beginning 2))
            (setq anchor (match-string 1))
            (setq title (match-string 2)))
          (when start
            (setq text (buffer-substring start (point-max)))
            (when (string-match regexp text)
              (add-to-list 'results (list (concat page anchor)
      (setq pages (cdr pages)))

2. Background tabs in Konqueror : 10:49

Categories: None -- Permalink
Finally figured out how to always open tabs in the background.


Settings -> Configure Konqueror -> Behavior (with the Internet icon) -> Automatically activate new opened tabs

3. Firebird / Mozilla and Gnus for mail : 13:39

Categories: None -- Permalink

Interesting snippet on how to get Gnus to be your mail client for Firebird or Mozilla.

  1. Install mozex extension from http://mozex.mozdev.org
  2. Make a shell script called mailer.sh:
         /usr/bin/gnuclient -eval "(gnus-msg-mail \"$to\" \"$sub \")"
  3. configure mozex to call mailer.sh with as
         mailer.sh %a

4. Teaching a Java-based CS1 Course in an Academically-Diverse Environment --- education : 17:39

Categories: None -- Permalink


The Texas Christian University (TCU) Computer Science Department was established in 1981. From the outset, the Department's CS1 course has presented significant teaching challenges due to the wide diversity of student's taking the class. Traditionally, only 25-35% of the students enrolled in the course are computing science majors, the remaining being students from a wide diversity of disciplines, many of which are non-science based. Despite the diversity, it has been necessary for the course, and its content, to be structured to satisfy essential core requirements for students majoring in computer science and computer information science as well as to meet program requirements for the many non-computer science majors taking the course. This paper discusses some of the unique issues associated with teaching a Java-based CS1 course to a very diverse group of students, the majority of which have very unsophisticated problem solving skills, and little or no programming expertise. A representative set of experiments and programming assignments are included.

Their CS1 course is taken by people from lots of courses.

Oooh, interesting idea: experiment component as part of most programming exercises. Students are required to conduct experiments. - questions about the code. This is pretty nice. In fact, they introduce API reading and inheritance early...

Let's experiment with AWT-first next semester. Might be fun.