Archive

Archive for January, 2009

Is It Time To Add Staff?

January 30th, 2009 Comments off

My company has been super busy with consulting work.  Old clients keep bringing us new work.  Potential clients are asking for quotes and surprisingly, our VB6 to RB analysis program has been giving us a lot of leads in the past month or so after being quiet for months (perhaps the website redesign had some affect).

We have several older products that need updating.  We picked up several new products that we need to maintain and make enhancements to.  We have new products in mind that we can’t even begin to think about because of the work backlog.

In addition, we need to have some time to absorb and learn some new technologies.  We’ve started on iPhone development but, like most technologies, you have to immerse yourself in it for at least a month to really understand it much less be proficient at it.

So, the question is, is it time to hire an additional developer?  That’s a scary thought because I’d hate to hire someone and six months from now say, sorry, we don’t have the work for you.  That’s beyond unfair it’s just wrong.

Some friends have suggested that I just get a contract programmer.  I do happen to know a few RB developers after all.  My big thing is that this is my business – my baby if you will.  I want someone invested emotionally in the day to day workings of the company and seriously interested in having it prosper.  If the company prospers so do the employees.  So I want someone local that I can meet face to face with on a regular basis.

So what do you think?  What’s your advice?

Categories: Business, Management Tags:

iPhoto ’09 Face Recognition

January 29th, 2009 Comments off

By far my favorite new feature in iPhoto is the face recognition.  It’s pretty good too for an inexpensive application.  It makes me wonder how good the government software is.  :)

My son is now 8 and we have a lot of pictures of him as a baby.  I picked out a few pictures and told iPhoto who it was and it went to town.  The more photos you confirm/deny identification on the better it gets.

A couple of times it picked out ‘faces’ that weren’t theirs, but for the most part it’s been pretty flawless.  One thing that gives it a little problem is my wife’s family.  She comes from a family of 6 kids and you know what?  They all have similar facial characteristics.  iPhoto, for a while, kept marking my wife’s siblings as her but after 10 minutes it was right nearly 100% of the time.

I don’t review my photos very often.  This has been an excellent excuse to waste some time and think about old friends and events.  Perhaps this a stop and smell the roses event.

Categories: Opinion, Personal Tags: ,

I Miss Aaron’s Pseudo RB Blog (i.e. The Value of Blogging)

January 28th, 2009 Comments off

You can look at blogs in many ways.  Some are silly, some don’t say a thing, some are really just mouthpieces for the marketing department,  and often a good blog is a bit of everything.  It can make a large company more personal and it can make a small company look larger but to do so you have to be honest about the company and what you’re doing.

The big value of company blogs, in my opinion, is that they create a dialog between the company and the end users.  It’s a way for the technical folks to disseminate information to end users that would sometimes take months to come through official channels.  For example, Aaron’s blog posts on how to create REALbasic plugins via Visual Studio 2005 are wonderful posts that in-leau of dedicated RS resources were the definitive source on the topic.

So can it let a big company look smaller and more personal?  Absolutely!  The blog makes it more intimate.  Microsoft seems to have learned that being compared to the Borg is a bad thing and now link to some blogs made by employees.  For them, allowing their employees to talk about things is healthy and allows more input from the community.

It can also let a small company (project?) look bigger.  One example that comes to mind is the blog concerning The Cocotron, an open-source project that allows Cocoa developers to build for Windows.  I have no idea how many people contribute on a regular basis to Cocotron but just by having a regularly updated blog they look bigger.

Another example is Rogue Amoeba’s blog.  Sure, it’s mostly marketing, but it talks about bugs in the product and how they’ve fixed them.  It also points to personal blogs where they talk about geeky, very technical stuff.  It’s all good because it’s a dialog.

There are a fair number of people who blog regularly about REALbasic.  Here are the blogs in my RSS list:

Christian’s Soapbox
Oatmeal & Coffee
Random Writings From the Sticks
RBDevZone
RBJottings
Software Made Simple
The ZAZ Blog

