Tuesday, September 29, 2009

Linux HTMLViewer now uses WebKit

With REALbasic 2009 Release 4 we've finally updated the HTMLViewer on Linux to use WebKit if it's available. This has been a long requested feature and we're happy to finally deliver this to you, but the unfortunate part of this is that WebKit is not typically installed by default by any of the major Linux distros. However, the WebKit libraries are easily accessible, and are usually included in the Linux distros' DVD/CD download. For those not as familiar with installing new packages on Linux, I offer this basic tutorial for Ubuntu users. I like to use the Synaptic Package Manager to find and install packages that are on my Ubuntu DVD/CD, here's how:

Once that is loaded, you can now search for WebKit. Knowing that WebKit is a library I prepend my search of WebKit with Lib, so instead of just searching for webkit (which actually turns up quite a few hits), I'll search for libwebkit:

You want to mark the first hit of libwebkit-1.0-1 for installation, then apply. For those who like the command line approach, you can launch the terminal and type:
sudo apt-get install libwebkit-1.0-1

You are now ready to enjoy the new HTMLViewer using WebKit!

REALSQLDatabase/SQLite Update

We had originally planned to update the REALSQLDatabase class to use the latest version of SQLite in REALbasic 2009 R4 (released today). The work was done but we also took the time to substantially overhaul the internals of the REALSQLDatabase class. We reduced the amount of code by quite a bit making it easier for us to maintain and made it faster as well. Unfortunately, the side effect of such a big change is that it requires more testing time and it was ready too late in the beta cycle for us to feel comfortable releasing it for R4.

The good news is that we are planning to have another release this year primarily to ship the updated REALSQLDatabase class.

Cocoa Update

Now that REALbasic 2009 R4 is shipping, many of you are wondering about the status of our transition to Cocoa for our Mac OS X framework. For those of you are are not aware of this, we are transitioning our underlying Mac OS X framework from Carbon to Cocoa. For the most part, this won't affect the code you write in that we are making these changes under the hood so you will continue to use the same classes you use today.

We are nearly feature complete on our Cocoa framework. There are only a handful of controls left to do. Those on the beta list have been seeing our progress as we have released betas of previous releases (including R4). Once we are feature complete, we will start the final beta process, most likely within the next 30 days. At that point, we will take as long as is necessary to make sure the Cocoa framework is stable. And our plan is to ship the IDE based on Cocoa at the same time. The IDE is a large, complex project and is a good test case for the stability of the new Cocoa-based framework.

If you are interested in beta testing the new Cocoa-based framework, make sure you join the beta list. You can do so by signing into your account on our web site and clicking on the Beta Program link on the right side of the page.

REALbasic/REAL Studio 2009 Release 4 Now Shipping

Adding 97 improvements and 39 new features, REALbasic 2009 Release 4 offers the most requested feature from REALbasic users, reporting! Also included in this release for REAL Studio only is build automation. Finally, our new feedback system is now live.

The new report editor allows developers to visually create a layout for printing by dragging and dropping labels, fields, images and more. Reports can be created to print a single page or multiple pages. The layout is divided into sections (header, body, footer as well as grouping sections for reports that have sorted data).

Reporting in REALbasic

The new build automation feature of the Project Editor is only available in the REAL Studio Edition. With Build Automation, developers can visually drag and drop build steps to execute common actions (like copying files and running IDE scripts) before and/or after their application is built. All of this can be done from within their project.

Build Automation

The complete list of improvements and new features in this release can be found in the release notes in the product download section, http://www.realsoftware.com/download. REALbasic and REAL Studio are available in a free 30-day trial edition. To view a video demonstration of all of the new features in this latest release, please visit: http://www.realsoftware.com/realbasic/newin/2009r4

Thursday, September 17, 2009

Our New Feedback System

Any company that expects to succeed had better listen to its customers. We listen in many different ways: We follow threads on the forums and mailing lists, we read the emails you send us directly, conduct surveys, and monitor the feedback you provide via our Feedback system.

