Archive for March, 2006

Mar 29 2006

Office 2007 Virtualization with Altiris SVS

Published by Steve Richards under Main

I have Office 2007 running now on my Tablet and Laptop, both running XP,  but my desktop machine (2003 server) is not something I would risk putting Office 2007 on yet, mainly because I collaborate with too many people who are on previous versions of Office.  At least that was my logic until last night when I finally got around to installing SVS from Altiris.  Here is my step by step experience:

First try

  • Terminal served into my desktop (2003 server remember) as admin
  • Installed SVS
  • Rebooted
  • Tried to install Office 2007 in a layer, a layer is an SVS term that describes a way of isolating an application (by means of a file system redirector) from any dependencies on your PC and also isolating your PC from any changes that the application tries to make.  In other words – its safe!
  • Install failed,  which is perhaps not surprising as I already have close to a hundred applications installed including OneNote 2007 and Altiris recommend installing on a clean machine.
  • Started again

Second try

  • Created an XP SP2 Virtual machine using VMware 5.5
  • Installed all patches and VMware tools
  • Installed SVS
  • Rebooted
  • Installed Office 2007 into a layer, worked fine
  • Exported the layer to network drive (failed)
  • Exported the layer to the VMware Virtual drive (worked)
  • Copied the exported file to network drive
  • Terminal served into my desktop (2003 server remember) as admin
  • Imported the exported file into a layer on my desktop
  • Activated the layer
  • Went back to my normal user account
  • Double clicked a PowerPoint file,  PowerPoint 2007 opened and ran fine (very limited testing)
  • Clicked on PowerPoint 12 icon in Start Menu, worked fine (very limited testing)
  • Went back to my admin account
  • Deactivated the layer
  • Double clicked on a PowerPoint file, PowerPoint 2003 opened
  • Note: In the above activate and deactivate actions I did not need to log-off or reboot

So I now have Office 2003 installed on my desktop, and office 2007 available as a layer that I can activate as required.  I am impressed enough that next time I rebuild my desktop,  I will probably install all applications as layers,  although except for testing out new applications I don’t think I will use SVS extensively until then.  I will also look forward to some admin utilities being developed that allow me to copy files around between machines or do bulk imports and activates, so that maintaining multiple machines and rebuilding them becomes less of a chore.  Of course Altiris has enterprise scale tools to do this,  but I only have 9 physical PC’s on my home network :-)

 

 

2 responses so far

Mar 29 2006

Graham asks – what is architecture?

Published by Steve Richards under Main

Graham is grappling with the question, what is an Architect?  I used to be an IT architect and I really struggled with the role, on some days I thought I was a pre-sales technical consultant, on others I was a programme manager, on others a technical trouble shooter and most of the time a solution designer.  The list of roles goes on but you get the point by now,  when I did Architecture it was a very varied role,  which tends to imply some or all of the following:

  • I was not cut out to be an architect, because I couldn’t focus
  • The role was not very well defined
  • Other people’s roles were not very well defined, or they didn’t do them very well

Actually I think all of the above were true to some extent,  however I do think that in my organisation one of the problems with the role was that it was defined best in terms of a list of documents that needed to be produced and worst in terms of the objectives that it sought to achieve.  For me (I was a lead architect) the main objectives were:

  • To work with the customer to help them to identify their needs
  • To describe these needs in a way that both customer and developer could relate to
  • To develop a solution that would meet those needs, and where that was not possible to explain to the customer why not and gain their agreement to the compromise
  • To ensure that the conceptual intent of the solution was retained as the architecture was refined (from conceptual through logical and to physical) and developed and deployed, or to refine the conceptual intent to reflect improvements
  • To help the technical team work together effectively and to bridge the gap between the technical team and the management team
  • To build up trust between the project team and the customer
  • To ensure that the solution could be delivered on budget and meet it’s milestones or to ensure that people understood that it couldn’t and get the conflict resolved

Seen as a list of objectives (and that’s how I always looked at the role) it’s easier to see that achievement of these objectives might need me to take on many different roles throughout the life of the project.  It’s worth stating that Graham and I architected many solutions together with my focus being on conceptual integrity and Grahams focus (from my perspective) being more on logical integrity and we had many architects working for us who were working on ensuring physical integrity (although that never worked very well, which lead me to think maybe physical integrity is best achieved by engineers).

