Dev toolkit, diagnostic SW, sourcebook?

Howdy. New guy here. I have designed and coded software in VB and MS Access VBA for I guess about 30 years. I’ve developed some sizeable and successful apps along the way, to include one that I am currently looking to make cross-platform. It is important to note that my app is not a web candidate, not a Clouder, strictly desktop and hopefully someday soon, a mobile app.

One really great thing about MS Access, in addition to be an excellent rapid prototyping environment, it the strength and quality of 3rd Pty tools, not least of which is FMS inc.'s venerable Developer’s Suite for VB, Access VBA, C# and .NET.

http://www.fmsinc.com/

It has plugins for the VS IDE that include Detective, which compares differences between any two versions of something including screens, menus and reports. Their masterpiece, a full-blown diagnostic system called Access Analyzer, is so thorough that there is really no reason at all for an Access app to have ANY bugs or sloppy code.

Their FMS Sourcebook contains hundreds of “ready-to-use code snippets, classes, how-to’s, and articles. It also allows you to manage your own code and share knowledge within a team by using the fully searchable code repository. Total .NET SourceBook provides both a full-featured standalone Code Explorer, and an integrated Visual Studio Add-In.”

I have found the quality of their products and code to be impeccable and indispensable.

My question for you folks is, what develop tools, diagnostics and source code libraries are there for the XoJo environment?

Over on Stack Overflow, Paul Lefebvre turned me on to Xojo and I really like what I’m seeing. I’m curious about what symbiotic benefits might tie back to Xojo’s VB roots. For instance, I’d bet the FMS Sourcebook’s code repository could be used for Xojo code. Maybe some of the FMS Classes m iiiiiight run in Xojo? Which begs the next question:

Are there any conversion or migration tools to help with moving twenty years of VB into Xojo? Maybe even a truckload of macros to do source code Search And Replace in Notepad+ or something? If not, has anyone kept track or documented the differences between the two languages? If so, perhaps a basic VB-Xojo Converter could be done with not all that much effort, at least on the code.

It’s been said that MS Access is the most popular database product in the world (and the most denigrated by ‘real’ IT people, I know). There are probably thousands of those apps that have become legacy. And, many of those really could us a good ■■■■ kicking out into the cross-platform world. I looked at File Maker, another impressive piece of work, but it couldn’t make the connection for me. I think maybe Xojo can, especially if I can get ahold of a good set of tools.

I think it could be a real opportunity for the right developer to make such a Converter. I might be able to do it, given enough time to get a=familiar with Xojo, bit for someone already up to speed on both languages, it could be done much quicker and better. I’m NOT wanting to get into the Utilities business.

I will say, though, that in one of my previous lives as a software dev SME for the DOD I did build an entire diagnostic system to snake check PowerBuilder (remember that?) source code for a critical military system and I modeled it after FMS’ Access Analyzer. It was groundbreaking, they’d had nothing remotely like it. One the first day it exposed years worth of dead code, silly memory allocations and bugs-in-waiting. I ran it against every subsequent release of the software for five years and their bug reports dropped like a stone.

So, my new friends, what do you think? Monkey Bread, are you listening?

3 Likes

Version differencing etc is not part of the IDE not is the IDE really but for such add ons
Third party tools like version control are what you end up using with TEXT based projects

Xojo has NO VB roots
That the two languages & tools look alike is more by design but Xojos owes no history to VB

There is the migrations assistant but I can tell you that its not worth trying as it does NOT do a decent job
And any code that could be “ported” really needs to be re-examined as to how to do things well in Xojo
Simple things like DoEvents which you might have used t lot in VB should NOT be used n Xojo
Tons of other little bits like that

I’ve written one for a client but its a TON of work to do even a start at converting code
Form layouts are easier but …

SQLite probably beats that out now or comes darned close as its been on nearly every mobile device in the world for a variety of purposes for the last several years
But its not Access in terms of being able to build an app just with it
Its more like the Jet DB engine

2 Likes

Sounds more like YOU should be writing such a tool … :wink:

… though I’d say the bugs in Xojo will drive you nuts - their “Rapid Release Model” has been detrimental to the quality of Xojo (just talk with Hal Gumbert)

1 Like

You’re right. SQLLite is the world’s most popular database. Access is, I guess, the most popular RAD product.

I did a lot of PowerBuilder development the 90s.

