Announcing the launch of!

As I have mentioned in previous entries I've been working on a few applications to release to the community.  I am committed to creating tools that are actually useful for real world tasks and with that I wanted a place to centralize the downloads, documentation and support.

Therefore I am announcing the launch of

Along with the launch of the site I am releasing the xConnect Beta and would love for everyone to try it and provide feedback/bug reports!

A little background info on tekHelix.  Originally this was supposed to be a two man project with myself and a close friend/colleague.  Unfortunately due to priorities it became solely mine to see to fruition.  We started discussing and planning way back in 2006 and I am just now getting off my butt to complete the first stage of the project.

I plan to continue development on many new tools and would love to have ideas/suggestions from anyone out there!

Filed under: Uncategorized 3 Comments

XenDesktop 4 – Licensing Updates!

Sumit Dhawan over at Citrix has a blog post stating the updates to XenDesktop 4 licensing.  My initial reaction is "this is awesome."  But not for the reasons you think.
As I read the blog post I had not yet even soaked in the details, I was just excited that they actually listened to their customers and made a change that quickly. I commend them for that and it shows Citrix as a company who cares (as much as a Public company can) about their customers opinions.

Once I got past that initial thought I began to think about the details of the changes.  Sumit's post lays it out in a nutshell:

"Citrix XenDesktop™ 4, VDI Edition - Best-in-class VDI-only solution available at $95 per user or device, or $195 per CCU
Citrix XenDesktop™ 4, Enterprise Edition - Enterprise-class desktop virtualization solution available at $225 per user or device
Citrix XenDesktop™ 4, Platinum Edition - Best-value comprehensive desktop virtualization solution available at $350 per user or device"

So they added Per device licensing to Enterprise and Platinum as well as adding a VDI-only edition with all three license models to choose from.  I would love to see a comprehensive licensing matrix of all of these choices to better lay out what you do/do not get with each.  I am sure that will come with time.
In addition they added a Campus wide licensing model.  This should benefit educational institutions as long as they can afford it.  Those numbers are not released at the moment (probably never will be to non-education people).

Let's assume your company has 2000 people who need XenDesktop/XenApp on a frequent or sporadic basis.  Thus only about 1000 people will be in the system concurrently.
Let's also assume that you have 1500 desktops since 500 of your users share.  We do not know if you can 'mix-n-match' the licenses together but for the sake of putting the numbers down on paper we will assume you can.
2000 XD4 Enterprise Per User licenses (includes XenApp) = $450,000
1500 XD4 Enterprise Per Device licenses (includes XenApp) = $337,500

2000 XD4 Platinum Per User licenses (includes XenApp) = $700,000
1500 XD4 Platinum Device licenses (includes XenApp) = $525,000

1000 VDI Only CCU licenses (does not include XenApp) = 195,000
2000 VDI Only Per User licenses (does not include XenApp) = 190,000
1500 VDI Only Per User licenses (does not include XenApp) = 142,500
Note: I am unable to find retail licensing prices anywhere.  Maybe I am just blind.
1000 CCU XenApp Enterprise licenses = ????
1000 CCU XenApp Platinum licenses = $600,000

So in the end with the above scenario it would appear a per device license scheme is cheaper until your users want to work from home.  Unless each device license includes a 'home use' clause the Per Device license is only good for labs or training purposes.  If you need your XD users to also use XA it pays to not go the VDI-only route (obviously as the name implies)

One thing that does jump out is that the VDI-only option, no matter which model, does not include CAG licenses.  This means that you either use the CSG (Free) and  you lose a ton of features in the way of security, or you must buy a CCU CAG license.  I would love to add in the numbers for retail cost of just an Access Gateway license (No matter which version) but, again, I am unable to find all retail license info.  They could have at least bundled this with the VDI-Only model so you can actually take advantage of  a CCU model.

Another thing from Sumit's blog post was the following:
"Remember, the user-based licenses are available not for per named users but the users as they login to their virtual desktops. You do not have to manage the user lists yourself."
So does this mean you license simply on those who 'have access' to connect to a XD4 device?  Does this mean anyone in an AD group must have a license?  Still unanswered questions around this, such as how often can you reallocate a user license?

I do think this is a positive change and at least customers now have the option to choose how they want to license.  As long as you can pick/mix your licensing models I am OK with the changes! Don't miss read that though, I am just OK with them.  I would be perfectly happy if the CCU option was included in the Enterprise or Platinum XD4 bundle for the simple reason that the VDI-only solution is way too expensive in a world where your users will need XA.  Let's face it a VDI solution without the ability to stream/dynamically run apps is going to become pretty useless as time goes on.

One final note.  Sumit used 'flexible licensing' a lot in his post but never actually called it 'FlexLicensing'.  I guess they did not like my marketing term after all! :)


