-
Bring order to your library of audiobooks
Is your audiobook collection out of control? Perhaps you forgot to cancel your Audible subscription and finally got around to using up all your credits (and then downloaded your books to your computer)? Or perhaps you’ve been buying DRM-free audiobooks from Librivox or Downpour? Regardless, when it comes time to pick the next audiobook to read, you’re faced with a mountain of folders with no good way to organize them.
Audibook Locker is a cross-platform desktop app that shows you your books in a beautiful layout and gives you the power to:
- sort alphabetically or chronologically (e.g., to find the books you’ve most recently added to your library)
- browse your audiobooks by title, author, series, or genre
- add tags to help categorize your books and browse by tag
- mark books as either Finished or Unread and filter by status
Read More
-
Take the pain out of weekly meal planning
I bet you can relate to this:
And of course, this only get harder once you have kids and can’t just eat cereal or soup for dinner every night.
I wanted a simple tool that would let me plan my meals for the week before I went grocery shopping so I would know what to buy at the store and what not to.
I didn’t need a tool that made me pay for meal suggestions or gave me pre-built meal plans that were full of recipes that my family wouldn’t eat. I know what my family likes and I know what I like. I just need a way to organize and plan it. Sadly, none of the tools out there fit the bill, so I made my own.
Introducing the Simple Weekly Meal Planner.
The Simple Weekly Meal Planner is free and very straightforward. You add your meals and what ingredients they each include. Then each week you select for each day what meal you want to have. The app will generate a grocery list for you to take to the store to ensure you buy all the ingredients you need. That’s it. As the label says on the tin, simple.
Read More
-
Please, stop saying "next slide please"
If your company is working at home because of COVID-19 and you all use Google Slides and Google Meet, then you’re probably used to hearing “next slide please” whenever multiple presenters need to jointly present to a group. This isn’t an issue with Zoom because it allows others to share control of their screen. Microsoft Teams also lets participants share control. But not Google Meet.
I looked for an extension for Google Meet that would solve this problem, but I couldn’t find anything, so I had to build one! Hence my latest project: the Shared Slides Clicker Chrome Extension.
Read More
-
Cramming Appian into a Browser Extension
I've been at Appian for a long, long, long time. But I still remember clearly the day over 10 years ago when we first introduced our plug-in extension framework to allow outside developers to extend the Appian platform using OSGI Java code. The Appian community loved it and our employees (myself included), customers and partners have created thousands of plug-ins to make Appian even more powerful.
My colleague and I recently decided to extend Appian and make it more powerful in a totally new way, by building a browser extension. Let me explain more and describe some of the things we learned along the way.
Read More
-
Powering Mattermost Interactive Buttons using Firebase
At Appian, we use Mattermost for our internal worksplace messaging. It’s like Slack, but open-source and IT-friendly. The project recently released a new feature called Interactive Message Buttons which allow developers to add, as the name implies, interactive buttons to messages. See Mattermost’s example below. Cool right?
The most obvious use case for interactive buttons is for creating a quick poll (e.g., asking people to vote on a specific question or topic). It’s so obvious that it’s the demo integration which Mattermost has on their website. Their implementation, however, is written in Python and it’s fairly bare-bones, limited to just a Yes or No answer. That’s not my cup of tea. I wanted something a little more powerful but also something that could run against a serverless backend, ideally written in Javascript.
So I built a
Read More/poll
implementation from scratch in Javascript using Firebase Cloud Functions and Firebase Realtime Database. I call it 🔥 MattermostOnFire 🔥
-
How to Test Firebase Cloud Functions using Jest
The Firebase Cloud Functions Unit Testing documentation and quickstart samples only show how to write unit tests for Firebase Cloud Functions using Mocha with Sinon and Chai. And the quickstarts don't even do a thorough job of demonstrating how to write unit tests.
I prefer to use Jest for unit tests. For others who feel the same, and for those who want to see more examples of how to unit test Firebase Cloud Functions, I wanted to help. I’ve created a Github repo that demonstrates how to replace the existing Mocha tests with Jest tests and how to write new Jest tests for the quickstarts that didn't have tests.
Check it out: https://github.com/jedfonner/firebase-functions-jest and let me know what you think.
Read More
-
How to Setup Github Pages on OSX Mavericks
I recently re-installed my operating system. Re-installing most of my applications was a matter of downloading, unpacking and clicking.
This blog runs on Github Pages. In order to test posts before comming them to Github, I need to have something called Jekyll and a bunch of other development tools installed on my machine. Installing all of that was not so easy.
Read More