Cross-platform application template?

Boy, I’ve searched long and hard for this. But I’m looking around for a reasonable cross-platform (Windows, Mac and Linux) application template.
Is there ANYTHING out there that uses the standard components. Or even some that uses 3rd party plug-ins.
I’m looking to jump start a couple applications for several consulting projects, and I’d rather have something thats been out there and tested
so I can start from there…

Hell, I’m surprised nobody’s marketed these for purchase!

I can only speak for myself where I do indeed have an application template that I use for new applications. However it’s really focused for the Mac platform so it does a whole bunch of magic that simply isn’t operable on Windows. I have been thinking about releasing it, but I’m unsure of how to market it and in order for it to work correctly, the application has to be designed to work in this template, where as I know most devs have their own design patterns and methods of working.

Right, but many newbies are just looking for clues as to where to stick stuff (plugin registration, global variable declarations, sizing of windows, read settings/preference files, where to connect to databases, etc, etc, etc.) I’ve been coding in RS for 3 years and I’m still not sure I have things in the best location. And most of my coding is on Windows. Taking it to the Mac market is another layer of "unknown: added on to it. I would have (still would) pay for such a template. Certainly would be a better place to start new projects, and would serve as a good place to review what I came up with.

There’s absolutely NOTHING out there right now. Its a bit frustrating.

Have you had a look at Thom’s Multiple Document Application Template?

http://thezaz.com/code/mda/

[quote=27301:@Markus Winter]Have you had a look at Thom’s Multiple Document Application Template?

http://thezaz.com/code/mda/[/quote]
It’s very dated at this point. If I were doing it all over again, I’d probably do a handful of templates for both single-window and multi-window applications. For example, the preferences module is useful, but why only have it in a multi-window template?

I’ll take a look at the MDI template. Thanks.

What surprises me a bit is that the 3rd party folks like Einhugur, Graffiti or even Monkeybread, aren’t having some sort of
jump off point for people to start in which can highlight their products.

Hell, here’s an idea… how about selling them… and marketing these Xojo templates to promote your product.
Not unlike the way Web sites do…

“Here’s an iTunes-like framework using the StyleGrid and Tree…” $10 bucks.

The great part of that? People need to buy their plug-ins to use that app.