Over the years we have had many different systems for gathering bug reports and feature requests. We used to have a system that was pretty transparent. You could search it, contribute additional information to a particular issue, etc. We could get a sense of how important a case was based on the number of you that added that case to your watch list. This system was very specific to your needs, which are the needs of a software developer. As a result, this system was created in-house.

A few years ago, an argument was put forth internally here at REAL Software that we shouldn’t be re-inventing the wheel by building and continuing to maintain our own, custom bug database system but instead should use one of the commercially available systems. There was a lot of sense in this argument. These systems had features that our system did not and they were maintained by others allowing us to focus on what we do best. But these systems were not without their downsides. The theory behind FogBugz, the system we use today, is to make the system of entering a bug as simple as possible for the end user because if you ask too much, users won’t provide feedback. The other assumption is that most users don’t need to search through your bug database. These assumptions are all quite reasonable for 95% of software users. It became obvious to us late last year that you, our customers, are not in that 95%. You are like us. You are software developers. You understand the importance of providing lots of detailed information. You want to search our bug database to see if a report has been filed before and see if a workaround exists. You will tell us which cases are more important than others.

With this in mind, we decided early this year that we needed a new Feedback system. FogBugz is fine for most software companies whose customers are not software developers, but it’s not ideal for customers who are. However, if you are looking for a feedback system for your product, I would certainly recommend it. We spent some time looking at what was good and bad about our old system and what was good and bad about FogBugz. We then set out to build a new Feedback system that would give you and us the best of both systems.

While the old system was designed to be opaque, the new system is almost totally transparent. You can search, and the searching is actually very cool. It’s simple and yet very powerful. It also includes relevancy information to help you track down the case that is the most likely match. You can filter reports by product, version, status and more. You can keep a list of your favorite cases to make it easy to keep track of them. You can contribute to existing reports, adding workarounds, example projects, etc. that others can use. If there is information that should be for our eyes only, you can mark the information you add as private. And last but most certainly not least, you can put your most important cases in order of your personal priority. This and the priorities of others are put together to create a score. This allows us to see what the most important cases (both bugs and feature requests) are. You will be able to see them too because the new Feedback system will show you the top 20 cases by score. We have added this because we want you to see that we are making an effort to address the most important cases first. That’s not always possible of course and some bugs get addressed as soon as they come in because they are very easy to fix and an engineer might be working on that part of the code when the bug is reported.

In the past, the score of a case was essentially the number of people that added that case to their watch list. Anyone could add any number of cases to their watch list to increase the priority. The problem with this is that it didn’t give us a true picture of what your priorities are. In the new Feedback system the only cases that are scored are those that are within the top 5 open cases on your personal priority list. The new Feedback system makes it easy for you to reorder your cases so that we can see your personal priority. Also, in the case of REALbasic, the edition of REALbasic you are using affects the score your top 5 open cases receive. Professional Edition users are given 3 times the priority of Personal Edition users. REAL Studio Edition users are given 10 times the priority. We are doing this because the more you invest in us, the higher we feel your priority should be. That doesn’t mean that a Studio user would always get higher priority. For example, if fifteen Personal Edition users put a particular case at the top of their list, that would have a higher score than a case at the top of a single REAL Studio Edition user’s priority list. This scoring system will help us understand which cases should be addressed to have the maximum impact on you, our customers.

When we have changed systems in the past, we have asked you to go through your cases and help us move them over to the new system. For some of you, this was a lot of work. We will not be asking that of you this time. We have automated the process of moving the cases over. However, we will need you to do one thing. Because you can’t search our current Feedback system, it is implied that all cases are private in that others outside of REAL Software can’t view them. We would not want to accidentally expose to everyone a case you thought was private. As a result, you will need to tell us (via a web page) which of your reports should be private and which should be public.

This new Feedback system runs on Mac OS X, Windows and Linux and will ship soon with REALbasic 2009 R4. It’s going to help us better serve you and it’s going to better allow you to help each other - whether it’s providing a workaround for a bug, or discussing the pros and cons of a particular feature. We look forward to your comments and suggestions.

Use the following links to view larger versions of the screenshots: