This series started as a few posts on our internal blog and eventually became my DevCon 2017 session, What Works – Increasing Code Quality While Staying Lean. I started these when we were bringing on a new employee and felt the need to document some of the reasons we were successful. With so much interest in the DevCon session, we’re now making the original posts public: this will be the first of four. These tactics have made a big difference for SeedCode and I hope you find them useful. – John Sindelar 

Introduction: Increasing Code Quality While Staying Lean

The strategies we’ll be talking about in this series apply to projects of every size. In addition to building products like DayBack, SeedCode does a ton of custom work: from 3-hour mods to help someone implement a cool feature, to multi-year, 10,000-hour projects. We use the same techniques for projects of both scales. And that’s part of the secret: to run the big ones like a series of very small ones.

Read Full Article →

The new “Daily” resource view creates a grid: you’ll see your days down the side, with your resources (people, trucks, processes, etc.) across the top. This makes it very easy to scan for gaps and view a whole month at a time, comparing your resources’ schedules side by side.

Here’s a quick demonstration of the new view in action:

Add this to your copy of DayBack by clicking Account Settings (on the Settings tab), then “Check for Updates”. (New to in-app updates? See how they work here.)


The latest in-app update to DayBack adds a text filter, making it really easy to focus on just a part of your calendar. The filter searches against any fields you’ve included in the calendar and works across all your sources.

Here’s a quick video of it in action:

  • Focus on just your meetings
  • Show all the tasks, events, and milestones for a single customer
  • Make and share project-specific schedules

Click Settings / Account Settings, then “Check for Updates” to download this update into your copy of DayBack.


New to DayBack? Download an unlocked trial here

Update: the video of this session has been posted. And we’ve started to publish the original blog posts this was based on, along with things we’ve learned since: What Works.

A big thanks to everyone who came to my DevCon session, and especially to those who asked questions! It was great getting to share some of the things that have made a big difference for SeedCode–I really hope you found it useful.

As I mentioned in the intro, this came out of a series of blog posts we wrote as KC was joining the company. We wanted to capture what was unique here (and what was working) so that we could pass that on to him, and we ended up with this pretty cool playbook for how we go fast. A recording of the session should be up soon. In the meantime, you can find the slides on the FileMaker Community or on Slideshare.

Read Full Article →

The new FileMaker 16 card windows give you some great options for integrating DayBack Calendar with your other layouts. Here’s a short video with a few  examples of what you can do:

Why Card Windows?

Card windows let you see the calendar in the context of decisions you’re making on other layouts. They make it just a little easier to check your schedule. And you’re much less likely to over promise or over extend yourself if you can make your plans with a clear view of your existing commitments. This is why we built DayBack in the first place: to help folks rein in their schedules and defend time for what’s most important.

Another great feature of these card windows is that the layout targeted by a card doesn’t need to be in the file you’re using. So just as you can show a “regular” window from another file, you can show a card window using a layout in another file. This means you can do the (simpler/faster) linked file integration of DayBack, and still have the calendar feel like it’s really part of your main file.

Using FileMaker 16 Card Windows in Your Calendar

The card behaviors shown in the movie above are really easy to add to your file. Here’s how to get started:

1. Download the card window example file here: DayBack_CardWindowExample.fmp12

2. Copy the new folder of scripts: “Card Window Example” and paste it into your copy of DayBack. If you linked DayBack instead of embedding it, you may want to past some of these into your file as well, notably “Launch Calendar As Card” and “New Event for Contact – card window v1 or v2”. These scripts call other scripts in DayBack so you’ll need to repoint them when you paste them into your own (not the calendar) file.

3. In DayBack, edit script “Load Calendar Layout” to add a 0 second pause at line 12: you’ll see an example in the same script in DayBack_CardWindowExample.fmp12

4. Edit the DayBack script “Show Event Details From WebViewer”.  Change line 27 to call the new card window version of our “Draw new event window” script. This will use card windows instead of floating windows for events you access using your own layouts. (See the DayBack_CardWindowExample.fmp12 file for an example of this script.)

5. Edit the DayBack script “Create Edit Delete Event…” and add the new lines 36 through 39 used in our example file.

6. Add a new On Layout Exit script trigger to the Calendar layout. Use this trigger to call the script “On Calendar Layout Exit” from the new script folder you pasted in step 2.