XenDesktop 4 Licensing – Additional Thoughts

I have had a couple of conversations, with someone who happens to read my blog, about the XenDesktop 4 licensing changes and my opinions on it.  I stated my gut reaction in my previous entry and I posted a comment on Claudio Rodriguez blog.  In addition I have made my opinion known via Twitter... I do not like the move away from CCU.


I joked that Citrix should add a new term to their fantastic marketing names, FlexLicensing, to join FlexCast (seriously, who comes up with these names).  In my discussions with someone who was interested in my opinion the 'FlexLicensing' idea turned from jest into a half way serious thought.

I admit that a  tiny part of the problem I have with moving away from the CCU model is likely because I am an Admin who associates Citrix products with a concurrent user licensing scheme.  I guess part of me may be afraid all of their products will turn to this method.  That being said the biggest part of why I don't like the change of XD going to Per Named User (PNU) is because it simply does not fit into every environment.  For that matter, NO licensing scheme does.  Per User, Per Device, Concurrent User, it doesn't really matter as each company and even multiple environments within that company have different user bases with completely different needs and use cases.

In my conversation, with the person I eluded to in the beginning, I began to think, "Why not have a licensing model that is as flexible as what you are trying to do with your technology?"  Currently a retail XenApp CCU Platinum License runs around $600 bucks.  I think we all know that no one really pays that but it gives Citrix, a public company, a starting point to negotiate what they think their product is worth.  XenDesktop 4 licenses are much cheaper than that for a per user mode.

I then proceeded to make the suggestion to offer multiple different licensing schemes to customers.  If a customer feels that their environment is better suited for a CCU model then so be it, you pay a bit more for the flexibility.  Whether this is in annual SA costs per CCU license or the up front cost you still pay a bit more.  You then have the customer who needs to buy a set of licenses for users in which everyone is in the system at the same time and a CCU model does not fit.  This customer pays for each license as they need it but spends a bit less money because of less flexibility in what they can do with their environment.  And hell, while we are at it throw in a Per Device license model too (though I don't see the benefit of a device license over a ccu license) so it can fit the customer who needs it.  The pricing/annual costs for each of these models would need to have careful thought put into it to ensure that you aren't simply penalized for going to a CCU model but I think it could be done.

I know there are going to be a lot of people out there who think I am nuts (or an idiot) for suggesting adding MORE complexity to software licensing but let's face the fact, you are not going to please everyone by one licensing scheme.  I think if done correctly it would add a lot of value to Citrix's products as they can say, "Customer we can support your environment with our technology and we have a licensing model that fits your use case perfectly.  Here is what it would cost you for CCU, PNU and/or Per Device.  You decide what is best for you".  In the end Citrix is always going to get its money.

VDI Maturity

Another topic that came up in the conversation is my feelings on VDI as a solution in general and why I think its infancy is causing such an uproar on the licensing change.  VDI is just not a technology that is ready for wide scale production use.  I know there are some that are doing this today but I just don't see where VDI, at this point, is going to replace the majority of the desktops in a company.  Unless of course most of your company is lab/training devices that don't need a lot of rich experiences from the desktop.  Until VDI can essentially replicate all of the functionality of an existing physical desktop I just don't see it being as useful as companies claim it is now.

In a way I am talking out of my back side as I have not actually deployed a VDI environment.  What I have tested though (XD4 not included) did not impress me enough to think this stuff is ready for 'primetime'.  And to add to that if these companies think that VDI will eventually replace all machines in a company or that I will eventually run my entire OS in a cloud they are absolutely nuts.

As I finish this post I don't think I conveyed my thoughts very well but I am tired...that's my excuse.


XenDesktop 4 – Licensing Change Rant

So I made a comment recently on twitter and thought I would take a moment to explain further without the 140 character limit.

What I said was: "Justification for license change in #XD4 is bullcrap in my opinion."

I read one post from one CTP in which the author goes on to state that Citrix says the reason they changed the licensing is because everyone using VDI (read XD) will be using it 24/7 anyway so it makes since to get away from a CCU model.  This is where I say bullcrap.

I speak not from having experience in actually implementing a VDI environment but from my opinion of where I feel VDI is best fit at the moment.  I see VDI as a fantastic fit for task workers whom all do the same basic role.  This is a role that requires little personal modification of each machine and has basic applications that would work either installed, streamed or delivered via XenApp.   To me this role sits in service/call centers in what is typically a 24/7 environment.   This could also be a use case for a locked down desktop running on TS but I see the needs of even these workers growing to be able to handle more multimedia rich applications and training.  This, in my opinion, limits what you can perform on the server desktop.

In the situation detailed above say I have 1000 unique users and each of these people will need a desktop session to perform their work.  They all use the same basic set of apps and work in a 24/7 call center environment.   The 1000 users are split between 3 overlapping shifts but never have more than 400 people working at the same time.  In this scenario does it ever make sense to pay for 1000 licenses when they will never be used at the same time?  Why not pay for 500 concurrent licenses and be done with it?  There are a few other scenarios where this fits but the thought that all users will be using/accessing their virtual desktop 24/7 is insane to me.

Now, I am still waiting for an official press release from Citrix (a little birdie tells me to expect it soon) and until then I don't know what the feature matrix/pricing of the various versions will be (many have noted 75, 225, and 350 but I will wait to see #'s from Citrix first).  The per named user model may very well be cheaper in all scenarios depending on what you currently pay but I have a hard time believing it at the moment.  I hate the per user model of Microsoft TS CALS so I would be remiss if I didn't say something about going from a CCU model to a PU model.

