I’m a big fan of SlickRun and if you’ve not used it I recommend you download it and give it a try. I find it an invaluable tool not only for launching apps but also web sites, collections of applications and directories etc. It’s the simplicity of SlickRun that makes it so powerful. Sure there are newer, and certainly prettier launchers out there but SlickRun is still the best in my opinion. Whilst it’s usefulness is slightly diminished by the Windows 7 start menu search it still has its place for providing shortcuts of any name you like, and for running multiple apps off one command. Anyone reading this blog will no doubt have spotted that I also am a fan of Windows PowerShell, so I’ve now combined the two. The objective being to run simple PowerShell commands within SlickRun and have the results appear quickly in a console (with no coding).
PowerShell can be run with start up parameters (see the documentation here). The one’s we need to use are:
-NoExit to not exit the console window after running the command (so you can see the results)
-command to executes the specified command as though they were typed at the Windows PowerShell command prompt.
The SlickRun setup for the MagicWord (I’ve used ‘POSH’ in this example) is:
MagicWord: POSH
Filename: powershell
Parameters: powershell -NoExit -command "$I$"
The filename can be just "powershell" or if you feel better you can put in the full path to the PowerShell exe. Passing the command text as "$I$" just passed in what you typed in SlickRun after the magic word.
We can then just use the POSH keyword followed by the command we wish to run. For example this keyed into SlickRun…
launches the PowerShell console and the results…
Of course this approach can be used from other application launchers, directly from the command line or the Start-Run dialog but then of course you will have more to type as you will need to key the start-up parameters each time.
Filed under: PowerShell, Tools & Tips | Leave a Comment
Tags: PowerShell, Tools, Tools & Tips
- Free Plural Sight Courses: http://www.asp.net/web-forms for web forms. Also MVC ones available http://www.asp.net/mvc
- http://www.asp.net hundreds of screencasts from the Microsoft web team
- http://www.silverlight.net/learn/ hundreds of screencasts from the Silverlight team
- http://windowsclient.net/learn/ hundreds of screencasts from the Microsoft Windows Forms and WPF teams
- MS Showcase Videos : http://www.microsoft.com/showcase/en/US/categories/audience/dev
- Upcoming Visual Studio Live Meeting events: http://www.microsoft.com/visualstudio/en-gb/visual-studio-events
- http://www.msdev.com A huge repository of free learning covering SQL Server, Windows Azure, Visual Studio and more.
- http://channel9.msdn.com/Learn Free technical training on emerging Microsoft products and technologies.
- http://dimecasts.net/ is a great place for 10minute screencasts on a wide range of .NET technologies.
- http://www.dnrtv.com .Net technology videos.
- MSDN Subscription based free training: http://msdn.microsoft.com/en-gb/subscriptions/ee461390.aspx
- The Gu’s list of free ASP.Net training: http://weblogs.asp.net/scottgu/archive/2011/05/15/great-free-video-training-on-asp-net-web-forms-and-asp-net-mvc.aspx
- Tech Ed Session Videos (from 2008 to 2011 and growing): http://channel9.msdn.com/Events/TechEd
- The VS2010 & .Net 4.0 Training Kit download: http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=23507
- MSDN Virtual Labs http://msdn.microsoft.com/en-us/aa570323. Guided, hands-on labs which can be completed in 90 minutes or less (no installation required).
- Microsoft Virtual Academy for lots of information on Microsoft’s virtualisation technologies http://www.microsoftvirtualacademy.com/Home.aspx .
Filed under: .Net, Learning | Leave a Comment
Twelve months ago I wrote a post documenting “installing Team Foundation Server 2010 on Windows Home Server” which has proved very popular. Well things move on and since then Microsoft have released a new version of Windows Home Server (WHS 2011). There are many differences between V2 of WHS compared to V1 but the main points for the purpose of this post are that WHS 2011 is build on top of Windows Server 2008 R2 (compared to Windows Server 2003 for V1) and controversially the Drive Extender technology has been removed. Whilst Drive Extender was no doubt useful for storage pooling it did make installing applications like TFS a little concerning. As described in my original article I wouldn’t install an application or a SQL Server database into the Drive Pool (it just feels wrong to me and wouldn’t trust it) and I stick by this especially as it’s been suggested that one of the reasons for Microsoft removing DE was due to it not playing nicely with enterprise applications that would be targeted for use on the new Small Business Server Essentials product range with which WHS 2011 shares it’s code. No DE means you can install TFS now to whichever drive wherever you like in WHS 2011, and the fact that it’s built on the excellent Server 2008 base means it benefits from stability and performance improvements this brings. I’ve not found any issues with TFS on WHS 2011 and don’t expect to (although its not supported so you install it at your own risk). I think that WHS 2011 will make an even better TFS server than WHS V1.
Other than the decision of where to install TFS due to DE, the installation instructions are the same as in my original post. After installation I recommend installing the TFS Power Tools and then configuring TFS backups as described in these posts: Backing Up TFS 2010 Using PowerShell: Part 1, Backing Up TFS 2010 Using PowerShell: Part 2 and Backing up TFS 2010 with new Power Tools Backup Plan.
Filed under: Geek Tech, Home Server, Team Foundation Server, Windows | 1 Comment
Tags: Team Foundation Server, TFS, Visual Studio, WHS, Windows Server
Is Your Gym Like Your Dev Team?
I recently managed to drag myself out of the office and into the gym, but unfortunately my mind was still on the office and my observations of what makes a dev team tick. In between sets I observed my fellow gym-goers and I witnessed similarities with my experiences of IT development teams. Parallels between your developer teams and the local gym can made both in terms of personas and in the approaches to gym training:
Exercise Machines vs. Free Weights:
When the Nautilus training machines (variants of which now fill every Gym) appeared in the early
1970′s they facilitated a revolution in exercise training and professional gyms. In contrast to free-weights (barbells, dumbbells etc) exercise machines provide a convenient and safe way of training. They don’t require a watcher and force the user through the ‘correct’ range of motion to avoid injury, also enabling forced reps etc. Like software frameworks these machine are built by expert engineers using solid (but also opinionated) ideas. They both enable new starters to get started easily and safely but they also share the trade offs. Machines/frameworks can lack fluidity and shelter the user from needing to understand the underlying principles at work. If the machine is out of service the gym user may not appreciate that they can achieve the same results via other methods. Remove the abstraction that the framework provides to the software developer and it may expose their lack of underlying skills (e.g. an ASP.NET Web Forms developer not appreciating HTTP). Of course the ‘correct’ way of doing something is always debateable and may not suit your needs for every project. Interestingly some pure "Bodybuilders" refuse to use machines for snobby reasons even when it would prove useful, whilst the majority of other gym users only use machines. The same can be said for developers and frameworks. An experienced all-rounder will happily use machines/frameworks where they are useful for productivity but will also utilise free-weights/alternative methods to achieve specific requirements.
Metrics:
Ask any professional athlete or Bodybuilder what calories they consume or the weights/reps/sets in their last gym session and they’ll tell you in detail. This is because they know the value of recording metrics and how to use them to track progress. The same principles can be applied to software development teams. What’s your current burn-down rate? What’s the average code churn figure for a nightly build? How many hours effort really went into building that MVC view compared to the estimate? A productive team that is continuously improving will be using these metrics to drive progress.
Agility:
Whilst solid athletes measure and plan they are also agile in their training – because they have to be. They have to adapt to changing training environments and to the subtle messages from their bodies to avoid injury and maintain productivity by focusing on the end goal. You wouldn’t expect them to stick rigidly to a plan defined months before despite changing circumstances (e.g: injuries, soreness), things change and so the journey towards the goal must be managed with flexibility.
Gym Buddies: 
The benefits of having a gym buddy are clearly documented in the fitness world and for obvious reasons (shared motivation towards goals etc) and these benefits are so often overlooked in the development team. Pair Programming is a step in the right direction and is one technique that springs to mind but it is also just as important to foster a shared vision within the team and promote discussions and peer learning. A performing team is usually greater than the sum of its parts because people’s performance feeds off the ideas and motivation of their peers.
The Miracle Widget:
For those who don’t want the sweat and pain there’s always the miracle widget that will yield amassing results with little effort. Whether it’s a new machine, wonder drug, electronic shock training, sofa gyms, or SOA, Cloud Computing and BPM they need to be viewed with some apprehension. That’s not to say they aren’t the next big thing, but more that they are not silver bullets and they are used best within a cohesive thought out strategy.
Doping:
Taking steroids can rapidly improve an athletes performance but that improvement comes at a cost of unwanted side effects. The end goal may be rapidly becoming achieved but at the cost of internal physical or mental damage. This is form of extreme technical debt, taking a short cut here and there may be acceptable to ship the product but reliance on that short cut can build making it harder to reverse that debt.
Below I’ve noted some general stereotypical personas from the Gym and how they mirror development team personas. Do you recognise these roles in your gym/dev team? Warning: These are fun generalisations so don’t get upset or take it too seriously!
The Bodybuilder:
This guy has one goal in mind, to get ‘big’. All his exercises are anaerobic aimed at building muscle and developing his physique. He doesn’t do aerobic training as it detracts energy from his primary goal. He shows a strong ‘engineer like’ expertise of one discipline and he probably has excellent in-depth knowledge of that area and is very focused on learning more about it. He can be slightly intimidating to approach but generally happy to share his knowledge and experience and enjoys being able to show off his skills. This persona fits well with many traditional experienced software developers, who are experts in their chosen areas of discipline and increasingly seek to learn more about that technology area, often ignoring the benefits of others. They are dedicated and seen as experts in their field but outside their field they struggle and sometimes the imbalance with other disciplines has a negative effect.
The Endless Runner :
Similar to ‘the Bodybuilder’ above but this time in a different discipline. These guys want to run faster/longer and focus on aerobic exercises and building endurance. Again a solid, expert software engineer but this guy is not in it for the showy technology but more for building the plumbing infrastructure required to keep systems operation.
The All-Rounder :
He is not the biggest or fastest guy in the gym but he is the typical all rounder. He probably has experience of working in the various disciplines above (maybe mastering both) but prefers breath over depth. The All Rounder is able speak everyone’s language and can compete admirably with anyone else but has to submit to the overwhelming expertise of the guys listed above. Often this guy is a bridge between the different disciplines and chats in the corner with both. He gains the benefits that the variation and breadth of knowledge provides but is often at risk of not keeping up with the pace of change in either. His nearest IT persona is the architect due to his all round skills and his comfort liaising with all the required disciplines. He is happy to share his experiences when asked or when he sees someone really struggling, but is often less opinionated about one approach or another as he see’s all sides of the technology argument.
One Routine Guy:
A consistent gym attendee but does the same routine for years. We all know developers like this. They lack true ambition for the vocation and hence don’t build up a true understanding of the changing world around them. They are happy to use what they know and they feel works but the lack of willingness to learn new things puts them at risk of hitting a progress wall and finding themselves obsolete, eventually quitting.
Bored Stiff Guy :
They have decided to go the gym but have no real desire to do the workout. He runs through the motions, moving from task to task with little effort or intensity. We have all no doubt worked with developers who are going through the motions without any passion for the art of software development. Similar to ‘One Routine Guy’ they know what they need to know and lack any enthusiasm to learn new skills etc. I often refer to these as ‘Part Time Programmers’ as they see the job as 9 to 5 and the thought of picking up a new skill without company sponsored training course is alien to them.
The Biceps Only Guy:
Only focuses his energy on what can be shown off. He is just playing with the flashy stuff but without building a strong foundation to balance it with. For this guy ‘Gloss is Boss’. Some developers are happy playing with new technologies and building hundreds of "Hello World" apps but yet actually rarely innovate for the team as they fail to see the bigger picture.
The Poor Form Guy:
Is energetic and enthusiastic about training with heavy weight but inadvertently uses dangerously bad form in his exercises. Sometimes developers/architects can become so absorbed in delivering big solutions that they fail to assess their actions. They design complicated solutions using patterns they often don’t understand regardless of the project risks and the potential long term problems around stability/maintainability etc. Like ‘Poor Form Guy’ this is often a case of poor teaching or poor controls. These guys needs a coach or community to check their form.
The Personal Training Guru:
An expert in his field that takes in many disciples and guides people in their goals. Sort of a more senior experienced all rounder that is now dedicated to helping others. He has respect from his community and his advice is well respected. These are the guru’s in the tech world, experienced consultants/authors (e.g. Martin Fowler).
The Impatient For Results Guy:
He wants results and fast! He’s usually the customer for the ‘Miracle Wonder Widget’ (see below). Happy to take the easy option and cut corners on quality if he can. No doubt we’ve all worked with some bad development/project managers like this.
The Newbie:
He’s new to the gym and very intimidated. He’s still finding his feet with the machines and social etiquette. Just like new developers these are the live blood of the community as they bring enthusiasm and new ideas, but they need to be guided. They need assistance to get up the steep learning curve and be shown the right way to behave. If we make it hard for them to add value quickly then we risk them giving up and going elsewhere, or at least becoming a Bored Stiff Guy.
The Non-Conformist:
This guy is in the corner of the Gym doing his own thing. He’s probably using the equipment in a unique way, or using a less known training technique. He is innovative and might capable of producing amazing results using non standard approaches. He can be found in your development team too bashing out productivity tools and reviewing the latest open-source offerings. Regardless of his personal success he provides a fresh approach and generates new ways of working. He needs keeping in check though to ensure that his solutions are viable longer term.
The Non-Committed Local Gym Supervisor:
Whilst many gym supervisors are like the Personal Trainers some can be over focused on numbers (subscriptions, machine usage rules) more than real results. Once the new recruit is brought in they get given the user guide and then are left to it, with poor form being ignored as long as basic safety rules are adhered to. There can be a lack of evangelism of techniques, ideas etc., or of facilitating the creation of a real community in dev teams too which can lead them to fail. A lot of the success/failure of teams can result from the performance of the development manager / technical lead and their willingness to support the team to keep them productive.
Summary:
Of course the conclusion is that I should have been working out instead of ‘people watching’ but the fact remains that there are parallels that can be drawn between our work communities and many other walks of life. This opens up the ability for us to view situations from different perspectives which can then help us to improve our understanding.
Filed under: IT Observations | Leave a Comment
Tags: Agile, DevTeam, linkedin
Hello Linux – Again
I’ve been increasingly interested in the Linux OS again recently and have re-discovered it’s power and flexibility. I’m a Windows guy primarily, always have been, but I’m writing this on the new Ubuntu 11.04 (Natty Narwhal) release and I must say I am enjoying the experience.
This is by no means my first foray into the world of Linux, in fact my first exposure was way back 1999 (wow was it that long ago?) when I heard about this magical version of Unix that ran on PC hardware. At that point my home PC was running Windows NT on a Pentium 166 with a heady 64MB Ram. I purchased a Linux book that came with a Linux distribution on CD (downloading was not really an option for me back then with a slow dial-up connection). It was Caldera OpenLinux 2.2 and installing it was a nerve racking and sadly enjoyable journey of re-sizing partitions, configuring drivers and general frustration. Eventually I had a dual boot NT and Linux PC and a sense of self satisfaction, but Linux didn’t capture my imagination much further at that point. Much like playing with Lego as a child (or an adult
) the fun is in the building and configuring it how you want but not the playing with it afterwards, my fun with Linux was over. The UI felt like a poor relative to Windows and I booted into it less and less. As I moved further into Windows development there was less of a desire for me to explore Linux more. Over the last 12 years I have played with a few distributions on and off but never really for any reason other than curiosity and none of them really stuck. Lately though I’ve started to get the Linux itch again so I got downloading and I’m very pleased with what I’ve found.
Firstly it is now so incredibly quick and easy to get Linux distributions installed and setup on your machine of choice. There are so many options to get you up and running, and with most drivers automatically detected you should get few issues. Of course Virtualisation has made it easy to try out various OSs and Linux is no different. VirtualBox is a joy to use if you want to try out a Linux installation, but there is also the LiveCD option that enables you to run your Linux distribution of choice off a USB or DVD drive without touching your hard drive. Whilst this is not very practical for everyday use its good for getting a real feel for what a Linux distribution is like and what it will be like on your hardware. The best option for me with it’s ease and practicality is Wubi whereby you can install Ubuntu within your Windows OS and it creates a virtual disk on your Windows drive for installation. This means all your files are sitting isolated in a Linux virtual disk file within Windows. You boot into Linux normally (via the Windows dual boot loader screen) and it is completely transparent to your Linux OS that it’s disk is actually virtual. Of course there is a performance overhead around disk access but its not noticeable even on my netbook. This approach allows you to get all the benefits of a Linux installation without having to go full hog straight away with partitioning your disk. I’ve been running Ubuntu for a while using this approach and its working a charm. I do intend to go the full hog soon and install a fresh install of Ubuntu onto its own partition when I get around to it but as it works so well I’m in no rush. In the meantime I can try out some other Linux distro’s to find the one for me (Linux Mint and Tiny Core are on my list to checkout).
Ubuntu is certainly a relatively user friendly Linux distribution and whilst the switch to the new Unity desktop for the latest 11.04 version is very controversial within the Linux community there is little doubting that it is a friendly experience to new Linux users. It is also a very good desktop experienced for Netbooks, which is probably why it’s working so well for me on my netbook. I’m not sure how it will scale up to my desktop yet and do understand the negative comments that have been pitched at it. Regardless it is a way of Ubuntu differentiating itself from Windows and Mac, whilst making itself as user friendly as possible. It does appear as though Unity is a first step towards Ubuntu becoming a touch friendly device like Linux distribution. I’ve commented before on this blog how i see devices replacing the PC for all but "power user" type consumers and yet I still feel that a light friendly Ubuntu (with the power still underneath for those that want it) can do well. My wife is happy using Ubuntu on my netbook because like many consumers she does almost everything in the browser and this is where Linux on a Netbook seems to shine, as its capable, light and fast. A key advantage for Ubuntu is the Ubuntu Software Centre which is ideal for new users to get up to speed quickly. Overall I have been pleased with how Ubuntu plays with my Windows network shares and was pleased that I haven’t even needed to install a Remote Desktop client to logon onto my Windows servers as there is one included (type rdesktop servername at the terminal).
It’s still early days with my latest affair with Linux but so far it’s going well and this time I might get totally hooked.
Filed under: Geek Tech, Linux | Leave a Comment
Tags: Linux
This week my Team Toolbar Office add-in for Team Explorer disappeared preventing me from uploading any new Work items to Team Foundation Server. After some searching in Excel (and MS Project) I accepted it wasn’t just hiding and turned to Google for help. Luckily I found this helpful post on the Team Foundation Server Team’s MSDN blog:
http://blogs.msdn.com/b/team_foundation/archive/2010/04/24/vs-2010-and-tfs-with-office-2003.aspx
In summary it tells you where on your machine the TFS Office Add-in is located for VS 2010 and VS 2008, e.g: "Program Files\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\TFSOfficeAdd-in.dll" or "Program Files\Microsoft Visual Studio 9\Common7\IDE\PrivateAssemblies\TFSOfficeAdd-in.dll", and reminds you how to register/unregister these COM components, (i.e. regsvr32(/u) TFSOfficeAdd-in.dll).
I unregistered the VS 2010 add-in and registered the VS 2008 one (as I needed the 2008 based add-in) and "hey presto", the Team Toolbar was back in Excel.
Filed under: Team Foundation Server, Tools & Tips | Leave a Comment
Tags: Team Foundation Server, TFS, Tips, Tools & Tips
Android Remote Desktop Client
I find that I am increasingly relying on the computing power of my Android smartphone (a HTC Desire) and finding novel ways of using it to make my IT life easier. Sometimes I just want to connect to my PC that is in another room, or more often for me it’s my headless Windows Home Server, and so I scouted for a Remote Desktop client that I could run on my phone. The key requirement was for it to use the Windows native Remote Desktop protocol and therefore not require any software to be installed on my PC or Server, which ruled out a lot of the VNC based Apps. Luckily 2x.com have released an excellent FREE App that ticks all the boxes.
2XClient for Android can be found here or on Android Market here. It is dead easy to set up the target machines and there are several display optimisation options. The key thing though is that it’s actually very easy to navigate the target machines desktop via a custom keyboard and a nifty mouse icon that can be dragged around with a left and right mouse button attached (left image below). In these images I’m logging onto my Windows Home Server (a Windows 2003 based OS) but I also use it with my Windows 7 PC too. One thing to note for Windows 7 though is that I needed to set my Remote Desktop settings (via My Computer > System Properties > Remote Settings) to “Allow connections from computers running any version of Remote Desktop” as opposed to the default setting of enforcing Network Level Authentication.
It is surprisingly easy to do simple tasks on the target machine, especially after a bit of practice. Here I am using PowerShell and checking my Home Server Console.
A very powerful tool to have on your phone and ideal for those quick techy tasks when you can’t be bothered to get off the sofa.
Filed under: Geek Tech, Home Server, PowerShell, Tools & Tips, Windows | 1 Comment
Tags: Android, Home Server, PowerShell, Tools, Tools & Tips, WHS
Software KVMs
Recently I have acquired an additional desktop machine on my desk and quickly saw the potential to expand the amount of screen real estate at my disposal (you can never have enough screens). So imagine I have a laptop physically connected to two screens and a desktop PC, with one screen connected, on the same desk. I want to be able to seamlessly control that desktop PC with my main keyboard and mouse that it physically connected to my laptop. That way I get to have three screens and twice the processing power. Remote Desktop tools of course are not useful here as we can already see the desktop PC’s monitor and we don’t want to control the PC through a window on the laptop. Instead we need Software KVM Applications (in fact without the V for Video as we can see the screen). These work by sending your keyboard and mouse movements over a network connection to the additional PC. They also transfer your clipboard contents so you can copy paste easily between the machines.
First I tried Synergy from http://synergy-foss.org/ which is fairly unique as it’s a cross platform offering that runs on Windows, Mac and Linux which is incredibly powerful if you have a mixed environment.
I
tried the latest stable build which was 1.3.6. I found it functional but basic and not that robust. The Synergy client would stop running on on several occasions (usually after locking/unlocking the PC). The UI is also very basic. That said it did the job and I have since found that the UI has been completely overhauled for the current BETA version. Whilst I don’t think it is quiet solid enough yet it looks to be a big player in this space and there is no doubting that for those with a mixed environment it is great.
In the end I decided on InputDirector, found at http://www.inputdirector.com/. This is a Windows only offering but is more mature than Synergy with a host of additional options. It is easy to configure with one PC being the master and one being the slave. You can right click the icon in the system tray and choose to enable/disable it and also to lock/shutdown the Master and Slave PC’s, which I find useful when I want to lock both PCs in one go. The best feature though is it’s stability as I have not found one issue with it yet and am surprised how effortlessly it handles the docking/undocking of my laptop which is acting as Master. Once the laptop is docked a message pops up on the system tray to notify me that master and slave are in communication again and all is well.
InputDirector screenshots below:
Filed under: Geek Tech, Tools & Tips | Leave a Comment
Tags: Tools, Tools & Tips, Windows
Windows PowerShell Console Fun

