Google easter egg

Here’s a little easter egg for you on the Google search page.

Don’t type anything into the search box and click “I’m Feeling Lucky”

Up pops a large number… counting down in seconds. A quick conversation with a calculator says that this is counting down to the end of the world year.

countdown

Are people copying content from your blog? Yes they are!

I HAVE to tell you about the coolest thing I’ve seen for a long time. I’m just bursting with excitement about this! It’s kinda scary really!

If you run a blog then people are copying stuff off your page. Guaranteed. It happens all the time. Sometimes it’s malicious (take a look at http://ecommercesolutionnews.com/ and compare it to Linda Bustos’ hard work at http://www.getelastic.com/) but most of the time it’s just for emails to friends… “Hey, I saw this…”

You can’t really prevent the former, nor can you turn it to your advantage – short of going public and creating a big expensive stink about it. But the latter is an interesting situation. Here’s someone with an interest in your work sending content to someone else… but not giving them a way of coming back to the original. They lose out and you lose out.

I was recently introduced to the most amazing product from Calgary-based startup Tynt. Tynt Insight is a simple modification to your blog which monitors your blog page and… get this… it detects when anybody copies anything from your page. The even neater thing is what it does next: it amends the copied content in the clipboard to include a tagline referring the reader back to your blog. Just when you thought that was too neat for words… it gets better still! I know, I know… I’m borderline hysterical here, but there’s a reason. The URL in the added tagline is a link back to your blog with a unique id embedded in it… when the reader clicks on it it takes them back to your blog and shows the post that was copied from with the copied text highlighted!

Try it! Try it now! Copy a paragraph from this blog post and paste it into something… an email, a text editor, it doesn’t matter. Heck, I’ll do it for you, look… I copy text from a previous post:

tynt1

I paste it into an email. And look what happens:

tynt2

Then when someone clicks on the link, look where they go:

tynt3

Go on… tell me that isn’t cool – I dare you! Added to all of this, the blog owner gets a great dashboard on Tynt’s site with details of what’s been copied and a raft of analytics.

I met Kerri Knul at a presentation where she was demonstrating Tynt Insight and I was just blown away… I think I stood there with my mouth just opening and closing and no words coming out (disclosure: until she gave me a T-shirt). Sure, this solution’s not perfect – it only works in the more modern browsers and it’s a 2 second job to delete the tagline if you don’t want it. But for the majority of “Hey, I saw this…” cases I think it adds genuine value to the copier, the reader and to the blog owner.  If you have a WordPress.org blog then all you need to do is create an account at Tynt and add one line to your footer.php – so go try it out!

Preventable says “Be careful out there on Halloween”

For the last couple of weeks, I’ve been watching with interest Raul’s tweets about Preventable (‘The Community Against Preventable Injuries’ – a non-profit aimed at reducing the number of preventable injuries in BC).

I love what they’re doing… the idea that so many injuries are ‘accidents’ that just happen is rubbish and has annoyed me for a long time. “No – you crashing into the back of that car at the red light was NOT an accident. It didn’t happen ‘acidentally’. You hit him because you were driving too fast and/or not paying attention” etc etc. If people thought more about what they’re doing, thought about the risks inherent in their activity and took an extra minute or two to counter that risk then things would be much safer.

One of the things that Preventable point out is that the leading cause of death in BC for people between ages 1 and 44 is preventable injuries (notice that… I didn’t call them accidents). 1,200 people a year dead and 400,000 injured in BC alone.

Preventable’s big PR push at the moment is to get people to take care over Halloween. To be honest, Halloween is one of my least favorite times of the year. Probably a result of not having grown up here! It’s not the small children dressed up as princesses and pirates that annoy me. It’s not that I never get invited to the cool parties (this year’s an exception – more about that next week if I can rig up a costume at the last minute). It’s more the gangs of drunken teenagers roaming the streets and setting off fireworks. And yes, alcohol and explosives don’t mix… but they’re a harder audience to get to pay any attention!

Preventable’s been reaching out to the social media community recently. They have a great blog full of information on their website, they’re big on Twitter and yesterday they invited a gaggle of bloggers down to The Network Hub to communicate their message face-to-face (cos sometimes that’s just the best you know?) and hand out treats.

Yes, I went. Yes, I was bribed. Yes, this blog post is (partly) the result of their flagrant attempt to sway my judgment. An interesting evening was had in the company of some great Vancouver bloggers and social media folk. In the interest of transparency I should also point out that I profited from the evening to the tune of two plates of delicious sushi, a couple of handfuls of candy and a reflective trick-or-treat bag which has been passed on to a small child for use trick-or-treating – that’s one 6 year old who’ll be very safe out on Saturday night.

Barcamp Vancouver – what did we achieve?

(OK, a bit of sensationalism here, but…)

Last weekend’s Vancouver Barcamp was my second and I enjoyed it even more than the previous year’s event. I know I’m not alone – all the comments I’ve seen have been positive. But what has it achieved? I’m intrigued to find out about things that people learnt during Barcamp which are going to make measurable differences to, for example, their lives, their products or their working environments.

I ask this partly because I’m a little skeptical. Maybe I’m attending the wrong sessions so I’m wondering what it is that I missed. The experience that I personally get from Barcamp is totally positive but it’s about soft things:

  • meeting face-to-face with people I’ve only previously communicated with using 140 characters or less. Monica Hamburg pretty much fell into this category
  • reconnecting with people I haven’t seen for a while – Tyler Ingram for example
  • chance meetings with interesting people. For example two of the many fascinating strangers I bumped into over the weekend turned out to be Zak Greant and Steve Tannock
  • comparing war stories with other developers. The “freelance is not free” and “designers vs coders” sessions were great examples of this. It’s nice to know we’re all in the same boat, nobody has a perfect solution. Did we solve anything? Nope. Did we feel better about it afterwards? I think so
  • listening to how other people use technology. The “non-profits and technology” session was very interesting in that regard

So Barcamp was a great day and I can guarantee that I’ll be back again next year. But it’s hard to put a finger on any dramatic pieces of information that will change my life this week.

Do you disagree? Have you rushed into the office today armed with a new approach for something? Which session did you get the most out of? Who did you meet who changed your world? I’m eager to hear about it. Of course you might say “Barcamp is what you make it” and I agree. So what did YOU make it?

BCIT Term Wrapup

A good term at BCIT this Spring. A very good term, both in terms (oh dear!) of course enjoyment and in terms of marks.

I took the 12 week ‘XML For Web Applications’ COMP2899 course downtown. My first course at the downtown campus – it’s really nice there: very modern and shiny. Course was also excellent – interesting material… I never knew you could do so much with XML and there was so much XML capability built into every browser. I knew about basic XML, DTDs, XPATH and parsers already but the course also taught schemas, XSLT and web services – overall very interesting. The course required quite a lot of learning but the labs, assignments and tests were all very fair – basically just to show that you’d done and understood the lecture content. I got a 99% mark which I’m very pleased with – especially so because the final exam was closed book with no ‘cheat sheet’!

I took the XML course for several reasons. Partly because XML interests me – all applications need configuration data and free-format text files are a recipe for disaster. Partly because I’m trying to complete the Advanced Java Development Certificate program and none of the courses I still needed were running this term. There’s one required course which hasn’t run for at least 18 months! I emailed the part-time studies director and he recommended the XML course. The course isn’t on the Java program but apparently there’s a re-organization coming which will put it on there (although another 5 months have passed now and the XML course hasn’t been added to the Java program and the lost required course still hasn’t run).

Having looked at the XML course I noticed that it’s also part of the Web Application Software Development Certificate program. I looked at that program and was amazed… not only are all the courses on things I’m interested in, I’ve already done half of them! So now I have TWO goals.

Over the last year, I’ve come across small pieces of PHP in several places. Tweaking WordPress themes has exposed me to some, and the BCIT AJAX course has required writing some PHP to handle the server-side functionality but this has pretty much all been self-taught. So when I noticed that a PHP course, COMP1920, was part of the Web Development program and there was an accelerated version coming up, I signed up immediately.

The PHP course was really eye-opening. For starters, it was the standard 12 week syllabus condensed into 6 Saturdays – you do one ‘evening’ in the morning and the next ‘evening’ in the afternoon. The course itself started out at the basics as some of the students hadn’t even programmed before, let alone seen PHP. But with the workload doubled, I was very happy with the pace.

The course lecturer makes an incredible difference to any course and the PHP course reintroduced me to the best lecturer I’ve had at BCIT. Jason Harrison is a programmer’s programmer – he isn’t there to teach you the theory, the 20 different parameters you can use with a function, he’s there to teach you how to get results. Jason teaches the course as 80% programming and 20% business. One of the things that PHP is great for is rapidly developing web-based applications and so a lot of people make a lot of money from using it. It seemed that most of the students had signed up for the course with that in mind and so we were all as spellbound when Jason started offering advice about business strategy as when he introduced the fopen() function. Actually… maybe more so!

I’m used to lecturers emphasizing the evils of cheating and the need for students to complete their work on their own but Jason’s approach is the opposite. Yes, work that you hand in has to be written by you, but there’s nothing wrong with consulting other students for advice. After all, that’s what you’d do in the real world. In the PHP course, Jason takes it a stage further – there are sections of the course which you MUST complete with other students – some parts in pairs and the final assignment as a team. The final assignment was something I’ve never seen on a BCIT course. The brief was to form a team, research something related to the course material that might be of interest to the other students and then give a 30 minute presentation – complete with demonstration and class exercise.

The course work was great. Because we were working at double pace, the first half of the course was heavily loaded with labs to be submitted each week. The second half of the course had coding assignments, the final assignment and revision all falling over each other. This generated a terrific buzz – I was writing up our class exercise, struggling with PHP session management and guiding other students through their problems simultaneously. Again, just like the real world.

Everything came together wonderfully. The final coding assignment had two options: the easy option was marked to a maximum of 100%, the hard option was marked to a maximum of 115%. Unfortunately there was no overlap between the two projects… so you had to make a decision at the beginning and stick with it. I chose the hard option and got bogged down in session management for a bit but once I’d conquered that it came together well – I even had time to extend it beyond the requirements with a bit of personal flourish. Our presentation on email injection, form validation and CAPTCHA went very smoothly. I presented the class exercise on getting the other students to add a CAPTCHA test to an existing PHP form – went OK, most of the students managed to complete it and I think I answered all the questions well. It seems my Toastmasters experience showed through… I’d mentioned that I was in Toastmasters at the beginning of the course but not had any feedback. After my presentation I had THREE different people come up to me and ask me for more information. Because of the compressed timetable we had a short break after the presentations and then straight into the final exam, no time to rest on our laurels!

Overall I loved the course… content, lecturer, format all worked very well. Oh and I was very pleased with my mark as well… 100% :-)

