Archive

Archive for the ‘REALbasic’ Category

Wish List: Compiler Warnings

February 9th, 2008 Comments off

A good example is the IsCMMClick method.  I’m not sure how long we’ve been told it’s going away, but I just discovered that it’s gone in RB 2008 beta program.  So instead of giving you a warning, the compiler just says “This method or property does not exist.”

In my opinion, this is not desirable behavior.  In the ideal world when they made the decision to deprecate it, the compiler should issue warnings.  These warnings would say something like, “Warning.  The method ‘IsCMMClick’ is being deprecated.  Please use ‘IsContextualClick’ instead or the ‘ConstructContextualMenu’ method of the control.”

Since I don’t want to jeopardize my status in the beta program that’s all I’ll mention.  There are other technologies that are being removed as well and these messages would be helpful.  I don’t propose keeping the messages forever, just that the decision has been made to remove them and you need to move onto the something else.

Perhaps I’m missing something, but it doesn’t seem like it would be that hard to add to the compiler and IDE.  Nearly every other compiler I’ve ever used has issue warnings that often tell you that something is out of date.  So why not REALbasic?

What do you think?

We Are Not The Only Ones

February 5th, 2008 Comments off

I ran across this blog entry dated November, 2005 from a supposed Microsoft Employee talking about Visual Studio 2005.
Among the highlights are the comments:
•    Visual Studio 2005 has too many bugs
•    Was VS 2005 shipped too early?
•    VS 2005 IDE crashing
•    “Alarming Issues” with VS 2005
•    Not all Microsoft divisions are using Visual Studio

Why do I bring this up?  With RB 2008 due to ship soon, I thought it nice to put things into perspective.  The worlds LARGEST software company with nearly unlimited resources (money and manpower) rewrote their development studio and it had bugs.  Yes, bugs.  And people complained about them.  A lot.

Real Software is tiny compared to Microsoft.  So let’s give them credit where credit is due.  They don’t have the same resources but are eating their own dog food (i.e. using RB to develop RB) and have to deal with all the crap that goes on with Apple, Microsoft and Linux operating systems.

Thank you to the developers at RS!  :)

Do Apple and Microsoft Really Care about REALbasic?

February 3rd, 2008 Comments off

Apple has xCode/Cocoa which they give away for free.  Microsoft has Visual Studio and .NET which can be obtained for next to nothing.  Both products create (arguably) superior applications for their respective platforms.

REALbasic  makes a consistently good application for both platforms.  Keep in mind that RB is nothing but compromises for the supported platforms.  The Microsoft MSHFlexGrid is superior in many ways to what the Apple grid can do so REALbasic has to compromise and give us the lowest common denominator in grids and hence we have an underpowered (but functional) listbox control.  The Einhugur StyleGrid and DataGrid controls do essentially that same thing just wrapped differently with some speed enhancements.

It’s been argued many times in the forums that RB doesn’t make a good Mac application without doing a lot of extra work.  The same is true that Windows applications made in RB suffer from some of the same problems.  Why is this?  Two words:  Cocoa and .NET.

Each frameworks gives developers goodies that highlight the strength of the platform and hence our initial question.  Does Apple or Microsoft really care about REALbasic?  It’s not like RB is going to see extra copies of Windows or sell more Macintosh computers directly.  If anything, you could argue that REALbasic hurts both Apple’s and Microsoft’s plans for “world domination.”

That’s a bold statement but here’s my reasoning.  I’m in charge of Apple the argument might go something like this:  RB allows developers to make software that works on my Mac’s and on the Borg’s own Windows.  I want to show the world that the better platform is the Macintosh so why should I help RS with any bugs on the Mac?  Now developers won’t use Cocoa and all the goodies that it has so all the time and effort to make Cocoa is wasted and our users don’t get all the goodies they’ve come to expect from Mac software.  RB is not enhancing my users’ experience!

If I’m in charge of Windows the argument could go like this.  I have this huge market share that’s being eroded by that toy computer from Apple.  Here’s RS that makes the claim of being a basic, object oriented, development environment that lets it easily create software for Windows and the Mac.  There’s even a utility that converts from VB6 to REALbasic!  Now people aren’t locked into Windows and all that work I’ve done promoting .NET is wasted!

