BM-Bloggers

The blogs of Black Marble staff

Life with a Lenovo IdeaPad Yoga 13

yoga

My wife’s desktop computer is eight years old. In fairness, it was good kit at the time, and the dual core, 64-bit AMD CPU and it’s four gigabytes of RAM are still more than enough to run her apps today. But the disks are slow and, frankly, it’s just getting tired. Time to get a new one…

I had no real preference whether we replaced the old computer with a new traditional-style desktop and screen, or an all-in one, or a convertible or even a tablet. The only thing I was firm about was that we should get a computer with touch, whatever the form factor. It’s not that my wife loves touch (in truth, I’m not sure she does…) but that’s the way we’re all headed and I wanted to make sure we got something that would last.

There aren’t many places in the UK to buy a computer if you’re not sure what you want and you need to look, feel, touch and play with the various options so we trotted off to our nearest big chain PC store. We wandered up and down the aisles and my wife examined a number of laptops, desktops and more. We left to get a coffee and consider, and she decided on the IdeaPad Yoga.

Solid pedigree

We’ve been buying Lenovo kit for the office for a while now. ThinkPads are built like tanks and keep on trucking, but they’re not the most beautiful of devices. However, I strongly believe that of all the OEMs building PCs right now, Lenovo are the only one who really grok the principles behind Windows 8 and have embraced those principles with lovely, functional design. At work the sales team use Twists, and Robert has a Helix. Lovely devices all. The Yoga is cut from the same cloth. From the packaging to the design to the materials it’s made from, the Yoga oozes quality and thoughtful design.

The outer casing is coated with something that makes it feel more like some kind of fabric. It’s grippy and easy to hold and carry. The inner surface around the keyboard is soft and rubbery. It’s great when holding the Yoga in tablet form but it’s also comfortable when typing. The keyboard is of the same Lenovo quality as my laptop, albeit with the now standard chiclet type of keys and the trackpad is big and accessible. It’s a very comfortable machine to use.

Powerful enough

The model we got in the end has an Intel Core i5 CPU and four gigabytes of RAM. That’s plenty of power for what my wife needs and should still be enough a few years from now. The SSD inside ensures that storage is quick enough to make the whole thing feel snappy and responsive. It isn’t exactly overflowing with ports, and expansion isn’t much of an option but those aren’t high on the list. There is a single USB 3 port on one side, another USB 2 port on the other and an HDMI port. An SD card slot rounds off the list.

A novel form factor

The thing that stands out when you see the Yoga is that double hinge which allows the screen to fold all the way back to transform the Yoga into a slate. I was dubious at first about the keyboard being exposed and how that would feel to hold, but I can’t say it’s bothered me. The keyboard is disabled as the screen moves past the point where the laptop is fully flat so you can’t accidentally press keys.

The design also allows the Yoga a neat party trick that Lenovo call ‘tent mode’ where you fold the screen back but not all the way. The result is a stable inverted V which allows the Yoga to stand freely – great for watching videos.

A better than average screen

One of the things that attracted me to the Yoga in the store was that, unlike almost every other touch-enabled (and non-touch, for that matter) laptop, it didn’t have a 1366x768 screen. That resolution is fine on my Surface RT, and I put up with it on my work X220 tablet, but on a screen bigger than ten or twelve inches its annoying and when you work with Office or other desktop apps, as my wife does, the extra real-estate makes a difference. Her desktop had, until one of them died, two 1600x1200 21” LCD screens. The Yoga has an impressive resolution of 1600x900 so she wouldn’t lose much desktop space. It’s also a lovely, crisp display. It’s a glossy screen, so it suffers with reflection in bright sunlight as all glossy screens do, but it’s lovely to use.

Solid battery life

Windows reckons the battery is good for around 6 hours or so. Evidence so far supports that. What more can I say?

Strength in flexibility