Jason also teaches an advanced PHP course but for some reason it’s only scheduled once a year. I’m itching to get on that course!

Capturing video with Ubuntu (and a little rant)

My friend Erica was asking me today about video editing in Ubuntu. First she was asking about tools to use for editing.

I’ve toyed with ‘Open Movie Editor’ in the past. If you’re familiar with Adobe Premiere then you’ll be familiar with the general layout here… a timeline of multiple video and audio tracks, a preview window, multiple clips that you mix together with transitions etc. I’ll admit that it isn’t the same as Adobe Premiere but it does cost $799 less!

Open Movie Editor is in the Synaptic package manager. It’s available through the Ubuntu repositories but it’s supported by the community, not directly by Canonical. Erica had spotted Kino which is a much simpler program. It’s more like Windows Movie Editor – a single timeline with one clip transitioning into the next clip. Kino also has the advantage of being supported directly by Canonical.  Actually I was pretty impressed with it – I think it’ll be sufficient for all of my personal video editing tasks.

Great! So now we can edit videos.

But there’s a second problem – getting the video into Erica’s PC in the first place. She had a day’s worth of footage on a DV camcorder and Kino has an entire page dedicated to capture but when she connected the firewire (aka IEEE1394) cable between her PC and camcorder nothing happened… all the buttons remained greyed-out. What to do?