This discussion is interesting, but not half as interesting as a post by Steven Sinofsky’s describing the program managers role on the Office team at Microsoft.  If you read the post, and it’s comments you will have a very good idea of what that role is, he did a much better job than Graham or I :-)  it’s also a great example of the usefulness of comments and how they add such value to blogs.  In my company we don’t have this role, it’s bundled into the architects role and I think that’s worrying.

 

 

No responses yet

Mar 28 2006

I have finally switched from Newsgator to FeedDemon!

Published by Steve Richards under Main

FeedsI have been using NewsGator for a long time and I have always stuck with it despite using lots of different alternatives.  However I have finally switched to use FeedDemon 2 which is just too slick for Outlook with an add-in to complete with.  main reasons for the switch:

  1. Great look and feel
  2. River of news
  3. Ability to only show unread folders
  4. Great support for folders generally (this is my list of folders)
  5. Ability to easily toggle views (full, excerpts, headlines) and filters (read, unread etc)
  6. Ability to aggregate posts for a set of feeds in a folder into a river of news
  7. Good integration with FeedStation for downloading Podcasts, either automatically or on demand
  8. Works well on my three machines, with NewsGator being used server side to keep all three in sync
  9. I have been playing with Outlook 2007 and its built in reader and I just could not see myself sticking with using Outlook in the long term,  as my business email client is Lotus Notes, so I also switched to Thunderbird for my personal email

Things I miss

  1. Search folders in Outlook are more powerful
  2. Flags are more powerful but I hardly ever use them,  I prefer to use Maxthon Groups,  ie posts I want to keep I open in Maxthon, read and add to a Group.  Later if I want to work through my blog posting ideas,  I open up my “to blog” group in Maxthon.

No responses yet

Mar 27 2006

Synchronizing my Desktop, Tablet and Laptop

Published by Steve Richards under Main

Toolbars

Frustrated at the manual work needed to keep multiple machines in synch,  then try Allway Sync,  I use it to keep my Desktop, Laptop and Tablet in synch and it’s working great so far,  what follows is a much longer description that might be worth reading if you like detail!

To give you an idea of scale – 15GB of data in 20,000 files and 1,500 directories.  Full synch takes less than 5 minutes!  Quick synchs take a few seconds.

I use synchronization extensively to keep my Desktop, Tablet and Laptop in synch and to create backups of my main data disks.  For many years I have used a combination of robocopy scripts to achieve this synch, and it has worked well except for one scenario;  if I delete files in any of the three replica’s these deletes are not propagated, in fact what normally happens is that the deleted file is copied back to my machine from one of the other replica’s.  This happens because of a limitation with robocopy which is that it doesn’t maintain a database that records the synch state of three replica’s, without a database it has no way of knowing whether a deleted file is in fact a missing file.  I now have a solution to this, which I will describe in a minute,  however first a few more details on the robocopy method that has worked for so long.

For backup I have a batch file that runs every night,  it does a replication with the /MIR switch from my desktop working disk  \\desktop\d$ to my backup disk \\desktop\e$ and from the backup disk to my server \\server\d$ this allows me to recover quickly from a disk or a system failure.  /MIR ensures that my backups are exact replica’s of the original \\desktop\d$ it’s easy to avoid backing up files I don’t want to keep by using the /xf and /xd switches which exclude files and directories from the backup.  For backups I will continue to use robocopy as it has served me well for thousands of backups without ever failing!

However for synchronization I have three scripts which run from my quick launch toolbar which you can see to the right.  These scripts are called synch, tidy and Maxthon sync.  These work as follows:

  • Synch.bat copies the latest versions of all files to all three machines,  ie it copies the latest versions (including new files) from \\tablet\d$ and \\laptop\d$ to \\desktop\d$ which means that \\desktop has the latest copies of everything and then copies the latest versions from \\desktop\d$ back to \\tablet\d$ and \\laptop\d$ this means that all three machines end up being exactly the same, and that they each contain a superset made up of the latest versions of any files that existed on any of the machines.  Normally this is what you want, except that if I have been working on \\tablet for a few hours by the pool and have renamed, moved and deleted a whole load of files then all of these will be copied back to \\tablet from \\desktop and all of the renamed and moved files will be duplicated of \\desktop and \\laptop, not exactly my intent.
  • Tidy.bat is designed to get around this,  tidy.bat uses the /MIR switch to make \\laptop and \\tablet exact copies of \\desktop, which is useful but means that I need to make sure that moves, renames and deletes all take place on \\desktop.
  • Maxthon sync.bat is essentially the same as synch.bat but just runs on the Maxthon directory and synchs up the Maxthon groups between machines, I run this separately because it is quick.