And finally, I check http://www.squidoo.com/realbasic on a regular basis to see what I’ve missed in the community.  If I’ve missed your blog, please don’t take offense.  Post your blog URL in the comments!

This all assumes that your employees can write intelligently (I generally see myself as barely adequate in this regard but people keep reading and making comments so I must be doing something right!).  My advice would be that if you (or your employees) can’t write – don’t bother.

Topics to stay away from:  religion, politics, sex, race, personal financial difficulties, and negative health issues.  The absolute last thing you want to give to potential clients is a reason to not like you.  And I guess that seems at odds a little from the above.  If it’s your personal blog talk all you want about that stuff.  If it’s a business oriented blog don’t alienate your customers!

I guess all I’m saying is that I wish RS would fill the void left by Aaron’s departure.  I see it as a good way to personalize the company and yet get some useful information out there.  Need some ideas on what to blog about?  Just look at his suggestion box.

Categories: Business, Opinion Tags:

Yes Man (The Book)

January 27th, 2009 Comments off

“Yes Man” is the story of a man who discovers that he’s not living the way he’d like and after chance meeting with a man on a bus he decides to change his life.  He makes a compact with himself that he’ll say yes to everything – no matter what.  Living in London, he gets asked a lot of questions that he’s forced to say yes to.  This included beggars, people selling things on the streets as well as emails that are obviously scams and the myriad of advertisements he gets exposed to.

He spends a lot of money along the way on things he doesn’t need.  He gets credit cards he can’t afford.  He meets tons of strange and wonderfully bizarre people.  He travels to some exotic places because he can’t say no!  Saying Yes to everything at work leads him into an entirely new career that’s fun, interesting and exciting.  In general, his life turns around and he’s happy – truly, generally, happy.

Looking back on my life (not that I’m old I’m just being philosophical here) I can say I’ve had (and continue to have) some of the best times of my life by saying yes.  Here are some of the memorable highlights:

Want to play football in high school?
Want to go to college in Chicago?
Do you want to use this thing called a Mac?
Do you want to go skydiving this weekend?
Want to join our computer social group?
Do you want to do a big engineering project in Hong Kong?
Want to help teach a kids aikido class?
Do you want to have kids?
Want to stay how with your child?
Do you really want to start a business?
Want to start a professional developers association?

Here’s the money quote for me:
Maybe there’s no such thing as destiny.  There’s just a series of choices we create ourselves.  I guess it’s only when we look at how a No could have changed our lives for the worse that we realize the value of the tiny Yeses that fly at us each day.

I think, for me at least, regret is harder to deal with than failure.  To use a Mythbusters quote:  “Failure is always an option.”  Not that I haven’t had some regrets along the way and would love to go back a few times and say Yes a bit more and No a few times I said Yes, but that’s life.  Life is as good as you let it be.

I probably won’t see the movie.  I can’t see how they can do justice to the book without simply being silly.  And besides, I’m not much of a Jim Carrey fan.

Categories: Personal Tags:

Why Does RB Have 3 File Formats?

January 26th, 2009 Comments off

The binary format has been around for a long time.  It is by far the fastest of the three formats and the most stable.  But it doesn’t play will with version control systems because they look at text differences.  The format is proprietary though it’s been known for a while and used by various developers over the years but not without some warnings from RS about breaking the EULA.

The advantage of having 1 file is that it’s portable (mostly) and self contained (mostly).  The disadvantage is that it’s one file and if anything goes wrong you’re out of luck.  Sorry.  Too bad for you.  Since RS doesn’t publish, nor license the file format, changes get made to it all the time without warning.  Sometimes this affects backwards compatibility – sometimes not.

The XML format seems to be sort of dead.  You can occasionally fix some obscure RBP file problem by saving to XML and reopening.  The party line has been that XML allows you to use it with version control systems.  That’s not quite true because the XML format isn’t guaranteed to always save out in the same order so it really isn’t much use for version control systems.

What it is good for is post-processing of the project with code analysis tools.  If you look at Reality Check from Dr. Scott Steinman and RB Code Reports from True North Software they both require projects to be in XML.  So it can be useful to some people.  I’m sure I’ll get static for this, but with the exception of those two products I don’t know anyone using the XML format.

