api

You are currently browsing articles tagged api.

It has been a hectic week. A recap…

Java certificate fix - Yesterday, August 23rd, the certificate distributed in various Java applets expired. The community discovered the issue and informed Blackboard who put out a fix for the more current products on August 15th. Many customers are leery of having such little lead time to test, verify, and install a fix. Well, Vista 3.0.7.17 was also reported to have the problem, but Blackboard didn’t provide a fix until the 20th after I got my TSM to verify it really still is a problem on the 18th. (The corrected 3.0.7.17.8 version was provided August 21st. Why is in the next paragraph.)

The fix for Vista 3 required us to be on 3.0.7.17.8 (hotfix 8 which we had not yet applied), had references to the “webctapp” directory (in Vista 3 it is applications), and distributed a webct.sh script to add updateWar which didn’t work with Vista 3. FAIL. Thankfully we have modified War files in the past, so adding the updates was more work and accomplished before Blackboard provided a corrected version.

To see the Java certificates in Windows: Control Panel > Java > Security > Certificates. The Blackboard ones are verified by Thawte (the Certificate Authority). The old one is issued to Blackboard. The new one is issued to dc.blackboard.com.

Vista 3.0.7.17.8 - This hotfix was released a couple weeks ago. However, since the priority has been the migration to Vista 8, this was on hold. The previous problem made us step up and throw this into production. The testers went to heroic efforts to get this and the certifcate fix tested. Testing was mixed.

  1. Losing session cookie because of Office 2007 in Internet Explorer. Happened less often post fix, but still happens in some cases.
  2. Autosignon MAC2. Mode to allow insecure MAC works to give the one school using it time to correct update their portal to use MAC2. Originally the plan was to let them work out MAC2 in test.

Slammed by our users…

  1. systemIntegrationApi.dowebct - The school using the autosignon wanted to have the correct consortiaId to create the MAC. Some time back in January they started calling this any time users tried to login because a handful (guess was ~12) have had their username changed. So the autosignon failed. Yes, they were sent us 25,000 requests in a busy day (about 20% of the queues were working on these during the day) to handle potential 12 problems in a term. FAIL.
  2. pmSelfRegister.dowebt - One of the clusters started to have issues. Two nodes went crappy. I looked at the Weblogic console and found all of the failing nodes had no free spots in the queues. 90% of the queues were working on these. Much of this is because the requests were hanging around for at least 4800 seconds (an hour is 3600 seconds). At about 6000 seconds the cluster recovered when the queues cleared.I think the queues cleared because I changed to false a couple settings:
    • Allow users to register themselves as a Student in a section = false
    • Allow users to register themselves as an Auditor in a section = false

    As I recall, we only had about 22 queue spots open (out of 308) across the whole cluster. We got lucky.

Monopoly Fears

Something brought up my abandoned Friendster blog, which had a link to fiftymillimeter which used to be my favorite photography site by people in Athens prior to me even moving here. Why “used to be”? Well over a year ago, they stopped posting to the site. Sad, I know. Still, I was curious, Where are they now? I ran across Twitter-Free Fridays looking for Toby Joe Boudroux.

What I found interesting about this post was his approach to whether or not Twitter is or is not a monopoly. I agree with the first part. The last sentence surprised me.

Being at the top of an emerging market segment does not constitute a monopoly. Unfair practices, abuses of that dominance to limit fair access to resources and outlets – those are monopolistic. If Twitter struck a deal with Mozilla that blacklisted other microblogging services, we’d have something to talk about. Opening APIs freely and allowing supplemental markets to emerge hardly seems consistent with railroad barons.

Supplemental markets would be the equivalent of a railroad baron allowing new train stations or business to sell to the customers using the trains. Open APIs allow other corporations to find a niche. However, they are not a direct competitor. For example, with Twitter, the API is not used by Pownce or Jaiku. Friendfeed who fits in both the lifestream market and the micro-blog markets does use the API. More commonly, the Twitter API is used by companies like Summize or Twitpic in searching or posting content.