This prompted me to dig out my own camcorder and connect it up… same as her setup – nothing happened. Kino’s preferences panel says the  IEEE1394 subsystem is not responding. It’s actually pretty helpful – it says “you must have read and write access to /dev/raw1394. I checked and found that
a) the /dev/raw1394 device was owned by user root, group root
b) the permissions on it were rw-rw—-
So if you weren’t the root user or a member of the root group then you couldn’t use it!

This is all fixed by a quick
sudo chmod a+rw /dev/raw1394

And then the Kino capture buttons buttons sprang into life and video capture worked fine. Erica did the same and everything was good in the universe.

For a while.

But get this… the next time I turn my PC on, the permissions on /dev/raw1394 have reset to rw-rw—- so I have to chmod it again.

I truly believe that Linux is getting close to ready for ordinary non-technical consumers but this makes me wonder if perhaps I’m wrong. It’s bad enough that I have to go to the command line and change the device permissions once, but to have to do it every time I want to import video? I can’t see the logic in setting it up like that and I can’t see that it’s something a user-friendly operating system should require.

Maybe I’m not setting about this the way that I should be? Maybe there’s an easier way?

Firefox 3.5 quietly updated to ‘almost release candidate’

The latest beta of Firefox 3.5, labelled 3.5b4, has been out for a while now. There is however a more recent release – but it’s not announced on the Firefox website.

