Entries Tagged as Meta

Happy 5th Blog Birthday To Me

It's hard to believe but this blog is one of the most consistent things I've done online, ever. I don't have the post frequency or count of, say, Ben Nadel or Ray Camden, but I've not gone a single month without posting on this blog for the last 5 years. (I even came up with what I consider to be a clever way of navigating old entries by month in a grid format, which clearly illustrates this trend.)

I've been on this domain since July 23rd 2007, but for almost a year prior I was using WordPress installed in a sub-folder on a now-defunct blog, on a domain I recently allowed to expire. Ah, memories.

At any rate, here's to 5 years, and hopefully many more to come!

in Meta | 2 Responses Posted 2012-04-27 09:00

Bloggers: Stop Outsourcing Your Code Samples!

I get it, really, I do. Syntax highlighting plugins can sometimes be a pain in the rear... sometimes they don't work the way you want them to, sometimes they conflict with other things your site is trying to do, and sometimes you have to fight with (some of) them to get the characters you want to display displayed (e.g. encoding greater-than and less-than symbols as &gt; and &lt; instead of just writing > and <)...

Lately I've seen many blogs switching to the use of embedded Gists as a way to show code samples. I think this is a terrible idea.

Sure, Github seems pretty stable and popular now. I love Github and I host many of my projects there, but you won't see me outsourcing my blog code-sample hosting to them.

What happens if they get bought by AOL for two billion dollars and AOL decides they just don't like the Gist service. Poof. Gone. Your blog, which will live on in perpetuity (as long as you keep paying the bills) now has large and important chunks missing. The value of those posts just disappeared.

Even if they decided to give you 6 months notice before shutting the service down? You'd then have to go through your entire blog history and convert the gists into either another service or embed them in the blog directly.

By hosting your code samples elsewhere -- anywhere other than on your own blog -- you're making a bet. And that's not a bet I would make, ever.

I've tried most of the options available. ColdFish, embedded in most versions of BlogCFC is not horrible. I even used the aptly but unimaginatively named Syntax Highlighter.

These days I've settled on what I think is a much more robust solution: Prettify. It's a JS library from Google that is 100% language agnostic. You don't have to do any "brushes" like Syntax Highlighter. You just wrap every code sample in <pre class="prettyprint"> and include the JS library on your page. And if you're not a huge fan of the color scheme, there are existing themes and it's easy to tweak it and create your own, too.

So please, bloggers... Knock it off. You're making the internet worse, not better, with these shenanigans.

in Meta | 8 Responses Posted 2012-04-19 08:18

New Job for the New Year

Just a few weeks ago I resigned from my position at Wharton Computing. I'll be moving on to work with my friend Steve Rittler, at his company CounterMarch Systems. I am eternally grateful for the friendships forged and experiences gained during my time at Wharton, but all good things must come to an end.

The upshot is that since I will be working from home full time I will have back the 3 hours of each day that I previously spent commuting; which means I'll be able to spend more time with my family, and one thing in particular that I'm excited about: We'll all be able to eat breakfast together. It also means that I'll have no excuse not to join the gym down the street from my house and get working on Goal #6.

I can't help but be excited for my new job. Working from home, for a small company, with one of your best friends -- does it get any better than that? We'll just have to see.

On a related note: If you're in the Philly area (or willing to relocate, but telecommuting is not an option), The Learning Lab (my former team) is looking for a hot shot web developer to be my replacement.

in Jobs | Meta | 6 Responses Posted 2012-01-27 02:50

Goals for 2012

I have taken the last few years off from posting my goals, but I don't see any reason not to start up again. I'm not really one for resolutions, mostly because of their binary nature: either you succeed or you fail. Life is rarely like that. Goals are more my style: even if you don't get to 100% of your goal, you can still get 96% there, and that's something!

