Skip to content

Recent Articles


Thought’s on Apple’s New Dock Connector

I realize this is a bit out of character for the typical posts I do on here, but I just felt compelled to change it up a bit and relate my thoughts around a discussion I’ve been having with some friends regarding the rumored new dock connector for the next iPhone. In a way this is a response to the article found here (ugh, how it pains me to link to them), as that is what sparked the discussion.

At the end of that article the author concludes that the reasons for designing a new connector are not “control for the sake of power” but instead because it’s the only way to do it “right”. A committee could only produce an inferior product.

And this is where I disagree.

While I do believe in the power of the “individual” to be more bold and take greater risk in a design, I wholly believe this move by Apple is entirely about control for the sake of power – at least as far as power = money.

Any of the capabilities of the current dock connector can be handled by microUSB and/or analog audio jack and/or Bluetooth. You can bicker about the details but I’m sorry – the current generation of standard ports and technologies CAN provide equivalent functionality. Possibly “different”, but no less capable. So while Apple could work within the standards of today, they choose not to. If their concern really was to make a better connector for all of us, why couldn’t they go to the existing standards bodies and propose changes. Yes, it’s a committee, but if your goal is to really improve things, you’d tough it out. Apple could have massive influence on any standards body, don’t be fooled into thinking they couldn’t. So they could say “We would like to propose the following changes to the microUSB standard, connectors shall be omni-directional, tolerances shall be X, electrical characteristics need to be Y, additional data busses need to be provided for Z, and the following control protocols will need to be implemented. And by adopting this standard we can all benefit by enabling a broadly compatible ecosystem of devices and peripherals that allows for consumer choice, while also improving ease of use, and lowering costs through economy of scale.”

But that will never happen. That is why I can only see this as another power grab and tactic to control the cash flow around the Apple ecosystem. Even with a “standard” Apple could contract out and make the highest quality version of that connector, and the highest quality cables – better quality than anyone else. But they know that no one would pay their premium if Uncle Jimmy’s World of Connectors could make the same thing and only make it “good enough” for half the cost. Without creating an artificial scarcity via control of the hardware spec and licensing, Apple would have to fairly compete with everyone else – and that ain’t gonna happen.

I find it ironically amusing that Apple has gone into traditional media and completely busted up their model – a model based ENTIRELY upon artificial scarcity. That is/was the premise for music, movies, TV, and print.  Control the distribution channels and you control the pricing.  But no one ever looks at Apple and sees that they are doing the exact same thing with this forced ecosystem of proprietary connectors and ports. So it’s OK for them to bust up everyone else’s business, it’s just not OK for anyone else to bust up their racket.

My point here isn’t that microUSB is the “best”, my point is that everyone would benefit from an improved connection STANDARD – and in far more ways than just making the physical connection easier to use. Perpetuating proprietary connectors and then selling adapters to make them compatible (as the EU requires) does far less good. People still end up with the confusion/complexity of an inferior standard, and they have to pay more on top of it. How is that good for me? How am I benefiting from the improvements of the proprietary connector then?  Or, ok, go make your connector, but license it fairly – how do you think Apple would feel about letting Samsung license their new connector?  Motorola? LG? HTC? Asus? Acer? Intel? Microsoft? Yeah. Exactly.

“But why should Apple license it?! Why help those other guys? They did all the work designing it! They deserve to reap the rewards from it.”

Well, even licensing it, they would still profit from it. They could sell their “top-tier” versions, and also make money on every lower quality version sold. But I think they know they couldn’t compete there and while they would make some money from Uncle Jimmy, they make much more margin when they control all the pieces on the board.
 All of those companies I mentioned previously have managed to get by just fine with the existing standards, whereas somehow Apple cannot. And Apple refuses to take part in a way that would make their designs a new standard. This SO reminds me of 1990’s Sony. Sony had their own everything, even when it was the exact same stuff – functionally – as everyone else, it just HAD to be different. Different form factor, different pinout, different socket. It just seems like that strategy eventually loses. People get sick of it.
