As developers, we are always looking for platforms to build upon right? Did you know that Citrix can be viewed as a developer platform? I think many enterprises still view Citrix as the infrastructure company (Although, that view has been gradually changing over the last few years) that they have come to love. I believe those enterprise and the enterprise developers in them need to start looking at Citrix as a developer platform and realize that they can start building better experiences for the end users, weather it be IT Admins or the traditional end users. Citrix can be viewed as and *is* a developer platform, specifically one that needs to start being built upon.
If we think of Microsoft, we think traditionally of a system where a developer can pretty much tap into as much stuff as he wants (in addition to the Steve Ballmer Developers Developers Developers speech! :)). They have an enormous API set for windows itself, and for the most part, every product they produce has a “Developer Story”. Some examples of this are Office has the VSTO model, Want to host Windows Workflow Designer in your custom app, no problem, Need to talk to SharePoint, use the Web Services. This developer focus is what enables so many people to write for the windows platform.
Now, if we look at Citrix, they have a similar story, although its not promoted as much as the Microsoft Developer focus. One that I feel needs to be promoted more, and hence this article :). For example, did you know that Citrix has a total of 34 SDK’s that are available to developers? Everything from XenApp to Password Manager to NetScaler. I have tried to break them out below. To download them, you can go to the community site over here
Category | Related # of SDK’s | Notes |
XenApp | 13 | This covers things like MFCOM,Password manager, WI, Virtual Channel SDK, etc |
XenServer | 5 | XenServer Related SDK’s |
XenDesktop | 1 | XenDesktop Related SDK’s |
NetScaler | 12 | NetScaler Related SDK’s |
Workflow Studio | 1 | Workflow Studio SDK’s |
Citrix Online | 2 | These are the GotoMeeting and GotoAssist SDK’s. Now even though you have to have a GTM or GTA account to get and use these, the point is they are still there. |
So your saying, great! I’m buying into this and now i want to start using these SDK’s to build the next great app for my enterprise, but I don't have a datacenter or server farm running this stuff and I cant afford to purchase licenses. Well, don't fret. If you want to start developing for XenApp (Presentation Server), then Citrix offers a developer’s version of XenApp as well as the Dev license (1 year in length). This will get you up and running for XenApp/Wi/Powershell/Access Console/etc development. No cost, no hassle (There is not one yet for the XenApp 5.0 on Windows 2008 though).
Now, for the other products like NetScaler, Password Provisioning,etc, I’m not aware of Developer versions of these, although I believe that there should be some type of scaled back, one user (maybe two), type of offering to allow more developers to code up those one of a kind applications that are just sitting there waiting to be written :). I mean Citrix is a Developer Platform so lets start to utilize all of the platform to build those apps. :)
You can download the Developer Edition of XenApp at the following location. Remember, you will need a MyCitrix Account in order to download.
Now, my point here is not to compare Citrix to Microsoft but simply to provide a reference point and to inform developers that Citrix is a platform that we can build on. There are enough SDK’s available that we should start using them to build up some interesting experiences.
You may be saying, well how much stuff can we do, automate publishing an application? Well, what could be some interesting user experiences we could think of where the SDK’s could help. How about a single interface for all of your apps no matter what kind they are (See my previous post here), Maybe a silverlight alternative to Web Interface (I think there is one like this already, at least there was long time ago), Maybe integrate Web Interface into you windows app (or a subset of it to facilitate some launching mechanism)? Maybe integrate MFCOM into your custom provision system to add users to an application when they get access to it or write some Workflow Activities and make them available to the community? All of these things are possible with the use of the SDK’s provided by Citrix and its time that we as developers start viewing Citrix as a Developer Platform, at least in my humble opinion :). These tools are not just for admin functions anymore, lets start to push the envelope!
Thats my .02, Tell me what you think? do you have any cool XenApp code that could benefit the community, head on over to the Citrix Community Site and participate.