The form factor is a big win. I’ve watched as my wife has folded the screen back to use the Yoga in tablet mode and read on the Windows 8 Kindle app; I’ve seen her use it tent mode to watch YouTube and BBC iPlayer videos; she uses it as a laptop all over the house. Finally, she uses it with a second monitor and separate keyboard and mouse, with her scanner and one of our printers plugged in via USB.

Adding peripherals: The Lenovo USB 3 dock

My wife was insistent that she needed to be able to use any new computer to perform the tasks she did on the desktop. That means scanning photos and manipulating the resulting images, word processing and more. She wanted to keep the remaining 21” screen and like the idea of having a desktop keyboard and mouse for when she wanted to work at her desk. The Yoga doesn’t have enough ports to support all the peripherals she needed, and having lots of cables to connect is a pain.

Enter, stage left, the Lenovo ThinkPad USB Dock.

dock frontdock back

A single USB 3 connection to the Yoga gives five USB 3 ports for peripherals, an audio output jack, ethernet and two DVI ports. The accompanying software is needed to enable everything except the USB: DisplayLink for the DVI, USB audio and USB ethernet. I had the thing connected and working in less than five minutes and it just worked. With one cable to plug or unplug from the Yoga it transforms into a docked laptop with attached keyboard, mouse, scanner, monitor, speakers and physical ethernet for speedy transfer of data to and from our home server. It works quite happily other systems as well – it’s not limited to Lenovo PCs. Want to use your Surface Pro – no problem!

Overall

All in all I’m very impressed with the Yoga. My wife likes it and is happy with the choice she made. I think it’s good value for the cost and well specified too. Standout features are the quality and resolution of the screen, the always-reliable Lenovo keyboard and the innovative, flexible hinged form factor.

I can also heartily recommend the ThinkPad dock as a companion device for any USB 3-equipped laptop.

I wouldn’t be where I am today… How encouraging kids in computing is important

I’ve been mulling this blog post for a while. Those of you who know Black Marble will have seen that we all believe very strongly in encouraging young people to take up computing and put time into sharing our knowledge and expertise. I thought it was worth sharing how I got to where I am today, which would not have been possible without the help and encouragement of three key people who worked with technology. There’s a message in the story though, about how we need to help the next generation of computing professionals in the same way.

To an extent this post is as a result of an event that Steve, Richard and I took part in shortly after I returned from the Build conference. One of our local schools ran a STEM event and invited Black Marble to join in. If, like me, STEM means nothing to you, it stands for Science, Technology, Engineering and Maths and you can find more at the National STEM Centre website. At that event, Steve took our Gadgeteer kits and led a series of hands-on sessions that combined hardware and software to build quick but cool projects. Richard and I decided to run the Agile Hour activity with a number of groups of children across a range of ages. The end result, hopefully, was that those kids went away with a mixture of enthusiasm for the craft courtesy of Steve, and an understanding that it isn’t all sitting in front of a keyboard all day – teamwork and communication are key skills – thanks to Richard and myself and an exercise about mining cheese on the moon…

Anyway, I’ll come back to encouraging others in a little while. Back to how I got started…

Key influence one: My upper school form tutor

I am of that age where computing grew around me. When Sinclair launched the ZX81 I was nine. A friend of mine had one and I remember writing programs with him. As I got older I was lucky enough that my middle school had a BBC model B that I could use, and I got an Amstrad CPC 6128 which I loved and tinkered with. None of those, however, bore much resemblance to the modern PC.

When I started at upper school, my form tutor was a maths teacher. He was also the computer studies teacher, and the one who rand all the school’s computer systems – staff (what there was of it) and student. In our classroom, down one side, was a line of Commodore PETs which we used in our classes. They didn’t last long though, because soon after I arrived they PETs were replaced by Research Machines Nimbus RM186s, running a hacked-around version of Windows (the 80186 CPU wasn’t fully compatible with the 8086).

