Month: November 2011

Use Custom PHP Extensions on Heroku

Image representing Heroku as depicted in Crunc...

Did you know you can use custom PHP extensions on Heroku? Neither did I, cos I can’t find it in the documentation. But you can:

I came across this while searching for a way or workaround to use the MongoDB PECL extension on Heroku (don’t get me started on that…).

If you can’t be bothered checking the link, the summary is this:

  1. Create a folder in your app called ‘ext’ or similar.
  2. Copy your extension into this folder.
  3. Create a php.ini file with the following contents:
    extension_dir = "/app/www/ext/"
  4. Deploy

Parents Evening

My biggest fear about this whole separation/divorce thing is that it screws up the kids, particularly my eldest. The other two are too young to understand what’s gong on, or to even know any different. The eldest though is both very smart, and at a sensitive age.

So I’m sure you can imagine it was more than a little unnerving to be ask to attend his Parent-Teacher evening. I had heard from the Ex that his teacher had voiced her disapproval of our situation on a couple of occasions (it’s a Catholic school).

In fact I was so anxious about how the evening might go I almost cancelled. Had I royally screwed up my son? Had the stress of his mummy and daddy splitting up affected his school work? Were there other issues we weren’t aware of?

Thankfully my fears proved unfounded. Apart from a few issues with poor handwriting, and a slight tendency to get distracted, he’s doing excellent at school. His memory is amazing, according to his teacher (a bit like my own), so even when he appears to be not paying attention he can recall even the most obscure detail about what the class is learning.

When we left, my ex and I were both smiling. The headmistress even commented on it as we were heading out the door. I’m pretty sure I was more grinning than smiling. I don’t think I can express just how relieved I was.

Second Date

So the night after my first date with D I was invited to go back around to hers to hang out with pizza and a bottle of wine.

I may have been out of the dating game for a while, but I’m not entirely clueless, and based on the night before, I knew exactly what was going to happen that evening, so as well as the wine, I packed a bag appropriately. One thing I had to bear in mind was it was going to be my weekend with the kids, so it wouldn’t do for their dad to pick them up in the same clothes he had worn the night before.

The evening was nice. I picked up some nice wine on the way there (despite knowing nothing about wine as I rarely drink the stuff). The pizza was awesome, though we didn’t finish it; I’m sure her flat-mates didn’t mind finishing it off later in the evening. We watched some really crappy TV, and talked a while.

I ended up staying awake most of the night “processing” what had gone on. It was a big step to take, so very soon after the breakup, but it was one which was going to happen sooner or later. If nothing else, I guess I’m glad it happened sooner so I can mentally move on quicker.

Scalable and Modular Architecture for CSS

Scalable and Modular Architecture for CSS:

SMACSS (pronounced “smacks”) is more style guide than rigid framework. There’s no library within here for you to download or install. SMACSS is a way to examine your design process and as a way to fit those rigid frameworks into a flexible thought process. It’s an attempt to document a consistent approach to site development when using CSS. And really, who isn’t building a site with CSS these days?!

The Five Megabyte Web Developer | Benjamin Atkin

The Five Megabyte Web Developer | Benjamin Atkin.

An interesting perspective on Heroku. As regular readers will have guessed, I recently started using Heroku for small experiments. So far I love it for being a low-friction way to try out something, and how I have the potential to quickly, easily, and relative cheaply scale any of these experiments which become popular. The article above did point out some limitations which I wasn’t clear on before, and which I’ll bear in mind. I wrote something similar in a comment to this blog post, this morning, but at the time of writing my comment is still awaiting moderation.

Like the author above, I looked into getting a VPS to have a “place of my own” to house such little projects, but ultimately decided against it. While it may offer you more control over configuration, resources, and fixed costs, ultimately you’re paying (or have paid) for the server even when you’re not using it. If you have several projects which all get regular traffic, then yes, it’s probably worth getting a VPS. But if you’re just testing the waters with a small idea every once in a while then I think it’s best to take advantage of platoforms like Heroku, App Harbor, PHP Fog, etc.

Hack Weekend Update

I’m having heaps of fun experimenting with the Facebook APIs. It’s definitely a learning experience, and it’s something I’ve kind of missed – just playing around with a technology, with absolutely no expectation anything will come of it.

That said, I’ve finally settled on what I’m going to try and build with all this experimenting. It’s a nice, little, fun app tied to a Facebook page.

Using the Facebook PHP SDK with CodeIgniter

the CodeIgniter logoMost of my small personal projects tend to get built with CodeIgniter (CI), which is a simple to use, fast, lightweight PHP5 MVC framework.

the Facebook logoFor a while now I’ve had an itch to build something fun against the Facebook API so I can start learning how Open Graph works, and as a primer to building a “proper” Facebook integrated application. I also realised I hadn’t actually tried using CodeIgniter 2.x since it was released (quite some time ago). With an abundance of free time this weekend it seemed like the perfect time to get hacking!

Before I could build anything I would need to know one thing: just how do you connect a CodeIgniter app to Facebook?

Read More

A Little More for You to Read

Yesterday morning I imported the best bits (plus a few other entries) from two of my old blogs

These blogs had languished unloved for some time, but it felt wrong to just drop them or completely abandon them. So now the highlights – such as they are – are here for you to have a read through, so head on over to the archive page to browse through them.