My definition of an expert in any field is a person who knows enough about what's really going on to be scared.
What perforce is doing wrong with their clients
Perforce have had a strange development over the last couple of years with their UI clients. Perhaps not so strange from a manager's perspective or even a marketing perspective - to consolidate and unify their clients seems on paper a admirable idea. However it's fundamentally flawed. All window systems have their own little quirks and touches that are unique to them, how they work is how the users expect them to work. Learning a UI system is much like learning to ride a bike, at one point you're not really thinking about it, but if someone changes the rules then all sorts of weird things start to happen.
The java unified interface that Perforce is trying to ram down everybody's throats is an abomination. Sure it saves them time and effort to develop, but I bet nobody wants to actually use it if they step back and think. If there was a native look and feel alternative, who would go for the java app? Crazy people, that's who.
The visual studio project properties dialog is one of my most hated dialogs, mainly since whoever developed it felt the need to not follow the standard windows rules how a dialog should work! Switching back and forth between the dialog causes the focus to change. The keyboard shortcuts work differently. In short, it's cumbersome and even though I kind of know how it works, my muscle memory from the rest of the 99% of windows work I do overrules my brain and I keep doing the fricking wrong thing!
This is quite the same thing with the p4v client that perforce makes. I've gotten used to the p4win application (the red one) over the years, mind you that it has it's own flaws and tricks but they are known evils. Trying to teach someone the ins and outs of perforce with the p4v client is not a fate I would wish on my worst enemy (well, perhaps Captain Hammer). It is simply wrong, feeling and look. Now I'm sure that someone at perforce sits and think, it's not that important. Well, one of the main points about a source control system is how easy it is to use and how the client looks and feels. Look at Alienbrain[1]! As a source control system it absolutely blows. But it got a nice client. So they sold lots of copies.
Perforce is trying to move windows user from the p4win application and onto the p4v one. Don't fall for it, it's a trap! Seriously, the day that I can't use p4win is the day that I start looking for a new source control system. Although I do a lot of things through the command line, and all of my scripts use the command line as well, the client is really the thing that sold me. Now, the client isn't really that great, but it beats most other clients, including the one from perforce - p4v.
Oh, yeah, they've been blowing the whole legacy component for years now. I'm hoping that they won't dare to discontinue it...
Resources
- Practical Perforce, a pragmatic take on how to manage and do common operations in perforce the way it was intended. Go with the flow and read it!
- p4win
- p4v
- Some discussion about the p4win as legacy
[1] Alienbrain. What a complete miserable and utter failure. Anyone considering to moving to this must first know that it's completely unscriptable. Yes, there is a command line interface. That is completely broken! The only way to do scripting is to do it through their COM interface. Oh joy, where is that pen so I can poke myself in the eye...