Okay, both arguments seem silly but I’m sure the sentiment exists in Cupertino and Redmond.  I’m sure that neither company is actively sabotaging REAL Software and REALbasic but are they helping it?  In the world of business what seems like a win for the consumer is often perceived as a lose for the company.

What are your thoughts?  Is this idea possible or is it really stupid?  What am I missing?

Why Join A Professional Association for RB?

January 19th, 2008 Comments off

It seems that the idea of having a professional association for REALbasic has some legs.  Many people have left messages and contacted me privately offering their support and giving us some ideas.  Thank you!

A question that was asked to me privately was one that I think bears repeating:   Why should should you join a REALbasic developer association?  What does it do for you?

An association is an advocate for you.  Individually, none of us mean much to REAL Software.  An organization for professional developers using REALbasic might have a *little* more sway with RS.  I’m not saying it will, but the chances are better.  Some have mentioned having the organization buying into the Developer program and determining what to use the hot fixes for.  I’m not entirely sure that it’s the best use of whatever funds the organization has, but it’s worth looking into.

Another idea that’s been floating around is to provide a survey of all RB users and present this survey data to REAL Software.  RS probably has hundreds of enhancement requests and this is one way that we could influence their decisions for upcoming versions.  Obviously there’s no guarantee that they’d listen, but a bunch of professionals could pull more weight than an individual.

An association is an educational tool.  In the ideal world, RS would have a ton of white papers and general how to examples on their website.  Often their examples are so simple that most people don’t find them useful.  An association is a good place to learn more about the specifics of the language and product.    This could mean a code repository of some sort.

I think it’s entirely possible that the association would eventually do some sort of certification program along with study guides.  Imagine having a spiffy “REALbasic Certification” logo on your website.  It gives you more credibility in the eyes of potential customers.

An association is a marketing tool for REALbasic.  REALbasic is a great cross-platform tool but it is sometimes tough to convince customers that anything with ‘basic’ in the name can be taken seriously.  A professional association tells the world that, yes, RB is serious and that there are professionals using it.  This would also help with people who think that RB is just for hobbyists.

An association is for like minded individuals.  One of the reasons why I like going to Real World is to talk with other REALbasic developers.  I can’t do that everywhere because REALbasic just isn’t used by a lot of individuals.  An association gives me one more place to share and ask questions without the ubiquitous forum monkey badgering me on why “RB Sux”.  I don’t have time for that – my time is too valuable to waste on that garbage.

An association can be a marketing tool for you.  I envision a website that you can go to and find, in a single click, all of the association developers for hire, where they’re located, how many employees and other useful statistics.  As far as I know, there is no such website.  You would no longer have to rely upon REAL Software for your marketing contacts.

Also, imagine having a spiffy logo for use on your website as a member of this professional association.  It gives you more credibility in the eyes of potential customers.

An association can be a money saver.  As association could negotiate deals to save money on magazines, books, tools, libraries, controls and classes about and for REALbasic.  Become a member and get a 10% discount on “X” plugin or “Y” utility.  That alone could have a membership pay for itself.

Those are some quick and dirty ideas on why a professional REALbasic association is a great idea and what it can do for you.  What are your thoughts?

Categories: Opinion, REALbasic Tags:

Is It Time For a Professional Association?

January 9th, 2008 Comments off

An interesting conversation started on Norman Palardy’s blog the other day. Norman was taking about he wished there was better mechanism in place to help prioritize bugs and enhancement requests. It started off with a general rant (my words not his) about the feedback system not being exceptionally useful with some suggestions on how to make it better. It then wandered off (my fault – my bad) about how it would be nice to survey the beta participants to let RS know what we feel which enhancements are more important.

A 4D user then piped up about what has happened at the annual 4D Developers Conference for the past couple of years:  a small group of developers presents the results of a survey of what the developers (as a whole) would like to see in future versions of the product.  The enhancements are simplified as much as possible and aggregated down to a value between 1 (not needed) and 5 (needed) and given out as web survey.  This list is then given to makers of 4D.  The amazing thing is that 4D supports the group with stage time.