I have lived with and been annoyed by this for years and tried loads of solutions which all failed for one or more of the following reasons:

  • Poor support for auto-discovery of new subdirectories (of which I have loads)
  • Poor performance
  • Poor support for filtering files and directories I don’t want to synch (again I have quite a few of these)
  • Poor handling of the fact that both \\tablet and \\laptop are frequently not connected to the network when the synch tries to run, and that the synch should wait for them to connect and then carry on
  • Poor handling of the fact that some directory sub-trees need to be synched at a much greater frequency than others.

I finally have a solution Allway sync is free for personal use and meets all of my needs (it had a few bugs – but within a week of me reporting them they were all fixed, the version that works for me is 3.42).  These are the features that made this just perfect for me:

  • It supports multiple jobs, these jobs can each synch different sub-trees of the same tree, or operate on the same tree but at different frequencies.
  • Each job can be scheduled to run with a different frequency and with different include and exclude filters at the file or directory level.  These filters are very flexible
  • Jobs can replicate multiple devices, in my case 3
  • Each job can either do a one way replication, ie makes the targets exact replicas of the source, or can synchronize, synchs can optionally propagate deletes and modifications. In my case I want to be able to make changes on any of the three devices and the changes to be reflected seamlessly on every device, so I synchronize with modifications and deletes enabled
  • You can preview the changes it will make,  which is great for designing your jobs and for testing.
  • You can copy deleted files to the recycle bin, just in case you deleted a file by accident
  • It copes with devices being disconnected from the network
  • It only needs installing on one devices, in my case \\desktop
  • It is very visual and easy to use,  for example you can select the directories you want to sync by navigating to them, which reduces errors

Synch

At the moment I have 4 synch jobs:

  • Every 2 minutes synch favourites on all three machines
  • Every 2 minutes synch Maxthon (my browser) config and group definitions on all three machines
  • Every 3 hours synch all of my dynamic data, which is my full data tree with all “static” data filtered out (for example archive areas)
  • Every day synch the whole data tree, but with temp data and un-synchable data (for example databases) filtered out, (database backups are included).

With this config I am finding that I can work pretty well seamlessly on any of my machines and never have to worry about which one I am using,  since each one is configured for different tasks this makes things pretty efficient.

I can run any of these synchs on demand as well with a 3 mouse clicks.  Now that it all seems to be working well I will probably start extending the jobs to refine things a bit more.

2 responses so far

Mar 19 2006

The community goes wild with Altiris SVS application Virtualization

Published by Steve Richards under Main

It’s not been launched yet but already the community is reporting 128 applications virtualized!  You can imagine the popular PC magazines providing all of their free applications and utility collections packaged in this way!

No responses yet

Mar 19 2006

The Lotus Notes user experience

Published by Steve Richards under Main

The Lotus Notes/Domino Hints ad Tips blog is excellent, I am a firm believer in the integrated user experience and this blog is already helping me to use Notes more effectively.  Integrated attachment editing is a feature I already new about, but it illustrates my previous post about user experience very nicely.

Prior to Notes 6 you could store documents in a Notes database by attaching them to a Notes document. If you wanted to edit the document, it went like this:

  • Right click
  • Select Open the document
  • Edit
  • Save document somewhere, for example “my documents”
  • Switch back to Notes
  • Delete old version of attachment
  • Click attach
  • Navigate to “my documents” or to file if my documents is already selected
  • Attach file
  • Switch to “my documents”
  • Delete the file

As a result unless I had to I never stored documents in Notes, in Notes 6 and above you now:

  • Right click
  • Select Edit the document
  • Edit
  • Save the document

