<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-9704872</id><updated>2024-02-08T06:47:58.056-08:00</updated><title type='text'>Ed Tech UI Guy</title><subtitle type='html'>I&#39;m a User Interface designer working on Ed Tech projects. I&#39;m based at MIT but when I wrote on this site i was working in Berkeley on an online gradebook for the Sakai project. these days you can find me at http://web.mit.edu/benbr/notes/</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://benbr.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default?alt=atom'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default?alt=atom&amp;start-index=26&amp;max-results=25'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>38</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9704872.post-110814573650279246</id><published>2005-02-11T10:13:00.000-08:00</published><updated>2005-02-11T10:15:36.506-08:00</updated><title type='text'>Simplicity</title><content type='html'>&lt;p&gt;I&#39;m moving to a new blog. My apologies to anyone reading, I hope you&#39;ll add my &lt;a href=&quot;http://web.mit.edu/benbr/notes/index.rss&quot;&gt;new RSS feed&lt;/a&gt; to your reader. If you like to read using an old fashioned &#39;web browser&#39; you can visit the website, now called &lt;a href=&quot;http://web.mit.edu/benbr/notes/index.html&quot;&gt;Inline Comments&lt;/a&gt; (it&#39;s a geek site, what do you want?).&lt;/p&gt;&lt;p&gt;My new blog is powered by &lt;a href=&quot;http://www.blosxom.com/&quot;&gt;Blosxom&lt;/a&gt;. I publish static files from my laptop over to my AFS locker on MIT. This means there are no comments or trackback. I have chosen to strip out a lot of other stuff as well, for example the home page displays only the most recent post. In fact, as I mention in the sidebar, the website is really just a life support system for the RSS feed.&lt;/p&gt;&lt;p&gt;Here&#39;s why I did it: Simplicity.&lt;/p&gt;&lt;p&gt;I&#39;d like to continue publishing my notes, for my own record as much as anything, but since I am doing this from work, I can&#39;t devote a lot of time to it. With the setup, I write plain text notes and save them in a folder on my laptop. A chron job runs every 30 minutes and adds new posts to the blog in the background. If I write posts when I&#39;m offline, they get published the next time I have internet access.&lt;/p&gt;&lt;p&gt;This is a fast efficient way to publish. As much as I love love love getting comments, they are another channel of communication to keep track of, and I&#39;ve got a few to many of those. Just email me (note to self - add a cgi-email form to the site). Or blog it yourself, if I know you I&#39;ll see it in your RSS feed.&lt;/p&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110814573650279246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110814573650279246'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/02/simplicity.html' title='Simplicity'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110807432092190226</id><published>2005-02-10T14:22:00.000-08:00</published><updated>2005-02-10T14:25:20.920-08:00</updated><title type='text'>Styling RSS</title><content type='html'>Soon, I will add this tag to my RSS feeds right after the XML-processing instruction:&lt;br /&gt;&lt;br /&gt;&amp;lt;?xml-stylesheet type=&quot;text/css&quot; href=&quot;rss.css&quot;?&amp;gt;&lt;br /&gt;&lt;br /&gt;And create a stylesheet that makes the RSS more human readable. Ideally with a link about how to use it. </content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110807432092190226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110807432092190226'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/02/styling-rss.html' title='Styling RSS'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110797967645908317</id><published>2005-02-09T13:06:00.000-08:00</published><updated>2005-02-09T12:07:56.460-08:00</updated><title type='text'>Earlham College and Sakai</title><content type='html'>&lt;p&gt;I got my Alumni magazine yesterday and saw that Earlham is now using &lt;a href=&quot;http://moodle.org/&quot;&gt;Moodle&lt;/a&gt; as their Course Management System. I looked at &lt;a href=&quot;http://www.earlham.edu/~markp/cms/index.php&quot;&gt;Course Management @ Earlham&lt;/a&gt; website and was startled to read they are also piloting CHEF/Sakai.&lt;/p&gt;&lt;p&gt;Their site has &lt;a href=&quot;http://www.earlham.edu/~markp/cms/evaluations/chef/pilot_student_evals.php&quot;&gt;student&lt;/a&gt;, &lt;a href=&quot;http://www.earlham.edu/~markp/cms/evaluations/chef/pilot_faculty_eval.php&quot;&gt;faculty&lt;/a&gt; and &lt;a href=&quot;http://www.earlham.edu/~markp/cms/evaluations/chef/pilot_sys_manager.php&quot;&gt;administrator&lt;/a&gt; evaluations of CHEF as well as a bunch of interesting reports.&lt;/p&gt;&lt;p&gt;Tom Kirk from Earlham listed several concerns with Sakai.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;strong&gt;Large universities are driving Sakai development, small schools like Earlham could get lost.&lt;/strong&gt;&lt;br /&gt;I don&#39;t think they should worry there too much. MIT and Stanford have a small school feel to them - mostly small classes with lots of faculty/student interaction. Having gone to Earlham and worked for years at MIT, I don&#39;t think the difference is so profound that the schools wouldn&#39;t use the same software.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Sakai is written Java, which they don&#39;t have in-house knowledge of.&lt;/strong&gt;&lt;br /&gt;A very valid concern. Not only is it in Java, it&#39;s in JSF, an obscure Java specialty. Even Java programmers have a big learning curve approaching Sakai development.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Weak internationalization in Sakai&lt;/strong&gt;&lt;br /&gt;It&#39;s hard to teach Arabic with Sakai right now. I know that the Sakai developers are working hard on this, and it&#39;s a strong requirement for the core schools as well - I&#39;m sure it will be resolved soon.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;If I was at Earlham I would favor Moodle as well. At least for now.&lt;/p&gt;&lt;p&gt;Indiana is hitting Sakai with 90,000 users this Fall, I don&#39;t think Moodle could handle something like that. Earlham doesn&#39;t have to worry about scaling too much because they aren&#39;t that big.&lt;/p&gt;&lt;p&gt;Moodle&#39;s got similar featuresto Sakai, more actually. Neither of them has a truly inspirational UI.&lt;/p&gt;&lt;p&gt;If I were running Academic Computing at a small college like Earlham I&#39;d make the same decision - use the skills available in house to work with a PHP environment they can easily host locally. But I hope they keep an eye on Sakai, it is bursting with potential.&lt;/p&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110797967645908317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110797967645908317'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/02/earlham-college-and-sakai.html' title='Earlham College and Sakai'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110782324696056995</id><published>2005-02-07T16:40:00.000-08:00</published><updated>2005-02-08T11:38:10.540-08:00</updated><title type='text'>Designing URIs</title><content type='html'>There&#39;s an interesting post on &lt;em&gt;All in the Head&lt;/em&gt; on &lt;a href=&quot;http://allinthehead.com/retro/245/&quot;&gt;Designing URIs&lt;/a&gt;. I&#39;d like to put more emphasis on URL design when designing applications. We certainly did in Stellar, and we&#39;d like to move that way in Sakai.&lt;br /&gt;&lt;br /&gt;I design URL&#39;s based on site hierarchy rather than function. In &lt;a href=&quot;http://stellar.mit.edu/&quot;&gt;Stellar&lt;/a&gt;, the idea is that a person can navigate by editing the URL if they feel they need to. So the URL pattern is sitetype/department/semester/class/ not the more application based /controller/method/options. I think it&#39;s easier to guess, but I&#39;m not sure.&lt;br /&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110782324696056995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110782324696056995'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/02/designing-uris.html' title='Designing URIs'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110745579061460812</id><published>2005-02-03T10:35:00.000-08:00</published><updated>2005-02-03T10:37:59.616-08:00</updated><title type='text'>Another Bumper Crop</title><content type='html'>I came in this morning to read that the number of &lt;a href=&quot;http://stellar.mit.edu/classlink/index.html&quot;&gt;Stellar class websites&lt;/a&gt; has jumped to 348. Based on past experience, I know there will be more classses added during the first several weeks of the semester. This is another significant increase for Stellar.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://web.mit.edu/benbr/Public/blog/stgrowthSP05.gif&quot; alt=&quot;Graph showing Stellar&#39;s growth&quot; width=&quot;400&quot; height=&quot;300&quot; /&gt;&lt;br /&gt;&lt;br /&gt;We&#39;ve got a good thing going. </content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110745579061460812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110745579061460812'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/02/another-bumper-crop.html' title='Another Bumper Crop'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110737192815753885</id><published>2005-02-02T11:18:00.000-08:00</published><updated>2005-02-02T11:18:48.156-08:00</updated><title type='text'>Wired News: Hide Your IPod, Here Comes Bill</title><content type='html'>Here&#39;s a funny article about the large number of Microsoft employees using iPods. It reminds me of why I like working for a university.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.wired.com/news/mac/0,2125,66460,00.html&quot;&gt;Wired News: Hide Your IPod, Here Comes Bill&lt;/a&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110737192815753885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110737192815753885'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/02/wired-news-hide-your-ipod-here-comes.html' title='Wired News: Hide Your IPod, Here Comes Bill'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110730509014924573</id><published>2005-02-01T16:44:00.000-08:00</published><updated>2005-02-01T16:44:50.150-08:00</updated><title type='text'>Back Button Specs</title><content type='html'>I was digging through the resources on a Sakai website (search would be great improvement for Sakai!), and stumbled upon this gem from Joanne Hallissey. In the first half of 2004 the Sakai tools team spent a lot of time detailing the &quot;gaps&quot; - the functionality present in our institutions learning management systems that weren&#39;t present in CHEF. One gap sumbitted by MIT was &quot;Back Button Works&quot; a.k.a. Gap 266. &lt;br /&gt;&lt;br /&gt;Not surprisingly, many of the UI designers from schools agreed that functional back buttons are important, so that gap became one of the high priority item we asked for in Sakai 1.0. However we got a lot of developer push back on this gap, and the back button still doesn&#39;t work in Saki. During one stage of the debate MIT was asked to provide a breif powerpoint showing of what was meant by &#39;back button works&#39; from a user interface perspective. &lt;br /&gt;&lt;br /&gt;Joanne Hallissey put together this funny spec describing &lt;a href=&quot;http://web.mit.edu/benbr/Public/sakai-sg/Gap266.pdf&quot;&gt;what a functional back button looks like&lt;/a&gt; (PDF 115k) to users. Joanne&#39;s getting promoted into another team at MIT, and I am so going to miss her style. &lt;br /&gt;&lt;br /&gt;(To be fair, I understand that it is hard to build an application so that the back button works unless you built it that way from the start  - as in &lt;a href=&quot;http://stellar.mit.edu/&quot;&gt;Stellar&lt;/a&gt; - so the developers weren&#39;t being completely unreasonable. I still think it is legitimate user expectation that clicking the back button won&#39;t break the website, and it is still an important functionality for Sakai to deliver on.)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110730509014924573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110730509014924573'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/02/back-button-specs.html' title='Back Button Specs'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110727914310194572</id><published>2005-02-01T09:23:00.000-08:00</published><updated>2005-02-01T09:32:52.863-08:00</updated><title type='text'>My Web Browsing, A-Z</title><content type='html'>&lt;p&gt;I think there was a blog meme a while back where people were putting in what got automatically filed into their web browser upon entering one letter from the alphabet. I tried it out, and it&#39;s pretty good portrait of what I&#39;ve been browsing.&lt;/p&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;ampsweb&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;My team&#39;s &lt;a href=&quot;http://basecamphq.com/&quot;&gt;basecamp&lt;/a&gt; site&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.benbrophy.com/&quot;&gt;http://www.benbrophy.com/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Home is where the heart is&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://collab.sakaiproject.org/&quot;&gt;collab.sakaiproject.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Sakai project collaboration sites&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/zenkenobi&quot;&gt;http://del.icio.us/zenkenobi&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Everybody&#39;s favorite link manager&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://everytomorrow.org/archives/2005/01/25/who-lives-in-a-pinapple-under-the-sea/#comments&quot;&gt;http://everytomorrow.org/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;I boldly stated my position in the &quot;Is Spongebob Corrupting Our Youth&quot; debate.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.flickr.com/photos/33394727@N00/&quot;&gt;http://flickr.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Where I share my photos&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;http://godaddy.com&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;I just had to renew the domain for docwalla&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;H&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;hiltonsurvey.com&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;I was nice and filled out the survey after my stay. I prefer the Westin, though.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;K&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://kqed.org&quot;&gt;http://kqed.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;I&#39;ve been checking schedule at the local public TV station&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;L&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.lukew.com/resources/articles/web_forms.html&quot;&gt;http://www.lukew.com/resources/articles/web_forms.html&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;A nice article on designing web forms. I should have blogged it.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;M&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://mindlube.com/products/emacs&quot;&gt;http://mindlube.com/products/emacs&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Part of my nerd-improvement plan&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;N&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.netflix.com/&quot;&gt;http://www.netflix.com/Queue&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Gotta rearrange that queue regularly&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;O&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://oreilly.com/&quot;&gt;http://oreilly.com/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Martha Stewart for nerds&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;P&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;http://phc.prontonetworks.com/&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;This is the login for the wireless at our local cafe&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Q&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quicksilver.blacktree.com/&quot;&gt;http://quicksilver.blacktree.com/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;I must have updated my Quicksilver. That little app has saved me so much time.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;R&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://rivolirestaurant.com/&quot;&gt;http://rivolirestaurant.com/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Making reservations for a night out with Lisa&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;S&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://stellar.mit.edu/S/AMPS/dev/default-1.6.3-dev/index.html&quot;&gt;http://stellar.mit.edu/S/AMPS/dev/default-1.6.3-dev/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Where I go to hunt bugs&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;T&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.theonionavclub.com/&quot;&gt;http://www.theonionavclub.com/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;I need a little break occasionally, alright?&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;U&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.unex-t.com/applestore/&quot;&gt;http://www.unex-t.com/applestore/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Weird pictures of an abandoned apple store in Kuwait&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;V&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.veen.com/jeff/index.html&quot;&gt;http://www.veen.com/jeff/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Would be on my blogroll if o had one&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;W&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://web.mit.edu/&quot;&gt;web.mit.edu&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;I just click here to see if my internet connection is up&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Y&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.yasuhisa.com/could/rss2.xml&quot;&gt;http://www.yasuhisa.com/could/rss2.xml&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;Is this a beautifully formatted RSS feed or what?&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Z&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://www.zeldman.com/&quot;&gt;http://www.zeldman.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;He&#39;s got a steady hold on the &quot;z&quot; in my autofill table.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110727914310194572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110727914310194572'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/02/my-web-browsing-z.html' title='My Web Browsing, A-Z'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110727857616362801</id><published>2005-01-31T20:21:00.000-08:00</published><updated>2005-02-01T12:09:03.213-08:00</updated><title type='text'>Links and Validation</title><content type='html'>We&#39;re at the stage in the gradebook project that every UI designer dreads. I need to provide detailed specs on application behavior, so the programmers have a plan to code to. I usually avoid this job - either I work so closely with a programmer that we just do them verbally as he codes, or the HTML mockups are so complete no specs are needed, or someone else does them.&lt;br /&gt;&lt;br /&gt;The teams I&#39;ve worked on call these specifications the &quot;functional specs.&quot; The document at the beginning of the project that details what the application will and will not do is the &#39;scope statement&#39; or &#39;requirements.&#39; I&#39;m only mentioning this because some teams call that early requirements document the functionals specs. I don&#39;t think that document is specific enough to be called &#39;specs&#39; - I don&#39;t think it should be, either.&lt;br /&gt;&lt;br /&gt;I&#39;ve started functional specs for the Gradebook twice. Both times coincided with disruptions of the project, as the programmers realized that Sakai didn&#39;t have the framework to support the application yet. This time we moved on by scaling back the project drastically to do what we could with what Sakai currently offers new apps. This scale back meant many fewer screens, and much less to write!&lt;br /&gt;&lt;br /&gt;We tried several approaches to writing these specs. By Friday in conversations with the two programmers on the team, Berkeley about what they needed beyond the wireframes, it became clear that 90% of their questions about the wireframes boiled down to initial view, links and validation.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Initial view&lt;/span&gt;: Who can see this page? Are any elements hidden from some people? What&#39;s the default value of the elements, the default sort order of the list? What if nothing has been added yet (e.g the assignment list before any assignments have been added)?&lt;/li&gt;   &lt;li&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Links&lt;/span&gt;: What happens when each link or button on the page is clicked? What page comes up on cancel? Any special messages on submit?&lt;/li&gt;   &lt;li&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Validation&lt;/span&gt;: Any time there are form inputs, what are the acceptable values? What needs to be checked before the form validates?&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;When I write up these answers for each page, they can be used with the wireframes as a complete spec. Any other questions that come up I can clarify adding notes to the wireframe itself. This isn&#39;t absolutely bullet proof, but as Ray (one of the team members at UCB) said &quot;this isn&#39;t IBM.&quot; I can get the specs done is a few painless hours, and the programmers can get to work. I feel liberated from the fear of specs.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110727857616362801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110727857616362801'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/links-and-validation.html' title='Links and Validation'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110676425907103989</id><published>2005-01-26T10:29:00.000-08:00</published><updated>2005-01-26T10:30:59.073-08:00</updated><title type='text'>Learning GNU Emacs</title><content type='html'>I strive every day to be a better nerd. I just got my copy of &lt;a href=&quot;http://www.oreilly.com/catalog/gnu3/&quot;&gt;Learning GNU Emacs, 3rd Edition&lt;/a&gt; from O&#39;Reilly so I can start doing my text editing from the terminal. I love watching experienced Emacs users blaze through text files making updates at top speed. Maybe once I&#39;ve done that I&#39;ll start hosting this blog using &lt;a href=&quot;http://www.blosxom.com/&quot;&gt;Bloxsom&lt;/a&gt; the nerdiest of all blogging tools.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110676425907103989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110676425907103989'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/learning-gnu-emacs.html' title='Learning GNU Emacs'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110670012232031070</id><published>2005-01-25T16:35:00.000-08:00</published><updated>2005-01-25T16:42:02.320-08:00</updated><title type='text'>Sakai Class List</title><content type='html'>&lt;p&gt;You know what I&#39;d want in Sakai before I used it to teach a class? A simple class list tool. The tool would give me page listing all of the students in my class. Here&#39;s some more stuff it should do:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Let me see their pictures&lt;/li&gt;&lt;li&gt;Let me see which ones come from registrar&#39;s list&lt;/li&gt;&lt;li&gt;Let me add people who aren&#39;t on the registrar&#39;s list&lt;/li&gt;&lt;li&gt;Let me add &#39;guests&#39; who can lurk in the class without participating&lt;/li&gt;&lt;li&gt;Let the students decide whether to share their contact info with eachother&lt;/li&gt;&lt;li&gt;Students viewing the page can see themselves plus anyone who&#39;s shared their info.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;That sounds pretty easy right? It seems like a basic requirement for any learning management system. I&#39;d like it right now so I could see who else is a member of some the groups I&#39;m in. I&#39;ll be doing my bit to agitate for it&#39;s inclusion.&lt;/p&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110670012232031070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110670012232031070'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/sakai-class-list.html' title='Sakai Class List'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110643116825155243</id><published>2005-01-21T13:53:00.000-08:00</published><updated>2005-01-22T14:00:07.963-08:00</updated><title type='text'>Releasing on time vs. releasing complete</title><content type='html'>I spent most of last week at a Sakai summit in Indianapolis, with all of the architects, all the designers and all of the board members. The meeting was pretty rough, but productive. The hard part for me was the realization that we were going to have scale back the functionality of the gradebook I&#39;ve been working on for the last 6 months, in order to guarantee a release in June.&lt;br /&gt;&lt;br /&gt;During a late night meeting in a hotel lobby a group colleagues from MIT and Berkeley cut and cut until we had something that could be delivered even with out some of the Sakai features we&#39;d hoped would be in place to support it. The absence of sectioning and flexible user/group management really cut back on what we could do. But the initial release will satisfy the needs of Indiana and Foothills, the schools that will roll out the gradebook in the Fall.&lt;br /&gt;&lt;br /&gt;Despite the difficulty I am happy that we no have a very realistic plan and we&#39;re full of confidence that we will succeed. The initial release of the gradebook will be followed by expanded functionality in a couple more, hopefully reaching the full scale app that I designed by the end of the year. This iterative release schedule will let us do more user testing and will ultimately result in a better gradebook.&lt;br /&gt;&lt;br /&gt;I think the tools I like best in Stellar have benefitted from having limited functionality in an initial release with improvements based on user feed back every 3-6 months.&lt;br /&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110643116825155243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110643116825155243'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/releasing-on-time-vs-releasing.html' title='Releasing on time vs. releasing complete'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110582704735914516</id><published>2005-01-14T16:13:00.000-08:00</published><updated>2005-01-15T14:11:31.480-08:00</updated><title type='text'>OmniGraffle 4</title><content type='html'>I visited MacWorld today, with Marc Brierly from Stanford. Marc is real good about talking to the vendors. We got talking with the project manager for OmniGraffle about their next release. He gave us a little sneak preview of OmniGraffle, which will be released in 3-4 months, and I was really pleased with what I saw.&lt;br /&gt;&lt;br /&gt;I use OmniGraffle mainly for drawing wireframes. The best new feature for that was the Canvas templates. When I&#39;m designing an app I draw each screen on a different canvas in OmniGraffle. The down side, is that the shared navigation elements need to be copied onto each screen. If I decide to change a label in the navigation, I then have to make a change on each screen. The new canvas templates will eliminate that hassle.&lt;br /&gt;&lt;br /&gt;Another tiny feature was the ability to torn a single box into a table. I have wasted a lot of times drawing simulated data tables in OmniGraffle, so this is a major improvement for me.&lt;br /&gt;&lt;br /&gt;There was more nice stuff (the UI got much cleaner, drawing with Bevels, and more) but those two features alone will save me hours. I can&#39;t wait to upgrade.&lt;br /&gt;&lt;br /&gt;(You can see my family blog for more &lt;a href=&quot;http://www.benbrophy.com/archives/2005/01/macworld/&quot;&gt;MacWorld impressions&lt;/a&gt;)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110582704735914516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110582704735914516'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/omnigraffle-4.html' title='OmniGraffle 4'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110582687010291130</id><published>2005-01-13T14:06:00.000-08:00</published><updated>2005-01-15T14:07:50.103-08:00</updated><title type='text'>My CSS Faux Pas</title><content type='html'>&lt;p&gt;I discovered this morning that I have been doing some of my CSS and XHTML coding wrong. I am chagrined&lt;/p&gt;&lt;p&gt;I&#39;ve always coded anchor tags so that they are empty, like this:&lt;/p&gt;&lt;p style=&quot;font-family: Courier, mono-spaced;margin-left: 5px;&quot;&gt;&amp;lt;h3&amp;gt;&amp;lt;a name=&quot;Goose&quot;&amp;gt;&amp;lt;/a&amp;gt;Goose&amp;lt;/h3&amp;gt;&lt;/p&gt;&lt;p&gt;Instead of wrapping them around text like this:&lt;/p&gt;&lt;p style=&quot;font-family: Courier, mono-spaced;margin-left: 5px;&quot;&gt;&amp;lt;h3&amp;gt;&amp;lt;a name=&quot;Goose&quot;&amp;gt;Goose&amp;lt;/a&amp;gt;&amp;lt;/h3&amp;gt;&lt;/p&gt;&lt;p&gt;I did that because otherwise the the Text in the header would look like a link. And that&#39;s because I&#39;d been applying to &amp;lt;a&amp;gt; tags in a sloppy sloppy way. I was applying styles just to &#39;a&#39; instead of &#39;a:link.&#39; &lt;a href=&quot;http://www.nic.fi/~tapio1/Teaching/Ankkurit.php3&quot;&gt;Here&#39;s the right way to do it.&lt;/a&gt; I hang my head.&lt;/p&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110582687010291130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110582687010291130'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/my-css-faux-pas.html' title='My CSS Faux Pas'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110557603204273483</id><published>2005-01-12T16:17:00.000-08:00</published><updated>2005-01-13T13:42:31.793-08:00</updated><title type='text'>XSLT badness</title><content type='html'>&lt;p&gt;I&#39;ve going through templates replacing code like this:&lt;/p&gt; &lt;p style=&quot;font-family: Courier, mono-spaced;&quot;&gt;&amp;lt;a name=&quot;learner&quot;&amp;gt;&amp;lt;/a&amp;gt;&lt;/p&gt; &lt;p&gt;With this:&lt;/p&gt; &lt;p style=&quot;font-family: Courier, mono-spaced;&quot;&gt; &amp;lt;a name=&quot;learner&quot;&amp;gt;&lt;br /&gt; &amp;lt;xsl:text&amp;gt;&lt;br /&gt; &amp;lt;/xsl:text&amp;gt;&lt;br /&gt; &amp;lt;/a&amp;gt; &lt;/p&gt; &lt;p&gt;If I don&#39;t do that, the XSLT processor creates an anchor with no closing tag, breaking the layout. I&#39;ve really lost some respect for XSLT. It&#39;s not keeping up with out design techiques - it&#39;s been really hard to use XHTML.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;: To be fair, I shouldn&#39;t have been blaming XSLT, I should have been blaming the outdated version Xalan (the XSLT processor) that we are using. Sorry XSLT, man, it was the stress talking. I still think you&#39;re way cool.&lt;/p&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110557603204273483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110557603204273483'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/xslt-badness.html' title='XSLT badness'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110555788998114216</id><published>2005-01-11T16:21:00.000-08:00</published><updated>2005-01-12T11:29:33.686-08:00</updated><title type='text'>Samigo and Gradebook sittin&#39; in a tree</title><content type='html'>We held a meeting between the development teams for the Sakai Gradebook and the Sakai Assessment Manager (aka Samigo). This was pretty easy to arrange since we&#39;re all in the bay area now. &lt;br /&gt;&lt;br /&gt;We looked at the two apps in some detail and noted the overlaps and potential conflicts. The Samigo project is much farther along, so hopefully our team will benefit from some of the work they&#39;ve already done. &lt;br /&gt;&lt;br /&gt;Here&#39;s a diagram Ray Davis sketched on the white board to show the differing scopes of the two applications.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://web.mit.edu/benbr/Public/sakai-gb/sma-gb-scope.gif&quot; alt=&quot;Diagram showing overlap in scope between Samigo and Sakai GB&quot; width=&quot;450&quot; height=&quot;239&quot; /&gt;&lt;br /&gt;&lt;br /&gt;It shows that Samigo shouldn&#39;t worry about final grades and the relationships between gradable objects, while the Gradebook shouldn&#39;t worry about how assessments are built and scored. They overlap only where assessments become gradable objects. That looks tiny, but it actually touches a few places in both of our UIs (and has a much bigger impact on back-end programming). Still, it&#39;s manageable and tidy. &lt;br /&gt;&lt;br /&gt;What we&#39;re are doing is is building a little tunnel between modular applications that can exist independently. It&#39;s an interesting approach to have a collection of tools that do their own thing well, instead of one big tool that does it all. It&#39;s an attractive approach to developers collaborating on an open source project. I wonder if the people using Sakai will appreciate that model, or clamor for tighter integration. &lt;br /&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110555788998114216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110555788998114216'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/samigo-and-gradebook-sittin-in-tree.html' title='Samigo and Gradebook sittin&#39; in a tree'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110542063379419444</id><published>2005-01-10T21:17:00.000-08:00</published><updated>2005-01-10T21:17:13.793-08:00</updated><title type='text'>Subversion</title><content type='html'>I just spent an hour of precious evening time doing trying to &lt;a href=&quot;http://www.macdevcenter.com/pub/a/mac/2004/08/10/subversion.html?page=1&quot;&gt;set up  Subversion on my Powerbook.&lt;/a&gt; I got the client going fine, but setting up the server was another story. The instructions in that article weren&#39;t a great help, as they would&#39;ve turned my Apache2 server into a dedicated subversion server, which I don&#39;t want to to do. I know I&#39;m in a bad way when I&#39;m doing terminal commands I don&#39;t understand and editing my Apache configuration file, when I really shouldn&#39;t be. &lt;br /&gt;&lt;br /&gt;I was doing this to have a version history of my ongoing &lt;a href=&quot;http://www.docwalla.com/&quot;&gt;Docwalla wishlist&lt;/a&gt; work, which is vaguely useful. I don&#39;t don&#39;t know why I do these thing where I work on something well outside my nerd-comfort-zone.  I&#39;m probably learning something, but I&#39;m also failing. </content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110542063379419444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110542063379419444'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/subversion.html' title='Subversion'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110514200831694088</id><published>2005-01-07T15:53:00.000-08:00</published><updated>2005-01-07T15:53:28.316-08:00</updated><title type='text'>Basecamp</title><content type='html'>We&#39;ve been using &lt;a href=&quot;http://www.basecamphq.com/&quot;&gt;Basecamp&lt;/a&gt; for the past month to keep track of our projects at AMPS. Mark, the manager for EDDG, has found it very useful for keeping on track of things. I am big fan the UI - I have found very easy to get things done, and I appreciate having RSS feeds for each project so I don&#39;t need to check the site. &lt;br /&gt;&lt;br /&gt;I think the reason Basecamp has worked well for us is that our team works in a similar way to &lt;a href=&quot;http://www.37signals.com/&quot;&gt;37Signals&lt;/a&gt; - we focus on the screens, an by the time we&#39;re done with them a part-time programmer can get the application backend working fairly quickly. The &lt;a href=&quot;http://www.gadgetopia.com/2004/06/29/TheBuildingOfBasecampReview.html&quot;&gt;&quot;The Building of Basecamp&quot; Review on Gadgetopia&lt;/a&gt; gives a good peek into the process, and the vibe of the company that built it (sadly, we don&#39;t have a a super hip HQ or even a foosball table).&lt;br /&gt;&lt;br /&gt;It looks like we are going to use Basecamp at Berkeley to manage the Gradebook project as well. The fact that we could get going with it quickly and the low cost of entry made it an easy decision.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110514200831694088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110514200831694088'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/basecamp.html' title='Basecamp'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110513127723558363</id><published>2005-01-07T12:54:00.000-08:00</published><updated>2005-01-07T12:54:37.236-08:00</updated><title type='text'>Evolution of Stellar</title><content type='html'>I updated the chart on the &lt;a href=&quot;http://stellar.mit.edu/about/index.html&quot;&gt;Evolution of Stellar&lt;/a&gt;. The look switcher, new xhtml/css looks and the style switcher are our big improvements. Stellar is generally pretty stable though, as you can see by the nuber of black dots. There used to be many more empty dots. </content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110513127723558363'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110513127723558363'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/evolution-of-stellar.html' title='Evolution of Stellar'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110513086399967618</id><published>2005-01-07T12:47:00.000-08:00</published><updated>2005-01-07T12:47:44.000-08:00</updated><title type='text'>Mirabile visu</title><content type='html'>There&#39;s another new Stellar look, this one by Joanna. She&#39;s named it &lt;a href=&quot;http://stellar.mit.edu/S/AMPS/dev/mirabile-1.6.3-dev/index.html&quot;&gt;Mirabile&lt;/a&gt;. It makes me think of Superman&#39;s secret HQ in Antarctica.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110513086399967618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110513086399967618'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/mirabile-visu.html' title='Mirabile visu'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110503601302636971</id><published>2005-01-06T10:26:00.000-08:00</published><updated>2005-01-06T10:26:53.026-08:00</updated><title type='text'>Stellar Lime</title><content type='html'>Check out the new &lt;a href=&quot;http://stellar-dev.mit.edu/S/AMPS/dev/lime-1.6.3-dev/index.html&quot;&gt;Lime look&lt;/a&gt; Stacy designed for Stellar. I love it. </content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110503601302636971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110503601302636971'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/stellar-lime.html' title='Stellar Lime'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110497218231966372</id><published>2005-01-05T16:42:00.000-08:00</published><updated>2005-01-05T16:45:01.716-08:00</updated><title type='text'>The JSF Bottleneck</title><content type='html'>New Sakai tools are meant to use &lt;a href=&quot;http://en.wikipedia.org/wiki/JavaServer_Faces&quot;&gt;JavaServer Faces&lt;/a&gt; (JSF) to output the HTML people see when using the tools. We&#39;ve been using &lt;a href=&quot;http://en.wikipedia.org/wiki/XSL_Transformations&quot;&gt;XSLT&lt;/a&gt; to do the same thing in Stellar. I&#39;m having some real difficulty with JSF as a user interface designer.&lt;br /&gt;&lt;br /&gt;I was initially optimistic about JSF. Using standard Sakai tags to create HTML meant that if everyone uses JSF, it will be fairly easy to standardize UI elements in Sakai. And if we were to change one of those elements, a Java programmer could change the JSF tag. The HTML output would change in all Sakai tools.&lt;br /&gt;&lt;br /&gt;But as we approach actual tool developments I&#39;ve got some real problems with the technology. In JSF the HTML that is rendered is buried in Java code. There are lot&#39;s of skilled XHTML/CSS writers in the world, but most of them aren&#39;t Java programmers. So as a UI designer, if I want to change the HTML that users see, I need to communicate that to a Java programmer and wait for them to make the change. Using XSLT I could make those changes easily on my own. So by using JSF we&#39;ve got this really inefficient workflow, where Java programmers, who are usually really busy doing other stuff, are also the gatekeepers for most UI changes. &lt;br /&gt;&lt;br /&gt;Compounding the inefficiency, in Sakai we are planning to use a shared library of Sakai JSF tags. That means in order to get the HTML output modified, I need to write up the request and send it to a programmer I&#39;ve never met, and who is also really busy working a variety of Sakai jobs. &lt;br /&gt;&lt;br /&gt;It seems like we need a better way. I&#39;m committed to outputting style guide compliant HTML, but I&#39;m not sure JSF is the way to go. </content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110497218231966372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110497218231966372'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/jsf-bottleneck.html' title='The JSF Bottleneck'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110475624773451899</id><published>2005-01-03T04:44:00.000-08:00</published><updated>2005-01-03T04:44:07.733-08:00</updated><title type='text'>Programming Language Popularity</title><content type='html'>The &lt;a href=&quot;http://www.tiobe.com/tiobe_index/tekst.htm&quot;&gt;Programming Community Index&lt;/a&gt; attempts to calculate trends in Programming Language Popularity month to month. According to the trends Java had a rough year, while PHP had a great year. I&#39;m not sure the methods are really rigorous, but it&#39;s interesting to see.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110475624773451899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110475624773451899'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/programming-language-popularity.html' title='Programming Language Popularity'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110469583676041378</id><published>2005-01-02T11:57:00.000-08:00</published><updated>2005-01-02T11:57:16.760-08:00</updated><title type='text'>Romeo - Bluetooth Phone accessory</title><content type='html'>I&#39;ve been looking for a little app to to improve communication between my blue tooth cell phone and my powerbook for a while. &lt;a href=&quot;http://www.irowan.com/romeo/&quot;&gt;Romeo&lt;/a&gt; looks like it fits the bill. It has a variety of ways to use your cell phone as a remote control. What I like is it can turn on my screen saver when I walk away from my power book, and it will tell me who&#39;s calling when my phone rings. I might use the phone to page through presentations as well, so i don&#39;t have to stand next to my lap top while I talk.  Simple stuff -  but it&#39;s taken me a while find an app that&#39;s free (as in beer) and does it well. </content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110469583676041378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110469583676041378'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2005/01/romeo-bluetooth-phone-accessory.html' title='Romeo - Bluetooth Phone accessory'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9704872.post-110442386440884429</id><published>2004-12-30T08:24:00.000-08:00</published><updated>2004-12-30T08:24:24.406-08:00</updated><title type='text'>Stellar Validation Results</title><content type='html'>The new Stellar look now &lt;a href=&quot;http://validator.w3.org/check?verbose=1&amp;amp;uri=http%3A//stellar-dev.mit.edu/S/AMPS/dev/default-1.6.3-dev/index.html%2334390&quot;&gt;validates.&lt;/a&gt; I had to go in and change the way announcements are displayed pretty significantly. As an unintended benefit, I think the announcements are slightly easier to read now (not that it was hard before).</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110442386440884429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9704872/posts/default/110442386440884429'/><link rel='alternate' type='text/html' href='http://benbr.blogspot.com/2004/12/stellar-validation-results.html' title='Stellar Validation Results'/><author><name>Ben Brophy</name><uri>http://www.blogger.com/profile/09812064475070572867</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjig8E8quy2eQz-DelLRAFbKxCOMDPkvN4XZmZA-vu7FaPCOMn8lVbf_YeemV3bLUHAeE_hl42Tj7-qmqzV2cZHCPJZeJUAkR9WPiolBS8-uKnSll-SKOhNe1O0-c68AZE/s220/knot.gif'/></author></entry></feed>