Black Friday is for Learning!

Today is the last regular season game of the 2016 season for my beloved Longhorns. It could be the last game of the year, and it is probably the last game for coach Charlie Strong. It’s halftime and the game’s not going well so writing some thoughts!

It’s Black Friday and we’re running a sale over at my plugin marketplace Shop Plugins.

While I was watching the plethora of Black Friday sale emails coming in, two offers caught my eye because I’ve heard nothing but great things about these two courses so I went ahead and pulled the trigger and bought them.

Read More

Adding To My Web Developer Toolbelt

I’ve recently added these three tools to my web developer tool belt. Two of them save me time now, and the other one saves me time in the future in the form of keeping bugs from shipping.

Read More

The Best Place to Sell WordPress Plugins

I enjoy talking about building premium plugins and presented about it last year. I love talking to developers about their ideas and brainstorming with them. After building a product the next logical question is:

I’ve built a plugin, now where should I sell it?

Most developers are very good at charging forward to building code and making a quality product.  When it comes to sales and marketing we are much more hesitant. Read More

WCGR: Creating and Selling Premium WordPress Plugins

My talk from WordCamp Grand Rapids is now available on!

Daniel Espinoza_ Creating and Selling Premium WordPress Plugins |


This talk was a lot of fun and the camp was very well organized. I’ll be turning this talk into a series of posts over the next few weeks.  I love talking with other developers who are thinking about plugin ideas and how to start selling them in the marketplace.


Waiting For Pressgram

The Apple store launch of Pressgram is right around the corner and I can’t wait!!!  I caught the vision in March in Atlanta, backed the Kickstarter and am very excited that the App Store launch is so very close.

Since quitting Instagram a year ago I had forgotten how much fun it is to have an easy way to share images to my Twitter feed.  Not only that, it’s been great to have a community (albeit a small one) of people on the app itself sharing and commenting on photos.

The best overall feature of Pressgram is the ability to post my images directly to my self-hosted WordPress blog and not have to worry about some terrible Eula waiting to steal my data.  (Pressgram wil work with also.)  I can’t wait to start encouraging my friends and family to switch over from the Evil Empire.

Current Pressgram+Blog setup

My favorite feature of the app is that I can easily publish to my (this) blog.  I’ve got a category for photos and have setup the site to hide the photos category from the main feed. There is now an Official Pressgram Plugin  that will do this for you, or here’s some sample code:


Brian Krogsgard reminded me of the evils of query_posts so you should probably use the plugin!

And if you have an RSS to Email campaign going you may want to remove the photos category from your RSS feed.  To do this add the following code to your functions.php file:

