Should I use Xojo or PHP?

Hi All,

I have a client who is ready to update their old dBase/FoxPro applications that were built from the 90’s and 2000’s to something current. Yes, I am glad but, I am not sure if I should just use a WAMP stack (Windows, Apache, MySQL, PHP) and build it all from there orrrrrrr should I take this opportunity to jump into Xojo?

I’d like to hear thoughts on local hosting/server setup/connecting remote apps… etc. Please feel free to unload all your thoughts, I really want to hear what you all have to say… realizing of course that you all might be a little biased toward Xojo but that’s OK. :slight_smile:

it depends on the complexity of the project.
don’t use a dev tool you don’t know deep with a complex project.
if it is a simple project, then it is a good starting point to learn some new tool.
and if it fails, you can always go back to the dev tool you know.

I would of course do this with xojo and postgresql, but it’s mainly because I don’t know php,apache and so.

Hi Paul,

Lots of things to consider here. Your proficiency in the respective toolsets may be the biggest factor of all, to be honest.

We can attest to success with running LAMP servers, especially with haproxy as a load balancer. Apache is used to serve static content, and Xojo Web Apps provide the UI. In this scenario, we often use Jasper Server (Community Edition) for reports.

Another thing to consider is possibly using Xojo for a portion of the solution.

We initially started using Real Basic (as Xojo was then known) in 2011, to do something very similar to what you are proposing. We converted a long-running VB6/IIS/MS Access application to a PHP/Javascript front-end that interacted with a Real Basic back end for database access and report generation.

Will be interested to hear what you decide.

Are you knowledgeable of Web sites ? If not learning Xojo, instead of a WAMP stack, would be easier and a lot more involved. An advantage of creating a Xojo Web Application is that you dont need a Web server, because the Web App is the server. Installing and configuring a Web server can be complex.

Thank you for your input. Either way I am going to have to learn some new things… plug-ins, tools, components, etc. :slight_smile: These are fairly complex applications.

Welcome to the community @Paul_Murray1!

I’m a Xojo employee, so I’ll be a bit biased, yes :upside_down_face:. Both languages will serve their purpose, it really depends on the kind of application you want to build.

One advantage of Xojo is how quickly you will be able to get something working, even if you’re the only developer working on the project. With PHP you’ll also necessary have to learn (at least) HTML and CSS.

The best way would be to download Xojo and give it a try, you won’t need a license unless you want to build and deploy your application. Feel free to ask any question you have in the Web subforum:

Check also this YouTube playlist, dedicated to Xojo Web development.

Welcome. How many concurrent users are you looking to support?

Thanks Adam. About 20 in-house users. There may be requests for external access by employees on the road or maybe customer portals. That could be hundreds of customers but not thousands.

I had some CRM style web apps running happily in the older version of the Web framework (Web 1.0), with around 20 concurrent users. Higher than that we looked at load balancing. Unfortunately I don’t have any real world data for Web 2.0 . Depending on your time constraints it may be worth a simple proof of concept in both Xojo and PHP.
For server setup, on the assumption you’d be running a Linux server in the cloud, I’d take a look at Lifeboat for running Xojo web apps; it is possible to setup manually but Lifeboat makes it much easier.

Xojo also has a proprietary hosting service just for their apps called Xojo Cloud is you don’t want to deal with all that server stuff.

My app was originally made using javascript for the UI, AJAX plus Apache to talk to backend PHP scripts which did the comms and database (SQLite) stuff, and which ran on Mac/Win/Lin, all components on the same host. In the end I moved to Xojo because newer browser versions were putting more and more restrictions on what I could do in a browser window. So now my app still runs Mac/Win/Lin but life is simpler.


I did some WebApps on the abandoned Xojo Web1, I found that the max limit in my use cases was 15 users per instance, so if you need hundreds of clientes, you will requiere many concurrent instances of the app running.

As for web2, it is not usable for me (not yet?) What do I need to use Xojo WEB2? - #2 by Michel_Bujardet

Web 2 does a better job in that sense, @Ivan_Tellez, and you’ll also need several instances of the PHP application anyway.

Xojo Web will probably allow you to create something faster than having to use a mix of technologies (PHP / HTML / Javascript / CSS).

PHP will be more efficient and scale better than Xojo Web. This is based on the fact that PHP can serve each connection on a pre-emptive thread (Apache + mod_php) rather than the cooperative threading that Xojo uses. PHP also has more efficient database access and file i/o.

Better than Web 1, sure, but it is like a 50% improve? 20 to 30 users depending on the app.

As Kevin said, the Multithreading of web servers can push that limit a lot, cant really discuss other thechnologies here, but some combinations of hardware, web server and framework can serve 1000 concurrent users. (yes, is it “harder” and it is not a RAD)

As you’ve already commented, you can scale Xojo Web doing load balancing with as many instances as needed, to take advantage of multiple cores.