checkforupdatesThe latest version is 3.5b99 and is the final step on the road to the Release Candidate. In order to get 3.5b99 you need to download and run 3.5b4 from the website here, then select ‘Check for Updates’. Firefox will offer  you the option of upgrading, then restart. Note that you’ll probably lose a couple more of your add-ons after you upgrade.

The release notes say “We expect that the Firefox 3.5 Release Candidate to be issued shortly. At that time you will be automatically upgraded to that version.”

As for my personal impressions… 3.5 is fast, damn fast. And much lower memory footprint than 3.0. I’ve got a couple of negatives as well, but I want to investigate on a clean machine first before I’m sure about those.

Toastmasters catch-up

The end of the Toastmasters year is rapidly approaching and that probably makes this a good time to talk about where I am.

My club’s VP Education had to leave us a couple of months ago and I eagerly volunteered to step into her shoes. She’d been doing a fabulous job, especially with regard to pushing the Competent Leadership program so her shoes were big shoes to fill! I hope I’ve managed to keep going with the things she was working on and add a couple of new items of my own.

  • At the beginning of the meeting, after the functionaries have described their roles, I make a point of reminding people that if you’re performing a role you should pass your Competent Leadership manual to a neighbour for evaluation. It’s not hard and 80% of the work required for the CL award comes from just doing the normal things that you’d do in a normal Toastmasters meeting. Even the more unusual projects like Motivating People or Delegating are achievable within a 6 month time-frame, so there’s no excuse to not be getting that award.
  • We have such a good time in our meetings, I kinda feel sorry for the members who can’t make it on a given week! And also I know that, if you do skip a week, there’s a feeling of separation that makes you less likely to join us for the next week’s meeting. In an effort to solve both these problems, I’ve started sending out weekly meeting recaps. About 500 words describing the more significant features of the meeting: a sentence or two about each of the speakers, comments on humorous events or members who did something particularly worthy of praise, maybe a reminder about something important happening at the next meeting. I try to keep them short but there always seems to be a lot to talk about! In the long term I see this as maybe becoming one of the responsibilities of the meeting Chairman – take notes during the meeting and send out the recap, but for now I’ve taken it upon myself to do it each week just to see how it feels and if members find it worthwhile.
  • Functionary responsibilities. There’s lots of descriptions out there of what the various functionaries do. The trouble is that every club is slightly different. If it’s your first week as Chairman then the chances are that you’re going to base your tasks on what the Chairman you saw the previous week did. But it might have been their first time too – by learning like this there’s a danger that the functionary’s tasks becomes a game of Chinese Whispers. Also, in the heat of the moment, maybe you’ll forget to ask for one minute for written comments on a speaker or you’ll forget to call for a toast. So I’ve started writing a collection of one page job descriptions for the more significant functionary roles. I’m writing them as advisory frameworks i.e. “this is what we typically do but you’re welcome to tweak things or change things if you’d like to”. I think I’ll post them up here in the future.