Whilst watching Die Hard 4 the other day I noticed the funky transparent console windows that were being used to battle out cyber warfare, and being a traditional geek I immediately liked the idea of doing the same for my PowerShell console. Sure I know these guys are using Linux and transparent consoles have been around for years but still I fancied some of that slickness on my Windows.
It didn’t take long to find PSGlass on CodePlex (http://powershellglass.codeplex.com/) which is a neat little exe that runs in your system tray and hunts out any PowerShell console windows, and any it finds it converts to transparent using the Windows Aero effects. The peek into the source code shows that it’s checking for a window with a process name of “powershell” or “cmd” and then uses the DwmEnableBlurBehindWindow API to make it transparent. The effect is shown on the left. It’s simple and effective and could be extended easily to do more. Not content with this I wanted to achieve the same result from within PowerShell itself so set about using the API in a script. Luckily for me Oisin Grehan had already written a script to achieve the same result and posted it on PoshCode.org, check it out at http://poshcode.org/2052. For this script the DwmExtendFrameIntoClientArea API is used to create a sheet of glass effect with no borders and the effect is much more striking (right screen shot). The fact that
you don’t have to have an application running in the background is of course much better and as its a script you can add it to your profile to always take effect on Powershell start-up. I have found it useful to create a function in my profile to toggle the glass effect on/off depending on my mood and what actions I am trying to perform.
As the console was now transparent I quickly found myself wanting it to stay on the top of other windows and so set about looking for a script for that too. Again the excellent PoshCode.org came to the rescue with this script from Shay Levy at http://poshcode.org/1837. Again I downloaded the script and added a function to my profile to be able to toggle it on/off at will from within the console itself. In order to access the Set-TopMost() function that sits within the TopMost.ps1 script I used dot sourcing (described here by Jesse Hamrick) and my functions are shown below:
function OnTop
{
. TopMost.ps1
Set-TopMost (get-process -id $pid).mainwindowhandle
}
function NoOnTop
{
. TopMost.ps1
Set-TopMost (get-process -id $pid).mainwindowhandle -disable
}
For total geek heaven why not go the extra mile and put a Matrix style screensaver within the console itself. If you haven’t seen it I would recommend checking it out at http://www.nivot.org…. The video on the site shows how it works but it essentially runs a Matrix code screensaver inside the console (not the whole desktop). Now that’s one clever PowerShell script!
Filed under: PowerShell, Tools & Tips | Leave a Comment
Tags: Fun, PowerShell
I’m pleased to announce the release of version 1.3.0 of my Windows Live Writer (WLW) Source Code Highlighter plugin for WordPress.com hosted blogs. For those not aware of this plugin it enables you to quickly insert a source code snippet into your blog posts using the WordPress.com source code short codes. For more information and a run down of features checkout this page.
The key feature included in this version is support for Live Writer 2011. As I posted here the new 2011 version has implemented additional security restrictions which have the effect of preventing JavaScript to be run within the editor window. More security is always good right? Well not this time as many plugins that rely on script to function have been affected, including mine. The end result is that the ‘in editor’ preview feature has been removed when using the plugin inside WLW 2011, but don’t worry it’s still there if you’re still running an older version of Live Writer. To go someway to help with this lack of preview I have implemented a new "Preview In Template" feature for 2011 users that provides an external preview in your browser. It works by using your locally downloaded blog theme and inserts the code snippet into it (with syntax highlighting) thus providing a preview as to what the end result will look like. It is just for previewing the formatting of the selected snippet though and won’t display a full preview of the whole post – use the Preview view in WLW for that still.
WLW 2011 ‘Preview In Theme":
Preview in Editor in older versions of WLW, and the new Mini Preview screen:
Regardless of what version of Live Writer you are running there is also a new ‘Mini Preview’ feature. The code entry screen has been extended to have a preview tab where you can instantly see the results of your code changes in full syntax highlighted glory. The code entry screen is now fully scrollable and resizable too.
I’ve also included a few small tweaks and bug fixes in this release as usual. For example you can now Alt-Tab correctly back to the Code Entry screen and all languages should now display correctly when previewing.
To download (it’s FREE) just go here: http://richhewlett.com/wlwsourcecodeplugin/ and click Download Now.
Filed under: Live Writer, Tools & Tips | 2 Comments
Tags: Live Writer