My tutor knew how enthusiastic I was and encouraged me. Myself and Andrew started to help him with those computers. He allowed us to install software with him and explained how they worked. As those RM186 PCs were replaced with 286 and 386 and then (wow!) 486 machines he let us configure them, rebuild them and learn how they worked. We weren’t allowed to touch the Netware server that appeared in the corner, but we were allowed to store our file son it. We were even allowed, on occasion, to use the modem and connect to some of the dial-up bulletin boards that were around at the time.

All of this meant that by the time I left school to go to University I could build a PC from scratch, install DOS and Windows (I go all the way back to Windows 1!) and other apps and configure the system to get the most RAM and install and configure the drivers needed for networking. I could program in BASIC and write DOS batch files and I had a healthy respect both for the technology and the people that ran it. PCs weren’t things you played games on, they were tools that I used to word process, publish school magazines, draw artwork and crunch numbers.

The important point here is that most of my computing experience was gained outside of lessons – before school started, during breaks and lunchtimes and after school. All of that was because my form tutor was prepared to encourage me in what was effectively his own time and I am grateful for that.

He also had a fantastic stereo system in our classroom and got me into prog rock played loud, but that’s another story.

Key influence number two: The University server guy

In truth, the number of people in the Computer Centre at the University of Bradford who I owe much to is too long to list – from the coms guy that introduced me to everyone, to the Director that gave me first a summer job and then my first full time job on graduation. However, the one that deserves the medal was the chap who was responsible for the Netware servers and student computer clusters.

It was an opportunity that would be hard to give anyone now, as networks store more sensitive information and the risk of abuse is so high that it’s hard to gain trust. In my first few weeks of University, however, there were very few desktop PCs in service and staff computing was in its infancy.

I was incredibly fortunate that my enthusiasm allowed me to drop into the offices of the staff and talk to them about computers. We talked about what they were doing, and what I was doing. I listened to their problems and would try to solve them – on my equipment and in my time. I was invited to accompany the network guys as they strung Thin Ethernet cables and learned how all that worked, with T-pieces and terminators, network segments and bridges. I learned about the new twisted pair cables and data sockets and hubs and routers. I even learned how to install servers – Netware 3.11 at the time – and got involved in building the new infrastructure.

My mentor was a patient man who had little time to experiment. He would get into work early to avoid traffic and hoped to use the quiet time to catch up on work and plan and prepare. He was certainly not prepared for the enthusiastic young man who would bound into his office at 8 in the morning jabbering about how he’d managed to get Microsoft NetBeui drivers installed over the top of Novell’s driver stack and get Windows 3.11 talking both workgroup protocols and server protocols and wasn’t it just so fantastic and could show him if he could just move this kit over here and rewire this bit of the office over here…

But again, I was encouraged. I was most certainly tolerated and over time my enthusiasm was channelled into creating and managing services. I worked in the Computer Centre during my holidays – sometimes paid; sometimes not. It gave me incredible opportunities to learn and experience desktop computing on a large scale. It gave me an understanding of what providing a service meant, and how systems had to be resilient and supportable and documented. It also gave me a huge amount of incredibly valuable experience for when I would finally hit the job market.

It was such a wonderful place to be that, on graduation, I managed to get a job at the University. I left to Join Black Marble, where the experience I had learned running services of hundreds of desktop PCs and dozens of servers of varying flavours (Netware, Solaris, Linux, Windows desktop and server) has been invaluable.

Key influence number three: Robert

Which brings me to the third big player in getting me where I am today: Robert Hogg. I’ve not named my other two mentors simply because I can’t ask their permission and I respect them too much too simply throw their names around. As MD of Black Marble, Robert’s my manager. It’s hard not to name him, and I’m sure he won’t mind.

Most people who know Robert, and certainly those who have know him a long time, know him as Boss. I first met him when I was a student. Boss had built the first few Netware servers at the uni, and had then moved into management of the new Sun Solaris servers and workstations when they were installed, during the summer of the year I joined the university as an undergrad. The poor man I tormented every morning took over the role Boss had previously occupied, so in a way it’s all his fault.