We’ve taken on several new members recently and I’ve really enjoyed talking to them about the joys of Toastmasters and the ways in which it can help them. Our club is holding elections tonight for the next year’s Executive and I’m standing for VP Education. I’m hoping I can continue the work I’ve started and help to make the club, and all of its members, successful. It’s going to be a very exciting year!

Hosting Your Own Blog 101

People keep asking me questions about hosting their own blog – how does it work, should they use WordPress, should they use Blogger… I’m no expert but I’ve been there and done that so here’s the answer I give them.

If we’re talking about WordPress then it’s important to understand that there’s two different things here that are sometimes confused. One is the software that runs the blogs and the other is the domain that hosts them.

WordPress is free open-source software that runs blogs. You can download this software from wordpress.org and install it on pretty much any webserver i.e. copy it into the directories of a web hosting account. The web server then runs it for you and lets you do all the things you’d expect from a blog (upload stuff, edit stuff, display your blog to visitors etc).

Alternatively you can let someone else do it for you – and that’s what wordpress.com is – a website where you can sign up for your own blog and let someone else worry about the hosting and making sure there aren’t any errors. Note the distinction…  wordpress.org is where you can download the free software, wordpress.com is one place that runs that software to let people write blogs.

wordpress.com runs WordPress software with a couple of restrictions. Some of the restrictions are:

  • a choice of their supplied themes only
  • limited tweakability
  • limited sidebar widgets
  • it costs extra money to point your own domain at your blog
  • no advertising
  • very limited plug-in availability

To expand on some of those restrictions:

  • widgets are mini applets which can appear down the side of your blog. Things like tagclouds, archive lists, blogrolls etc
  • pointing your own domain at your blog allows you to have www.myblog.com instead of myblog.wordpress.com. Note that most people achieve “www.myblog.com” by buying that domain name and pointing it at a hosting account which runs the wordpress.org software. But if you really want to, you can buy the domain name and point it to a blog hosted at wordpress.com. It’ll cost you $15/year and you still have all the other limitations but overall you save money and someone else worries about keeping the blogging software working and up-to-date.
  • Plug-ins are small bits of program that can be added to the WordPress blog software to add new features – some of them are aimed at appearance, some at administration. Pretty much the only ones that wordpress.com supports are for statistics and spam filtering but there are thousands out there which can be added to a self-hosted WordPress blog.

Note the subtle distinction between plugins (which can modify the WordPress blog software to do anything) and widgets (which add some display functionality).

Similar to wordpress.com vs wordpress.org, there’s a distinction with Blogger between the Blogger software and the host that holds it at myblog.blogspot.com. Although one difference here is that the wordpress.org software is open source and freely available or you to install and run on your own server. The Blogger software is not – it’s owned by Google. So if you’re running a Blogger blog then you’ll never have full access to the flexibility that you can get with a wordpress.org blog. But you can point your own www.myblog.com domain at a blog hosted on blogspot.com, just the same as you could with wordpress.com

A WordPress blog hosted at wordpress.com vs a Blogger blog hosted at blogspot.com is really a matter of personal preference. In both cases you’re buying into a community which will get you visitors that you wouldn’t get if you were striking out on your own. However in both cases you’re also limited in what you can do with the blog by virtue of the fact that you’re running on somebody else’s website. The flipside of that is that the search engines will love you more (to start with at least) because wordpress.com and blogspot.com are both well-known domains that the search engines trust.

Note that the restrictions on blogspot.com hosted blogs are different to the restrictions on wordpress.com hosted blogs. If you aren’t keen to self-host but there’s something in the restriction list for one platform that’ll affect you then have a look at the other – you might find you can do what you wanted to do. Advertising is the one that springs to mind: not allowed on wordpress.com, allowed on blogspot.com

If you have plans to do this seriously, or even if you just want to play with it seriously, I’d recommend skipping the hand-holding and restrictions of wordpress.com and going straight to a self-hosted blog using the WordPress software. However to do this you need two expenses – you need to buy a domain and you need to buy web hosting. These will run you about $12/year and $6/month respectively. You may already have one or both of these.

