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”
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”
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”
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”
I have ulterior motives.
Continue reading “Beezwax Web Team Code Review: a blog post with ulterior motives”
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.
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