It was Boss, along with the server guy, who persuaded me not to ditch my management degree at the end of the first year and switch to computing. They could teach me the computing bit, they said, but the management stuff would be really useful to my career.

Boss is like me – he likes to play and experiment with computers. Unlike me, he’s a developer. I’d argue that he’s probably the reason I don’t try to code. He patiently explained stacks and pointers to me many years ago, and through him I learned that whilst I’m a solid infrastructure guy, and I understand development, I am not a ninja coder and will never be. Boss has always encouraged my experimentation with technology and it’s that which brings the variety that keeps me so engaged with what I do.

You have much to learn, grasshopper

I believe that it’s important to stress the differences in my three mentors as much as their similarities. I think that each of their qualities is important in how I was encouraged and how we now need to encourage others:

  • My maths teacher was supportive of my interest in something new. He allowed me to play, but set boundaries that gave me respect for what might happen if I broke stuff. He showed me computers as wonderful tools, not playthings and inspired me to discover what they could do.
  • My university mentor gave me focus. He forced me to understand the implications and repercussions of my actions. He praised my innovations that helped and stopped those that would cause problems before they moved near to production systems. He taught me how different systems could and should be integrated to deliver IT as a supporting service to others.
  • Boss constantly reminds me how computing should be fun. That we should always be experimenting and learning because that’s what makes life interesting and because that’s how we continue to develop computing for other people.

Sadly, it’s hard to offer today’s young people the same kind of opportunity that I had. IT systems are now all-pervasive and store sensitive data and are critical for the functioning of our schools, universities and companies. Whilst you can still buy components and build your own computer, it’s not like the old days where we fiddled with switches and jumpers and needed to know about interrupts and memory address ranges when plugging things together.

I think that has taken some of the magic away, and that makes it more difficult to show how interesting computing can be. That said, wonderful new technology like gesture-based computing shows how things are still cool; it’s just that things are less accessible than they used to be.

Sensei <your name here>

That’s where we come in. As IT professionals and developers it is our responsibility to help those interested in our field. By taking part in STEM events at schools, attending and speaking at user groups, getting involved with the Imagine Cup or just helping our own children, nieces, nephews and friends children we can give the next generation the same encouragement that we got.

Hopefully reading about how much I was helped by my mentors will inspire you to help someone else. Go on – you know you want to!

Installing .Net 3.5 onto Windows 8 and 8.1 using DISM

This is one of those posts to save me searching the web every time I need to install .Net 3.5 on a Windows 8 (and now 8.1) system. If the automated installation via add/remove features fails then you need the correct DISM command.

For those who have not yet encountered it, DISM allows you to perform actions on Windows image files in a process called Offline Servicing. However, it also allows you to perform the same functions online – on your current windows system.

There is a handy TechNet post on the various ways of installing .Net 3.5 on Windows 8. It’s a useful reference.

For those, like me, who just want the quick steps:

  • Grab your Windows 8 media – USB stick, mounted ISO or DVD.
  • Open an Administrator-level command prompt.
  • Type: Dism /online /enable-feature /featurename:NetFx3 /All /LimitAccess /Source:x:\sources\sxs Where x is the drive letter of your source media.
  • Watch the installation progress. Job done.

Review of ‘Software Testing using Visual Studio 2012’ from Packt Publishing

I have just been reading Software Testing using Visual Studio 2012 by Subashni. S and Satheesh Kumar. N from Packt Publishing

9540EN_cov-stwvs2012

This book does what it says on the cover, it is a general introduction to the testing tools within the Visual Studio 2012 family. My comment is not about how well it is done, it is a clear enough introduction, but why produce a book that really just covers what is in MSDN, Channel9, numerous podcasts, blogs and ALM Rangers documentation?

I suppose this is a question of target audience, some people like to browse a physical book for ‘new’ technology, I can see that (though I tried it on Kindle, more of that later). This book certainly does cover the core areas, but sits strangely between a technology briefing for a manager/person who just needs an overview (it is all a bit long winded, list all the features and flags of tools) and not enough detail for the practitioner (the exercises do not go deep enough unlike those provide by Microsoft in Brian Keller VS/TFS demo VM series)