Not really. As Norman said, Xojo does offer a Migration Assistant, but all it really does is convert the project so it can be loaded in Xojo. It doesn’t do any code conversion at all (all code is brought over as is and commented out).

Xojo is similar to VB, but not the same. This page in the docs covers some of the differences:
https://documentation.xojo.com/topics/migrating_from_other_development_tools/migrating_from_visual_basic.html

There’s also a boatload of open-source Xojo stuff. Perhaps some of it overlaps with your old VB libraries:
https://documentation.xojo.com/resources/third_party/open_source_projects.html

1 Like

Thanks for those links. You’re an old PowerBuilder coder? You poor devil. I’m still trying to forget but sometimes I still wake up screaming.

Yeah, I just found the Migration section. It sounds to me like I need a good list of differences between data types, commands and such, the equivalents. With that, it should be easy to run macros against the source to do much of the preliminary conversion.

I’ve also been to Bill Keeny’s site and read a bit from Hal Gumbert. Dang, it sounds like what I heard at the FileMaker site. A small company (Xojo) trying to overhaul a car while its going down the road. I think it is going to continue like it is until and unless somebody creates a disgnostic tool like Microsoft Access Analyzer for Xojo. Tthat would eliminate 95 percent of their bugs BEFORE each release. And, it obviously can be done, all it takes is the commitment on somebody’s part (not mine) to dig in and do it.

As far as the pverarching problems I’m hearing about Xojo the org and their release model, bugs,etc. I think this is relevant:
“The success of human beings depends crucially, but precariously, on numbers and connections. A few hundred people cannot sustain a sophisticated technology: trade is a vital part of the story.” – The Rational Optimist, by Matt Ridley (…or perhaps a healthy shot of capitalization, hiring and reorganization)

Imagine, if you will, a tool for Xojo that does this (text rips from the FMS site):

"Total Access Analyzer includes our proprietary Microsoft Visual Basic for Applications (VBA) code parser that understands your module code to generate detailed analysis of your code in modules, classes, and behind forms and reports. Know where each procedure and variable is used. Discover unused code, unreferenced variables (assigned but not used), references to missing objects, variable name conflicts, scoping issues, and much more!

The Property Slice feature lets you choose a property name and see all the objects’ values for that property. Simply select a folder and see a property across all the objects like the RecordSource for all forms:

You can see property values across all form controls,Tables and Queries. You can choose object level or field/column level properties.

The XRef tab shows for each object, where it’s used throughout your database including references from other objects, macros, and modules. Here you can see each table and what objects and controls are referencing it such queries, RecordSource of forms and reports, RowSource of combo boxes and list boxes, macros, explicit references in VBA code, and lookups in table fields:

Errors, Suggestions and Performance tips are displayed in their tabs. By pressing Alt+D, you can open the current object in design mode to examine and make the recommended changes. Check the “Reviewed” box for items you don’t want or need to change

You can also search the documented properties, macros, and modules for any word or phrase, to see all the places it’s used. The results are presented to you and you can immediately open the current object in Design mode with a keystroke:

Total Access Analyzer contains 400+ reports ranging from top level overviews to individual object details. All the reports can be customized with your headers, footers, and colors so you can deliver professional documentation of your work. "

It should be relevant, but, Xojo moto is morelike “This is our software/company and nobody is going to tell us how to run it”. A few hundreds? thats a few individuals.

I also came from a 15 years VB background, ended here because back in the day, Xojo was called Real Basic and they promoted themselves as “the spiritual successor to Visual Basic”. But as norman said, no code works out of the box, usually a complete rewrite was needed, however, was kind of familiar languaje.

Xojo dont even have the built in controls available in VB 20 years ago, at least now we have TimePicker and DAtePicker in the Roadmap to be available in the nex years.

Sadlly this days, those few individuals are moving xojo way from the Basic roots, deprecating commands like MsgBox in favor of MessageBox :roll_eyes:, deprecating Dim in favor of using Var. :roll_eyes: Also worked some time with access, that was a real database RAD, with xojo, you have to do it all manually with lots of code.

Dev toolkit, diagnostic SW, sourcebook, VB compatibility, DataBase RAD… Not really

Maybe as diagnostic… http://www.tempel.org/Arbed/Arbed
Maybe lots of 3rd party as toolkit… Products — Xojo documentation
For sourcebook, the docs, some youtube videos, but this API2 changes, will make lots of resources useless

1 Like