Thoughts on Blackboard

Posted by Evan at 12:14 pm on June 28th, 2009

For the past two months (today is the last day) I have been taking an online course from LeTourneau University: Microeconomics. Since the entire course has taken place online the Blackboard Academic Suite has played a larger role in this course than in any other college class I have taken; as a result of this extensive use of Blackboard I have now developed a list of complaints and suggestions for the improvement of this software.

My first suggestion for Blackboard is that RSS feeds should be incorporated. The possibilities of allowing students and professors to see at a glance the events they want to know about would significantly improve the usability of Blackboard. Consider the utility of having RSS feeds for global announcements, course announcements, an entire discussion board, individual threads, replies to a post, or for grades! You could even have a massive one for all events related to a course!

I'm not talking about having an RSS feed reader inside Blackboard...no no. I'm talking about allowing students and professors to interact with the Blackboard feeds as they would with any other RSS feed: using the feed reader of their choice.

My second suggestion for Blackboard is actually a collection of user interface issues I have compiled. I think the user (in this case I'm working from the perspective of the student) should be able to customize how certain parts of course pages look. In particular, the left-hand frame with the overview of course links is an ideal spot where the student could choose a few new links to add to the list (my first choice would be the course's gradebook). Also dealing with the left-hand frame, if the instructor doesn't "customize" a page (like the Course Information or Course Documents pages) then it shouldn't show up in the listing! Having useless pages and links like these wastes the students' time, it generates UI noise, and it's very confusing for first time users!




Good Eats

Posted by Evan at 10:25 am on June 21st, 2009

Whether you like to cook or not, I would highly recommend that you watch the show Good Eats, a series which brings both the art and science of cooking together in fun, inventive, and tasty ways. From the Food Network itself Good Eats is described as, "Pop culture, comedy, and plain good eating: Host Alton Brown explores the origins of ingredients, decodes culinary customs and presents food and equipment trends. Punctuated by unusual interludes, simple preparations and unconventional discussions, he'll bring you food in its finest and funniest form." And, amazingly (considering marketing hype these days), I whole-heartedly agree!

If you'll excuse me now, I need to go and update the listing of my favorite TV shows over here. :)




PurpleCMS v0.3 Redesign

Posted by Evan at 11:40 am on June 14th, 2009

I recently finished the HTML templates for several of the "main pages" in PurpleCMS v0.3: the login, the dashboard, the posts menu, and the comments menu. I'm very happy with the design, partly because it's just such a tremendous improvement over what PurpleCMS v0.2 uses - which is pretty much nothing! :) The mockups can be viewed here, although I should warn you that I've only tested the layouts in Firefox 3, Chrome 2, and IE 8, and that the latter fails spectacularly!

I'd love to hear your thoughts on the design, as well as if you happen to notice it working (or not) in any other browsers.

Now that a significant portion of the designing is done I think it's time to put some code in place so that I can see the design in action! One of those motivational things. ;)




No Spam Comm...Oh, Nevermind

Posted by Evan at 1:13 pm on June 7th, 2009

Some time ago I got tired of dealing with spam comments and so I implemented a system for filtering them out. After putting the system in place I then cleaned out the spam comments table in the database so that I would easily be able to see how many spam comments Akismet had caught; at about the same time the number of spam comments I was receiving each day dropped to zero. Literally.

After putting the system in place and messing with the database, I didn't receive a single spam comment for almost six months! Or so I thought. :)

Amusingly, my changes to the database resulted in the inability to add any new entries to the spam comments table. There was a single record in the table with primary key 127, and the next primary key was supposed to be 128 (the value of auto_increment), but every time a comment was added to the table MySQL would return an error saying that there was a duplicate primary key of 127!

There was nothing I could do to convince the spam comments table to accept new records and not give them a (duplicate) primary key of 127: the auto_increment value consistently reverted to 128, no matter what value I specified, and new records were consistently given a primary key of 127. Curious if "resetting" the table would help, I did so and the auto_increment value began to behave properly again, solving the problem. No more duplicate primary keys!




FreeAOE

