Once a year, software developers all over world gather online to compete in the Advent of Code. During the festive and joyous time of the year, geeks race against the clock to solve coding challenges using their platform of choice, to be one of the first to solve it in as little time as possible. It’s a stressful and panicked time, this end of year tradition. Happy holidays.

Over 41,000 people started the journey last year, December 1, 2017. Among those were FileMaker developers.

That’s right. Besides being innovators, we are also software developers and problem solvers. Our platform does all that any other platform such as JavaScript or Python or .Net can do. So when I stumbled on this last year and wrote a discussion post about it on the forums, I figured we can be a part of the fun.

Here’s the quick rundown:

  • The site is adventofcode.com. Register on the site.. Take a look around.
  • Each day of December, two puzzles are released, one after the other. The goal is to read the problem and use any platform (even and especially FileMaker) to solve it.
  • Once problem one is solved, and the answer is submitted to the site, problem two is released. Usually this one builds off of or branches from problem one.
  • There is a leaderboard, and the leaders on the board are determined by the elapsed time it takes to solve the problem.
  • There are example solutions to the problem, given a different starting point. These are used to test.

It was a little exciting

There was a pretty good response from FileMaker developers to this challenge last year. I think because:

  • The puzzles are a nice ‘brain break’ from we work on each day. Advent of Code doesn’t have us building card windows for new records or have us determine the fiscal year. I daresay the puzzles in the game have nothing to do with real life, and for some, that is great. The challenges exercise a different set of skills for us.
  • The small group of folks who participated shared their ideas. We supported each other without judgement.

A Puzzle from Last Year

Unfortunately the method I chose to talk about this wasn’t useful. Scattered among the main questions and discussions in the community were posts for each day of the challenge. Those got lost, and there was no good way to really talk about it.

Do it better

So this year, we’re going to try something a bit different. I’ve been thinking of this for awhile, and, it turns out, so has Mr.Watson-gbs. (Great minds, and all that). Here’s what we have for this year:

  • A separate community place (coming soon) that you can be a part of (or not) and follow (or not). Thank you Rosemary for this separate space.
  • Mr. Watcon-gbs has a template file that we can use (though there’s no requirement. Use your own if you wish).
  • For each day of puzzles, a document containing the text and translation of the text will be posted. Likewise, a discussion for each day will be posted.
  • On the discussion you can post your own solution to the problems. You can ask for help, talk with each other about their solutions, etc.

We’ll basically work together to solve these puzzles.

Additional thoughts

  • Register to the Advent of Code site and post your answers, track your progress, and view your place on the leaderboard, as much as you wish.
  • There will be no official leaderboard in the community for a few reasons:
    • 1. I don’t have any mechanisms to test each answer and get the timestamp, and
    • 2. this competition is not found in the FileMaker forums. There’s nothing at stake here. There’s no reward save for the utter enjoyment of solving puzzles with your fellow FM developers
  • Ask for help about a puzzle, get feedback on your method of the solution, and critique others’ solutions. But that’s as far as we’ll go. There will be no judgement.
  • Again: ask for help. Though many FileMaker developers will post their answers, ask for help if you’re struggling. Don’t just open someone’s solution and copy it. Try to reason through it and ask for guidance in that process.
  • This space will be around (as well as the puzzles ) for a long time, so feel free to come back to a day and try them out well after the festive month has ended. Feel free to bump the topic and revive the conversation.
  • Feel free to try out the puzzles of 2017. They’ll give you some idea about what to expect.
  • Use any programming language you want; FileMaker is not required. In fact, I strongly encourage the use of other languages; I’d love to see how these are solved in Java, for example. If you could help the rest of us out and make it so we can see the code and run the code, that would be great.

I encourage you to join the group as we talk Advent of Code puzzles. What I’m excited about, what dawned on me about a year ago, is that we can do these puzzles in FileMaker. We can, along side Java, C++, JavaScript, Basic, and Fortran programmers, find solutions to fun problems. I really don’t think it takes an expert FileMaker developer to do these. Anyone can participate.

Let’s talk about the puzzles together, let’s critique and discuss. I think this is a way to make us better in our craft: take on some challenging puzzle and attempt to solve it in our language.

I’m committing to working on each puzzle every day, though I probably wont get up the second each day’s puzzle is released to be the first so solve it. I’ll use FileMaker, and, if time, JavaScript (I love JavaScript).

You have a month to prepare, to test out some puzzles from last year, and to get yourself ready.
See in Advent of Code 2018!