For a while in the old 5.5 days, RS had a pro-version only product called Project Manager System (PMS) that was a pseudo source code management system that allowed multiple users to work on the same project at the same time.  Since it’s no longer around I must conclude that PMS was an apt acronym.  I never used it but I’ve heard it was buggy and not very stable.  Not something you’d want to bet your commercial software product on.

So along comes the Version Control Project (VCP).  It saved a project out to pure text files for use with version control servers like Subversion and CVS.  It had an exceptionally long gestation period before it was useful for a vast majority of users who needed the format.  Indeed, it is still lacking some features like supporting external items.  And it’s not like the VCP files can be used with any old text editor because they can’t but at least you can go in and tweak something here and there if you’re very careful (think control parentage that gets messed up on a regular basis for me).

So that’s a little bit of the history of the formats.  So my question is why have 3 formats?  Would it make more sense to default to the version control format?  Would it make sense to come up with a pure text format that could be editable?

Or would it be better for RS to publish and/or license the specifications to the file formats?  I’ve mentioned that the binary file has been broken.  What’s so proprietary about it?  I see it as a way to get more/better tools for the platform.  Anyone trying to create documentation, source code analysis tools and the like would find this immensely helpful.

If they do license the file format, obviously, RS is then committed to documenting the formats and keeping them up to date.  Is that the real problem?  Is it too much support?

Or, do they think someone would come along with a super IDE that would supplant their own?  I suppose it’s possible but not likely due to support issues.

What do you think?

Categories: REALbasic Tags: ,

What’s Your Favorite Thing About REALbasic?

January 20th, 2009 Comments off

The more projects I do in REALbasic, the feature that seems to keep making my life easier (user interface-wise, at least) is the lowly Container Control.  Being able to create very complex, reusable controls keeps my windows orderly.  Not having to duplicate the same UI on multiple windows is very powerful.  And having their own events is useful as well.  In fact, I use container controls as custom controls a lot.

Perhaps one of my newest discoveries is the EmbedWithin command.  Using Container Controls it’s possible to add controls ON THE FLY.  You can’t do this with regular controls unless you have one on the window already.

Here’s a BS example that I thought up.  Say you created a wizard-like interface that had several decision points that take you along completely different paths.  Using a pagepanel you could put the UI on each panel and just switch to the panel you need.  You could even do it with container controls.  But it’s probably overkill and creates overly complex code.

Instead, what you could do is at the decision point, simply figure out what the next panel should be, create a new instance of your container control and use EmbedWithin to add it to your window or panel.  Each container control can then be queried for its settings and can be commanded to do their its tasks from your main window.  It’s pretty easy to do.

Container Controls aren’t without their problems,  Mac OS X controls have a tendency to bleed through a container control mask when in Carbon windows.  It works better in composite windows, but well, composite windows are hosed right now.  Hopefully this will get better with Cocoa support and all windows will be composite.

So what’s your favorite thing in REALbasic?

Categories: Opinion, REALbasic Tags:

ARBP RB Enhancements Survey Analysis

January 19th, 2009 Comments off

The Blogs and Opinions section is free to the public.  I encourage you to view it and make comments in the article or in the official ARBP forums (however, to do so in either location requires free registration to cut down on spam).

It’s my opinion that both items at the top of the list are necessary for RB to get more professional users.  Anyone coming from the Windows world will expect them because they already have them!

Anyway, I’ll let all of you comment and give your own opinions.

Categories: ARBP Tags: ,

Are Pro RB Users Worth the Effort?

January 16th, 2009 Comments off

When one looks at the cost of RB to first time purchasers it takes 5 personal licenses to match 1 pro license.  I suspect that most RB users come in via this route so the ratio is heavily weighted on the personal license side.  (The argument of whether $100 is too little or too much is for another time.)  Is the ratio 10 personal licenses for every pro license?  Or is it even higher?  If so, the revenues from pro licenses is much less than the personal licenses.