That’s it!

This post will show you how to schedule GoToMeetings from DayBack Calendar using the new cURL and JSON functions in FileMaker 16, as well as how to do it in JavaScript if you’re using DayBack Online. 

Schedule GoToMeetings from FileMaker

Custom actions in DayBack let you add your own buttons to your events in the calendar. These buttons run your own FileMaker scripts and are a great way to extend the calendar’s capabilities. One great way to use Custom Actions is to interact with third party applications that have an available API (Application Programming Interface), like GoToMeeting.

Overview: GoToMeeting and FileMaker

I’ve been scheduling meetings in GoToMeeting quite a lot since I started at SeedCode. I’ve always done it manually, either by starting a quick meeting right before it was scheduled, or by creating it in the GoToMeeting app, copying that data into DayBack, and then sending the details to the customer.

Since DayBack is the shared calendar we use to manage SeedCode, it didn’t make sense to be duplicating work, both in GoToMeeting and DayBack. One quick search led me straight to GoToMeeting’s API documentation, so I set out to make some custom actions that would allow me to do all the scheduling, rescheduling, canceling and starting meetings directly in DayBack.

Here’s a video of it in action:

First: Getting an API Key for GoToMeeting

In order to permit DayBack to communicate with GoToMeeting, you’ll need to create a custom app and generate an API auth token. Both of these tasks are completed with your GoToMeeting account and are as simple as filling out a form. For more instructions on creating an app and generating your auth token, see the GoToMeeting API Getting Started documentation here:

Option 1: Using DayBack Online

Custom Actions in DayBack Online are written in JavaScript. The custom actions I wrote for GoToMeeting take advantage of jQuery and AJAX for the functions that communicate with the server.

Read Full Article →

The latest in-app update to DayBack Calendar lets you include more fields inside the calendar. This is great for cases when you have required fields or field validation that previously couldn’t be addressed by the default calendar fields. Having access to more of your fields means you can make more edits inside the calendar where things like option-drag make creating and duplicating events very fast.

These additional fields also show up in calendars you share with folks who don’t have FileMaker, delivering more information about each event.

In the screenshot below you’ll see four new fields added to DayBack’s “additional fields” drawer.

Create as many additional fields as you’d like and add different fields to events from different tables (different calendar sources).

Format your fields with fast entry options like drop-downs, date pickers. For details on all the field entry formats available, and for instructions on how to add your own additional fields, checkout the documentation here:

Additional Fields for DayBack Calendar

Don’t forget to make sure you’re using the latest in-app update to DayBack.

DayBack Calendar and all our shipping products work great in FileMaker 16. If you got a SeedCode app before FM16 shipped on May 9th, 2017 you may need to make a few small changes to bring it up to date. Here’s what you need to know:

DayBack Calendar: FM16 added a security option to the fmp:// url protocol that you’ll need to enable in your files. This is a very easy change and details are here: FMP URLs in FM16. Once you’ve made this change, any version of DayBack from 9.90 onward works in FM16. This might be a great time to make sure you have the latest version of DayBack as it keeps getting better with in-app updates: latest version. (Note that FM16 doesn’t print web viewers  any more so printing the calendar is now best done with screenshots.)

ProMaps: the map has the same url issue above: just enable the new extended privilege and you’re all set. We also introduce a small change to make the map work in Mac OS Sierra, so if you’re on Mac you’ll want to make the change described in version 1.053 here.

GoZync: we released a new update to GoZync and you’ll want to upgrade to this when you switch your FileMaker Go clients to FM16. Details and instructions are here.

SeedCode Subscribe: we stopped selling Subscribe in favor of of DayBack Online in August of 2016 and FileMaker 15 is the last version of FileMaker Server that we’ll support for current Subscribe customers. DayBack Online will let you publish read only (or read write) calendars in a much more reliable way and we’re offering upgrade discounts to all Subscribe customers. More info here.

We’re pretty psyched about FM16, especially the opportunities it provides for passing script parameters using the new JSON functions. That should make working in someone else’s scripts a lot easier.

FileMaker™ 16 introduces native JSON parsing which may finally give us a common language for passing multiple script parameters. This should make sharing scripts a lot easier. And while unpacking (reading) JSON script parameters is pretty simple, there are a few tricks to passing (writing) JSON using FileMaker’s new functions.

