The dependency inversion principle is one of the cornerstones of object-oriented programming. Without it, there is no object-oriented design. It’s that important.Continue reading “OOP Fundamentals: The Dependency Inversion Principle”
We are pleased to release bBox version 0.96, with JSON processing via jq, Python 3 compile/run, and improvements supporting Zsh, cURL and Ruby.
Windows Subsystem for Linux, or WSL for short, is a quite impressive piece of technology, and one of the best moves Microsoft could have made to attract developers. Particularly web developers.Continue reading “Integrating your dev workflow with WSL”
What is nothing?
undefined? A vast void of emptiness that fills your soul with dread? Oh sorry, that’s just my stomach.
We often think of nothing as… well, nothing. It’s when something doesn’t exist and therefore cannot be interacted with. So in our code, we try account for having nothing. No
User? No problem.
FileMaker 19 introduced a couple of important new features related to using the FileMaker Data API. Here, we’ll cover an overview of the new authorization endpoint,
Validate Session, API versioning updates, as well as a new script step,
Execute FileMaker Data API.
At the end of this article, you’ll find the demo file for learning more and trying out various REST and cURL functionality with FileMaker’s Data API. Enjoy!Continue reading “Using REST and cURL with FileMaker 19’s Data API”
Editor’s Note: An often-ignored reality of data management is that entering data, correctly and cleanly, into all of these database apps we build can be a royal pain in the…
Assumptions can be dangerous, like assuming that your office manager-doubling-as-bookkeeper wants to manually calculate tax on every Invoice row. Or even has the time to.
Not many job titles (anymore) are simply “Data Entry Manager,” and yet entering data is a task that continually must be managed, by one or by many, in the role of “Inputter”. Just entering data can be tedious enough — so, let’s not make it harder. In fact, let’s strive to make it easier. With that in mind, Beezwax Senior Developer Christos Savva provides an example of performing math in a FileMaker field, using a custom function. This is designed to improve data entry user experience, for the sake of Inputters everywhere.
Ruby devs are probably all too familiar with seeing this error:
NoMethodError (undefined method `foo' for nil:NilClass)
Most of the time, it’s probably due to a typo, but every now and then we end up having to do something like:
defined?(bar) && bar.foo # returns nil if bar is nil
If you’re on Rails, or are using ActiveSupport, you can use
FileMaker 19 introduced support for Dark Mode. Not only does the application’s chrome support Dark Mode (like many applications), but developers now have the ability to detect the OS Dark Mode setting.
Let’s look at three easy techniques to give FileMaker Pro users a choice between Dark Mode and Light Mode, plus an option to automatically adapt modes based on OS settings.Continue reading “Dark and Light Modes: 3 Simple Paths to FileMaker UX”
We had a client that was upgrading their system to FileMaker 18. They had already pushed new FileMaker Pro clients out to their user’s desktops. But now that the upgraded system was ready, how could they give users a quick and easy way to launch right into the new database system?Continue reading “Setting FileMaker’s startup file from CLI”
Using the FileMaker platform we can harness the power and wow-factor of modern web interfaces. This post shows how we can build dynamic data-entry forms for use in our apps.
A longtime enterprise client recently asked us to integrate a FileMaker Server with an Oracle server. No problem, right? This task requires some development to optimize the database schema and script the data sync, but using FileMaker and an ODBC driver to connect to Oracle is straightforward.Continue reading “Connect FileMaker Server to Oracle Server and Oracle Cloud Using ODBC and TCPS”
Over years of reviewing Ruby code, the same things tend to come up over and over. In this post, I’d like to address some of the most common code smells I find when reviewing OOP code (and Ruby code in particular).Continue reading “Common Code Smells in OOP”
Besides using its own internal accounts, FileMaker Server supports centrally managed authentication using directory systems such as Active Directory. Using these systems can help control access to both FileMaker Server’s admin console and database files.
If you are using directory bound servers already, you’ll often want to add access to a FileMaker Server’s console using directory groups instead of adding in specific users. Previously this was easily done with either Workgroup Manager (no longer supported on macOS), or the Server application (still viable, but just in a vestigial form).
Here I’ll show how you can do the same thing using the dscl command.Continue reading “Use External Directory AD Group for FileMaker Admin Console Access on macOS”
Doing the simple is hard. Someone recently reminded me of this when discussing business workflow. Tasks like scheduling, calendaring, communicating and sending notifications are individually manageable, in a world where tools for these tasks exist online. Calendars, email, databases, Slack, and a collection of other apps and services make this possible.Continue reading “Claris Connect in action”
When I am working in the Bay Area, I often carpool to Beezwax’s Cupertino and Oakland offices with Vince Menanno, the creator and lead architect of InspectorPro. Over two years of commuting, I have been bugging him to add global search to InspectorPro, so FileMaker developers can search elements across the entire DDR for any solution. Vince must have gotten tired of my nagging, because at long last we can all enjoy this functionality, in InspectorPro 7.
Dear InspectorPro: Can you show me a report on the container fields used in my FileMaker solution, with a list of all externally-referenced vs. internally-stored (“embedded”) fields? Sincerely, Thanks in Advance-d.
Hello again from Tableau Conference 2019 in sunny Las Vegas! Here at Beezwax, we had 5 attendees this year with a diverse set of sessions between us. I wanted to give a rundown of what I went through and some of my takeaways.