This is similar to a software product my wife supports for arts organizations where they survey all users and let everyone vote on the feature requests.  That software was designed for, and sold to, not-for-profit arts organizations who also become owners of the software.  Each year before their annual conference all member organizations get a list of enhancements and they vote.   Last years list had hundreds of feature requests.   Since they’re all owners in the company they’re votes count.

Since I’m a warped individual and I’m a glutton for punishment, I asked the question:  Is it time for a professional association for REALbasic?  I was amazed at the positive reaction so maybe the idea has legs.

What would this association do?

•    Help organize the above “enhancements” survey.  Provide a way for members and nonmembers to take the survey, tabulate results and present the results to RS.
•    Negotiate discounts for magazines, books and software.
•    Manage lists of affiliates (developers for hire, software development houses, others?)
•    Job/Project Listings
•    Meet at each Real World for business

Perhaps, in the long run, this organization could then create an RB Certification test, or series of tests, that allow RB developers to claim proficiency in certain areas.  Not that I’m a bid fan of this (I’m not) but it’s a way for developers to differentiate themselves from each other and it’s a way to have a set of training standards.

On the original blog post we have the following name suggestion:

IPRUA – International Professional REALbasic Users Association

I’ll add:

IPRUG – International Professional REALbasic Users Group
ARD – Association of REALbasic Developers
RBUG – REALbasic Users Group

So what are your ideas for such an organization?  Is it a good idea or bad idea?  Should it be free?  Should affiliate listing be free or have a nominal charge?  Any good name ideas?

Categories: REALbasic Tags:

Enhancing the Language Reference

December 24th, 2007 Comments off

For the past couple of weeks I’ve been talking about things I’d like to see in REALbasic and what, I think we, as users, can do for REALbasic.  The comments have been great – I appreciate all the time and effort all of you have put into them.  I think I’ve settled upon one thing that I’d like to see changed in REALbasic.

The Language Reference in RB is, depending upon who you ask, is either barely adequate or downright horrible.  I tend to leans towards the former because I think it’s lacking depth to be very useful.  For every object, property, method and event there’s information needed but not in the LR.  Sometimes this includes bugs but more often than not, just clarification on what’s changed.

For example, in RB 2007 R5 using “Dim as New Recordset” generates a compiler error.  It’s easy to fix and the release notes showed the change.  However, it would have been nice for the LR to have a note saying that the functionality was changed for that version of RB.  And I don’t blame RS for not having that in the LR either.  With all the things on their plate, this is, I’m sure, not a very high priority and, after all, they DID document it in the release notes.

I’d like to see user contributions to the Language Reference.  Note that this is somewhat different than a regular Wiki in that the users wouldn’t be able to add completely new topics, just add comments to existing topics.

Ideally, I’d like to have the option to turn the user comments on and off in the IDE.  If turned on, the LR would open up as it normally does and user comments would be displayed below the official entries.  Take a look at this documentation page for php.  I think this is a wonderful use of user comments to clarify what the object/property/method/event does.  This would make the LR rock in my opinion.  There are other examples around the web – if you have additional examples, please add them in the comments section.

So why is this different that the RB Wiki (hosted by Charles Y.) that is here now?  For one, this would have to be an official RB add-on.  They’d have to add the hooks into the IDE and the existing LR documentation.  They have also been unwilling to allow the use of the existing LR documentation (even though they’d keep the copyright) in past Wiki efforts.  This limits the options available.

To prevent spam and inappropriate comments, the contributions have to be moderated by someone.  All user comments would have to be approved by the moderator before being posted.  No comment is added without it being approved by the moderator – no matter who the user is.  This eliminates crap and will hopefully assuage RS of the crap and embarrassing entries that often happens on other wiki’s.  I hereby, put my money where my mouth is, and volunteer to be a moderator.

The Terms of Service would make it clear that RS retains the copyright and future use of all user contributions.  Most comments won’t be that useful, but I’m sure there will be a few, but those that are useful can be rolled into the official documentation.  The TOS would make clear that RS reserves the right to clear the comments at any time for any reason.  I see this happening when the official documenter gets around to any specific object and rolls comments into the documentation.

