The two that seem to be the closest to me are Google's AppMaker (https://developers.google.com/appmaker/) and Bubble.is (https://bubble.is/). I call these two out because they both allow for coding when the "default path" runs into a wall, and both include more than just forms and tables. However, they both still have warts. Appmaker, for example, has a pricing model problem. It's $10/user (GSuite), so you can't use it to build anything that involves casual outside users, like an employment applicant tracking system.
The next tier down are somewhat similar products that have been around longer. Like Quickbase (http://www.quickbase.com/), Caspio (https://www.caspio.com/), Airtable (https://airtable.com/), Zoho Creator (https://www.zoho.com/creator/), Rajic (https://www.ragic.com/), and Knack (https://www.knack.com/). These all work great if the app you're making fits into their somewhat fixed view of the world, but hit a hard wall if it doesn't. Some of them also have the same pricing model problem I mentioned in the preceding paragraph.
The one I really thought was going to emerge as the market leader was DabbleDB. Sadly, Twitter acquihired them and shut it down. Here's one of the demo videos: https://www.youtube.com/watch?v=6wZmYMWKLkY It was very ahead of it's time back in 2007.
I can't remember if I learned that in a video or a post somewhere by Avi Bryant, though. I was really interested in Smalltalk in 2009/2010 and I remember seeing Dabble DB coming up a lot.
There's a button to view the transcript of the video too.
http://www.businessinsider.com/why-so-many-startups-are-bein...
I'll try to put the demos on the site by tomorrow.
It still cannot work with any third-party APIs though, but other than that virtaully anything can be built in a matter of a few hours (maybe a day or two for the more complex and large apps).
Also I've implemented implicit workflows, where what happens is defined in the forms based on what components are inserted into it. There isn't the traditional "when A happens, do B" kind of workflows. IMO the implicit ones are much more pwoerful and flexible.
You can check it here (demos coming soon, currently one one basic tutorial): https://www.formbolt.com
Heads up: Youtube video on https://www.formbolt.com/demos/walkthrough/deployed/ is broken on Desktop Safari Version 10.1.2 (12603.3.8).
On creating an app (locally), app error-ed, but the app was visible after refreshing the page, (sorry I couldn't replicate again to get the exact wording).
Might want to add "chmod +x" to the README for non-technical users.
You might want to link to the apps over at localhost:3000 from the app blueprints table.
Loved the:
- single binary deployment - creation of db using the master pw - the fact that the data is stored locally and is kept in the db if I ever decide not to use the app
Cheers,
Marcus
There's MS access of course https://products.office.com/en-au/access
Open Source
LibreOffice Base https://www.libreoffice.org/discover/base/
Kexi https://www.kde.org/applications/office/kexi/
Gnome DB http://www.gnome-db.org/
Lazarus (better for programming, worse for DB) https://www.lazarus-ide.org/
Web based Oracle Apex https://apex.oracle.com/en/
Google AppMaker https://developers.google.com/appmaker/ ($10/user, only paid users can access app)
Bubble.is https://bubble.is/
Quickbase http://www.quickbase.com/
Caspio https://www.caspio.com/
Airtable https://airtable.com/
Zoho Creator https://www.zoho.com/creator/
Rajic https://www.ragic.com/
Knack https://www.knack.com/
Other desktop apps FileMaker Pro http://www.filemaker.com/products/filemaker-pro/ (predates everything else in this list, beautiful, if somewhat limited, app)
Embarcadero (Borland) Delphi https://www.embarcadero.com/products/delphi
DataFlex http://www.dataaccess.com
Really more programming frameworks, but sort-of fit the bill Python Django https://www.djangoproject.com/
Ruby On Rails http://rubyonrails.org/(Although perhaps with the same note as Lazarus - fundamentally, it's a [Python!] programming environment with a DB attached, rather than a DB with a programming environment attached.)
It was a disaster and none of those 4GLs are around anymore. There is no interface that's as easy as sending an email to a developer saying "I need an app that does this..."
I know that I've sat down to learn access (and later LibreOffice Base) but by the time I start into it I just think "there's really no advantage to using this over just mysql and a web page front end" and stop learning.
For a front office/business person who doesn't do IT as a full time job but has a reasonable grasp of technology, they can create something "good enough" quite easily, without having to go through the whole Corporate IT process.
This is also why Corporate IT doesn't like the Front Office getting Access, as they still ask for support when their home-brew app goes wrong.
The Access contraption then gets an ODBC backend to a proper database. Then parts of the Access Visual Basic spaghetti get ported to PHP. Other parts get ported to JSP. It ends up getting entirely ported - but for lack of budget for a full rewrite, the previously developed JSP parts are preserved. The whole thing doesn't take advantage of contemporary UI patterns because it closely matches the design of the original Access database. I'll spare you all the episodes of crippling slowness and the data corruption catastrophes that triggered each improvement increment.
On the other hand, the users managed to build themselves a serviceable tool when the IT wouldn't even speak to them without a ten-months project - and then they foisted it upon IT... From their point of view the ugly ten-years journey has been a success !
You end up with a large number of autonomous, undocumented systems built on an ad-hoc basis by personnel who were often not even in a technical role.
Personally I think that sounds like a great way to leverage the domain expertise of lots of different employees...but I guess it can become unwieldy. I know I saw some amazing things built with Access back in the day...
In a large organization, supporting disjointed business processes (or worse, fragile amateurish integrations) costs more than the software. At scale, consistency matters more than performance variance in some areas.
Access is also a nightmare from a security standpoint. AFAIK that's why it was abandoned; there was no way to keep the functionality and easy defaults that users liked while making it secure. It scares companies shitless to have critical financial data sitting in Access databases...
Its really hard to know, in advance, which internal applications are worthy of a development team. As for nightmares... there's plenty to go around for everyone. Some of the worst nightmares are created by large teams of highly paid and skilled developers.
Sticking that above my desk
This is one reason why (I guess) largish companies even have or create apps to manage other apps - like an app to manage (as in know about, not really manage as in monitor) all the other apps in the company. Like a list of apps app. Initially I wondered whether it was overkill but later realized that at that scale, such automation can be useful. But I guess it can go to the other extreme too and become a time sink.
They initially started when ops teams were told a custom report for a client would be too expensive/slow to build properly by tech, so they would DIY a report in excel.
These started to get out of hand, and after a few years they numbered in thousands and had evolved from excel sheets with macros into full fledged Access DBs with ODBC connections into our data warehouse. A specialist team was created in Ops to build and support ever more complex UDTs, they were called the UDT Team.
Problem was that these were poorly documented and often done without consultation with Tech, so we would unknowingly break loads of downstream stuff whenever we embarked on new projects of our own.
Fun times. Plenty of stories.
My job was to get them y2k compliant and then start modernizing them.
Here is how the modernizing went. I was told to upgrade them from Access 2.0 to Access 2000.
Everyday users sucked down data from Oracle to run queries and processes that I developed. Users had access to everything, so a user could modify one of my queries. When it broke, I had to remember what the original query was. I did this by always housing a copy of the Access database on my local machine.
Every Tuesday Payroll was run at 5pm. Guess what? Every Tuesday I was there until 11pm as something always went wrong in the process. There were these misc pieces of compiled code other developers had written that nobody know what it did or had source for. Example: one developer wrote a piece of code in QBasic, compiled it and made it part of the process to strip out white space from data that was read in via a text file. He lost the source. When there were problems with this step he denied it was his code. Every database used this piece of code and everything broke.
I digress. I loved Access for what I could do with it. It served a purpose. It wasn't the best but it is what I had to work with to put food on the table. Now-a-days, using tools like MySQL Workbench and TOAD give me some of the same sense of creating views and queries to re-use but obviously these are not replacements for everything Access allowed you to do.
Most of the common problems that people try to solve with their own custom solutions could be better solved by some off the shelf SASS solution.
HR, Payroll, inventory, ordering, dispatching, security,
All of those problems could be better solved with a cheap off the shelf "small business solution" that would probably cost less and be more maintainable in the long run
I've been developing professionally for over 20 years and if someone offered to pay me to write a custom solution for any of it, I would direct them toward off the shelf solutions. There is no way that I could develop something as well as a company that specializes in those areas.
> ... a simple platform for creating CRUD apps. It doesn’t seem like an unachievable goal to me: you need the ability to create forms, design database tables, manage user permissions, manage data workflow (ie: send an sms if <condition>, seek approval from <user role> for <action>), and view/search data.
That's actually a tall order that you're asking for.For the most basic needs, Excel with macros and connections to data-sources like csv files is perfectly adequate. But you want multiple users, multiple forms, data workflows...
In the microsoft ecosystem, the next step up would be using .NET entity-framework with a database like sql-server express (or even localdb). Your application would then consist of a C# or VB .NET desktop application using wpf or forms.
I think you want something in-between Excel and a full blown .NET application. That's a pretty narrow market.
“Every Access project will eventually fail because, while 80% of what the user wants is fast and easy to create, and the next 10% is possible with difficulty, ultimately the last 10% is impossible because you can’t get far enough underneath the built-in abstractions, and users always want 100% of what they want.”
This is why the product I'm working on, Fieldbook (https://fieldbook.com), avoids the “app builder” approach and focuses on just being a spreadsheet-like information tool that supports querying and relational modeling.
Some of these clones will have a DB CRUD language similar to the original dBASE, some of them might have SQL support too. I know that some years ago, many of the dBASE competitors (and dBASE IV or V itself, plus Foxpro) had somewhat decent SQL support (though not with all the features of a full-fledged RDBMS).
Some medium to large LOB apps have been built with XBASE tech too, in the past. I worked on a somewhat big one several years ago, for a switchgear products company. It was like parts of an ERP. It was in Foxpro for Windows on Novell Netware, and we used the SQL in it heavily. I remember writing tons of SQL reports near the end of the project (after the other CRUD work was done), and getting a bit bored with that at first, until I worked out that there were some patterns of permutations / combinations in the kinds of reports needed (by country, by region, by product category, by product accessory, by date, by order's commercial terms, etc. etc.), and then enjoyed the work a bit more, by working out how to do it systematically, changing one parameter at a time, so as to reuse as much of the previous report's SQL code as possible :)
1) I didn't know that Filemaker was still around.
2) I didn't know that it is an Apple subsidiary.
3) Pity there's no Linux version, I'd use LibreOffice Base if you're in Linux as someone else here has pointed out.
I ended up doing an Access database and created a few forms on top of it, including automation for automatically exporting order forms as Word documents. There were a few gotchas in writing VBA but overall the process was easy to pick up and be productive quickly.
Further down, someone mentioned that a big problem with Access is the proliferation of "autonomous, undocumented systems" built by different teams. I think we shine here - since we're web-based you can host all your forms on one account. In addition, you can share specific create/read/update/destroy permissions with any other organization on the platform - we want to make data exchange painless.
Very easy to use and you can create basic applications without additional programming. Although of course it helps if you know how-to write code.
There's an embedded database that you can use out of the box. But you can also use any of the main SQL Database engines.
For building commercial applications you have to buy a developers license.
For building your own non commercial applications you can use their free personal license. [1]
Disclaimer: I use the language professionally and run an open source website that has free tools and code examples in DataFlex.
[1] https://www.dataaccess.com/Resources/Licensing/DataFlex-Pers...
Had no idea it was still going.
30 years ago there was only console mode, albeit in different flavors (unix/DOS). Nowadays the main product is Windows oriented and also has a Web offering. You can still buy a console mode linux version, but it hasn't had updates in over a decade. Yes it runs and works on recent Linux versions, no I would not recommend spending any money on that.
Your 30 years old data files however could still be read. You might need to migrate it to a newer format if you want to extend and change things, but it would still work.
At ClojureNYC last night I gave a talk about literally this! Here are the slides: https://github.com/hyperfiddle/hypercrud.browser/issues/4
As an aside, do you think traditionally built apps should be moving away from SQL and towards immutable stores like Datomic?
Many alternatives were had as a replacement for one of the apps in MS Office. I did test out LibreOffice's Base. It did not seem to be a proper alternative for the purpose of making a standalone application. The whole application in 1 file.
Access has flaws too in terms of backing up data. That is the biggest drawback and in the web era, Access seems like a relic. VB6 has limits in terms of making a full fledged UI. But it is functional.
The closest successor i think would be a SQLite+electron app. I have not worked on it to see how it will turn out.
Something like Access is, pretty strictly, a small business play. When you move into the "medium" part of SMB, they are probably going to have complex enough needs that Access isn't going to cut it.
I'm guessing that you can make the small business market work, when it's an add-on to the medium-sized business market, but that it doesn't really work well by itself, at least as far as technology companies go.
Can anyone think of any technology companies that have done well, while focusing on just small businesses as customers?
Building apps with clicks not code is the utopia these people are seeking, so the vendors will do everything they can to appeal to that.
There are literally heaps in this category, but one that really started it all is Salesforce and their force.com product, they are selling the dream like no-one else.
More frequently coming up now is MS PowerApps and MS Flow coupled with either SharePoint lists or Microsoft's Common Data Service because they are included for free in the Enterprise Office 365 SKUs.
Dynamics 365 offers a lot in this space but is more pricey (the $10 team license is good value though). Zoho Creator is another example too.
We value as much feedback as possible. Single user is free, and we are completely flexible on price - we just would like to see more people using it.
It is loosely inspired by Trello.
For small-ish companies that aren't very technical, I would think the Office suite still has a strong attach rate. Regardless of whether or not Access is the best tool for the job, inertia is powerful.
The company behind Magic was an Israeli one, Magic Enterprises, IIRC.
Update: I googled, this is their site:
magicsoftware.com
and they do have a free/trial version. Will check it out a bit later.
Airtable has forms https://support.airtable.com/hc/en-us/articles/206058268-Gui... but it doesn't have the same UI form builder kind of thing.
These type of softwares are now increasingly known as BAAS - Backend as a service. You can also find other similar products on the github readme.
This is still in development, and I am using this as backend for two of my other projects. The goals are similar to what you have written, plus more.
Don't let the sales, marketing, and services part distract you.
it has plenty of rough edges but has a solid relational model and is fun to use.
my only complaint is that api access is really expensive (making it cost-prohibitive to most HN readers) but the main product is cheap/free.
Great product.
http://www.matssoft.com/product/
Doing well in the enterprise sector in the UK. Recently acquired, though for relative peanuts:
https://www.youinvest.co.uk/articles/stockmarketwire/123954/...
Then again, I tend to be very skeptical of such tools, having seen them in action in the 00s, where they were very poor as a medium/long-term solution that ultimately hindered, not helped.
Every day, some random employee starts tracking items or documents in Access as a personal tool, and then more people in the organization hear about it, features get added, and then the company starts running on it, then it begins to fail and they migrate over to a 'real' ERP system.
Started as a Mac only RDB in the '80s. Now runs on Mac and Win, as a single user, from a server, or can be compiled as a standalone app. Rich development environment, includes web server, PHP, SQL and a lot more. There is a small but vibrant community of developers but is accessible to anyone with some technical experience.
But honestly this whole thing has moved to the web these days. Something like Django is probably the easiest and fastest way to do a CRUD app these days.
Pretty much a FileMaker light. (same company)