The yearly fee to stay up-to-date for personal licenses is $50 and for pro’s it’s $250.  So the ratio is still 5 personal users to 1 pro user.  It has been my experience that pro users will stay up to date on a regular basis than personal users.  Pro licenses probably generate more consistent revenue.  So probably once you have an RB user the revenues are about the same.  Somewhere in there is the mix of people that will upgrade from personal to professional but I have no idea on how to guestimate that number.

I like REALbasic.  I really do.  It has simplicity and power rolled up into one neat little integrated package.  In all of my years I’ve not found a product quite like it.  Heck, I like it so much I persuaded others to join me in the quest to build a professional developers association which has sucked a fair amount of time and money (aren’t they the same?) for all us since this time last year.

I hear from a lot of developers that use RB just like me.  They make their living using REALbasic.  Generally the pros can put up with a bug here and there as long as things improve.  But we’re also very demanding.  We complain a lot.  We want things to make our lives easier.  We ask for new features that hobbyists won’t need and don’t want.  We ask for support when things don’t work right and complain when we don’t like the answer (see previous blog entries).  We whine loudly and often publicly in blog posts and forums.

So the question I asked myself is this:  Should RS even bother with pro developers like myself?  Sure, we pay more money, but does RS really make the money off us we think they are?  It would be my guess (I have no facts to prove this one way or the other) that RS finds the hobbyist and pro market to be about as profitable.  So does it make sense to court the pro developers if they’re a PITA and in the long run don’t make you as much money?

Is RS’ time better spent going after hobbyists or professionals?  Where do you think they get the best return on their money?  Is there a cost for NOT courting the professionals?

What say you?

Evangelizing REALbasic

January 14th, 2009 Comments off

It’s funny because I have been accused of being a shill for Real Software in the not so recent past.  I guess now I’m a traitor in certain segments of the community for asking what I think are legitimate questions.   Some feel that as president of the only professional organization for REALbasic I should be evangelizing the product.

Let’s talk for a minute about evangelizing a product.  Guy Kawasaki is famous for evangelizing Apple.  Here’s a post that talks about evangelizing a product.  In this post he asks the question “What are the characteristics of a great product?”

I’ll focus on one item.  Completeness.
Complete. A great product is more than a physical thing. Documentation counts. Customer service counts. Tech support counts. Consultants, OEMS, third-party developers, and VARS count. Blogs about it counts. A great product has a great total user experience—sometimes despite the company that produces it.

REALbasic has a number of issues related to completeness.  The documentation is lacking and at the last Real World there were large tables of users asking for better documentation.  Yes, there’s progress, but it’s been slow.  Compare RB documentation to what Apple, Microsoft, Java, PHP, and MySQL is putting out and you see a huge gap not only in quantity and quality but accessibility in todays web enabled world

REALbasic is limited in its appeal to third-party developers for a number of reasons.  The plugin API’s and documentation are always out of date.  To the best of my knowledge there is no guide, anywhere, on the best practices for creating plugins and cross-platform native controls.  Since you can’t write REALbasic plugins using REALbasic it seems somewhat ironic that you have to use another language and multiple IDE’s to make a plugin for a cross-platform tool.

Another post from Guy talks about the art of creating community.  Obviously Real Software has created a community (why else would I be writing about it and help found ARBP?).  It seems that we’ve stumbled on items #6 and #7 rather harshly this week:  Welcome Criticism and Foster Discourse.

Look, I use RB all day long not only for my own products but for multiple clients spread across the world.  It makes a living for me and my family as well as my employees.  I know what I need to make my life easier.  I know what problems RB gives me in sales and for development.  I also know what problems RB solves for me.  The feedback I’ve gotten has been on the web and via private emails and some have beaten me up on how I’ve hurt RB by asking a question meant to foster discourse.  Maybe the question that these folks should have posed back to me should have been, “Okay, if you’re such a smart guy, what are your ideas on improving RB?”

