whateverthing.com

March 18, 2014

Let’s say you’re building a mobile app in Silex (a PHP microframework), and you want to add location-based search to your features. You’ve got a data set with a bunch of street addresses, like this CSV that lists all facilities in British Columbia that are licensed to sell or produce liquor.

A quick example:

NameAddressCity
Joe's Beer Shack125 Nowhere LaneVictoria
The Whinery420 Toker StreetEsquimalt
Spinnakers308 Catherine StreetVictoria

Not that I’m thinking of creating a “nearest booze” app. I’ve got better things on my mind. Anyway, that’s off topic. Uh oh! Now I’ve decided to make the app.

I’m going to call it DrinkyDrinkyThing.

February 11, 2014

You’re probably familiar with the concept of Dogfooding - rolling out your products within your organization. The goal is to have many internal eyes on the products so employees will be empowered to fix pain points that bother them. It’s largely a successful idea, but it can be difficult to foster organization-wide adoption. This is especially true when trying to integrate a new product inside an established ecosystem.

In fact, mandating dogfooding practices can actually alienate your employees. In some cases, that very alienation is also a form of dogfooding - it gives your marketing and sales people an opportunity to pitch the product internally so they can brace themselves for the onslaught of the real world. They should embrace this opportunity to educate themselves about your own product’s market fit.

But what about the competition?

If you only use your own product, you’ll naturally fall into usage patterns that minimize pain points. This is what real-world users end up doing, and it can have a negative impact on your product’s perception in the marketplace.

Enter: Catfooding.

December 11, 2013

I recently published beryllium/silex-cache-provider, a Silex Service Provider based on my BerylliumCacheBundle project. Silex developers can use it to enable Memcache, APC, or file-based caching in their Silex projects.

This has been made possible by contributions from Jeremy Livingston and Nechaev Yaroslav, as part of the effort to rebuild BerylliumCacheBundle so that Symfony2 developers can use the normal configuration style to get up and running. We've split a portion of the bundle off into beryllium/cache, a small stand-alone library that can be dropped into framework-based and non-framework projects alike.

The beryllium/cache library doesn't attempt to implement PSR-6, the PHP-FIG caching interface proposal, so it essentially just functions as an abstraction for an expiring key/value store. Often that's all a developer needs, so it should be good for the time being. Once PSR-6 gets approved, I will consider adding support in beryllium/cache.

If you have suggestions or other feedback for beryllium/cache or beryllium/silex-cache-provider, please use github to submit issues or contact me on twitter: @beryllium9

Thanks for checking in!

November 4, 2013

If you've been following open source development for the last little while, you may have heard of Travis, the free continuous integration service for open source projects. I've been interested in trying it out, but I haven't had a project I thought was suitable for testing with it.

Until now! As luck would have it, the most recent UpThing installment added a PHPUnit-based functional test. This means that I've got something I can send to Travis. :)