One of the questions that I get asked the most these days is, "Why are you giving all of this stuff away?" They're referring to the open source FileMaker solutions that I've released throughout the year (including FM WebFrame, FM EasySync, etc).
My reply usually starts with, "Why wouldn't I?"
You see, I originally developed those solutions to help meet the needs of my clients. FM EasySync is something I had been experimenting with in the summer of 2013, and ended up shelving when I realized that I didn't have what I needed to properly sync container fields. That changed with the introduction of Base64 encoding and decoding in the FileMaker 13 platform. So when a client asked about being able to sync their mobile solution early this year, I dusted off the code that I had been working on, and EasySync came back to life.
FM WebFrame is the result of my frustration in working on custom web publishing (CWP) projects - and specifically, that "here we go again" feeling that I would get when I would fire up BBEdit and started coding PHP from scratch. I wanted a way to quickly jumpstart CWP projects, without needing to piece together code that I had written previously for other projects.
But I guess that still doesn't explain why I've been providing those solutions as open source. So here are a few more reasons...
It's a way to give back to the FileMaker community. We're a small community, but a strong one, and I think it plays a big part in the success of the FileMaker ecosystem. When you have a problem or question - or just need advice, there are so many members of the community that are willing to give their time to help out. We all learn, and all benefit as a result. These solutions have been my way of trying to "give back."
The feedback and suggestions that I receive help to improve the solutions. Some of the suggestions that I've received for EasySync and FMWebFrame in particular have helped me to think about the problems that they are intended to solve in different ways, and to approach them from different perspectives. Here's a good example: During the early beta testing of EasySync, there was no support for users in multiple timezones. I was using standard timestamp values to determine what to sync. In hindsight, that was just plain goofy. It was feedback from beta testers that pointed out the problem at an early stage, which ended up saving me (and the other people who now use EasySync) from a lot of trouble later on.
They don't cost me anything. I've already invested my time in developing the solutions, and I'm able to use and reuse them in projects for my own clients. So if you're looking at it from a monetary standpoint, I've already made a profit from these solutions. Could I make even more by selling the solutions? Maybe. But I find that the "good karma" (or "goodwill" or whatever you choose to call it) that I get from providing them is payment enough.
I'm curious to see who, and how, the solutions are being used. I love hearing about how other developers are using the solutions (and using FileMaker in general). It's nice to know that they've found value in the solutions, so much so that they're using them in projects for their clients. How cool is that?
I hope that we start to see more developers share their solutions and techniques with the community. I think the FileMaker community will benefit and grow as a result.