If economists or lawyers determining whether a company with a large market share is monopolistic are influenced by open APIs creating supplemental markets, then this could be a strategy to avoiding DOJ further scrutiny? At Bbworld / DevCon, a frequent point of pride from the Blackboard folks was the anticipation of Bb9 to have a more open, accessible, and useful API. This API will be able to do everything the current one in the Classic line can currently do. The anticipated additions to this API could benefit many supplemental markets. (Let’s just forget at the same time, they are saying API for the CE/Vista products is a dead-end development path.)

Scoring points with the DOJ (and more importantly the court of public opinion) could never hurt while trying to sue a much smaller competitor like Desire2Learn. Some characterize Bb as not likely to stop until D2L no longer exists. Who knows? I doubt even Chasen knows. Still, it would far fetched to characterize just this as making Blackboard a monopoly.

There are pleny of alternative LMS products to the Blackboard Learning System: Moodle, Sakai, ANGEL, eCollege, and many, many more. Heck, the rumor mill would indicate more and more higher education institutions are considering and even changing to the alternatives. Blackboard acknowleges institutions likely run multiple products. With Bb 9, they encourage people to use the Learning Environment Connector to single sign-on to into the other products. With the Bb9 frame remaining so they know who got them there, of course.  Don’t forget about a Personal Learning Environment,

Certainly I dislike that Blackboard hears my objections and continues to act in ways contrary to them. However, that happens within my own team. Neither group are criminal for ignoring me.

I should know better than to trust documentation over my own intuition. Or to change based on what others tell me.

I followed:

Log in to Vista Enterprise as a Server Administrator or Institution Administrator.
NOTE: To set glcid, you must log in as a Server Administrator.

From the Administration tab, click the Utilities tab.
Click Settings.

Under System Integration, click System Integration API IMS….

Enter values to configure settings. See the table that follows, Standard and IMS Adapter
details on each value.

Click Save Values. The Settings screen appears and the settings are configured.

Standard and IMS Adapter Settings
The following table describes the parameters you can set using the administration user interface.
Setting Description
GlcId

• Stands for global learning context identifier.
Set by Server Administrator only.
Required to run IMS and Standard adapter
commands.

• Identifies the institution in which the adapter
command runs
• Automatically assigned by Vista Enterprise
upon creation of an institution

Of course, it doesn’t say which Glcid, right? After all, every learning context has a Glcid. Since, at the time I only had one institution (before I created the 54 others), I set the Glcid to the one for that institution. Should it be the Glcid for the server or domain learning context? If so, then couldn’t Blackboard just pre-populate it at the time of install? Why do I need to put it there?

At the same time, I didn’t believe it necessary because I had seen IMS imports work without the Glcid set at the server learning context. They worked because the command used to run the IMS import has the glcid.

The result? My imports went into the the institution with the Glcid set at the server learning context, despite the defining in the command I ran to use a different Glcid. Removing the Glcid from the server learning context settings allowed the command to work as I thought it should.

So much for a pristine, clean database.

Mashable has an interesting article about why Twitter persists despite frequent performance issues: “Less is more. Simplicity is power.” By providing little more than an API, upon which numerous others have built tools, it doesn’t so directly compete with other services.

I wonder if perhaps this is the right approach for a learning system? One size no longer fits all. Blackboard Vista is chock full of dozenss of tools and hundreds of settings. This made their products a behemoth to administrate. A lighter system where only the tools people wish to use could help.

On the flip side, a project like GeorgiaVIEW serves thousands of faculty members. All the tools in Blackboard Vista are not enough to satisfy all of the faculty. They want us to integrate with dozens of third party tools, namely the one which will make their class work. An easy API to write against would ultimately mean we would have more tools than we struggle to administrate today.

I guess this is my rejection of the Personal Learning Environment. As great as it is for students and the faculty, the IT who have to support them will fail to support them.