In the very near future ARBP will be publishing the results of what users said they wanted most.  The results will not surprise anyone that’s been using RB for any length of time.  If you’ve come to RB from the Windows world my guess is that you can already guess what people wanted the most, but I won’t spoil the surprise for ARBP.  :)

Categories: Opinion, REALbasic Tags: ,

Is REALbasic Relevant?

January 9th, 2009 Comments off

I’ve heard from a lot of developers recently that they’ve started looking at xCode and Cocoa for development.  A lot of these people are simply looking at it for iPhone development but that still seems like a bad omen for REALbasic in that once you’ve learned the tool, moving to Cocoa for desktops isn’t that big of a stretch.  The work is in learning the tool, not the language and bad programming is bad programming in whatever language.

Using Cocoa (properly) gives us a “dripping with OS X goodness” for free that’s hard to achieve (if even possible) with the current version of REALbasic (RB 2008 R5.1 as of this writing).    Likewise, using Microsoft Visual Studio you get a native, using all the latest goodies from Microsoft  application that, again, is tough to achieve with REALbasic.

Don’t get me wrong, I use RB every day to make good cross-platform apps.  It’s the platform differences that give rise to the difficulties because Macintosh OS X and Windows just behaving differently.  I say this to clients all the time:  RB is nothing but compromises.  It won’t make a great Mac OS X, Windows, or Linux application without a little extra work.

REALbasic is really great at cross-platform applications.  That’s awesome.  But therein lies the problem:  they don’t make it easy for Mac, WIndows or Linux developers to make great native applications.  Once RB supports Cocoa we expect it to make better Mac OS X apps but will it or will they still be limited by the compromises that RB has to make for Windows and Linux support.

So would making it easier to make good native (looking at least) apps make RB more relevant?  I don’t know, but because people only think that RB makes great cross-platform applications and not native apps it seems logical that if I was to do a Windows-only app I’d think first of Visual Studio and think xCode for a Mac OS X-only app.

I’ve heard from more than a few developers that feel this is RB’s single biggest weakness.  And then they see efforts being put into another version of Real SQL Server and they just shake their heads.  Most people would agree that RSS is great ‘in concept’.  It’s an easy to use and configure database server but it’s also fighting against a bazillion other database servers that have a bigger feature set like extended stored procedures, referential integrity as well as hundreds of standard features that RSS doesn’t have.  Would you take RSS to a company that already has MySQL running in their office?  How about PostgreSQL, Oracle, MS SQL Server, DB2 or any one of a dozen other database servers that are widely available and been around, in some cases, for decades?  Could you get your ISP to install it to run your web store?

Look at it RSS from another direction.  Google ‘Real SQL Server’ and the first 3 pages are from Real Software, a few download sites and companies reselling it.  One page is the C|Net downloads page which has RSS 2008 R1 listed with a grand total of 95 Windows downloads and just 7 for Mac OS X and no reviews under either one.  That’s not good for being available for half a year.  Now, I wouldn’t download from that particular site, but I certainly would do a quick Google search to see what’s being said either positive or negative.  The fact that nothing’s been said is not a good sign in my opinion.

Why do I bring RSS up?  It seems to be a solution that’s in search of a problem.  I see RB developers asking (for years) for an integrated reporting solution and the most recent ARBP survey indicates that a good grid component is desperately wanted.  Those are things I could use and sell today to make my business better.  RSS isn’t anything I need today or tomorrow because I already have multiple database server options.

Thankfully, it doesn’t appear that RS is focusing all of their attention on RSS.  With a smaller staff, however, it might just be enough to keep resources away from what RB users need and want.  If RS continues to ignore the needs of its developer community (in particular the professional community) they do so at their own peril and becoming irrelevant.  Developers will use the tools that solve their problems (like cross-platform applications).

I think RB is in serious trouble if a cross-platform tool for Cocoa (like Cocotron) is ever seriously taken up by Apple or someone else.  People talk about Mono for Mac OS X more and more.  Another tool, Lazrus, is currently making carbon Mac OS X apps (just like RB).  RB is a good tool.  With all of this competition, will it be five years from now?

Categories: Opinion, REALbasic Tags: ,