Overview: better script parameters

The new release of FileMaker 16 includes built-in functions for reading and writing JSON: a lightweight data-interchange format widely used to pass data around between web apps. This is why it was included in FileMaker 16: to complement the enhanced cURL support, but we can use it outside of a web context to make script parameters much more reliable.

(If you’re just looking for the example file, here it is: JSONScriptParameters.fmp12)

While I’m relatively new to FileMaker, I have quite a bit of experience with JSON. And, honestly, I found FileMaker’s JSON implementation to be a little quirky/unique. I would venture to say that I even disagree with how the very important JSONGetElement function is implemented. This brings me to the first, and most surprising, thing about FileMaker’s JSON implementation:

No matter what data type you pass into your JSON parameter, the result will always be returned as text by FileMaker’s JSONGetElement function. Note. As of 16.0.2, JSONGetElement now correctly returns Numbers and therre Booleans. It no longer always returns Text =)

Weird, but we can work with it. More on this later =)

We’re going to be exploring whether it can be beneficial to pass multiple script parameters between FileMaker scripts using the JSON as the parameter format. To review, passing single parameters between scripts is built-in to FileMaker, but once you need to pass more than one parameter, you need to come up with some kind of grammar in order to tell one parameter from another. And it would be good if your grammar understood blank parameters and didn’t freak out when your parameter contained something unexpected like a carriage return.

Currently, in order to pass multiple parameters from one FileMaker script to another, you can:

  • Create global variables, which is messy as they need to be cleaned up each time the script runs. Plus, they don’s span files.
  • Use Let() notation like(name = value ; name2 = value2 ;)
  • Pass a single delimited text string with each of your parameters in order.
  • Or use a custom function, such as fmpstandards’ #Name-Value.

Is formatting script parameters as JSON an improvement?

Read Full Article →

Easily Create Public URLs from your FileMaker Calendars

You can now easily publish and share calendars and project timelines with folks outside your organization who may not have access to your FileMaker solution.

The new “share” menu in DayBack will create a public url matching your view: shares can include events from multiple tables and respect your filters. What you see is exactly what gets shared.

Changes made in DayBack are automatically synced to that url so it stays up to date.

We love this new feature and are using it to publish our own schedules, including the agenda for the PauseOnError conference (see the schedule).


  • Share recipients don’t need FileMaker or a DayBack account to view your share. They just click on the url you’ve sent them, and they’re in.
  • Shares include DayBack-specific views like the horizon (gantt chart) and resource planning grids.
  • Changes made inside DayBack Calendar are synced to the share in realtime. Manual updates will sync changes made outside of DayBack (like changes made in our other FileMaker layouts), including records that weren’t part of the original share.
  • You can create multiple shares from the same calendar, sharing just a filtered subset of your schedule.
  • If you want to share read-write access to your calendars, recipients will need a DayBack Online account: here’s how to invite someone to your DayBack Online account.

More details are available in our documentation, including notes on how to restrict the creation of shares, and how to style your shared pages. Here’s a quick video of what sharing looks like in practice:

Get It Now

Sharing is available in the latest in-app update to DayBack. Details on how to activate sharing in your copy are here: enable sharing.

This is the easiest way to share your FileMaker events–easier than plugins, Zulu, or SeedCode Subscribe, as it doesn’t require you to install anything on your FileMaker Server, doesn’t require web publishing (so it will work in FileMaker Cloud) and doesn’t even require that you have FileMaker Server. =)

If you already have DayBack Online, sharing is a new benefit of your DayBack Online subscription and is already available in your group (or start a trial of 30-day DayBack Online here).

Please check it out, share your plans, and get everyone on the same page.


DayBack Calendar
DayBack's 30-day trial is unlocked so you can customize it and integrate it with your files.
Download DayBack and we'll send you a couple short emails with tips on how to modify it and use some of the coolest features.
Thank you! Please download: DayBack Calendar
Need More?
SeedCode tips & example files in your inbox
Need More?
SeedCode tips & example files in your inbox
Want More?
Be the first to see articles and tips like these
Download TimeZync and we'll send you a couple short emails with tips syncing your FileMaker Go files.
Thank you! Please download: TimeZync
Want More?
Be the first to see articles and tips like these