Xojo web vs ???

I hate to mention other vendors’ competing products on a company’s forum, but I need to make a platform decision and I’d love some insight from Xojo users. Certainly not trying to start a debate here about platform superiority and I’m asking about this in all sincerity.

I’ve had a license for Xojo Windows & Mac for the last couple of years and I do indeed enjoy the language. But I will soon need to create a fairly involved web application and I’m having a hard time seeing the advantages that Xojo Web has over ASP dot Net VB. The latter is free and most of the major bugs have been ironed out. There’s also a HUGE userbase, plenty of third-party extensions and literally thousands of plug-n-play hosting providers.

What have your experiences been with Xojo Web? Why would you recommend it over other alternatives?

I really only use xojo for web development.

My simple reason is it’s like making a web app in vb6 but object oriented.

You have everything to do complex work for a backend like Facebook ad integration and front end screens all in one ide and language.

I just had another play with scriptcase and it’s a nice php generator that makes nice CRUD database screens easy, but… for anything a little deeper you want your app to do, then it becomes hard.

Xojo is great at debugging. Great security using xojo cloud or Philip at server warp.

Then there is the xojo company keeping things simple and improving the product.
Microsoft has a habit of introducing rather large ADVANCES / IMPROVEMENTS to its massive DOT NET framework.
I’m a simple bloke, and it does everything I’ve asked of it.

Cheers James

My first iterations of Xojo Web Edition were designed to take an existing desktop application, and convert it into a web application. Needless to say, those attempts didn’t make it very far. So many logistical problems…

I mention this because it speaks to the goal of Xojo Web: make a desktop application in the browser.

Which language is the best choice really depends on what kind of experience you’re looking for. If you want something document-like, such as Reddit, Xojo’s website, or nearly every website, then Xojo Web really isn’t the right choice. You’d want any of the more traditional web development tools. The big differentiator is how Xojo handles object layouts. HTML (the markup driving the web) is exactly that: markup. Like Markdown or RTF, HTML is designed to present content in a document-based format. Text flows around objects, and objects are positioned based on their neighbors. The fact that we make HTML do so much more is a testament to our creativity.

While Xojo Web (of course) uses HTML as well, there is surprisingly little of it. Most everything is done via CSS because Xojo Web needs to explicitly AVOID the very layout model that makes HTML so powerful. It works more like one of Xojo’s windows, in that the elements are placed on a coordinate plane and positions locked to one or more edges. Because of this, Xojo Web apps will feel out of place if you’re trying to use it to produce document-like content.

But if what you want is a desktop-like experience, I’m certain Xojo Web is the right choice.

If you are referring to classic ASP.NET WebForms I would not build one of those applications in 2017 or even 2013 for that matter.

If you are referring to ASP.NET MVC via traditional Visual Studio I would not do that in 2017 as ASP.NET Core is now available.

ASP.NET Core is more like Xojo in the sense that you build an application which includes a full web server (check out OWIN and how that is tightly integrated with .NET Core). It however is not a rapid application development environment.

While .NET has an expansive ecosystem but the recent open source and .NET standard changes does fracture the ecosystem quite a bit. It eventually will converge but by then they will have released yet another new stack.

Running traditional ASP.NET WebForms on “plug-and-play” providers is akin to shared hosting that has significant security and performance implications. Also I would take issue that there are still thousands left as the free licensing of Linux has severely depleted the Windows hosting market.

So in 2017 you really should only be considering ASP.NET Core which can run anywhere. However that means you are building an application literally from scratch just as you would do in any other platform.

So I think Thom did a good job of demonstrating when building a full stack application (backend, frontend) may be an appropriate choice. Then and only then is ASP.NET Core a well considered approach if you prefer C#/VB.NET syntax. I would probably lean towards Ruby on Rails or PHP simply because PHP 7 is very fast and come a long way since the days of yore.

We develop a large and very complex webapp with xojo, on which our entire company runs. So, developing very big webapps is absolutely possible in Xojo and I would always prefer it for ASP.NET (Core).

But you need to know some weaknesses of Xojo.

First and biggest is in my opinion the small userbase. It’s hard or impossible to find developer which even know Xojo (not speaking about that they are familiar with it). In the past we lost some good developer applicants which said, that they dont want to work in/with the xojo lang.

Next weakness is the performance. Xojo apps only run on one CPU-Core. So you may have some scaling issues if your App is used hard. We had many headache situation with the performance of xojo webapps. Just because they aren’t build for a high amount of parallel sessions/users.

Last is again the small userbase and the hard case around the technology. This forum is awesome and you’ll solve nearly every problem you’ll have together with the nice guys here. But it’s not the same as using stackoverflow with a more popular technology. It will happen that you’ll have an issue first and you can’t just search for a solution. This makes bug fixing or error solving much more frustrating sometimes. Also the webapp framework gives you not much possibilities to break out of it and make something different. You’ll alway need to stay in the high walls of the framework.

howsoever.

I’ve never regret the decision of choosing xojo, though. Because our development process is extremly fast and cheap compared to other technologies.

If the performance would be a big part in your project, I would rather recommend PHP or Node.js. The development is not as fast as in xojo and you have havily more work todo, but there are more developers out there which know both technologies and the scaling of thus apps will be much much easier.

Christian,

Aloe for Xojo might help you with that large Web App. It’s page based and not a single page app. And free!

https://aloe.zone/

[quote=352137:@Hal Gumbert]Christian,

Aloe for Xojo might help you with that large Web App. It’s page based and not a single page app. And free!

https://aloe.zone/[/quote]
That’s really neat.

@Hal Gumbert , @Tim Dietrich ,
I watched your demo at the VXUG September 2017 Meeting and while I’m understanding the overall concept I’m having trouble putting it into practice. From what I understand from your demo, Aloe should improve the performance of my existing slow application (possibly due to my own newbie mistakes). To help me understand the implementation of Aloe, would it be possible to see 1) how pages interact with each other and 2) how to retrieve data from a form.

My application consists of about four pages, of which two of them are input forms with pre-populated form fields. The application is too slow, and I’m trying to find ways to improve the performance. (I have another thread related to this.)

BTW…if this should move to another thread…I’m happy to do so.

Robert

Robert, I replied here: https://forum.xojo.com/43361-aloe-discussion