Criteria you'd use to pick a tool

IF you had to evaluate TOOLS for building an App what criteria would you use ?
And I truly mean this in a generic sense. If you could pick anything you wanted what criteria would you use to narrow the selections down ?
GO !
This could be a desktop app, or web app that runs on internal systems only
Those are the two most likely options

What do you mean by ā€œToolsā€ exactly?

development tools

why youā€™d look at tools from one vendor & not another
why youā€™d pick one tool set for a language over another

basically if YOU had to set a company on a path where they are going to write & maintain the software they use to run their business (its ALL internal use only) what criteria would you use to winnow the plethora of tool choices down ?

What items would you need to know tp help you even start to winnow that list down ?

Sorry, Iā€™m feeling a little clueless. Like IDEs or languages or ?

A decent editor with built-in debugger (VS-Code hits that spot, but not for Java)
Great for Node.JS
Mobile: Flutter (check out FlutterFlow if youā€™re looking for a more visual design option)

Wouldnā€™t it just depend on what language you choose as to what tools you would use?

I chose Visual Studio at first because I was using Windows and Visual Basic was easy to learn. When I needed x-plat I tried basically everything and comparing what they offered to VS, and frankly they all sucked.
Landed on Xojo finally and it was easy enough but Iā€™ve always pined for the days of VS. Keep hoping that one day Maui will be the answer but itā€™s a long way off.
I wish the ease of Xojo could be married with the power of VS. (VS for Windows I mean, VS for Mac is a complete joke)

The language hasnt been settled on
And, IMHO, thats only one of many many criteria

Maybe I worded this badly ?

Iā€™m really thinking of if YOU had to select a toolset for a company to begin writing and supporting their own apps internally what criteria would you consider important in selecting a vendor & toolset?
Does the size and stability of the vendor matter ?
Does the # of available consultants/contractors/local talent pool matter ?

Criteria well outside of ā€œare you going to use C#, PHP, etcā€

This is for a small but growing enterprise

Doesnā€™t it start with choosing the language, though?

As far as vendors go, I will always go with the one with the best customer service. Typically NOT open source or free if itā€™s for business.

Iā€™d start by looking at:

  • Are the tools/language commonly used for things like what Iā€™m doing
  • Can I do what I need to do (if PDF output is a requirement, is it included or is there a 3rd party solution)
  • Cost of the tools/language (up front and annual)
  • How popular is the language (or can people be brought up to speed quickly)
  • How long the company has been around (and do I think theyā€™ll be around for the life of my project)

After I narrowed it down, Iā€™d see if I could download trial versions and play around with some quick projects. I might go poking around on forums to see what users had issues with and what support was like, both from the company and from the community.

I agree with everything Bill stated. And I would add:

  • If there are already other developers on staff, what languages do they already know? Is getting them up to speed on one they donā€™t know going to be worth it?
  • Even though you said desktop or web, I would rather pick one that can build for both and mobile also, preferably from the same common code base. You may not think you need mobile now, or that only desktop or web will handle it, but I guarantee that you will eventually need all of them in an enterprise setting.
  • Will you have to integrate with other systems or devices? How well does the tool handle that?
  • And to elaborate on Billā€™s comment on third-party add-ons - the more your chosen system has to rely on add-ons the less capable it really is. Having all the ā€œtoolsā€ built-in is a good measurement of the maturity of the product.
  1. A well designed language able to squeeze bits from the CPU and the host OS
  2. Backed by a professional and stable team who will be around for years
  3. It solves many targets (Windows, Mac, Linux, Android, Web, etc)
  4. It solves all my possible UI needs
  5. It has a great and large community
  6. it has a large public library of code contributions (many from the team who backs the tooling/language) that solves all the common problems as anything graphics, PDF, barcodes, compression, printing, networking, whatever etc
  7. It was embraced by large, medium, and small companies.
  8. Stable and It only gets better and gets more and better tools every year
  9. Itā€™s cheap.

If I would setup a company today?

  • IntelliJ Idea pro
    For java, JavaScript
  • Jformdesigner for desktop software
  • GluonMobile for iOS and android
  • Cuba Studio for Web Development
  • MplabX for firmware Development

Why? While that IS the environment I am running my company on. Reliable, stable, functional, professional

Ideally Iā€™d want to tools that can be replaced by other options. That immediately rejects proprietary platforms. Like FileMaker, Xojo, Livecode, etc.

After going thru the pain of FileMakerā€™s greedy pricing and Xojoā€™s mountain of bugs, Iā€™d want an open language where there are many IDEs.

Rickā€™s list above, immediately rejects Xojo and possibly FileMaker.

Thorsten mentions ā€œReliable, stable, functional, professionalā€. That rejects Xojo. FileMaker meets those.

So, I think it comes down to:

  • Picking an open language like C, C++, PHP, Javascript, etc.
  • Look at IDEs to find your top three to see if they support required targets.
  • Then see if a framework exists for what you need.

Thatā€™s essentially what I did after Tim Dietrich suggested using PHP but I had lots of doubts. That landed me on PHP to create responsive web apps using PHPStorm and Bootstrap. And I havenā€™t had a problem yet. :slight_smile:

I could ditch PHPStorm and use another IDE or just a text editor since itā€™s ā€˜justā€™ PHP. And it fits Rick and Thorstenā€™s concerns.

In no way. :smiley:

For me it fails 1, 3, 4 and 6

Exactly. I can ditch IntelliJ and use NetBeans or eclipse, I can ditch jformdesigner and use gluon scrnebuilder or eclipse designer or NetBeans designer. I can ditch mplabx and use clion instead and I can ditch even gluon mobile and use Codename one instead, I can even ditch Cuba studio and use vaadin or wicked framework. I am free in all cases

Funny, I guess that depends on your needs. each of those are yes for me and PHP.

Desktop with phpā€¦ hmmmm. Nope.

Php is for web lovely

Yes. I listed them. PHP is backend for web. Not desktop, not for frontend, not for mobile, etc.

ā€œā€¦ if they have the same requirements as meā€ ā€¦ PHP-tinted spectacles come to mind ā€¦ :roll_eyes:

Sounds like c#.