A really major improvement,  well done Lotus.  Only thing is whilst I really like this feature and the fact that I can keep a replica of my documents on the server and all of my PC’s,  I still don’t use document databases much because the doc links between them only work if I create them on the server copy of the replica,  since I always work in the local replica this breaks the user experience for me.

I wish there were more Lotus/IBM blogs like this though and I wish there were more comments on this one!

No responses yet

Mar 19 2006

Virtualization helps Consumerization

Published by Steve Richards under Main

Consumerization is a term that was coined by Doug Neal of CSC to describe the fact that enterprise IT is being disrupted by the combination of tech savvy employees who make high levels of personal investment in IT and have access to a whole raft of web 2.0 applications via the Internet. Gartner are also now vocal on the trend.  The challenge faced by enterprise IT is how to unleash the creativity and leverage the investment of their employees whilst at the same time retaining control over key applications and data.  There are a few popular approaches that seem to be getting traction:

Operating System Virtualization:  users have one PC (virtual or physical) that’s their’s and they can use it for whatever they want (within reason) and another (again physical or virtual) that’s managed by the enterprise.  The flow of data between these two machines is controlled via firewalls, AV etc.  The most popular configuration with users is to have the enterprise PC as the virtual PC,  not surprisingly the most popular configuration for enterprises is the converse.  The combination of VMware free player, Microsoft’s low cost (no additional cost for MSDN subscribers) Virtual PC and hardware support in future processors from Intel and AMD is making this increasingly practical.

Application Virtualization: users have one PC that is under their control but enterprises provide isolated applications that can run on top of an application virtualization layer.  In this mode the enterprise can be assured that their application configuration can not be compromised by applications that users install (apart from drivers) and that they can deploy, activate and de-activate these applications quickly and simply.  Application Virtualization will often even allow multiple versions of the same application to run concurrently on the same machine.

Enterprise Portals: users have a PC that is under their control, and access all key applications and data via an enterprise portal.  Such portals normally provide support for a wide variety of application types including Web, Java, and Citrix.  Its not a stretch to imagine these portals also being the access point for downloading applications that run on the application virtualization platform described above.

SSL VPNs and network access control: SSL VPN’s are rapidly replacing IPSEC VPN’s as companies move to an application access rather than a network access model.  Many SSL VPNs include network access control capabilities that involve an agent being downloading and scanning the PC to make sure that it meets enterprise criteria (patches, AV, firewall configurations) prior to the connection being established.  This capability is often combined/integrated with Enterprise Portals.

Network contraction: a few years ago it was common for the only firewalls in an enterprise to reside at the perimeter of the WAN.  An increasingly popular model is to protect the enterprise applications in the datacentre with firewalls and also to protect PC and workstations as well.  In some companies they are dispensing with the WAN altogether and PC’s running local firewalls effectively live on the Internet or behind commodity firewalls, and the enterprise perimeter has contracted to surround just the datacentres.  These datacentres often publish all of their interactive services via an Enterprise Portal as described above, and control connections to that portal using an SSL VPN and network access protection.

Personal Allowances: The final piece of the puzzle for me is how to handle the merging of business and personal use that we are increasingly seeing.  The model that appeals most to me is the allowance model.  Provide employees with all software they need for core business processes and a role specific allowance to invest in everything else including phones, displays, desktops, portables, tablets, productivity software, home networking etc.  Define standards and publish best practices to help people make sound decisions and to help them be as productive as possible, allow employees to supplement the allowance with their own money if they want to.  Because individuals then own the devices it also looks like employees will take on more – if not all - responsibility for acceptable usage compliance.

 

No responses yet

Mar 19 2006

Application virtualisation for the rest of us

Published by Steve Richards under Main

DisruptiveApplication virtualization is going to be very big, in essence it allows you to deploy applications on Windows clients just by copying them onto the machine.  The configuration of the machine remains unchanged because the virtualization platform isolates the application, by intercepting all calls to the registry and to files that would have normally been installed to shared areas like c:\windows\system32.  Windows Vista does this in a limited way but it’s purpose is different - to allow legacy applications to run without users needing to be logged in as administrator.