Given this concern I wonder who the target audience really is?

A real issue here is that Microsoft have gone to quarterly updates, so the product is always advancing, faster than any print book can manage (Microsoft’s own MSDN documentation has enough problems keeping up, and frequently is play catch up). For a book on testing this is a major problem as ‘test’ has been a key focus for the updates. This means when the book’s contents is compared to Visual Studio/TFS 2012.3 (the current shipping version at the time of this review) there are major features missing such as

  • The improvements in Test Explorer to support other non Microsoft test framework, playlists etc.,
  • SKU changes in licensing, MTM dropping down to Premium form Ultimate
  • Azure based load testing
  • The test experience in the web browser (as opposed to MTM)

The list will always grow while Microsoft stick to their newer faster release cycle. This was not too much of a problem when Microsoft shipped every couple of years, a new book opportunity, but now how can any book try to keep up on a 12 week cycle?

One option you would think is Kindle or eBooks in general, as at least the book can be updated . However there is still the issue of the extra effort of the authors and editors, so in general I find these updates are not that common. The authors will usually have moved onto their next project and not be focused on yet another unpaid update to a book they published last quarter.

As to my experience on the Kindle, this was the first technical book I have read on one. I have used the Kindle App on a phone for a couple of years for my novel reading, but always felt the screen was too small for anything that might have a diagram in it. I recently bought a Kindle Paperwhite so though I would give this book a go on it. I initially tried to email the book from the Packt site straight to my Kindle, but this failed (a file size issue I am told by Packt customer support), but a local copy of USB was fine.

So how was the Kindle experience? OK, it did the job, everything was clear enough,  it was not a super engaging reading experience but it is a technical book, what do you expect? It was good enough that I certainly don’t see my getting too many paper books going forward whether thet be novels or technical books.

So in summary, was the book worth the effort to read? I always gauge this question on ‘did I learn something?’ and I did. There is always a nugget or two in books on subjects you think you know. However, ‘would I say it is a really useful/essential read for anyone who already has a working knowledge in this subject?’, probably not. I would say their time is better spent doing a hand on lab or watching conference recordings on Channel9.

Leave this book to anyone who wants a general written introduction to the subject of Microsoft specific testing tooling.

A week with a Nokia 820

I have been using a Nokia 800 (Windows Phone 7.8) for a year or so and been happy with it. It does what I needed i.e. phone, email, media player mainly for podcasts. So given all the  reported issues with WP8 and podcasts (no Zune client to manage the subscription/sync and you can only subscribe through the store if you are in the USA) I was not too keen to ‘upgrade’

Anyway last week I was persuaded to give a Nokia 820 a try, I did not want to try the 920/925 as I don’t like too larger phone. The fact the 820 is bigger than my 800 I thought that might be an issue.

So how did it go?

The first couple of days were horrible. However, turns out many of the problems I had were due to poor quality USB cables. Once I used the short one that came with the phone as opposed to one I had used for months connected to my laptop base station, all the sync issues I had went away.

The 820 only had 7Gb of usable memory as opposed to 13Gb on the 800, so I had to put in a MicroSD

The 820 did not come with a rubber bumper case in the box, unlike the 800. I think these are essential to deal with the inevitable drops the phone will suffer, and the couple of millimetre bezel lifts the screen to avoid scratches, so I bought one.

I had to install the language pack before all the speech based functions worked. Now I really can’t remember if I had to do this on the 800, but I don’t recall it, I thought they were preinstalled.

