Finer Faster FileMaker Precision: Measuring How Long It Takes

I often like to measure performance, because I am curious if some small change can lead to subtle, or maybe not so subtle, improvements. For the longest time my Swiss Army knife for measuring Claris® FileMaker® performance has been:

Get ( CurrentTimeUTCMilliseconds )

Continue reading “Finer Faster FileMaker Precision: Measuring How Long It Takes”

The Benefits of Automated Testing

Software changes over time. Your company’s web site this year does things you had no idea you needed two years ago. How can we keep the cost of change manageable?

Automated testing is one way. Especially for large software projects, the practice of automated testing can dramatically reduce the cost of adapting software to new business necessities.

Continue reading “The Benefits of Automated Testing”

OOP Fundamentals: Quick and Dirty Guide to Testing

There are entire books written on testing. And it surely feels more an art than a science. My approach is similar to Kent Beck’s:

I get paid for code that works, not for tests, so my philosophy is to test as little as possible to reach a given level of confidence (I suspect this level of confidence is high compared to industry standards, but that could just be hubris). If I don’t typically make a kind of mistake (like setting the wrong variables in a constructor), I don’t test for it. I do tend to make sense of test errors, so I’m extra careful when I have logic with complicated conditionals. When coding on a team, I modify my strategy to carefully test code that we, collectively, tend to get wrong.

https://stackoverflow.com/a/153565/1015566

He goes on to add that different people will have different strategies and, at the end of the day, you just have to do what works best for you and your team. Extremely practical, and the approach I personally follow.

This won’t be a detailed post on every possible topic on tests and testing in Object-oriented Programming (OOP). There are many books about that already. Instead, this article will cover the basics of testing, so you understand how and why we test, and you can adapt it to your own needs.

Continue reading “OOP Fundamentals: Quick and Dirty Guide to Testing”

FileMaker Performance on Apple M1 | Astounding!

When the Apple silicon Macs with M1 chips came out, I read and watched many of the reviews. Most of them had great things to say about the promise of Apple’s new M1 chip…I was impressed. When I finally received my Apple M1 MacBook Pro, and started to use it…I was amazed.

Back in 2020, FileMaker Pro 19.2 wasn’t optimized yet for Apple silicon processors, but ran fine under Rosetta emulation. On my M1 MacBook Pro, it already felt much faster than running FileMaker “natively” on an Intel-based MacBook…I was astonished.

Today, I’m running the just-released Claris FileMaker® 19.3, with native support for Apple’s M1 chip, on a new MacBook Pro. It is, in a word: Astounding!

Continue reading “FileMaker Performance on Apple M1 | Astounding!”

How to enable WebKit and JavaScript debugging in FileMaker Web Viewers

FileMaker supports bidirectional communication between a web viewer and data or scripts. So, you may find yourself doing more development using plenty of web code and JavaScript integrations.

If you’re having difficulty getting your HTML, CSS, or JavaScript to render in a FileMaker web viewer, there’s a great way to help inspect and fix it. You just need to know the hidden option to enable WebKit debugging in FileMaker web viewers.

Continue reading “How to enable WebKit and JavaScript debugging in FileMaker Web Viewers”

Beezwax Web Team Code Review: a blog post with ulterior motives

I have ulteI want you hacking, at Beezwaxrior motives.
Continue reading “Beezwax Web Team Code Review: a blog post with ulterior motives”

Dependency Injection in JavaScript, a Node.js example

As developers, we are tasked with reducing complexity. Complexity is all around us, and good code organization reduces complexity while at the same time supporting increased flexibility, ease of change, quicker onboarding, faster debugging, and my favorite, better testing.
Continue reading “Dependency Injection in JavaScript, a Node.js example”

Speeding FileMaker Performance with Truncate Table

Managing Data You Use and Throw Out

We develop FileMaker applications because we want a place to store information for the long term. We track events, tasks, contacts, finances—FileMaker can track almost anything. To update information, the application might ingest a spreadsheet.

Continue reading “Speeding FileMaker Performance with Truncate Table”

A Use For Git’s Post-Commit Hook

[Authored by Sam]

I love git and I love to be lazy, so lately I’ve been playing with git hooks.

Git’s default pre-commit hook is really handy, but today I’m in more of a post-commit kind of mood.  Like all git’s hooks it comes with an example script.

Continue reading “A Use For Git’s Post-Commit Hook”