When I look at 20 devices and they all work together and then I look at the one device that doesn’t, no matter how great that device is, I’m going to be upset that it can’t just work like the rest of my stuff. The benefits need to be substantial not to be outweighed by cost, and frustration. I realize Apple still has a halo right now – just like Sony did in the 90’s – but it will get tiresome at some point.  Buying an adapter to gain compatibility to the standard, means you could have just been using the standard all along.
And for those who say microUSB sucks and it’s too confusing to get the connector in properly (seriously guys?) what about the existing display connectors on all Macbooks? Those are directional. You know how the problem of getting them plugged in properly was solved? By leaving one side blank, and silk-screening an icon on the other. The icon always faces up. I haven’t heard the outrage for a better connector standard there. Seems like a very elegant method of insuring proper connector insertion. One that, had any existing “directional” standard been implemented could have been carried over. Just look for the side of the cable that says “This end up” and we’re golden. Omni-directional connectivity is a nice perk, but it’s merely a mask to cover up the real reason Apple wants a new standard – control over distribution and pricing (margins). Good on them. Shame on the masses who can’t look for a label on a connector and are willing to pay not to have to learn how.

PCoIP Log Viewer – Minor Update

From some recent comments it seems there were still some parser errors showing up between View 5.0 and View 5.1 logs. Having been sent some sample logs I identified that the PCoIP version was different (newer) than what I was expecting for View 5.1 GA. I’ve updated the parser to identify this new version and key off it for proper parsing (at least in my limited testing).

This means there’s an update to the parser and the viewer to reflect the new versioning. As always the Viewer will update itself, but you’ll need to grab the parser from here.

The updated parser can found here. It should report version 1.0.0158 when passed ‘-h’.

If you need to freshly install the viewer you can find it here.


PCoIP Configuration Utility – Update Sneak Peek!

Wanted to share some of the progress I have made on the PCoIP Configuration Utility. It’s not quite ready for prime time just yet but it’s getting close.

One of the requests I had gotten was to allow the context menu to be opened with a left-click vs. a right-click as it’s not so easy to trigger a right-click when accessing a desktop from a mobile device. This change is in place. A right-click or a left-click can be used to open the context menu.

Another request was to add some form of “health” monitoring of the connection. I thought this was a great idea but the actual implementation is fraught with issues. Still, based upon what I know of PCoIP I figured there should be a few things you can monitor and compare against some “common sense” baselines to determine if things are looking good or looking bad. So that’s where I went. I’ll cover this again in the official release post (likely a few weeks out I am sad to say) but this is NOT a “user experience” meter! View and PCoIP continue to improve in their tolerance for less-than-ideal network conditions such that even on a highly latent or slightly lossy network connection you can still have a good user experience, but the fact remains that the connection itself is less than ideal – and that’s what the tool will be showing you.  It might also be the case that the network conditions are just fine and yet your user experience could be bad – this might be from lack of CPU on the VM or client side, or other factors – I can’t measure all of those, and so I can’t show you why things might be bad in that case – but at the very least you can have some peace of mind that it’s probably not the network. I just throw these examples out to show that network health alone (as measured by PCoIP) cannot be directly correlated to end-user experience. Often they will be reflective of each other – but not ALWAYS.  Are we clear? Ok. Good.

The health score calculations themselves I’m not going to cover in too much detail, but basically there are 4 items being calculated or measured directly (and then factored into other calculations):

  • Packet Loss
  • Latency
  • Variance/Jitter
  • Available Bandwidth/Bandwidth Limitng
Each of those items are “scored” individually based upon calculations from my knowledge and testing of PCoIP, and then they are simplified down into a percentile rating which then all get added up to form an overall “health score”. The health score is then ranked against the green to red scale (also based on “Chuck’s knowledge” TM) and we have our current health status.  Sounds really simple – but, uhhh, yeah. Getting it right – not so simple.

