Thursday, March 22, 2007

Terminal Services: The good, the bad and the ugly

I am hearing a lot about terminal services lately. I am also seeing a lot of excitement about it. About two years ago, I was also really excited about it but time, experience and experimentation has cooled my excitement. Terminal Services offers a great deal of additional access at a much lower cost but ultimately alienates today's youth who have become accustomed to personalized technology.

First, let me offer a brief definition. Terminal Services is effectively offering multiple users access to a single computer from multiple locations simultaneously. Microsoft offers terminal services and various products offer add-on functionality, such as Citrix. At Whitfield, we use Citrix. We have four servers which have up to about 75 users a piece running either a full desktop environment or specific applications. Thus, 75 people are using the same computer at the same time. Now, this is a pretty strong server but that's still pretty efficient. Terminal services have also gotten a lot of attention through the K-12 Linux Terminal Service Project and Linux Terminal Services through Novell's Suse Linux.

The Good
The good side of terminal services is that it can drastically cut costs. Instead of buying beefy desktops who's CPU remains idle most of the day, you can place low cost desktops or thin terminal devices (or hold onto really old, crappy computers) and run state of the art software on the relatively few beefy terminal servers. Because you can hold onto (or resurrect) old computers, it is very possible to improve your student to computer ratio. Lower costs and more access is a good thing!

The Bad
Whenever you have multiple users simultaneously using the same computer, you need to be careful about one user destroying the experience of all the others. In a desktop environment, if one kids messes things up, he or she will usually walk away and find another computer. Though that one computer is down, everyone else remains largely unaffected. The necessary result of this is that you have to lock down your terminal servers pretty tightly. You also need to watch them pretty closely, though, when things are not right, you will hear about it as it affects so many people! Also, one of the greatest limitations of terminal services is that resources are only available when people are connected to the network. Though many terminal services can be made available through the Internet, you still have to be connected. How lost did you feel the last time you forgot your cell phone? Magnify that times ten for today's digital kids.

The Ugly
Because the computing environment has to be locked down so tightly, terminal services turn technology into a pure utility. Now, some companies are very excited about this. They don't want people doing anything on computers other than that which they explicitly allow. Shamefully, some schools are that way. At best, this limits innovation and at worst, kills a spirit of exploration, which is absolutely counter-intuitive to education. What happens is that student use of technology is limited to the creativity of the IT staff and administration (most all of whom are NOT digital natives, unlike our students). Our students have become accustomed to slapping different colors on their iPod, changing desktop backgrounds daily, setting up digital environments which allow for the intersection of their work, personal lives, and interests. Kids will meet their needs someway and it simply can not be met through terminal services.

Our Experience
At Whitfield, we worked extremely hard to create a robust, fast and slick terminal services environment. We redirected many of the personal settings to other servers so students could have as much control as possible. They obviously could not install software or change any of the configurations of the terminal servers themselves.

We were also aware that the major limitation of terminal services is that the resources are unavailable if not connected to the Internet. Thus, we provided them access to Novell Linux Desktop 9 (the vastly inferior predecessor to SUSE Linux Desktop 10). Our Citrix environment offered most of the best Microsoft had to offer. Our Linux laptop offered most of the standard set of tools available on Linux. The only major modification we made was to give normal users a lot of rights over the Linux laptop.

Even though SUSE 9 was pretty inferior compared to Windows 2003, students reported spending half of their connected time in Linux. With SLED10, students now report spending 80-90 percent of their time in Linux. Though some of that relates to the new features of SLED10, people are reporting that the real reason they spend time in Linux versus Citrix is because they can "make it look the way they want to." Personalization is the key and terminal services can't offer that.

Terminal services still has a place in our environment. Teacher's frequently use Citrix for a Windows desktop environment and we also have some applications that simply can not be run from a Linux workstation. However, our mission calls for us to be a student centered environment. I can't honestly claim to be supporting the mission of my school and limit the needs of my students.

A Compromise
One of the latest innovations that seems to offer the savings of terminal services and the personalization of personal desktops is the virtual desktop initiative (Please see my post on virtualization). This allows people to use a low cost device (or actually any device able to connect to the Internet) to access a remote session to a virtual desktop. That desktop is, functionally, a complete and personal machine. However, that machine is virtual and actually exists on disk. That machine is made available through a virtual machine server, like VMWare or Xen.

In this scenario, users can personalize a machine to their liking without really affecting other users. Also, because these systems or easy to restore from frequent "snapshots," you can give users a little more freedoms on the box, encouraging innovation and technical literacy.

Now, this environment requires a lot more disk space than terminal services and still REQUIRES Internet connection, which is still a MAJOR limitation in most towns (NOTE: I would argue that kids need access beyond home and school in order to gain full fluency but equity issues also would require home connection for all users). Those limitations keep this from being a viable option in the St. Louis area today. However, if I were the CIO of Philadelphia Public Schools or Milwaukee Public Schools (where I actually started my teaching career) I would be ALL OVER this solution.


Bob said...

There is also the Linux Terminal Server Project:

Spencer Ferguson said...

Terminal Services is a great option to not only cut costs, but to allow remote access to data. This may not be viable for students in an academic setting, but it would be a hit with faclty and staff.

Alex Inman said...

Spencer is correct. The Citrix aspect of our program is popular with the faculty and staff. That was really not in question. However, we pride ourselves on being a student centered school. Thus it makes it difficult to reject the students predisposition. Terminal services have a place here at an application level and would likely hit the mark with virtual desktops. However, a locked down shared workspace is not a good match for them culturally.

Dan Kegel said...

So, which Windows applications do
you tend to run from Linux machines?
I'm a Wine developer, and would like to
find a crack in the Citrix / Terminal
Services wall where Wine could wedge
itself :-)

creativesumant said...

Terminal services have a place here at an application level and would likely hit the mark with virtual desktops. However, a locked down shared workspace is not a good match for them culturally.

Recently I just came across a good article on "100 Linux Tips and Tricks"
Here is its link.