Q&A with Professional Services Developer Tim Schiller

Q&A with Professional Services Developer Tim Schiller

ThoughtFarmer is known for its flexibility and unique customizations. But how do we make this magic happen? Our Professional Services Developer shares some insight.

May 10, 2022

One of ThoughtFarmer’s greatest strengths is its flexibility. Unlike some platforms that are locked down and limit branding, ThoughtFarmer supports the ability for customizations through something called Custom cards.

Custom cards (sometimes referred to as modules or widgets) are the building blocks of all ThoughtFarmer pages. For example, most intranet home pages will include cards like a news carousel, quick links, a launch pad, and groups, whereas team pages tend to include more specific cards like a document library, forms, or a team calendar.

Custom Cards take our platform’s flexibility even further by allowing users to add custom extensions to their intranet, so that they can really get the most out of the ThoughtFarmer experience.

We recently sat down with Tim Schiller, Professional Services Developer at ThoughtFarmer, and the brains behind Custom card development. He revealed some cool insights into common customer requests, undervalued customizations, and the custom cards he enjoys creating the most. 

What are some of the most common customizations you get asked for? 

The main type of request we get is for integration with some 3rd party tools which we currently do not support. Often there is a way via custom cards to embed a quick and simple integration that has much reduced cost when compared to sponsoring a feature. Sponsoring a feature means paying to have our development team work on it right away. So it bypasses our typical roadmap based on feature request popularity. Also, it can be turned around much quicker than waiting for a feature request to become popular enough that it gets added to the product.

Are there any requests that surprise you? 

Since style is so subjective I am sometimes surprised at the requests I get to modify the look and feel of ThoughtFarmer. Some are the equivalent of shag carpet and psychedelic wallpaper. I may point out concern if the style choices may affect user experience. Otherwise, the possibilities are endless.

Are there any popular customer requests that you wouldn't have expected would be popular?

Falling Fun is by far the most popular card ever. It started out as the “Let it snow” card,  which was a simple card to add falling snowflakes to your intranet around the holiday season. Now it has been extended to allow for anything to fall. People now set it to show pumpkins and ghosts during Halloween, Shamrocks during St Patrick’s Day, and even falling money to celebrate big sales wins. I have even seen an instance of falling Justin Timberlakes. I am not sure of the specific use case there and at this point I am too afraid to ask:)

What are ThoughtFarmer's most popular custom cards? 

Falling fun is the most popular by far. The “Full width toggle” is also a very popular card. It allows collapsing the left column and\or the header area to provide maximum screen space for select content.  

Are there any customizations you feel are underused?

Simple cards like the “Back to Top” and the “Table Of Contents” card are not as popular as I would have expected. They can provide some great user experience enhancements for pages with a lot of content on them.

What cards are best for building culture and community?

The best one on the Card Marketplace is the Gamification card. It helps promote engagement with the intranet which ultimately helps build community. 

There are over 200 custom cards that make up our library. Only those that are most popular, and routinely requested end up on the marketplace after a lengthy review session. One of those other cards is the Core Values custom card. This lets users shout-out to each other and award someone with a badge for a specific company Core Value. For example, “Great job @Kelly for showing Creativity on the new blog post!”. 

This would get tracked as a Creativity badge for that user, then leaderboards, and profile page badges, and reporting custom cards could all leverage that data to provide visibility into them. This is great for getting employees engaged around the company culture. This is fast becoming popular and will likely end up on the marketplace soon.

Custom Cards

What customization did you enjoy working on most? Why?

From an effort to enjoyment level the Falling Fun card was simply the best. It was very simple to build, yet it proved widely popular and fun to use.

From a technical standpoint I really thought the “Content overlays” turned out well and looked great. The original request was to make something that appeared like the overlays you see on Wikipedia. However, we needed something much more flexible and configurable. The result is very eye-catching and the dynamic “smart” positioning of the overlay works very well. It goes above and beyond what Wikipedia does for their overlays.

What was the first custom card you ever worked on?

I have been doing this for over 14 years now so my memory is a bit hazy. However, I believe the first popular card I worked on was the Birthday card. It became so popular that it eventually became part of ThoughtFarmer proper. In fact, quite a few new ThoughtFarmer features started out as custom cards. 

How has your approach to customer card development changed over the years?

In the early years I was very eager to please and tried to implement custom requests no matter what the method. With some ingenuity, almost anything is possible. However, I have learned that this often can create problems on upgrades and maintenance of those customizations can take up a lot of time. 

My focus now is to improve the public API and custom card integration features and tools in ThoughtFarmer to allow for integrations and customizations that are resilient to upgrade changes and greatly reduce ongoing maintenance time. 

So nowadays my first step when evaluating feasibility for a customization request is if it can be implemented with an officially supported API. If not, then can we extend the ThoughtFarmer integration features to support it? If that still is not possible then I recommend the request go to our Feature Request forum for adding to ThoughtFarmer officially.

Does a request always require a custom card, or is it possible that you could find a new use for an existing card?

Very often a request is something that we already have built. It should be noted that the custom card marketplace reflects only 3-5% of the actual custom card library we have implemented. Only the cards that may be helpful for a general use case are added to the custom card marketplace. So quite often a request is similar enough to an existing card we developed for another client that we can reuse much of the same code. This is great as it reduces the cost of the customization.

As well, when we get frequent requests for an existing card then this makes it become a candidate for the card marketplace. A good example is the Content Tabs custom card. The original implementation cost for that was around 10 times higher than the cost it currently is in the marketplace. So we endeavor to reuse or modify existing cards as much as possible.

Is it always customers that drive custom cards, or does it come from internal / market feedback too?

Traditionally, custom cards have solely been driven by client request. More recently we are looking to provide custom cards to anticipate market needs for certain integrations with popular 3rd party tools (e.g. SalesForce). Those are still a work in progress.

What is your favorite part of your job? 

My background was originally Psychology. I wanted to be a Psychologist and help people. However, the length of time to achieve this goal proved daunting. As well, I found I was much better suited towards programming and had been programming since I was 10 (my first computer was a Commodore Vic 20). So after a two year diploma in Psychology I switched to Computer Science and achieved my Bachelor’s of Science from UBC.

So this job is a perfect match for me in that I am always working front and center with people first. I get to listen to and interpret their needs and come up with a project plan and set of requirements that meet those needs. This job allows me to be in a place to help people directly with their problems with technical solutions. 

 

Have questions? Get in touch! We're always happy to hear from you.