I will concede that I may have made my comments without any 'official' information.   I am fully aware I may eat crow later.

Update: So I am taking a look at some additional information and I see that there is an option to 'trade up' one XenApp license for a XD4 license (with an additional cost of course) which includes XA as well.  For some this could be very beneficial if they aren't really taking full advantage of their CCU licenses.  This does not play well for organizations where the CCU licenses are used to their full potential (many different unique users accessing XA at different times).

I would love to see 'FlexLicense' accompany FlexCast [ ;) ] so you could maybe have the option of picking from a CCU or Per user license at time of purchase. Maybe you continue to pay a bit more for the CCU license but you get the flexibility to decide how to operate your environment as opposed to always being constrained by the license.


xConnect-Think of it as MSTSC for ICA

I have been playing around with another app creation while I am building the framework for the mobile management app.  I have shown this to a few people and thought I would share it with everyone   (the whole 3 people that read this blog anyway).  I have yet to see a basic client for directly connecting to a server via ICA that allowed you tweak the settings easily.  Yes you can use the Program Neighborhood but I like the simplicity of this a bit better.

I am building these tools for the community and will be releasing them soon.  In the meantime I would truly love to hear any feedback. Would you would find something like this useful.




When released there will also be a Vista/Win7 gadget to accompany this.

Filed under: Tech 11 Comments

Mobile Management-XenApp,XenServer,Netscaler(AG),XenDesktop

So I posted an article in May that contained a sneak peak of a mobile management app I am working on that would fit the iPhone form factor.  Since then Citrix announced they are working on a Blackberry and Android client so I thought it was time to let everyone know the status of my project.

When I come up with ideas I tend to have very elaborate plans that rarely see the light of day.  This project is no exception to the 'elaborate ideas' theme.  That being said, everything I want to do is possible with time and I intend to see this one through until the end.  My target is a Windows app that would run as a published application used in conjunction with XenApp.  I orginally planned to create a web app to handle all of this functionality but once hearing about the Receiver clients I changed my mind.  Why not let XenApp do what it does best, present the app to the outside over a secure, seamless connection?

I plan to support a number of Citrix products as that is where my expertise (I use the term loosely) currently sits.  Starting off I am going to support XenApp since MFCOM is a place that I feel incredibly comfortable. From there I will move onto XenServer, then Netscaler(Access Gateway) and finally XenDesktop.  If I am able to accomplish those different 'modules' of the application I may continue on and add ESX/vSphere and IIS support for quick admin tasks.  I don't plan to add every possible feature, just those that your average admin would find useful when away from the office.

I recently had a catastrphic lab hardware failure in which I lost my VM's.  Luckily I had a backup of the code but thus far but I am not happy with the framework and will be tweaking it and the UI.  Below are two screenshots of what I currently have and I will be altering this heavily.


I am really interested in hearing what the community wants in a mobile admin app.

Filed under: Uncategorized 5 Comments

Just a pointless observation: AppZero/NetZero

So I saw a link to a company that has an interesting product for App Virtualization and I wanted to read more.  I headed on over to and started browsing around to see what their product offered.  As I am doing this I thought to myself that AppZero sounded a lot like NetZero.  Then I noticed the logo for AppZero and quickly took a look at the logo for NetZero.  There are some shocking similarities and with the name and the logo being that close I thought they might be owned by the same parent but it does not appear to be so.


This doesn't really matter much but it did remind me of a Brian Madden post on how he told Microsoft a new exchange logo looked an awful lot like his.  Link

Just wanted to share this observation as I found a bit of humor in it.

Filed under: Uncategorized No Comments

XenApp cmdlets VS MFCOM – Performance Test – Update

So last month I did a comparison test with MFCOM vs the new XenApp cmdlets.  My intention was simply to see if the cmdlets had the same (or any) performance issues that plagued MFCOM.  The results initially shocked me since MFCOM in VbScript seemed to be faster (albeit marginally) than the cmdlets.  After posting my results one of the developers of the cmdlets made a comment that my testing method was off.

