Best database program?

But of course, a person is just a mammal – and a mammal is a subset of animals, which are members of the kingdom of Animalia. At least, on earth; we may soon know of other kingdoms of life on other planets, so probably best to start with the planet…

And then it’s turtles all the way down!

More seriously, I used to worry a lot about normalizing everything. Then I talked with some people who used databases much more extensively. They argued that at a certain point, for most projects – especially relatively small-scale projects that aren’t likely to be expanded dramatically over time – the mental and design overhead just isn’t worth it.

Where that point is – well, that’s where expertise and experience come in!

2 Likes

Yep, I just spent several hours to try to find the details but that is my memory too.

FWIW If anyone wants to continue this conversation (which I would LOVE to do) I will give access to the details of my current (still in flux) database design docs. I have no one I can talk to this stuff about in a civil debate where we hash out the pros and cons of any particular structure and would really benefit from more conversations about this.

Right now the number of flocks using the old Lambtracker database schema and code can be counted on one hand. I already have more AnimalTrakker users in 9 months than I had of LambTracker users in 10 years.

Clearly AnimalTrakker is solving a need that LambTracker did not.

I need to make it better.

I think David_Roper might be one of those experts. :wink:

2 Likes

Somebody’s about to step into the thread with a “I helped build X DBMS”, I just know it :smile:

1 Like

Which should be followed by an immediate confession “and made many mistakes in the data scheme, which we are still ironing out after years”. :smiley:

6 Likes

It appears that Apple is going to give us a freemium version of Claris Pro (formerly FileMaker Pro) that is good for one user. This is exactly what I want, since I spent well over a decade at work with Filemaker, AppleScript, Photoshop, etc. automating my photo workflows. When I retired, I just couldn’t justify keeping FileMaker Pro up-to-date. Can’t wait for this new version to arrive this Fall.

At the other end of the cost spectrum, folks on this thread might be interested in Collections Database, which is free to download. The free tier is generous, then it is a $4.99 one off in app purchase to unlock certain advanced features.

I found it when I was struggling with AirTable’s clunky user interface. It is a universal app across iPhone, iPad and Mac. The UI is the same on all platforms so things like the settings menu look much more at home on the iPad, but even on the Mac it is a vast improvement over AirTable.

While the focus is obviously at a consumer level, the features list is impressive (including formulas, cross linking etc). There’s a full list in this review. Syncing is via iCloud and I have had no issues.

It is a new app by a single developer, and I have found him to be incredibly responsive to requests for support or features.

6 Likes

Has this gone anywhere? I’d love to join the group as I’m in the early stages of a database / CoreData based project that could use another set of eyes.

Yes, lots and lots of useful converatiosn abut UUIDs instead of primary keys, moving to an Entity, Attribute, Relationship model and more. I sent a PM to you.

Yes, lots and lots of useful converations abut UUIDs instead of primary keys, moving to an Entity, Attribute, Relationship model and more. I sent a PM to you.

1 Like

a welcome addition, thanks

1 Like

May someone please educate me: what are the use cases for database software? I understand how things like MySQL and SQLite are valuable as additions to certain software, say Wordpress for example. But how could they be useful to non-software developer types? Growing up I fiddled with Microsoft Office on the family desktop, but understood Access to just be “the purple one”.

Frankly, not useful unless you want to step out and learn.

Software dev skills are not necessarily important but understanding data structures is.

Microsoft Access is good with plenty of learning resources, books, courses, etc. It can be used once experienced gained to work with MySQL or other SQL server databases, leave that to later.

2 Likes

I got the impression in other posts that you use spreadsheets. So you are halfway there in understanding that a database is software that you use when your data is too complicated for a spreadsheet to handle.

5 Likes

One use case is when your spreadsheets get too big or too complex to work well. For example, you’re trying to pull data from multiple sheets, or the numbe of rows and columns gets so big that it slows the spreadsheet app down.

Another benefit is reproducibility. Spreadsheets are fast and capable, but changes and errors can be hard to spot – if someone sorts wrong (selecting only some of the columns) or copies and pasted carelessly, or just fat-fingers a cell (adding a zero or two?), it can easily go unnoticed until too late. For example, a faulty cell range in an average() formula helped convince policymakers around the world that austerity was the solution to slow growth.

Many databases, by contrast, use SQL or another kind of written instructions to modify or analyze data. Those instructions get executed exactly the same way, as written, each time, and are fairly readable (once you learn SQL). It’s easier to see what you’ve done to your data, roll back changes, etc.

6 Likes

Okay now I’m intrigued. I’ve got a few projects in my mind that are relatively far off, but can benefit from the relationship between a spreadsheet and a database.

I’ve also got a copy of a book titled “Data Structures Using Pascal”. I don’t know Pascal. But it’s a whiff that I can start from, I reckon. Thank you to you, @karlnyhus and @tf2 for the explanations.

I’ve heard of that book and probably gives a great start. But I would recommend not getting too deep into using Pascal for lots of reasons. Getting to understand one-to-many relationships is a great start with data analysis, and also keeping in mind your objective, e.g. as explained many places… I found A Step-by-Step Guide to the Data Analysis Process [2022] at the top of a “interweb” search.

In the 90’s I used Microsoft Access extensively as it has it all for quering and reporting (but I made little use of their VB all that time), then after a sojourn from data related work, when I came back to having a business need I parlayed that database structure experience into still using Access for the front-end but kept data in SQL servers (or wherever it was). Following that, started using Python with Pandas to automate working with the data. Now I’m finding that I’ve again moved on and for analaysis on data that I get from out on the “interweb”, I still rely on Python/Pandas but “R” taking on a role too. Both are supurb tools unavailable when I started doing data number crunching. So much to chose from. Best not to conflate “database structure” with “programming tools”, though.

To start, learn about relational data modelling (one-to-many, lookup tables, many-to-many, inner and outer joins, foreign keys, etc.). Probably covered in your book you have, but many books and “interweb” sites available to help with that.

2 Likes

I used MS Access to create a fully working prototype of a solution to a big client. It was mostly meant as a proof-of-concept type of thing, to get accept on the basic functionality and general UI, before re-writing it in more of an enterprise grade tool.

So, the demo happened and the Access file was handed over. We didn’t hear back.

About 15 years later, I bump into an old colleague - “you know that Access database you wrote? We just pulled that out of production about a year back and replaced it with a new thing.” :slight_smile:

This just to say that Access certainly can be “good enough” for lots of use cases too.

3 Likes

Yea, I heard that a couple of times …

I have always pondered how to actually buy Access. At one point it was part of Office but licensing or buying it currently is somewhat of a mystery - including where/how to host apps that you build.