But all these are niggles, the real issue was the podcasting, it was awful. Now I know podcasts are either a feature you use or not, there is little middle ground, what we in the UK call a Marmite feature. if you listen to podcasts it is probably the primary use of your phone. What was in Microsoft’s head when they cut the Zune functionality and suggested using ITunes for the sync I do not know. The current release of the Windows Phone Desktop is meant to address this issue allowing podcasts to be sync’d from iTunes for folders (which in turn can be sync’d via Zune). The problem is it just does not do the job, it does not honour the played flag, just syncing what it finds in the folder whether it is played or not. This becomes a real problem when you have about half the free space I had on my 800 (until I put in a MicroSD).

I did try with the Windows Phone Desktop for a day or two and gave up. So I moved to an App. The best I found was i Podcast, it just works. It is a shame it cannot drop the files into the phone media hub or make use of the MicroSD card, but these are minor issues. I did have a problem that it crashed and wiped out my subscriptions but I am told by the developers that this exception related bug was fixed in 2.1 which was released this week. Their email response to my query was excellent. Other than that it has been great. I would recommend purchasing the premium features so that it can store you subscription/playlist and sync them between device – very nice

I await with interest to see if the GDR2 update addresses the horror story that is WP8 out the box podcasting.

So one week down, will i go back to my 800? I think not, actually the 800 screen felt a little small now. However I will still say I am not using any of the new WP8 feature, so I would not pay a premium to upgrade? I would hold off, at least until the free upgrade point on my phone contract.

Handling A Topic Dead Letter Queue in Windows Azure Service Bus

Whilst working on a project in which we we using the Topics on Windows Azure Service Bus, we noticed that our subscription queues (when viewed from the Windows Azure Management portal) didn’t seem to be empty even though our subscription queue processing code was working correctly. On closer inspection we found that our subscription queue was empty and the numbers in the management portal against the subscription were messages that had automatically faulted and had been moved into the Dead Letter queue.

The deadletter queue is a separate queue that allows messages that fail to be processed to be stored and analysed. The address of the deadletter queue is slightly different from your subscription queue and is the form:

YourTopic/Subscriptions/YourSubscription/ $DeadLetterQueue

for a subscription and

YourQueue/$DeadLetterQueue for a queue

Luckily you don’t have to remember this as there are helpful methods to retrieve the address for you:

SubscriptionClient.FormatDeadLetterPath(subscriptionClient.TopicPath, messagesSubscription.Name);

To create a subscription to the deadletter queue you need to append /$DeadLetterQueue to the subscription name when you create the subscription client

Once you have this address you can connect to the dead letter queue in the same way you would connect to the subscription queue. Once a deadletter brokered message is received the properties of the message should contain error information highlighting why it has failed. The message should also contain the message body from the original message. By default the subscription will move a faulty message to the dead letter queue after 10 attempts to deliver. You can also move the message yourself and put in sensible data in the properties if it fails to be processed by calling the DeadLetter method on the BrokeredMessage. The DeadLetter method allows you to pass in your own data to explain why the message has failed.

The DeadLetter can be deleted in the same was as a normal message by calling the Complete() method on the received dead letter message

Here is an example of retrieving a dead lettered message from a subscription queue

var baseAddress = Properties.Settings.Default.ServiceBusNamespace;
var issuerName = Properties.Settings.Default.ServiceBusUser;
var issuerKey = Properties.Settings.Default.ServiceBusKey;

Uri namespaceAddress = ServiceBusEnvironment.CreateServiceUri("sb", baseAddress, string.Empty);

this.namespaceManager = new NamespaceManager(namespaceAddress, 
                           TokenProvider.CreateSharedSecretTokenProvider(issuerName, issuerKey));
this.messagingFactory = MessagingFactory.Create(namespaceAddress, 
                           TokenProvider.CreateSharedSecretTokenProvider(issuerName, issuerKey));