This is what my wife Helen and I have done. We have a hosting account at BlueFur that we pay about $6/month for. The actual domain that points to that is juicybags.ca but if you click on that you’ll see that there’s very little there. We also have two other domain names that we own (one of which you’re looking at right now) . These domain names both point to sub-directories on our BlueFur account. In each of those sub-directories we have the WordPress software installed so if you go to either of those URLs you see one of our blogs. Because we’re running our own copies of the WordPress software, we can do anything we want with it. Helen’s just had her blog completely made-over with a custom theme. Both blogs have a whole stack of plug-ins installed.

Helen’s blog was originally a Blogger blog, mine was originally on wordpress.com. The WordPress software makes simple work of importing an existing blog along with all your posts, comments and categories from either platform. However you’re starting from scratch when it comes to themes, layouts and generally giving your blog your personality. You may consider this an advantage :-)

It’s hard to argue against the WordPress software if you want absolute control of your blog. You control the software, you can do anything you like with it. You CAN write custom layouts with blogger but you’re not controlling the underlying software so the degree of control you have is less than if you’re running WordPress. The question really is whether you want something that you can’t get from a blogger blog or a wordpress.com blog.

Having said ALL of that, it’s content above all else that makes a blog. There’s plenty of enormously successful and busy blogs out there running on Blogger with a blogspot url and also plenty of self-hosted WordPress blogs that are never updated and never visited!

There’s all manner of other blogging platforms out there and everybody will offer a recommendation and it’s almost always going to be to use the same platform that they use – like asking people what’s the best car to buy.

But there’s nothing wrong with the ‘non WordPress’ platforms – there’s lots of high traffic, high quality stuff on Blogger. One of Helen’s Blogger favourites is www.keeperofthecheerios.com – like many Blogger blogs the only ways you’d know it was on Blogger are the top banner line and the comments page. To the best of my knowledge you’re never going to completely hide the origins of a Blogger blog the way you can with a self-hosted WordPress blog (look at http://blogs.zdnet.com/mobile-gadgeteer/?p=1731 for instance – the only way to know that that’s WordPress is to study the HTML). But for most people, who cares? Blogger doesn’t prevent you from having a stylish blog, it just means your style is going to be different to a WordPress blog.

One of the core differences I see between self-hosted WordPress blogs and Blogger blogs is the use of plug-ins. Stick a couple of plug-ins on a WordPress blog and you can radically change not just the look & feel but also the functionality. THIS I believe is key to the advantage that a sophisticated blog gets with WordPress – plug-ins are effectively changing and extending the WordPress code. Although I should point out that a lot of the WordPress plugins are concerned with improving comment functionality and that’s probably because a self-hosted WordPress blog loses a lot of the sense of community that you get with Blogger or wordpress.com… suddenly you’re just a single blog out there on your own on the internet. Things like Gravatars and CommentLuv help to tie your comments back to the blogs of your visitors – and that sense of community is a big factor in building readership. Not as big a factor as good quality content though!

What to do with your shreddings

What to do with your shredded documentsThese days, everybody needs a paper shredder. And not just something that turns your private papers into long strips of spaghetti. You need a proper confetti shredder (also known as a cross-cut shredder) that turns them into 2 inch long snippets.

A lot of people seem to think that identity theft is a recent phenomena but it’s been going on for a long time. Over twenty years ago, a friend of mine received a department store credit card statement for $2000 of home appliances that she hadn’t bought. It turned out that someone had stolen a couple of utility bills off her doorstep and applied for a store-card in her name. I think what angered her the most was that she’d previously been turned down for credit by the same store! That was over twenty years ago and I’m sure that other people have similar tales going back as far as the concept of ‘credit’.

If you’re the sort of thoughtful individual who worries about identity theft then I suspect you might also be the sort of thoughtful individual who worries about the environment and wants to recycle your papers, plastics, tins, bottles etc. – like me.

But what can I do with my shredded paper?

I can’t tip it into the sack for mixed papers because it’ll all blow away. I can’t put it in a plastic bag because that gets recycled separately. It seems counter-productive to buy paper sacks to put it in. And I don’t want to throw it out with the household garbage.

I’ve found the perfect solution… cereal boxes. When the shredder is half full I get an empty cereal box, fill it with shreddings, tape up the top and put it out with the mixed papers. The perfect solution and super simple!