Off the Twitter Timeline: Clunky WebCT

Summize provides a great way to troll for what people are saying. Beyond just searching for a term, it provides RSS feeds for terms. I follow several, such Blackboard and WebCT. The WebCT one netted me the following tweet:

annoyed with how clunky webct can be at times – it had to have been designed circa 2000 – amandakern

WebCT products, whether CE or Vista, have always been clunky. Ease of use has always been a problem with the products. Any improvements Vista made were offset by so many more tools and options to make it the net effect more clunky. I’ve seen some sales people and Dr. Cs whip through the navigation like it is easy to use Vista. Practice makes perfect. Too bad the developers can’t be perfect.

Whenever I see schools pick a product, I think the ones who have Ease of use on their list probably have been using WebCT legacy products for years as opposed to Blackboard products. They and their faculty are scarred enough they cannot afford to get it wrong on ease of use again.

Upgrade, Upgrade, Upgrade

Be more secure! Upgrade today.

Want better functionality? Upgrade today.

Save a developer! Upgrade today.

The save a developer thing is the impetus for this post.

The upgrade today mantra annoys me.

  1. Software rarely spends enough time in alpha and beta cycles to to identify all the issues.
  2. People have been so burned by using software in alpha and beta cycles, they are hesitant to try upgrades and help determine the issues.
  3. This lack of attention to the problems ensure, versions 1.0, 2.0, n.0 typically have a ton of unknown problems or are even less secure at times.

Unfortunately, the vendor who makes the application platform we run, Blackboard, has a philosophy to look at new web browsers while they are in beta but not actually work towards fixes for the new browsers until after the products are released. With most releases of Java or supported web browsers (Internet Explorer or Mozilla Firefox), Blackboard heard the complaints by the early adopters and released within a couple months an update which resolved the reported issues.

The students and faculty members fail to understand the issue. I think I do. Blackboard (like WebCT prior) understands there are differences between beta and final. Some of us argue these differences are usually minor. However, this is all asking someone to predict the future which we know is haphazard at best.

Long alpha and beta cycles allow more users to get involved, give those back to the developers, have them fixed before the version release. Burning users with buggy software ensures their lack of faith.

WordPress Error: This file cannot be used on its own.

In posting a comment to a friend’s WordPress blog, it came up with the error:

Error: This file cannot be used on its own.

I was responding to a comment, so I doubted that he broke his blog between making a comment and my response. So I went looking though my own install. Essentially, at a shell I used

find . -exec grep -l "This file cannot be used on its own." {} \;

to locate the file involved is wp-comments-popup.php. This file contains code which checks for the HTTP_REFERER variable has specific values equal to the path and file name for the comments page. If this is not the case, then it should throw this error. The file mentioned in the error is wp-comments.php.

Its seems that I had configured my web browser not to pass the HTTP referrer to web servers, so the check failed and threw this error.

Maybe the WordPress developer who designed this has no idea about the ability of web browsers not to send a referrer. Searching for the error on the WP site yielded nothing. From the tons of comments about people hitting this error, lots of people turn off sending referrers.

Solution for those leaving comments: If you attempt to leave a comment and see this error, then enable referrers. WordPress actually has a decent article on enabling HTTP referrers for a number of different pieces of software.

More friendly error for WP blog owners: Edit wp-comments-popup.php. Change

die (‘Error: This file cannot be used on its own.’);

to