I’m sure there are things that I’ve forgot to mention but I think that’s the basics of it.  So how do we sell this to RS?  It’s work for them and they’ve not been especially enthusiastic about things like this in the past.  How do we propose a system so that it’s a win for RS and win for us users because I think this could be a nice collaboration between RS and the users.

So What Can We Do For REALbasic?

December 12th, 2007 Comments off

I have my wish list for what RB can do for us.  Now, to be campy, what can we do to help REALbasic?

Become Part of the Beta Program
Use the beta versions and report any issues that come up.  It’s fairly simple and it’s definitely a way to give back to the RB community.  Less bugs is always good in my mind.  It’s also free.

Help Other Users in the Forums and NUG
There is a core set of users that patrol the forums and the NUG list and answer questions.  More people are needed to answer questions.  RS recently added some new moderators which might be another area you could volunteer for though you’ll have to have a long track record before becoming a moderator.

Provide Feedback Through the Proper Channels
Find a bug in RB?  Feel free to complain about it in the forums, but the best place to do it is their Feedback System.  If you’re not using the Feedback system you can rest assured that your bug will not get fixed unless an RS engineer stumbles upon it.

What else do you think we can do to help out?

Categories: Opinion, REALbasic Tags:

My Wish List For REALbasic In 2008

December 4th, 2007 Comments off

There’s been an interesting discussion going on over at Norman Palardy’s blog.  It started innocently enough by Norman complaining that he’s been getting support and change requests for some of his free and unsupported code that he has on his site.  The discussion has morphed into a life of its own so I figured I’d start the “My Wish List For REALbasic in 2008″ thread and get some additional feedback.

First, a word of warning.  These are my opinions only.  Let’s not get personal and drag people through the mud.

There are also not in any particular order.

Continue with the bug fixes first and new features last in new releases
The people that use RB are developers and as developers require rock solid performance.  RS has done a great job with recent releases with a lot of bug fixes and for once the forums are actually praising RS.

Keep up the good work, RS, but there’s still a lot of work to be done.  There are bugs that have been present in RB since version 5.5.  These ever present bugs give outsiders (and some current users) the impression that you don’t give a darn about quality.

Continue releasing ‘Pro’ features
Delegates was a good start.  Object introspection would be another great feature.  I think it’s time that RS focuses more on the pro developer than the hobby.  From a money standpoint the hobbyist can’t/won’t pay for anything while pro developers can justify paying extra for pro features.

http://support.realsoftware.com/feedback/viewreport.php?reportid=nblvhwyb

Kill (or Update) the Visual Basic Project Converter (VBPC)
The VBPC is worse than bad.  It’s the first experience many VB6 developers will have of REALbasic.  Remember the old saying that you can only get one first impression?

VBPC mangles code in the worst way.  If you want to try converting from VB6 to REALbasic, try VB Convert! from AYB Software.  It’s not perfect, but it’s a damn site better than the VBPC.

http://support.realsoftware.com/feedback/viewreport.php?reportid=kyrcongy

Eliminate the Not Invented Here Syndrome
It sure seems like RB tries to be all things to all developers.  The problem is that there are too many things that RB can do from games to utilities to database front-ends.  Their limited resources should be focused on making their ‘core product’ markets better.

I suspect we might already be seeing some of this already with a new power tool in the language (delegates) and the deprecation (bindings) or possible open sourcing of other parts of the language (RB3D).  In the long run this is a good thing, in my opinion, because it seems like they’re looking at their core components and jettisoning the ones that don’t make sense or have always been poor substitutes for the real thing.

If there’s a market or need for something they don’t do then some enterprising developer will probably fill the need.  I think of VB Convert! from AYB Software for filling the glaring void left by the incompetence of Visual Basic Project Converter (VBPC).

Use a Standard Bug Reporting/Feedback System
I mean this as no offense to the people that wrote the current feedback system:  It’s not very good.  When compared against Mantis, Trac or Bugzilla it’s really, really bad and it’s hard to use.  It’s marginally better than the old bug tracker system (that was a standalone application) but it just doesn’t look very professional.  Try finding a bug sometime and you’ll know what I mean.

