Web Edition and Version Control Format

For those of you that use the Version Control Format (VCP) for your Real Studio projects you should be aware that I do not recommend using it for Web Edition projects.  I discovered (and logged) several bugs today in 2011 R1 that will bite you.

The first is subclassing a WebControl in VCP format results in it displaying in the IDE with a black triangle indicating that it doesn’t know what the control is.  Thankfully the control still works, it just looks funny in the IDE and doesn’t seem to affect the final build.

<feedback://showreport?report_id=16518>

The second is that WebStyles do not read properly after saved in VCP format.  This will result in controls not adhering to their styles after the project is loaded again.  This does affect final builds.

In both cases it could be a write or read failure.  Not my job to figure out which one.

If you use Web Edition and version control you should make these bugs part of your priority list.

<Rant>  This is the third release in a row with serious issues with the version control format that keep me from using it.  For my consulting business I need reliable version control.  The only way to do that is to have a rock solid version control format.  It has to work in EVERY release.

Binary format just isn’t acceptable for my business.  I need to track changes on a line by line basis – sometimes my livelihood depends on knowing what changed, and when.

It ‘s obvious, to me anyway, that RS doesn’t use Web Edition internally for anything big, important, or that requires multiple users working with it.  If they did, they would have spotted these problems a long time ago. </Rant>

We now return you to your normally scheduled broadcast.

Quality Either Matters or it Doesn’t

My Saturday was supposed to be dedicated to a training video for the new Segmented Control introduced in REAL Studio 2010 Release 4 that was release this week.  Unfortunately, I stopped after about an hour after documenting bugs and becoming generally disgusted with it.  What’s the point of doing a training video for something that is THAT jacked up and must be fixed (to be really usable) in a future release of REAL Studio?  Why waste my time doing a video that I’ll have to do again?

I think it’s awesome that REAL Software creates REAL Studio and a handful of other projects using REAL Studio.  But they don’t use it like we do in two different ways:  Their testing process (and I wonder if they really have one sometimes) does not test the way a real world user creates projects.  Their usage of RB for the IDE isn’t a real world example of what anyone is trying to use RB for.  Saying “we build REAL Studio with REAL Studio” isn’t a valid metric for anyone except REAL Software.

I’m not an average REAL Studio user – I get that – I actually make my living off the product.  I use it eight to ten hours a day on average of six days a week.  When I do my testing, I start by creating a simple demonstration project showing the most basic usage of ‘X’ and then expand upon it by exercising most of the properties, methods and events.  Most of these demonstration projects end up being reused in real world consulting projects and in the twenty-plus hours of training videos I have on my website.

I rarely waste my time and, in my opinion, the new features in REAL Studio 2010 Release 4 was a complete waste of my time.  The documentation was late and incomplete and the new features have glaring bugs in them.  If I can document several in an hour what does that tell you?  Where were the example projects demonstrating the new features for Release 4?  There were none.

Have you ever perused the Examples folder?  There are a lot of example projects showing you how to use individual parts of the REALbasic framework.  Depending upon which release you look at, some of the examples don’t even compile.

I also think it fair to say that most of the examples (that are working) are watered down to the point where they only show the most basic usage of a component.  They are not complex examples and therefore don’t do most people much good when they get around to implementing it in their own projects.  Most are not written with best practices in mind or how average people will use them.  They were written with the intent of getting if off the developers, or documenters, plate as quickly as possible.  Comments?  Naming conventions?  Defensive coding?  Good luck.

REAL Software as a company does not create new cross-platform applications using their own product.  They don’t see the day-to-day deficiencies that we do.  They don’t feel my pain and that’s a problem because they’re trying to sell their product to people just like me – or at least that’s what they keep telling me.

I’m about ready to stop using REAL Studio for certain types of projects because they’ve lost control of the quality.  Quality either matters or it does not.  Decide which and let me know – I have better things to do until then.

Here’s my unsolicited advice for REAL Software:  For every new release build a new project that demonstrates EVERY new feature and exercises it.  Major changes to the framework get the same treatment.  These projects should be good enough so that if there is missing documentation, the code tips or autocomplete doesn’t work (all real world examples, by the way), anyone can still figure it out from the code.  It takes planning and a commitment and thinking about how real users will use the feature in Windows, Linux, Carbon and Cocoa applications.

Please, do this for upcoming Cocoa and Web Edition releases.  If you could do that, I’d guarantee you’d find more bugs, earlier, and I wouldn’t have to spend my Saturday writing an opinion piece.

What are your thoughts?