cogent free knowledge

Personal blog of Joel Clermont, a Milwaukee PHP, Ruby and .NET developer

30x500 Orientation

I recently enrolled in 30x500, an online class designed to teach you how to launch successful products. I know how to run a consulting business (been there, done that) and I know how to build software applications, but I had no real idea how to build and launch a product. After tweeting about my enrollment, a few people responded with curiosity, intrigued at the idea, but not yet ready to put down the money to join. Today was orientation, so I decided to start documenting my experiences right away, not only for my own benefit, but also for those perhaps on the fence about taking this class themselves.

Git Goodies: See All Unpushed Files

My preferred workflow is to be able to push changes into production using git. However, sometimes the project/server doesn’t support this (yet).

In these scenarios, it is very useful to be able to see which files have not yet been pushed to origin. Here is a nice one-liner that does exactly this:

Using Google Authenticator on More Than One Device

I take security pretty seriously. Some might even call me a little paranoid when it comes to password strength. It’s no surprise that I love two-factor authentication then. Not only can I have a super strong password, but I can now require that I have a security token in my possession in order to login. In other words, even if you knew my 16 character random password for gmail, you still could not login without also having my security token.

Contributing to Open Source Projects (Slides)

Thanks to everyone who attended my talk today, especially those that asked questions and gave me feedback afterwards.

I’m posting my slides for the talk I gave at WordCamp Milwaukee today. As with most talks, there is a lot more information than what the slides contain, but at least it is something.

Speaking at WordCamp Milwaukee

Just a quick note that I’ll be speaking at WordCamp Milwaukee on June 3. The talk is titled “Contributing to Open Source Projects”. It’s not really a WordPress specific topic, but more of a general encouragement for everyone to get involved in open source and how specifically to go about it. Read the official brief on the WordCamp site.

I Love Twitter Bootstrap

If you haven’t heard of it, go take a quick look at Twitter Bootstrap. As you click around the github project site, you’ll get the sense that all these layout guides and widgets and buttons and icons look oddly familiar. Part of that is the fact that Twitter itself is built with this style package. But even beyond that, many many many many sites are using this tool kit as well. I’ve sensed a little backlash, mostly from designers, at this rampant use of the Twitter Bootstrap. At a certain level, I agree, but I’m here to talk about why I love Twitter Bootstrap.

Onsite for CodeMash

Over the next week, I’m going to be adding quite a few short posts chronicling my experience at the CodeMash conference. The event is a few years old, but this is the first year I’m attending.

Date Calculations Are More Complex Than You Think

Date and time manipulation is an area of programming that seems relatively simple on its surface, but lots of danger lurks just out of view. How hard could it possibly be to take a date/time and add 1 day to it? or 1 week? Piece of cake, right? You might do something like this:

1
2
3
4
5
6
7
$eventTime = strtotime('2011-09-15');

//add one day to the date 
$newEventTime = $eventTime + (24 * 60 * 60);

//expects 2011-09-16 and will USUALLY work
echo date('Y-m-d', $newEventTime);

The Importance of Upgrading

Most web sites use third-party code. This code comes in a few different flavors:

  • client-side libraries (jQuery, dojo)
  • server-side libraries (form mail scripts, oAuth integration)
  • server-side frameworks (Zend Framework, Symfony)
  • entire applications (WordPress, Joomla)

As a developer, when you selected one or more of these tools, you hopefully picked a project that was active and well supported. This means there will inevitably be upgrades to that third-party code. Some of these upgrades add features, but most upgrades also include bug fixes and security patches.

Finally, a PHP Conference in Wisconsin!

I’m a huge fan of php|architect: the magazine, the books, the online training and especially their conferences. Living in the Milwaukee metro area, I have a short 90 minute drive to the flagship php|tek conference they host in Chicago each year. My schedule doesn’t always allow me to attend, but I do everything I can to make it. I’m still putting into practice the things I learned at php|tek 2010 and I regularly keep in touch with the many friends I met there.