While this isn’t strictly true, I see where you’re coming from. The absolute wording, though, is not accurate.

  • UTool, yFrame, MDA, Undo Toolkit are dated, but 90% of their concepts remain unchanged and are fantastic starting points and they’re supposed to be starting-point applications

  • Countless single-use utilities and libraries have a working application as their demo.

  • There’s tons of RealBasic/Xojo applications whose source code is available (I remember what a treasure trove finding Torrantula’s source code was)

  • There’s (https://xojo.com/issue/18112)]a feedback request asking for this for unified Mac applications. While it’s not dismissed and it’s in a high position, it’s been generally agreed that a template application that covers too much would run the risk of being overused and killing the idea of learning to code, by removing the need to learn the ropes. The original request was made by Oliver Oswald. A similar one could be done, or this expanded. This spawned quite a discussion in the NUG list at the time :slight_smile: It’s currently rated as 12th in the overall list of feedback items.

All very good points.

As far as you point about, "the risk of being overused and killing the idea of learning to code, by removing the need to learn the ropes. "

I would argue that the code could be used to learn the RIGHT way to do things… so there’s two sides of that.

I think thats just an excuse that doesn’t work. Here you have this Xojo product that makes building applications easier on cross-platforms like Mac and Windows (and of course Linux), but there’ simply no example of a framework or application that is supported by Xojo that can be used as a starting point. This slows people done from doing EXACTLY what Xojo was intended for – speeding up development!

I don’t like spending time coding the mundane. I hate it. I hate doing things like “Oh, I need a list view that displays rows of data, but also can have a selection and context menu…” Over the years of writing code I’m at the place in my career where I know what I can do, and what I can’t do – and better yet, what I don’t like spending (wasting) time on. If I can get a template that does 50% of what I need in the application GUI, I’m focused 100% on what the application is going to be… not doing the things that we ALL expect to work in an application anyway…

What would help is a supported cross-platform template that demonstrates using “good” practices with Xojo.

It was not my point. It was the point against the proposal in the discussion. I’m voting for the feedback request and defended the idea in the NUG list.

Still, the existence of an app template, by itself, does not serve to learn. An app template heavily documented and, ideally, that compiles into an app that teaches how it’s coded and why would, indeed, help learn. Especially if you have to remove from the template the “demo” functionality to apply your own as a first step.

Learning can’t be picked up by seeing how something is done but by being taught how it’s done. A good app template (which, by necessity, would only cover a small part of what would be needed) would show how things have been done but not why. Unless both parts are together, an app template would become a source of copy/paste programming.

As for whether Xojo was intended for this, the argument as posed is a bit flawed. Extending that logic the fastest way to speed up development is to have it done by someone else and Xojo becomes irrelevant in such a scenario :slight_smile:

A book teaching good practices containing examples is, unarguably, the best way to learn. An app skeleton isn’t, by itself, without something completementing.

I want an app template as well, but I can see all the holes in the logic (and they’re even more obvious when we see, even today, new apps that have countless traces of yFrame or UTool).

Learning aside, having templates that demonstrate a proper framework that is cross-platform is not only valuable,
it would help save time on developing applications.

The mundane of putting together a UI slows me down. I realize I’m going to STILL have to do GUI work, but If I can build off
something to prototype fast, or make things easier.

It also demonstrates “standards” and the way things should be written. I’ve seen countless things out there that take many different approaches to a “good” Xojo app. Yet, most of those out there (and you’ve pointed this out) are over 10 years old.

Time to step forward…

Taking a look over at the Windows WPF land… I see plenty of good examples.

http://waf.codeplex.com

http://msdn.microsoft.com/en-us/magazine/dd419663.aspx

The list goes on…

Xojo needs this to gain traction.

Of course it doesn’t :slight_smile: It would be nice, but that’s a far cry from “needs”.

As for “standards”. That’s a bit of manipulation of terms. The platforms have standards. OS X, Windows, Linux, have guidelines. Programming languages shouldn’t have “standards” to the look & feel of apps. I remember those days when all apps from Delphi looked like clones of each other.

Xojo should make things easy (it already does) and should make it trivial for you to come up with your own templates, so you have your own “standards” for your applications.

While I support having an app template and I’ve voted supporting it, there’s nothing I’d hate more than an app template with its own style that suddenly becomes the “style of apps made in Xojo”. This would be detrimental to all involved, and to users.

Having an App template to avoid having to write the foundations (undo subsystem, copy and paste subsystem, document open and saving, etc.) is something I see as a good idea. Having an app template for the GUI looks to me exactly the sort of bad idea that the opposers of such a thing are using as argument. And that’s the argument I can get behind.

I didn’t point out that most approaches to a good app (unrelated to a good Xojo app) are old. I pointed out existing app templates are old. Those app templates are not, by a long shot, representatives of how a Xojo app should be written today. I’m sure the original authors would argue they weren’t back when they were new.

Xojo already saves developers a boatload of groundwork. In most cases Xojo has stopped right where usage stops being common and starts depending on the application and function.

To me, an App Template with modules for most common functionality would be a great library to use to select what you need in your own Application library, which you can in turn use in future applications you create.

[quote=27418:@Eduardo Gutierrez de Oliveira]
To me, an App Template with modules for most common functionality would be a great library to use to select what you need in your own Application library, which you can in turn use in future applications you create.[/quote]

And a perfect opportunity for everyone so inclined to contribute to a community based Project Template repository since you can add them by dropping them into the Project Templates dir next to the IDE and it will present them right along side any others.