Help Foster a 3rd Party Controls Market
This is a tough one because I don’t think it’s the lack of opportunities for 3rd party developers and it’s not that the price of entry is too high for a thriving 3rd party market – I think the market is too cheap.  If I’m a developer that is interested in developing a killer grid component how can I compete against Einhugur that offers his entire suite of controls for $99?  Don’t get me wrong I love the Einhugur controls and I’m a very satisfied customer but his low prices are a hindrance to other developers trying to enter the market.

On the other hand, I’m also a satisfied customer of True North Software and their Formatted Text Control.  The FTC is a great replacement for the standard EditField and the developer is very, very responsive.  I feel that at $450 it’s a great deal.  It’s written in native RB classes and it does everything that I’ve wanted it to do and I get the source code for it.

REAL needs to foster more developers like True North Software.  They also need to help Einhugur expand their market by promoting these controls as an alternative to their own.  “Don’t like our ‘x’ control, well, here’s a couple of alternatives.”  This might help with the Not Invented Here problem.

Report Generator
Printing with RB is harder than it has to be.  On-Target Reports is a low-end product that works well, but cannot compete with the likes of Crystal Reports and ActiveReports that most VB6 developers use.  For RB to take off in the corporate environment I think this is the most important thing they could do.

http://support.realsoftware.com/feedback/viewreport.php?reportid=bylptiqx

IDE Add-On’s and Power Options
IDE scripting is a nice addition but it’s not what I’m talking about.  In Visual Basic, MZ-Tools was the most important tool I ever used.  Every VB6 developer I know of has used MZ-Tools which allows a VB6 developer to quickly an easily modify code in the IDE:  Add comments, line numbers, error handling, check for unused variables and much more.

Power options would include allowing the user to map keys to what they want.  For me, the F5 button is Run and F8 is the debugger command to step into because that’s what Visual Basic has been for years.  I’m sure there are people that would like to map their keys like xCode or CodeWarrior or the current version of Visual Studio.  This seems like a no brainer!

Other power options would be little mini-programs that would say allow users to generate and insert code templates.  How about implement their own search engines?  What about even the possibility of writing a power-user code editor!?

Fix RBScript
RBScript has been around how long, now?  Give it some of the power features that people have asked for and make it robust.  Fix the bugs that are causing people to stick with RB 2006 versions.

RS stated at last years Real World that they wanted to use REALbasic in stored procedures for REALSQL Server.  I can’t imagine them using regular RB so RBScript is it.  If they can’t get it working in the IDE no one will ever trust it for serious database work.

Fix the Plug-In Documentation and Keep it Up to Date
If you want to write a plugin for RB, good luck.  The documentation has recently changed for the better, but it’s still not good enough.  Aaron on his blog has done some recent posts on how to create the Windows part of the plugin.

This goes back to fostering the 3rd party market.  If you want other people to develop for your product you need to make it easy for them to do so.  As much as I bag on Microsoft products they make using their development products easy because they know once you get locked into their product it’s tough to move to another environment.  RB could do this as well.

Make Better Use of the Web From Within REALbasic
The web is the great communicator.  Take a hint from the likes of php, PostgreSQL and java and integrate user comments into the official language reference.  Make it moderated if you don’t trust people to be civil.  It would eliminate mistakes and would let the community fill in where the Language Reference is shaky.

http://support.realsoftware.com/feedback/viewreport.php?reportid=qdzdtnhl

Support An Official REALbasic Wiki
Unless RS supports a wiki, all efforts will fail.  Anyone remember RBWiki from a few years back?  It died a lonely death.

Charles Yoemans was nice enough to put a wiki up on his site.  As best as I can tell, there’s no one posting to it.  It’s too much work to duplicate the efforts of Language Reference.

Go After the Enterprise Market
At last years Real World conference, Novel was pushing Linux.  If big companies really want to switch to Linux like Novel says they do, then RS should put together a small team and work with Novel to switch some large corporations to REALbasic.  This would be a much better white paper than the current white paper that recommends using the VBPC.

If there’s that much money in the enterprise market then this ‘division’ of RS would earn its keep.  Maybe Novel should front their own RB based organization?  This would be the put your money where your mouth is moment.

I think that about does it for this edition.  In a future article I’ll talk about what we, as users, can do to help REALbasic.

Categories: Opinion, REALbasic Tags:

REALbasic and ActiveX