die (‘Learn how to <a href=”http://codex.wordpress.org/Enable_Sending_Referrers”>enable HTTP referrers</a> to fix this. ‘);

User Interface v. SQL Reports and Tracking

Blackboard Vista tracks student activity. This tracking data is viewed as a critical feature of Vista. Our instructors depended on the information until we revoked their ability to run reports themselves due to performance issues. Campus administrators can still generate reports (though some still fail). We doubt the solution to this is Blackboard improving the queries to create the reports. We favor deleting tracking data (data preserved outside of Vista) to resolve the performance issues.

We developed SQL reports to look at the tracking data where the user in question was not a student. Yes, the data is limited, but in determining when and where a user was active, can help determine where to look in logs. When we hit the performance issues we started using these reports where the user interface reports failed to generate.

My understanding was the user interface and SQL reports on tracking were the same. Both looked at the same data. The user interface reports were just sexier wrapped in HTML and using icons. I compared a user interface report to a SQL report. Just prior to doing this, I was thinking, WebCT was stupid for not tracking when students look at the list of assessments. Turns out “Assessment list viewed” was tracked in the user interface all along but was missing in our sqlplus queries. WTF?

The data has to be there. The problem has to be our approach in sqlplus is inadvertently excluding the information from the reports. Because these reports must be accurate, I’ll crack this nut… Or become nuts myself.

CRACKED THE NUT: So, part of the data WebCT collected was the name of pages. There is a page name table which was inner joined to the user action table. So pages without a name were not reported. George suggested an outer join. I placed it on the page name table which now lets us see the formerly missing tracked actions. For the specific case where I found this, I now get all the missing actions.

Considering a Blackboard (it’s their problem now) feature request to ensure every page in the application has a title. I consider it developer laziness (someone else said worthlessness) that some pages might not have something so core and simple.

ANOTHER TRICK: Oracle’s NVL function displays a piece of text instead of a null value. Awesome for the above.

BbWorld 2008 Call for Proposals

Last year, we three DBAs submitted three proposals thinking one might be accepted. All three were. Its daunting to think of something because we are behind the times. We run Vista 3.0.7 while almost everyone else is at least on 4.1.x or higher. Also, we ended up changing our presentations last year because we were not doing things we thought we would be doing. Ugh.

Presenting at BbWorld or Blackboard Developers Conference is a great professional development opportunity and fabulous way to share your knowledge with your peers. BbWorld® ’08Deadline for Proposal Submission: February 22, 2008

Maybe we could do one on:

  • Staying Beneath the Threshold of Doom: 6-8 vs. 40 clusters?
  • Planning the Largest Vista 3 to 4 Migration
  • API Logging: Users Connection to Vista Not in Your Logs
  • Creating an Audit of User Activity

RE 2007: Administering Sakai

.

  • Timeline:
    • Oct 2006: Faculty committee selected Sakai over Blackboard Vista
    • Jan 2007: Developed a roll-out plan.
    • Jun 2007: Pilot
    • Aug 2007: Production
    • Still: Some classes still running on CE4.1, being phased out of use.
  • Needs – no more than 5% of code custom written by GA Tech or professional services.
    • Integration with Banner.
    • Grade book
    • Assignments – no resubmit. Professor had built a section aggregation tool which combined with assignments started killing the servers. Ate all the database connections. Dead in the water Monday afternoon to noon on Tuesday until a code change was implemented.
    • Assessments
    • Course lists would not show unpublished sections. Students were concerned registration failed to take place. Wrote a “More” link to show students the course exists but not yet available.
  • t-square
    • GA Tech – 30,000 users and 10,000 sections. 16,000 users login.
  • Sakai out of the box not very good.
    • Java Server on Tomcat.
    • User administration sux. No way to see what classs a student is taking without an outside application. Created an administrative console, available to machine room admins. Monitors services, processes. Admin console Perl connecting to APIs.
    • Admin role can access every course. Built in admin console to link directly to courses to go help troubleshoot.
  • Unicon – professional services
    • Built t-square implementation.
    • Created some tools.
  • Staffing
    • Systems – OS and hardware – 1 person
    • Application support – 1 person
    • Code developers, Quality Assurance – 3 people
    • Database Administrator – 0.5 people (spends part of time on other projects)
    • Instructional technologists – 2 people
  • Why Sakai? Faculty hate WebCT. Possibilities of integration (aren’t there possibilities for this with Blackboard?).
  • Costs – refused to say. Rumor is 2x our costs for making available for 200,000 students for Blackboard.

Kinda weird. Suggested it was nigh impossible to create accounts except through Banner in WebCT CE. Except the same APIs which create Banner accounts can create guest accounts?

RE 2007: Top Ten Disruptive Trends

Rock Eagle 2007

Keynote – David Cearley, Gartner

Way too many unfamiliar acronyms an terminology. It moved really fast without spending much time to explain anything.

Disruptive trends selected by timing, speed, and likelihood.

  1. Multricore to fabric – Core on processors will double every two years through 2015. Applications will have to adapt to multi-cores. Software licensing around cores, influences purchasing. Sets the stage for hybrid systems where power core and cell processor cores integrated. 3D chip (cube of cores) is coming. Next evolution in blade technology is to have shared memory. Fabric allows dynamic allocation and partioning of memory and processors and I/O for servers.
  2. Tera-Archicture Compute Element – Self-assembling and self-managing applications.
  3. Service Oriented Architecture (SOA) – Developers will create modularized applications for a dynamic, flexible environment. They will need new tools, training, vizualization. Way platforms are built change. Vendors will not off the components, instead, we will need to create these ourselves. Pervasive… It will hit every level of the enterprise.
  4. Open Source – Development tools, Application Servers, Security, Operating Systems currently hold the most maturity. It will have viable alternatives for 80% of software choices.
  5. Web 2.0 – Biggest disruption over next 10 years as it has been the last 10 years. Web 2-.0 – applications built on web tech and design prin that may exploit community based development and social networking and/or new web-based business models. Long-term journey for increasing community, business involvement. Web Oriented Architecture = SOA + WWW+ REST. WOA replaces complex public API calls in current SOA model in favor in simple interfaces.
    1. Mashups – Composite applications on the web. Classic portal model built complex APIs. Mashups use WOA using RSS and Atom to provide feeds of info. Typically used in simple, high value applications.
    2. Web Platform – Everything as a service. Service providers offering infrastructure. Google and IBM offering a service to universities to build applications using the Googleplex infrastructure and IBM support.
    3. Symantic Web – Microformats – Simple way offering metadata.
  6. Social software – RS, podcasts, folksonomies, blogs, wiki, social bookmarks, content rating, prediction parket, taste sharing, social networks. The Participatory Web. Threadless makes user designed teeshirts sold back to users. How can we create communities and harness the power of the collective. Start with a purpose. Nuture the community. Open socially mediated spaces work better than technically managed systems. Have a tipping point plan.
  7. Netowrk Virtual Worlds – Games – People are 3D, have a profound impact on people.
  8. Displays – UIs are changing.
  9. Video – Counterfeit reality – how are you sure video has not changed?

links for 2007-10-23