Jeff Longland

Relax, don't worry – have a home brew!

Posts Tagged ‘Add new tag

Thoughts on Blackboard's NG SDK

with one comment

Well, BbWorld’08 was a total disaster as far as live-blogging is concerned. Throughout the conference halls there were Bb signs: “We speak blog”, “Blog spoken here”, etc. But wireless in the sessions was an additional cost and quite a cost at that – $39.95 for four hours of wireless! Blackboard did have an Internet lounge but almost every visit resulted in conversations with others – which is awesome – but not helpful in live-blogging the event. The conversations are more valuable than my blogging of the event, but if I had reasonable access in the sessions themselves it would have been a different story.

So this will be my very stale review of the on-goings of BbWorld through my eyes. Going chronologically I should start with Michael Wesch’s keynote as this started the day… but it was also the first day with any substantial info about Bb’s Next Generation product. A “best of both worlds” if you will…

There were several sessions at DevCon’08 about Project NG. Following up on the conference I was asked to share my thoughts about the NG SDK. I spent a fair bit of time piecing together various notes from the conference into the points you’ll find below. They’re in no particular order. The audience was a handful of Bb folks and clients (former WebCT and original Bb). I’ll be participating in a beta for the NG SDK in the near future so I wanted to get these out and timestamped prior to the beta beginning.

What is likely to be the first new thing you try out in NG?
As others have joked, logging in 🙂 I’ll definitely need to get a feel for the new application – coming from the former WebCT products, NG is effectively the end of the WebCT days and the beginning of the Blackboard days. Up to this point we’ve mainly seen wireframe so I’d really like to have a chance to look under the hood. Similar to Stephen, I’ll want to see what we’ve lost from the WebCT perspective – and inversely, what we’ve gained from the Academic Suite.

As a developer, what excites you about the upcoming release of Project NG? What worries you?

So much to comment on… I’ll start with what excites me.

  • I’m happy to see more admin control over proxy tools, particularly the ability to limit what they can do – this is the type of granular control I’ve been waiting for.
  • I’m excited to see what’s possible in the way of deploying code directly within the application. The PowerLinks SDK is largely about building application bridges and sometimes you need a small tool or
    customization that doesn’t warrant a whole new application. This is probably what excites me the most, getting to see what hooks we’ll have into the application itself.

  • I was also excited to hear BIRT mentioned in the NG keynote. There wasn’t much provided in the way of details, but this could be exciting. Mind you, it’ll mean closing Netbeans for a little bit – but I guess a change of scenery won’t hurt 😉
  • I was also happy to see something about user notification when being passed from NG to another server/service/party. This is of particular concern to our institution in the context of privacy issues – we are data stewards. It’s not our place to pass user info around. Users should be aware when this occurs and have the option to decline.
  • From a conversation with Bob, my understanding is that the new SDK will be flexible enough to allow for privacy conscious integrations with third parties. Ie. Rather than storing identifiable user information off-campus, integrations can be designed such that this doesn’t occur.

Ok… On to my worries / concerns:

  • On the flip side of the new SDK’s flexibility, I’m concerned that third parties won’t see the need to address privacy issues and will continue to build integrations/Building Blocks in a manner that’s not
    conscious of institutional privacy concerns. I’d like to see Blackboard raise awareness amongst their partners about privacy implications. I’m largely coming from the perspective of a Canadian institution with concerns about user information being stored in the United States… but in this day of age (*cough* Web 2.0 *cough*) we shouldn’t need to fling user information all over the place. Heck, we’re uncomfortable storing information within Canada – there’s some information that should
    never leave campus. My feeling is that we can balance privacy concerns and functionality, people just need to be aware of how to do it.

  • My largest concern is transitioning our existing proxy tools and integrations to NG. Perhaps I’m a little high strung, but this bothers me whenever I’m developing these days. It pains me to think that I may be working on something that needs to be rewritten in the not too distant future. It would be helpful to know if there’s anything I can be doing now to make the transition easier when the time comes. How will the new proxy tool framework differ from the WebCT proxy tool framework?
  • On the flip side of executable code within the application, ensuring the hooks into the application aren’t so deep that a third-party tool could cause performance / stability issues (or having means of
    mitigating the risks)

  • I share Jonathan’s concerns about AJAX security. Web 2.0 is fine and dandy, but I don’t want all the flash’n’dazzle to blind us from security concerns. Blackboard regularly boasts that it’s the enterprise LMS solution – this goes hand-in-hand with security and scalability, I don’t want to see this forgotten. As an aside, I’m doing some work with cross-domain AJAX at the moment and it worries me to no end. Even after auditing with something like Google’s Ratproxy, I still can’t shake my worries.

What should Blackboard be doing to help out clients in general and developers in specific to make it successfully to the next major release?

  • Agreed, javadocs should contain sample code.
  • Agree with previous suggestions for a VM containing *everything* needed to get started with NG development. Working examples and test data would be *much* appreciated. It should be as simple as sitting down and getting started. Perhaps this would be an easy way to offer this group beta (or alpha) access in a controlled environment.
  • Mark wants custom authentication, I’ll throw my support behind this as well. But I’ll also take it a step further. I’d like to see NG have better integration points for user management such that it can be tied more closely to an identity provider (in our case, Sun Identity Manager) to manage authentication/authorization, provisioning/de-provisioning, etc.
  • In agreement with suggestions for more standards: conventions, namespaces, use cases, and unit tests. These should inherently be a part of the SDK and used across all the examples that are provided.
  • More details… More details… More details. Upgrade paths are particularly worriesome for the folks coming from the Vista/CE products. At this point there isn’t a reasonable upgrade path – in fact, NG as it has been promoted thus far is a loss of functionality: learning contexthierarchy, number of web services, etc.
  • Would love to know what frameworks are being employed in NG. Anything we’d be familiar with? Or are they largely built in-house?
  • I’d like to see web services exposing all tools in NG. WebCT started to move down this road but never really got there. I don’t mind if they’re offered as SOAP, but if there are possibilities for REST that would be nice too.
  • Someone else mentioned the move from WebLogic to Tomact… There are many folks on the CE/Vista products interested in the specifics of this move. Don’t get my wrong, I *love* Apache Tomcat – but WebLogic has treated me pretty well with the exception of JMS issues LOL. This is an
    issue beyond the developer community but it’s worth mentioning. JSP/Servlet container vs J2EE/Java EE…

  • Mark suggested a series of webinars and I think this is a great idea. Let’s use the transition period to cultivate activity in the developer community. The sessions should be specific and focused. I think it’d be great if the folks on this list did some sessions. I’d be willing to do a session about transitioning one of our PowerLinks/Proxytools to the new SDK.

Written by jlongland

September 24, 2008 at 11:12 pm

Posted in Uncategorized

Tagged with , ,