People aren't going to say what you want them to

I was listening to the L33t Tech Podcast and they mentioned that Twitter developer Alex Paine said that one of the things that’s causing all the stability problems for them is that Twitter was never designed as a communications platform where people would have back & forth conversations, it was meant to be a CMS.  Robert Scoble then said that the Twitter developers assumed that everyone would just answer their question “What are you doing?” 


But now with the @replies and #hashtags people are using it for all sorts of different things.  People are using it as  a bookmarking service, a todo list and geo-locator and so on.  Full-on conversations happen on Twitter. And although it may not be the best platform for it, once a conversation gets going, it tends to have its own momentum. Sure sometimes you can say “lets take this over to FriendFeed” or “lets go onto IM”, but if it’s a conversation where people have passionate opinions, that probably isn’t going to happen.  People aren’t going to stop and think first.  Usually.

Facebook ran into this same issue over the little word ‘is’.  Originally all Facebook status messages started with ‘is’, as in ‘Glenn is wasting time on Facebook instead of working” (Anyone from the office reading this, that was just an example, really).  They expected people to use it for the same purpose as twitter, as a ‘what are you doing/thinking right now’.  But of course, people didn’t want to just do that, they wanted to be able to say other things, maybe things not directly about them, or maybe in a different tense.  So you ended up with this weird Facebook-grammar like ‘Glenn is wow it’s really hot today’ (see this group for a good list of them), or you had to twist what you were going to say into something about you right now.  So really, Facebook was slowly molding you into a narcissist.

Continue reading

Why you should have your resume on your site

WillworkI have my resume on this site.   It’s in plain HTML, marked up with the hresume microformat.  A number of people have asked me why I’ve done this, whether it is not just a waste of space.  The fact is that even though I have no email address or phone number on this site, just the contact form, I get at least 2-3 messages a month from recruitment headhunters with job opportunities.  Quite a lot of these are decent roles, they may not be exactly what I’m looking for, but it’s a good thing to get your name & resume out there.

One of the main reasons for this is that if you type “.net resume Sydney” into Google, my resume usually turns up on the first or second page.  I know some people have a resume linked to on their site in Word or PDF format.  Now this is fine, and Google can index both formats, but it is far easier for the recruiters to scan HTML quickly and there’s no need to load other applications.  They go through a lot of resumes every day, so anything you can do to make yours more visible is going to help you out. 

Now make it a cut-down version, don’t give them everything, and I really don’t suggest putting your address, phone number or email address on there.  As I said, as long as you have a contact form of some sort, you’ll still get contacted.  Also I suggest leading with a summary, sort of a mini-cover letter.  Outline what you do now, briefly what you have done & what you’re looking for in your next job.

Also, keep an up-to-date version of your resume in Word or PDF format that you can send back to recruiters when they contact you.  I keep a copy on a USB thumbdrive that I carry everywhere.  Once a recruiter contacts you, they’re going to want a file that they can print out & send to the prospective employers.

One more thing I’d mention is this: if you’re not interested in a new job, still put your resume up.  You may not need a job now, but odds are that you will within the next year or two.  By putting your details out there you increase your visibility and increase the likelihood of getting a job when you need it.

Never turn down an opportunity.

New release for the FriendFeed Comments WordPress plugin – remembering your details

I’ve just checked in a new version of the FriendFeed Comments plugin, which you can download here.  If you’ve already got it installed it should be showing up that an update’s available any moment now.

There’s a lot of code tidy ups and debug improvements, but the major change is the addition of the ability to remember your FriendFeed username & API Key when you comment on or like a post.  There’s now a ‘remember’ checkbox under the API Key field (which is now password masked, like it always should have been!).  If you tick that, it will drop a cookie onto your computer which means you don’t have to keep typing in your username & API key for that blog.

An important security note: the cookie doesn’t contain any identifiable information in it.  It just has a hash key value that is used to look up your username & api key in the blog’s database (which is stored in plain text in the blog’s database).  There is no way through the plugin for the site owner to see your API Key, but if they open their database directly, it is possible.  As in any other case, only share your API key with sites that you trust.  If you don’t tick the ‘remember’ box, your username & api key will not be stored anywhere.

As always, try it out here and then give it a go on your site if you like.  Any problems, please let me know.

FeedDemon quietly updated to version 2.7

Amit Agarwal from Digital Inspiration has posted that FeedDemon, the best RSS reader ever, has been updated to version 2.7.  It’s kind of unexpected as the last version that was announced by Nick Bradbury was the 2.6.1 RC2.   Nick has added Amit’s post to his shared clippings folder, but other than that there’s been no ‘official’ announcement.  FileForum seems to have gotten the update first, and then the Newsgator download page was hastily updated to the 2.7 version (the page still mentions the 2.6 version, but the download file is for 2.7).


Continue reading

The UpdatePanel is evil

How’s that for an inflammatory title?

Let me prefix this post with a brief disclaimer.  I like Microsoft’s .NET platform.  C# is a great language to work in, it’s flexible & powerful.  Plus, the .NET framework contains some great functionality that makes my job so much easier.  In short, C# rocks.

Having said that, I have some issues with ASP.NET. Deane Barker from Gadgetopia has highlighted some of these issues, and while I’m not quite as down on it as he is, I think he makes some good points

ASP.Net is such an abstraction. It’s like one day Bill decided that we all knew too much about how the Web worked, and he needed to invent a framework that changed all the rules and hid all the scary HTTP stuff so that a generation of Web developers that he trained on his stuff exclusively would have a very skewed perspective about how the Web actually worked.

I hope that didn’t sound arrogant, but I do think that if you’ve never done any Web development except ASP.Net using Web Forms, then there’s a lot you missed about Web development.

I think the UpdatePanel released with the ASP.NET AJAX Extensions really demonstrates this issue.  The UpdatePanel is really powerful.  It allows you to write your code essentially the same as you always have, with a few small modifications.  You then just wrap your ASP/HTML controls in an UpdatePanel and hey presto, you’ve got them running as AJAX controls.  No page refreshes, no postbacks.  Except that last one isn’t true, it just looks true.  On each AJAX event (that is, any event that’s wired up in the code behind for a control that’s a trigger for an update panel), the page does a postback.  The full page load life-cycle, including the view state.  It has to be this way, or how else could you still access all the values and states of the controls in your code behind methods?

This is just the problem, it makes the development of AJAX-type sites too easy.  You don’t have to know what’s going on behind the scenes, you don’t have to understand the asynchronous calls made & the HTTP processes going on.

Now, this may not be all that important if you’re on a small site, with very few steps in the page life-cycle implemented, and small view state.  But if your site is large and complex, and you have a lot of controls on the page (ie large view state) this becomes a real issue.  If you page currently takes a couple of seconds to load, due to complex processing and data connections, then on every AJAX call, this is how long it’s going to take.  Obviously you won’t need to wait for the full page render time, but this is not usually the most time-consuming part of the page load process. Also, you should always make sure you don’t double handle stuff by wrapping as much as possible in a if (!IsPostback) block, but if the page is complex, this will still not always be enough.

Continue reading

Today's Music: Neil Diamond – Hot August Night (1972)

Cracking out the retro music this week. Songza is letting me pull out the old music that I haven’t listened to in ages. Was listening to They Might Be Giants – Istanbul when it recommended Neil Diamond. I was never a massive Neil Diamond fan, but Hot August Night is a great live album, so here’s a couple of my favourites.

Now Songza’s got me on to Charlie Parker, gotta love the old Jazz.