function growdev_remove_photos($query) {
if ($query->is_feed) {
return $query;


Future Use

We are currently selling our house to travel the world so my plan is to use Pressgram to not only share photos here, but also to our other blog which is more travel related. I’m thankful for the piece of mind that comes with owning and managing the photos that I take.

Personal Data Storage Strategy

Data Storage Stragegy

Most of my day is spent working and interacting online. I create a lot of data in the form of documents, social networking messages, blog posts and transaction data. I recently moved all of my paper files online (I’ll post on how I went paperless in a future post) so that added to the amount of digital data I have. 

I like to keep organized so that I can get to the data I need quickly, so I decided to review where all my data goes and figure out a personal data storage strategy. I wouldn’t say that my data strategy was a focused effort, but more of a ‘using what’s available’ scheme. Recently while cleaning up my family and business data I’ve tried to formalize how I use storage providers to keep a few goals in mind:

  • Data is available when while traveling. Think web accessible files in Dropbox.

  • Data is available on multiple devices. iMac, iPad, iPhone, etc.

  • Data is easily shared. Dropbox file URL’s, Google Docs sharing.

  • Easily export data if I want to move providers. Instagram export, Twitter archive.

  • Inexpensive. Use free plan available.

I’ve seen a posts on how people organize their task lists, but I hadn’t seen how people organize their data. My data is organized in tiers related to time: Things accessed daily, things accessed monthly, things accessed yearly. 

Accessed Daily: Google Drive & iCloud

Google Drive is my first go-to for data.  I have a set of docs and spreadsheets that I access daily. I keep my family and business budgets in a spreadsheet.  I keep blog post drafts in separate documents.  I also have a “Monthly Plan of Action” where I keep things I want to get completed that month.  The only documents in Google Drive were authored there.

I include iCloud not because I use it to store data, but because it is the data sync for all of the Apple apps I use: Contacts, Calendar, Messages and Reminders. I will use it for storing a Keynote address since I author them on my iMac and share them from my wife’s laptop. 

Accessed Monthly:  Dropbox

When Drew Houston described the idea behind Dropbox and that he wanted it to be similar to a UNIX network file system where all of your documents and environment is available to you on whatever computer you login to I was hooked.  Then I saw all the fantastic features included.

My use case for Dropbox has turned into my medium-long term storage for documents and project based files. On the business side I’ll store PDF’s, Photoshop documents, image files, database backups and some code. On the personal side I keep all of my monthly bill PDF’s and camera pics.  Any physical mail I get (invoices, letters, checks) gets scanned with Doxie, put into a Dropbox folder then shredded.  I used to have the Pro plan that included 100GB of storage, but I never used over 12GB of that.  I recently reorganized my Dropbox and reduced down to below the free plan threshold of 4GB. Where did that other data go?  I’ll tell you in the next section…

Accessed Yearly: Amazon S3 

When I stopped doing client work I had gigabytes of project data in Dropbox that I didn’t need. I didn’t want to delete the files, but still wanted access to them.  I created an Amazon S3 account and setup two buckets that I uploaded all of the old project data up to.  The storage is dirt cheap so it makes sense to keep this info here.

I also recently setup InfiniteWP to manage my WordPress installs and use one of the add-ons to do auto backups of all my WordPress sites and ship the backups up to S3.  Super quick and easy.

How about you?  Do you have a strategy for keeping your data accessible and safe?

Photo Credit: basheertome via Compfight cc

WPSessions: Online WordPress Education

Saturday I participated in the first installment of WPSessions. I joined Topher DeRosia and Pippin Williamson as we taught on the topic of Building WordPress Plugins. My presentation focused on Actions/Filters, the Settings API, and the HTTP API. | Learn from WordPress experts, from everywhere!

WPSessions was started by Brian Richards from StarBox theme framework and WebDevStudios. His intent is to bring WordCamp-style presentations to the masses without the travel commitment.  I love the excitement and connectivity associated with WordCamps so I was honored to be asked by Brian to join the project.

Look at that dork :)

Look at that dork 🙂

Details about the session

Each session was about an hour long which included teaching and time for questions and answers. The presentation was broadcast via Google Hangout with feedback provided by a chat room. This was my first time teaching via Google Hangout so there was a little bit of a learning curve right at first.  I used my 17″ iMac as the main presentation machine. I scaled down the resolution so that the video would be nice and crisp.  I also had a laptop in front of me that I used to view my notes in a Google Doc, view the chat room to see questions from participants and access the presenters Skype chat.  The setup worked very well and I didn’t have any lags in connectivity that I noticed.

I did have a hiccup where Keynote didn’t display on the video correctly so I had a backup PDF of my slides ready and to use with a single window screen share (feature of Google Hangouts).  For coding examples I used a MAMP Pro local install with a demo WordPress install. I used my regular IDE (Coda) and a Terminal window to show code.  I had some feedback that my color settings for code could be adjusted to make them more readable. Other than those few bumps the entire presentation was smooth.

A bright future

The next session on Building A WordPress Business has already been announced and it has a great lineup of speakers.  I’ll definitely be tuning in to hear these guys talk about business. If you haven’t already bought a ticket I suggest heading over to the site to grab one!

I’m Speaking At WordCamp Minneapolis

Last month I attended my first WordCamp in Atlanta, and I’m excited to share that later this month I’ll be speaking at a WordCamp Minneapolis!

I’ll be I’m excited to get to combine several firsts on this trip – first time to Minnesota, first time speaking at a WordCamp, first time attending a BuddyCamp, and possibly first time meeting Dave Yankowiak (come on down Dave!).

My talk is currently titled “Creating and Selling Premium WordPress Plugins” and I’ll be sharing about the process of selling plugins including coming up with the idea, coding, marketing, selling and support.

The talk is currently slated in the “School of Business” and advanced level.  I’m looking forward to meeting a bunch of new people and attending several of the other talks on the schedule.

If you will be attending WordCamp Minneapolis let me know!

Products Shipped January 2013

One of my goals this year is to build three extensions per month to have a total of 36 new products this year.   I thought about making it one per week, but I realized that’s crazy and I would end up with some half-baked code.  Three per month is totally doable.

In January the following three extensions went live.

WordPress › Pushover for WooCommerce « WordPress Plugins

Pushover Notifications for WooCommerce

In December I saw some tweets about the Pushover App which is an iOS and Android application that has an API making it easy to send notifications from your web app.  I loved the concept and wanted to do a free plugin for  Chris Klosowski had already built a general WordPress notifications plugin so I decided to build one for WooCommerce that would allow store owners to setup notifications to their phones of new orders, low stock, back orders and out of stock events.



UPS Shipping Method for WooCommerce

WooThemes asked me to rebuild the UPS shipping module for WooCommerce.  Up till now I had only built payment gateways so it was fun to build a shipping module.



Easy Digital Downloads – CSV Product Import

Last fall Pippin Willamson asked me to build an import module for his Easy Digital Downloads ecommerce plugin.  After some delay on my part this plugin went live mid-January.  It was my first plugin to be added to which was a fun milestone.