LoadData loads the app specific data (according to the app type), not its associations, which are more expensive to read (accounts, servers, etc).
This is why I suggested to compare it to Get-XAApplication. - Felipe Leon

I had always been under the impression that LoadData() pulled backed all information about the application including Servers, Users/Groups.  So I did a few tests and realized that I was completely wrong.  When throwing a few loops in to enumerate servers,users and groups the MFCOM time shot up by at least 10-15 seconds.

Felipe also suggest comparing LoadData() vs the Get-XAApplication cmdlet instead of Get-XAApplicationReport since the former does not make a call to obtain servers,users/groups.

Using this method the cmdlet obtained most properties on 100 applications in about 1-2 seconds..That's FAST.  On the flip side using MFCOM to enumerate the same application set (100) WITHOUT using LoadData() still takes roughly 5-6 seconds.  There are a number of properties that are readable without using LoaData() but I have yet compared those to Get-XAApplication properties.

I plan to do more in depth testing when I have some additional free time but I wanted to post an update to show that my initial results appear to be wrong. As I stated in my previous post the cmdlets easily win for simplicity and ease of use but in my opinion until Powershell V2 is released (not as a CTP) and brings WinRM with it I think MFCOM is still the winner for multi-farm management.  Maybe by the time the XA cmdlets go out of  Tech Preview phase, Powershell V2 will as well?!

Filed under: MFCOM, Tech No Comments

XenApp cmdlets VS MFCOM – Performance Test

I have been using MFCOM since I began with MetaFrameXP and have always been a huge fan of the SDKs.  I loved the fact that Citrix created an API that was pretty simple to learn, for the most part 'made sense' and gave you enough power to actually be functional.

When I first heard about the cmdlets at Synergy 2008 I was a bit confused on how useful they would be and if they would offer the power that MFCOM does.  I do a lot of coding in C# and I leverage MFCOM there all of the time.  Not knowing enough (and still don't) about Powershell I was not quite sure how well the cmdlets would work.

I had been part of the beta for the cmdlets but wanted to wait until I had the finalized version to run a few benchmarks between it and MFCOM.  MFCOM has always had a few performance issues since it is COM based.  I won't go into the details here except to say that whenever performing actions on large groups of data MFCOM could take forever.  For example trying to loop through a large number of sessions (8,000+) would take a while if you were pulling back all of the session properties. This is due to MFCOM making a few different calls to get all of the info.  While I don't have the ability to test session enumeration benchmarks in my lab here at home I can benchmark gathering application properties on large groups of apps.

I used 3 different scripts to perform the tests.

1. MFCOM with VbScript

2. MFCOM within Powershell to rule out VBScript as a performance factor

3. XenApp cmdlets within Powershell

  • I used the XAcmdlet to create applications in increments of 100.  I did this and ran the scripts to gather data.  I then went to 200,300,400,500.

$i = 1; do {New-XAApplication Notepad$i -ApplicationType ServerInstalled -CommandLine notepad.exe -ServerNames Server1 -Accounts Domain/UserName; $i +=1} while ($i -le 100)

  • All of the tests were ran locally on a XenApp 4.5 server that is also the Data Collector.
  • This server is a VM running on XenServer 5.0.  The hardware is not server class.
  • Each script was ran 3 times to get an average.
  • I used Get-XAApplicationReport as it actually pulls back all of the app properties.  This is comparable to the LoadData function in MFCOM (From what I can tell anyway).
  • I had originally been exporting the data to a csv but this added significant amounts of time for each test so I scrapped it and just went with a LoadData for MFCOM (this gets all properties anyway).  For the cmdlet test to avoid having the output dumped to the console (which adds time to the script execution) I assign it to an object.

And now for the results:


The results shocked me so much I ran through a bunch of random tests again.  Every single time MFCOM via VBScript came out ahead by a few seconds.  I am sure on a more powerful machine the numbers would be lower in general but for the most part they stay pretty consistant. I truly expected the cmdlets to blow MFCOM out of the water because from what I can tell they communicate directly with unmanaged IMA calls via the managed .net wrapper.  While MFCOM via VBScript seems to come out ahead in this specific performance test the XACmdlets are still far and away easier to use.

I may perform these tests again with Pwershell V2 so I can test WinRM vs COM.

Please let me know if you think I've got something completely wrong here.  I would also like to see numbers from others running these scripts and would truly like to here from the XA cmdlet developers to see what their internal tests (performance wise) show.

Filed under: Uncategorized 4 Comments

Citrix EyeCream (XenCream?) – Found this funny..

I was taking a look at the 'blogosphere' on and saw a blog aggregation that I found pretty funny.


Citrix is really branching out these days ;)

Filed under: Uncategorized 1 Comment