December 1st, 2007 Comments off

REALbasic is wonderful at cross-platform programming. With a little elbow-grease it’s possible to make very nice Windows and Mac OS X applications. That’s the bread and butter of my business.

I have one client, however, that has had me working on a commercial VB6 application for five years. Since we know that someday VB6 will not be adequate for our needs we’re looking for the ‘next’ development environment. .NET is the easy answer but since I have a lot invested in RB so I thought that if I can get them halfway to cross-platform that would be a win-win for everyone.

Categories: REALbasic, Windows Tags:

The State of Visual Basic 6 to REALbasic Conversion

November 5th, 2007 Comments off

Visual Basic 6 is arguably the most common development language on the planet.  It’s low barrier to entry and easy-of-use and its extensibility make it ideal for many non-programmers to make a ‘working’ application that does exactly what they want.

VB6 is no longer supported by Microsoft.  This is forcing many developers into the .NET environment which is not as easy to use and many would argue that the language is no longer ‘basic’.  So what are companies that have dozens of VB6 applications to do?

Let’s also add to the mix that Apple has doubled their market share with very slick computers.  Linux has very vocal and loyal supporters.  All this means that companies that were once Microsoft-only now need to convert their VB6 code to something else.  Whether that something else is .NET, Java or REALbasic is somewhat irrelevant because every choice is going to involve pain (money, training, time, etc).

Converting from VB6 to REALbasic should be a no-brainer, right?  Wrong.  While they both have basic in the name, they really are completely separate languages, each with their own set of peculiarities.  Yes, there are many similarities between the languages but that doesn’t mean it’s easy.

REAL Software has had the Visual Basic Project Converter (VBPC) for a while and was last updated in early 2005.  It’s free for download.  I would recommend that you don’t even bother – you’re better off converting by hand.  Hey, you get what you pay for, right?

I find it inexcusable that REAL Software has taken over 2 years to release an update to software that might very well be the first thing that VB6 developers see when evaluating REALbasic.  Here’s a very brief list of what it doesn’t do:
•    Windows and controls are not converted to the proper dimensions
•    Enums not converted
•    Structs not converted
•    The converter mangles code with no errors

There is one commercial product to VBPC and that’s VB Convert! by AYB Computers.  Its price tag is a very reasonable $50.  Even if it only saves a little time it’s worth the money.

VB Convert! does a good job of converting VB6 forms to RB windows as long as you are using the standard Visual Basic controls.  If you’re using 3rd party controls you’ll at least get a canvas subclass in the proper position.

The code conversion is better than VBPC but keep in mind that there are just some things that won’t convert very well.  One such item is file I/O.  VB6 is a product of the early 90′s and is not OO in most areas.  REALbasic file I/O is pure OO.  Only a programmer can objectively convert from VB6 to RB at that point.

VB Convert! will convert enums and structs properly.  They also have a variety of options that the VBPC doesn’t have like forcing pushbuttons and editfields to a certain minimum size and converting a ADODB recordset AddNew method to using the REALbasic DatabaseRecord class.

You might think that I’m being easy on VB Convert!.  We, as a company, thought long and hard about creating a VB6 converter.  At first blush everything seems easy but then you get into the exceptions, and VB6 oddities, and all the 3rd party ActiveX controls and you start to realize that it’s a HUGE problem.  For a version 1.0 product AYB has blown away VBPC in terms of usefulness.

In the long run, no ‘converter’ will do all the work for you.  If you think you’re going to select a VB project file, run the conversion process and then hit the RUN button in REALbasic you are sadly mistaken.  The conversion process is just that – a process that takes a programmer familiar with both VB6 and RB to do the conversion.  In many cases it will be a line-by-line conversion even with tools to help.

Think about it this way:  Some companies that convert VB6 to .NET are charging $1 per line of code.  What are you paying for REAL’s VBPC?  Exactly.  At least with VB Convert! you’re funding a developer that actually cares and is willing to work with you.

In my opinion, RS should remove their converter application until (or if) they get it into a decent working state.  Until then, give VB Convert! a shot knowing that you will spend some serious time converting a lot of things by hand.  VB Convert! is a tool that can help save some time while VBPC is useless in its current state.