var topic = this.namespaceManager.GetTopic(Properties.Settings.Default.TopicName);
if (topic != null)
{

    if (!namespaceManager.SubscriptionExists(topic.Path, 
                                  Properties.Settings.Default.SubscriptionName))
    {
        messagesSubscription = this.namespaceManager.CreateSubscription(topic.Path, 
                                            Properties.Settings.Default.SubscriptionName);
    }
    else
    {
        messagesSubscription = namespaceManager.GetSubscription(topic.Path, 
                                            Properties.Settings.Default.SubscriptionName);
    }
}
if (messagesSubscription != null)
{
    SubscriptionClient subscriptionClient = this.messagingFactory.CreateSubscriptionClient(
                                            messagesSubscription.TopicPath,
                                            messagesSubscription.Name, ReceiveMode.PeekLock);

   // Get the Dead Letter queue path for this subscription
    var dlQueueName = SubscriptionClient.FormatDeadLetterPath(subscriptionClient.TopicPath,
                                             messagesSubscription.Name);

   // Create a subscription client to the deadletter queue
    SubscriptionClient deadletterSubscriptionClient = messagingFactory.CreateSubscriptionClient(
                                           subscriptionClient.TopicPath, 
                                            messagesSubscription.Name + "/$DeadLetterQueue");

    // Get the dead letter message
    BrokeredMessage dl = deadletterSubscriptionClient.Receive(new TimeSpan(0, 0, 300));

   // get the properties
    StringBuilder sb = new StringBuilder();
    sb.AppendLine(string.Format("Enqueue Time {0}", dl.EnqueuedTimeUtc));
    foreach (var props in dl.Properties)
    {
        sb.AppendLine(string.Format("{0}:{1}", props.Key, props.Value));
    }
    dl.Complete();
}

Editing Windows Server 2012 Group Policies for Direct Access with Windows 8.1 Enterprise Preview

I finally got time to upgrade my Surface Pro to Windows 8.1 Enterprise. One of the things I most want to test is DirectAccess, as I live and die by this on my main laptop. However, despite the computer object for my machine being in the group that the DA group policies are applied to, no DA settings appeared.

TIP: On Windows 8.1, use Get-DAClientExperienceConfiguration in a PowerShell window to check your settings.

It turned out the policy wasn’t being applied because of the default Windows Server 2012 option of creating a WMI filter to only apply the Direct Access group policy to laptops. That filter had a bunch of Windows version statements in it.

To fix:

Open the Group Policy Management tool (on your DC or laptop with remote admin tools installed).

Find the group policy object “DirectAccess Client Settings”

At the bottom of the policy is WMI Filtering. You will see a filter called “DirectAccess – Laptop only WMI Filter”

Click the button to the right to open the filter. You should see something like the panel below. Click Edit Filter
image

Select the second entry. Click Edit.
image

 

The original filter text is:

Select * from Win32_OperatingSystem WHERE (ProductType = 3) OR (Version LIKE '6.2%' AND (OperatingSystemSKU = 4 OR OperatingSystemSKU = 27 OR OperatingSystemSKU = 72 OR OperatingSystemSKU = 84)) OR (Version LIKE '6.1%' AND (OperatingSystemSKU = 4 OR OperatingSystemSKU = 27 OR OperatingSystemSKU = 70 OR OperatingSystemSKU = 1 OR OperatingSystemSKU = 28 OR OperatingSystemSKU = 71))

Windows 8.1 is version 6.3.x, so you need to change the filter toread as follows (edits highlighted in red):

Select * from Win32_OperatingSystem WHERE (ProductType = 3) OR ((Version LIKE '6.2%' OR Version LIKE '6.3%') AND (OperatingSystemSKU = 4 OR OperatingSystemSKU = 27 OR OperatingSystemSKU = 72 OR OperatingSystemSKU = 84)) OR (Version LIKE '6.1%' AND (OperatingSystemSKU = 4 OR OperatingSystemSKU = 27 OR OperatingSystemSKU = 70 OR OperatingSystemSKU = 1 OR OperatingSystemSKU = 28 OR OperatingSystemSKU = 71))

 

Give AD a few minutes to catch up then run gpupdate /force in a command prompt on your laptop. If you run the powershell again, you should see a full complement of DA settings. The network panel takes a few minutes to catch up, but you should soon see your DirectAccess connection listed.