Posted by Evan at 10:31 am on May 31st, 2009

A new FOSS project began recently: an attempt to create an open source implementation of the old and yet much loved game, Age of Empires II. The "development center" for this project has so far been hosted by Ben at freeaoe.dejai.org; the project description reads, "FreeAOE is an ambitious project which aims at developing a free, open source implementation of the Age of Empires II code base making it more accessible within wider open source communities, providing cross platform support, implementing modern features which were previously unachievable such as a larger number of playable units and a lot more."

Building an open source version of Age of Kings has actually been a subject of discussion on Club, but we didn't take it farther than imagining potential improvements, acknowledging the difficulties involved, and considering the possible legal issues. Now, however, it looks like some people (including several other LeTU students!) have taken the initiative and have gotten the project infrastructure setup. Aemon has posted the first design document (a UML class diagram) here, for those who might be interested.

I'm really looking forward to seeing where this project goes!




PurpleCMS v0.2.3

Posted by Evan at 10:59 am on May 24th, 2009

When I added the ability to automatically generate the RSS feed in PurpleCMS I failed to properly consider all the use cases. In particular, what should happen when a post is only one paragraph long?

This bug caught me on my last post - Summer 2009 - which was my first single paragraph post since upgrading PurpleCMS (actually, it's my only single paragraph post) and it resulted in the RSS feed description for the post consisting simply of " [...]" - not exactly descriptive (or useful)!

In the code to generate the RSS feed I had instructed PHP to pull out the first paragraph by parsing through the text until it came across a newline (\n), at which point it would stop parsing and push the tag and sub-tags to the feed file with the appropriate strings extracted from the post data. But I hadn't considered the case where there are no newlines, primarily because I wasn't expecting to write posts that were only one paragraph long. :)

As a result of the foul-up, however, I went ahead and fixed the feed generation code so that if no newlines are found in the post text then all of the text will be used. Problem solved! (So long as I don't write any really long single paragraph posts!)

Despite not expecting the use case to occur, it would have taken minimal effort to deal with this issue during coding. I could have set up a default descriptor, made sure to check for empty variables before writing to the feed file, or a number of other solutions. Instead Google Reader presented me with a confounding feed entry and it resulted in extra work on my part to fix the mistake. In addition, my error was published "to the world" so that all the other readers of the feed could see the problem and joke at my expense (thank you for not doing so though :D).




Summer 2009

Posted by Evan at 12:18 pm on May 17th, 2009

I am spending the summer of 2009 in the beautiful Pacific Northwest - the Vancouver, WA, area in particular - because it's where Kelsey is living right now. Plans for the summer include hanging out with Kelsey, a microeconomics class (online, thanks to LeTourneau), various personal projects (such as PurpleCMS v0.3), and doing volunteer work as a "job" for the summer. There are lots of other fun things to do as well and I think it's going to be an awesome summer!




Google Docs URL Exploring

Posted by Evan at 1:55 pm on May 10th, 2009

At the end of this past semester there was the normal flurry of activity in preparing for finals: digging out forgotten textbooks, seeking out "misplaced" assignments, working feverishly to complete late assignments, and perhaps even studying for the finals themselves! (Note that I only took part in studying for the finals themselves, this description is from observation of my fellow classmates.) :) Over the past several semesters I have seen a steady rise in the use of Google Docs as a way for the class to collaborate on creating a review sheet for the course, and this semester three of my five classes had Google Doc review sheets: the highest percentage yet.

When I was invited to participate on one of the first review sheets for this semester to be placed on Google Docs, however, I ran into technical difficulties. The email was sent to my @letu.edu address, and this caused the invite link sent to me to include in the URL the string /a/letu.edu. What this little string means is that the system expects authentication to take place through Google Apps for Your Domain (in this case for letu.edu) instead of the standard Google account login. This would be fine if LeTourneau were actually managing the Google Apps for letu.edu, but they aren't (they're working on it). In other words the system might allow you to login (I was able to login during the previous semester) but if you can't get in (as happened to me this time) you're out of luck. Or so I thought.