All we need for this to really take off is for the capabilities to be added to the operating system, or to be available for free and be ubiquitous, so that ISVs package up their applications to run in this isolated fashion.  Microsoft seem to have chosen not to build this platform for us because they already have a similar solution for new applications which use the profile (not the registry) for configuration data and use the manifest so that they are self describing.  These applications (like my favourite browser Maxthon) can be installed with a simple copy, in fact I replicate Maxthon to all my different PC’s by just copying the application and its configuration files from my desktop as part of a scheduled job.

SoftGrid has been the king of application virtualization for a long time but it’s expensive and designed for enterprise use.  The disruptive kid on the block is SVS from enterprise management vendor Altiris and it’s disruptive because it’s going to be free for home and personal use, and only $29/PC for enterprise use.  Many enterprises already routinely package all of their applications for automated deployment, and now they will have a new opportunity.   I have yet to see detailed reviews,  but packaging costs may well even reduce.  Certainly flexibility will increase if installation for many applications becomes nothing more than a file copy operation (no reboots) and application de-activation (allowing you to activate again later) is even easier requiring only a configuration setting change.

Imagine what this means,  operating systems will no longer degrade with time due to applications gradually changing their configuration, instead the operating system is automatically patched and protected probably direct from Microsoft, with applications running in splendid isolation from each other.  The applications will be easier to deploy and to remove.  Over time Microsoft will either develop a similar capability and build it into the operating system (Some variants of Linux are moving in this direction already) or wait for new versions of applications to build on similar capabilities developed for .NET applications.

Application virtualization is a practical solutions to the issues I talked about in this post, and will probably be important securing a continued role for the enterprise thick client, as it competes with the many server based computing approaches.

No responses yet

Mar 19 2006

Fed up with negative news!

Published by Steve Richards under Main

I must admit that I rarely listen to or read national or international news,  I find the signal to noise ration to be very low,  I pick up a little from the Saturday paper and from my family and friends.  Of course I scan a lot of focussed blog entries on technology and sustainable living as well.  Recently I added a whole load of positive news articles to by daily RSS feeds on topics that are broadly classified as “self-improvement” and they seem to provide a great contrast to my normal technology reading.  If you fancy some uplifting stuff in your aggregator then I can definitely recommend that you go here.  You will find the following categories to choose from!

Success(1426) Leadership(489) Attraction(1004)
Innovation(156) Time-Management(545) Motivation(1206)
Inspirational(1284) Spirituality(1823) Coaching(741)
Goal-Setting(830) Creativity(342) Stress-Management(933)
Organizing(346) Happiness(519) Positive-Attitude(1017)
Grief-Loss(203) Anger-Management(79) Addictions(224)

Go up a level if your interests are broader!  I have quite a few from here is well :-)

No responses yet

Mar 19 2006

Don’t forget the user experience!

Published by Steve Richards under Main

Rod describes in this post the importance of posting content in HTML.  He describes his experience of posting an interesting article as a PDF and then later as HTML.  The PDF didn’t generate much traffic,  when he converted to HTML the traffic went wild. 

Html

I must admit that I downloaded the PDF when he first posted it,  but I didn’t get around to reading it because to read PDF I have to invoke an exception to my normal blog cycle for me this is yet more evidence that the “User Experience” is far more important than mere features,  in my case a slight annoyance meant that I didn’t read the PDF, despite the functional capabilities of PDF being just fine,  it was simply the change in convenience that was the issue. 

In fact in another interesting post on usability Joel says “Something is usable if it behaves exactly as expected” well using my example reading the PDF was was not a good usability experience because it required me to invoke an exception to my normal process, ie was not as expected. 

Of course it may be that I’m just lazy :-) but seriously this example illustrates a big problem with many IT systems that people don’t have to use.  These systems are often justified on the basis of productivity, typical examples being:

  • web conferencing
  • audio conferencing
  • collaborative workplaces
  • video conferencing
  • PDAs

What we see all too often is that these systems get used for the first week or two and then usage tails off, success criteria often include:

  • someone mandates use and has metrics to make enforcement meaningful
  • productivity is truly improved for the individual and not the team
  • team productivity is improved to such an extent that peer pressure get everyone to use it
  • the user experience is highly usable

No responses yet

Next »

Easy AdSenser by Unreal