I can explain a unique advantage to adopters of the FileMaker platform and something of an "open source" concept.
A timely example of an issue occurring as I write this post is a somewhat popular sign shop SaaS has just now learned it would be a good idea to place the project's due date at the top of the form. So, "off to the programmers" to make it happen. Mind you, the is software used by graphics professionals.
With open source, if I have an issue and I have the ability to make the changes (and it's not something that really needs to be committed back) I can just make those changes. No "off to the programmers".
In the meantime, it's been a common practice for FileMaker developers to enable, and "open," the ability for users of a solution to make such graphic and layout object modifications as the user sees fit. It enables the ability for
permitted users, and graphic users especially, to layout their own public facing invoices and such to incorporate their unique branding, etc., without the need to send the task to developers. In the case of look and feel, FileMaker's layout tools are just a subset of what every graphics person already know. Other tools such as field and scripting can be opened to
permitted users also.
Maybe appreciate the position of the due date and overall details of the order form from generations ago and even before FileMaker was much of a thing...
View attachment 169051
A
What exactly is meant by "permitted users"? Only a subset of the user base is given this ability to make changes on their own? After being vetted or something?
One method that I use for quick UI prototyping for MVP is using frontend and having C/C++ in the backend (this one particular library could also use TS/JS for the backend as it has a Deno wrapper as well, so can still use high level languages, and I think it has a Python wrapper, but I would have to look to make sure).
Now, I use a text editor for my editing (neovim specifically) work, but most people on here would have Dreamweaver I suspect and that would enable a more drag/drop approach for the UI. Just would have to tweak the id="foo" for the frontend/backend communication. Or could actually use something like Inkscape for this as well and just use SVG for the UI (SVG is web centric after all, but I would suggest Inkscape versus Ai/Draw for this type of work how Inkscape handles markup (or rather just ignores markup it doesn't recognize, compared to Ai/Draw deleting said markup)).
I must say though that I lose a piece of my soul every time I do this, while the binary is smaller compared to say Electron and it doesn't spin up a new Chromium instance each time, it still has a heavy RAM usage due to it using the system browser install. If that is too much of a hit for the program, I'll move it to OpenGL (maybe have to in the future go to Vulkan though, depends on if OpenGL is ever removed) or if it doesn't have to have a GUI, I'll go with something like FTXUI(C++) or Ratatui (Rust), just depends on what language I'm using as well.
Bare in mind, I'm more artist first and coding (outside of C/C++ back in highschool) mostly self taught, (why I mainly just do inhouse) is mainly for inhouse tooling. I mention that just in case anyone might think that this is beyond their reach, it is not like it once was (for better or for worse).
Shoot even using a game engine like Godot is easy enough as well and it has a built in UI drag/drop functionality in it's own IDE as well. It does have a low processor mode, so it's possible to do better compared to the frontend for UI, just have to make sure to keep using signals/slots versus doing things in the "game loop". Another nice thing about Godot, is it was actually designed for artists to also be able to easily code their games. So if that is something of a concern, keep that in mind as well. It is a game engine, but bare mind, games are just applications in the end and they have UI concerns as well. There have been commercial and open source applications written in Godot.
Now, granted, I am wildly adverse to SaaS and I try my hardest not to be as dependent on other peoples software that if they were to disappear tomorrow, I'm out of luck (which while open source projects could stop being maintained, that doesn't actually mean that I am not able to use it or limp it along for my own usage). I'm perhaps totally extreme compared to most, so there is that.