About a month ago, I got my Sift Science plugin added to the WordPress.org online store. To publish your plugin to the store, you’re required to use the SVN repository that they provide. Once you get that done correctly, users of WordPress can find and install your plugin through the built in store and they will also receive notifications whenever you publish a new version.
In this post, I describe how I manage releases of my Sift Science plugin.
A few weeks ago I learned an important lesson that I’d like to share: When building unit tests, never use a mock/stub unless it’s absolutely necessary. Let me explain with a little example.
Let’s say you’re working on a large project and you start developing Module A, which uses a MySQL database. To write a unit test for this module, you’re going to need to mock the MySQL queries. I have used sinon for this purpose and it’s worked great by the way.
When I first started developing the Sift Science for WooCommerce plugin last year, I needed interactive controls on the Orders page that displayed fraud scores and allowed the admin to flag fraudulent users. I didn’t want to reload the page every time the user took an action, so the obvious solution was to implement some client-side scripting and background Ajax calls to the server.
The goal was to add a new column to the Orders page that contained small icons that displayed the score and a couple of other icons for the user to click like so:
I am pleased to announce that the Sift Science plugin for WooCommerce is finally ready for beta testing! Lukas and I started this plugin over a year ago and have been working on it off and on as time permitted. But I’m happy to say that it’s now good enough for Beta testing.
Note: I work at Automattic on WooCommerce, but this is a personal side project. What is Sift Science for WooCommerce Sift Science for WooCommerce is a plugin that integrates Sift Science fraud detection into your WooCommerce online store.
I recently joined Automattic, where all developers are required to work as Happiness Engineers for the first three weeks. This is not in parallel with your regular job! Before you start working on whatever you were hired to do, you spend three weeks helping customers with their problems and requests. I knew this was a great idea before I started, but the the impact this experience has had on me was still surprising in many ways.
Over the last two years, my hygienist Michelle has been especially helpful in getting me to properly take care of my teeth. At every check up, she recommends the #1 change I can make for better teeth. We started out with “For the love of God, floss every day!” and gradually worked our way up to “It looks like you’re not giving these two teeth as much attention as the rest.
Toothpaste - 2015-11-25 23:17:46
My dentist said I needed to start using a very gentle toothpaste to preserve the enamel on my teeth. He recommended a specific brand which I tried for a while. However, no matter how carefully I brushed, I noticed that stains were forming on my teeth and getting worse.
Disclaimer: I am not a dentist. Proceed at your own risk. Fortunately, my mom is into trying out natural remedies, and on one visit I noticed a jar of what looked like black mud next to the bathroom sink.
I like C#. Especially with the asynchronous syntax and the .NET Web API framework writing REST APIs is great. I also really like running Linux servers: open source, easy set up and administration, security, and of course price.
So I went on a journey to get my .NET REST API service running on CentOS. It turns out I took the really long route, so hopefully this post will save people some time.
Hello Blog - 2015-11-02 23:05:29
I’ve thought about starting a blog for quite a while. Now that I am employed at Automattic, I think it’s really time to do it!
So, welcome to my blog. I’ll be writing about random things that interest me. Frequent topics will probably be:
Computers, software engineering, cloud and big data, and other nerdy things Food and cooking Health and fitness That’s just a general idea, but I’ll basically be writing about anything I’m in the mood to share.