So what does this new stuff look like? First off you’ll notice that the systray icon for the tool is slightly different.  It now has a status “LED”:

Green to red - blinky blinky!

This is so that users can have at-a-glance visibility into the general health of the connection and is probably the way most people will interact with this new feature. However, if you want a more detailed view of the health rating there’s also a new menu option:

Can you find the new option?

Selecting this will pop-out a new window giving a bit more detail into how the current health score is being generated. Let’s look at a few examples…

Happy, healthy (LAN) connection:

Doesn't get much better than this

Connection with moderate latency and variance:

Yes, that is the video you think it is...

Another showing packet loss and the fact that PCoIP is adapting down bandwidth to deal with that loss:

Where, oh where, have all those packets gone?!

And the “I need to play flawless video to my offshore users, 15,000 miles away across homing pigeons carrying floppy disks” connection (a.k.a. business as usual for VMware PSO):

What do you mean it's a network problem?!

So there you have it, a sneak peek at what’s coming soon in the PCoIP Configuration Utility. I am also hoping to have a profile import/export function to make it easier to share and distribute PCoIP tuning profiles. Check back in a few weeks and let’s see where we land.




PCoIP Log Viewer Updated for VMware View 5.1 GA

I have updated both the parser and the Log Viewer so that they should work with VMware View 5.1 GA log files.

To update the viewer simply launch it while connected to the internet and it should auto-update.

The updated parser can found here. It should report version 1.0.0134 when passed ‘-h’.

If you need to freshly install the viewer you can find it here.

One item of note – it seems that delta bits and delta build bits have been removed in this release so there will be no data reported for them in the graphs.

As always please report issues in the comments and PLEASE provide some feedback on my previous post: A note on View 5.1 Support for the PCoIP Log Viewer


A note on View 5.1 Support for the PCoIP Log Viewer

Some of you may know by now that the PCoIP log files are the bane of my existence. Since I began building the log viewer almost 2 years ago now, I have been in a constant battle to try and build a parser that can handle these ever-changing files. So far I’ve managed to make it happen with each release, thought not without much fighting, clawing, and gnashing of teeth.

Once again, with View 5.1 I find myself in a position of chasing a new file format that clearly was never intended to be machine parsed. Data is randomly placed, and formats and positioning data are altered from previous releases – seemingly for no good reason.  New data is mingled with old and some data has simply vanished entirely.

With the 4.x series of releases the changes were there but relatively minor from release to release. With the move to 5.x and the introduction of the APEX2800 card, the changes are much more significant. I assume this is because someone is making the assumption that if people want to monitor PCoIP they’ll use the WMI counters to do so and that the logs are irrelevant. However, it’s not always feasible to get direct access to be able to monitor via WMI and in some areas the logs do contain more information than the WMI counters have available. So it’s been a worthwhile struggle to keep updating the parser to get meaningful data out of the logs.

At this point though, the changes for both View 5.0 and 5.1 look to be quite significant. And updating the existing parser for these formats while retaining the old formats is becoming a significant challenge. I am thinking it might be time to reconsider the entire parser framework to make it more easily expandable and maintainable for future releases. This means, without question, a longer downtime before View 5.1 support will appear. It also quite possibly means the end of a standalone parser as my direction would be a cloud-based design and/or integration of the parser into the viewer directly.

I’d like to try and solicit some feedback on these new directions, so here’s a few questions, please respond in the comments:

  • Do you currently use, and see value in, the continued support of a standalone parser executable?
  • Do you see value in supporting log file parsing for View releases prior to 5.0 in a new parsing framework? (the standalone parser as-is will still be available to parse older files)
  • If you  had to rank in order of preference a cloud-based parser vs. an integrated parser in the log viewer which would you prefer to see first?
  • Do you see the need for continued log file parsing support or is WMI support alone enough going forward?

I will determine the future course of Log Viewer development based upon your answers (or lack thereof).