Since I didn't make official goals for 2011, here's a quick list of things I did this year that I'm pleased with:

  • My second son, Ethan, was born in January, and in the last few weeks he's been starting to walk!
  • I really started taking reading seriously. I read 23.333 books in 2011 (My goal was 24, and I'm still finishing up the last one). Getting a Kindle definitely helped with this.
  • I released 4 updates to my various Mango Blog plugins.
  • I presented on the CFMeetup (online) and at CF.Objective()
  • I really started taking Git seriously, and it has been a boon of productivity. I'll never go back to SVN if I don't have to!
  • I released my first near-native mobile app, The Squeeze, for BlackBerry Playbook. (I've since given up on the platform, but we still use our Playbook, because it's the best video camera we have.)
  • I upgraded from a 13" Macbook to a 15" Macbook Pro. Buying used is definitely a good way to save money, but there are some pitfalls.
  • I wrote an article for the Adobe Developer Center for Flex 3 developers who need to update their knowledge to Flex 4/4.5.
  • Compadre Steve Rittler and I created, organized, and ran Philly Merge, a one day regional conference (Philadelphia) "For Entrepreneur-Developers and Developer-Entrepreneurs".
  • I fell in love with TDD all over again when I realized how necessary it is to work on fragile setups, like those I was creating with ColdFusion's ORM.
  • I participated in the How I Got Started in ColdFusion meme.
  • I finally figured out freaking SPF records in DNS. Geez.
  • While I haven't yet released Taffy 1.1, which was definitely a goal for 2011, I did get RC1 out the door and all that remains before 1.1 is officially released is to write more documentation.
  • I created a GitHub "organization" dedicated to helping fill the gaps in CFScript.
  • I proved once and for all why Tabs are Superior to Spaces!

Now, the fun part, my goals for 2012:

  • Finally release Taffy 1.1. I really want this one done in the next month or two.
  • Read 24 books. I felt like this was an incredible pace last year. Two books a month is still a pretty high goal for me.
  • Do well in my presentation for CFObjective this year.
  • Attend JSConf 2012 (no date announced yet). If there were only one language that I need to know aside from ColdFusion (and let's face it, there's more than that), it's JavaScript. 2011 saw my JS skills greatly improve, and the next step is definitely to continue reading about it and to start attending training/conferences.
  • Continue doing Yoga regularly. I started doing Yoga (again) in November or December of 2011 and it's been a great workout and really improves my flexibility and balance. My favorite video to follow is very fast paced, too, so I get a bit of a cardio workout in the process.
  • Lose some weight. My metabolism is finally catching up with me (or I with it?)... and I'm starting to tip the scales into the overweight category. At least, it feels that way given the way the weight is distributed. Mostly I need to work on my gut. I would be thrilled to lose about 10 pounds, especially if the majority of it came from the mid-section.
  • Make Philly Merge 2012 a reality.
  • Watch the Phillies take the World Series trophy back. Ok, so this one is mostly out of my control. Except for the watching part. But I will take my part seriously!

Did I miss anything obvious?

in Meta | No Responses Yet Posted 2012-01-02 09:34

My experience moving from 1Password to LastPass

I love 1Password. A lot. So this is a bittersweet post.

I love 1Password so much, in fact, that after several months -- maybe a year -- of using it for my personal password management, I recommended it as a way for my team to share passwords. We have ~30 applications we maintain, and each has sql passwords, api keys, etc, for each environment (dev, stage, prod)... plus a gamut of other passwords that need to be shared, so something was necessary. The series of text files we inherited wasn't scaling well.

It worked out great... For a while.

I keep my personal 1Password keychain file in my dropbox, for various reasons:

  • Access to it from anywhere, including my phone (making it easy to copy+paste those complex generated passwords on the go) and computers without a 1Password client installed
  • Sharing it across various machines I work from, with automatic sync. If I sign up for a new site while at work, the password is waiting for me when I get home.
  • Free & encrypted cloud-based backup

When we started sharing a 1Password keychain for our team, it only made sense to also put that file in dropbox too. We have a folder that we share with everyone on the team, and we just put it in there.

For a while, this worked quite well. The only problem was that switching between keychain files could be annoying. Luckily, I figured out a workaround that made this pretty painless: Just drag shortcuts to both keychain files onto the OSX Dock (YMMV on other operating systems), and click them to tell 1Password which one you want to use. The browser extensions will always associate with the last file you had open in the application.

That was then. The good ole days. These days, if you use this approach, you may find your credit card numbers (and other private information) in the wrong keychain! Unless you want your coworkers ordering prank books for you, this is probably bad.

So, after much agony and strife, I reluctantly decided to switch my personal password repository to LastPass. I figured switching myself would be less hassle for the rest of the team, who are likely not using 1Password for their personal data.

I was thrilled to find that you can export your 1Password data and import it into LastPass. In fact, that made my day! I was not excited at the prospect of having to manually copy over the details of several hundred accounts. So thank you, LastPass team, for that feature.

So that's the story of how I got here. But what do I think of LastPass so far?

  • The chrome extension lacks polish. In just about every way imaginable, it's usability and user experience is inferior to 1Password. But it works.
  • I really dig how it auto-fills password forms for you without even a button press or keyboard shortcut (in most situations).
  • The software serials that I had in 1Password don't seem to have imported well. There are entries for them, but all of the useful information (license number, amount paid, date purchased, etc) are lost. They end up in the "form fill profiles" section.

It's only been a day. We'll see how I feel about it in a week/month/year. Maybe I'll follow up further down the road.

in Meta | 11 Responses Posted 2011-11-03 08:00