As we prepare to bring some new developers on board, it’s worth taking a look at a few of the things we do that make us successful. Sometimes we internalize these things and, not having had to explain them to anyone for a while, they kind of dissolve into habit. Or dissolve into habits we don’t think we need to practice anymore. Documenting our coding decisions is one of the reasons we can support so many customers with such a small team. It’s easy to overlook, but it works.

This is the second post in a series that formed the basis of my 2017 DevCon session on Increasing Code Quality While Staying Lean. Check out the first post for an introduction to the series. We’re looking at techniques that have made a big impact at SeedCode and we hope you’re inspired to incorporate some of these into your work.

Documenting Decisions – We’re Coding for Our Future Selves

We’re coding for our future selves—both in our products and in custom work. We end up coming back to our own code months later and sometimes it’s as opaque to us as if we’d never written it.

So when we make decisions, we want to document them so that our future selves (or our teammates) can more quickly pick up the thread when they return to our work.

This means you can restart projects more quickly, which in turn increases the delivery velocity: especially the velocity of delivering change requests and bug fixes.

One definition of fragility: the original developer is the only one who can help this customer. Click To Tweet

Here’s what we do:

  • When we comment out or change code in a script or in a calculation, we include a note in the comment about why we did it.
  • If work is related to a Manuscript case, we include the case number in the comments: it’s amazing to be looking at an If() statement you don’t think should be there and see this telling you exactly why it’s there… “If filter is not empty and field DOES NOT match this source: Case 30325”. Now you can go read that case and see the real-world situation that required the If() statement.

Read Full Article →

The whole point of DayBack is to have a calendar you can customize. You want to paste it into your file and change the scripts so it works the way you do. And you want to do that without giving up access to new features, bug fixes, and newer versions of the calendar

Fortunately, you can download new features and bug fixes without overwriting your changes thanks to the in-app updates built into DayBack Calendar. These updates have allowed users to download all the recent cool new features: like the vertical month view, text filtering, and additional fields.

Here’s video showing how the in-app updates work:

You’ll find more details about in-app updates in our docs, including how to undo an update if you don’t like it.

Updates are also available in DayBack’s free 30-day trial, so you’re able to stay up to date even before you’ve purchased the calendar.

Access to Updates

Folks who’ve purchased DayBack on subscription (monthly or yearly) have access to updates for the life of their subscription. If you purchase DayBack outright, in-app updates are included for the first year. You can then extend your updates a year at a time. Here’s how: extend your updates.

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.

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