Saturday, March 13, 2010

Yes Virginia, Cold Call Email Blasts Do Work

One of the biggest unknowns for me running a conference is how to best do marketing for the event. In addition to having an awesome buddy on the ground in the host city pounding the pavement for me (shout out to Gary), I had to come up with some other marketing initiatives to get the word out.

One of these was to go through the established user group community. We handed out cards, gave away some free registrations, and the fruit of that will hopefully be seen before the first early bird price date passes.

I also tried another angle: the cold-call email blast. I used canpages.com to look up software development and computer consulting organizations in the cities I wanted to target. After compiling a list of email addresses for them, I put together a nice marketing-type email and sent it off through the interwebs to 42 companies in 5 different cities. Doing this type of marketing for anything is a lot like fishing: you cast out your line, not knowing whether you’ll get anything nibbling on your bait. But yesterday I got a bite!

A company that was part of my email recipient list registered four of their employees for the conference! Now, you might think “Wow, 1 company out of 42…is that really success?” Well, yes! That’s four more registrations that I might not have gotten otherwise. Email campaigns are an important tool, but its one that expectations need to be managed for. Its like doing telemarketing outcalls: out of all the calls you make, only a small number will actually buy what you’re selling. Doing a cold-call email campaign can have the same sort of effect.

But for me, I’m very pleased that people are reading the emails, checking out the conference site, and even registering! It’s a tactic that shouldn’t be overlooked.

Sunday, February 21, 2010

No Good Deed Goes Unpunished – Dangers of Community Development

Over the last decade we’ve seen an explosion of channels for small scale organizations and individuals to create and release software applications and services to the world easily. XBox has their program where community created XNA games can be purchased on XBox live. Apple has their app store. New platforms, like Android, are encouraging developers to create applications for them. It’s not just about the big titles anymore, its about who has the widest number of appealing applications that helps a platform succeed (consider that you don’t hear too many developing for the Palm Pre).

What this has created is a developer community that may not be thinking from a business and legal standpoint though. The ability to create simple applications that collect, retrieve, and/or display data speaks to the creativity but doesn’t address the realities of our legal realm.

Consider the case of the developer who created an Android application to identify the city and state an incoming call was originating from. From the blog post:

So, I took some time this weekend to develop an Android application.  The application displays the city name and state someone is calling from.  This application is something I've wanted on a phone.  So I thought I would share!

He did what many geeks and software developers would do: he tried creating an application for a shiny new platform to see what the experience was like. At the end of it, he released it to the Android marketplace…for free.

As the saying goes: no good deed goes unpunished. He’s now being sued by a company that not only has a similar product available but also holds a patent for the process of displaying a city name and state on a screen. He provides links to the patents and the company on his blog post, but here’s the abstract from one of the patents:

An improved decoding and processing system is provided for advanced determination and display of geographic information to a called party relating to the call origination party. The improved system comprises a receiving means to receive the calling number delivery (CND) message from a local central office (CO) switch or mobile station switching center; a microcontroller storage and retrieval device containing a data base library for selectively determining the corresponding geographic information such as city and/or state by matching the area code and/or local exchange number received from the call origination party; and a readout device for displaying the city and/or state of the incoming call. Preferably, the system includes capability to automatically update the data base library of the storage and retrieval device as new area codes and/or local exchanges are subsequently assigned. Accordingly, the improved system provides the user with convenient and efficient display of geographic information related to caller identification that is capable of determining an ever-increasing number of area code and local telephone exchange numbers.

Some people would read that and say “That’s not an invention, that’s a requirements summary for a software application.” What’s interesting is the suggestion as to the origin of the patent, which isn’t the company that currently owns it. From encyclopedia.com:

SEATTLE -- Cequint, Inc., a leading provider of Caller ID and call screening products for wireless, announced today the purchase of U.S. Patent No. 6,353,664, a pioneering patent on the display of location information for screening incoming and outgoing calls. The patent was purchased from LSI, formerly Agere.

Originally developed by Lucent in 1997, the patent represents a significant innovation in providing location information on a device for purposes of enhancing caller identification.

Originally developed by Lucent in 1997?! Back then the abstract provided definitely *was* an invention! We didn’t have the advances in software and platforms that we do now. The fact that this patent is even allowed to survive is further proof that the patent offices in North America haven’t kept up with the rapid change of technology and the changing definition of “invention”.

But this post isn’t about patent law, its about us as content/product creators and what we can learn from this man’s experience.

Names Are Important
Names we use, even for software we’re planning on giving away for free, are important. Very important. Companies spend huge sums of money every year ensuring that names, slogans, and images are protected under trademark laws.

Because of that, you can’t assume that the name you want to use is available to you. This is one of the issues for the creator of the Android app. He named his application City Caller ID. The company suing him has the name City ID trademarked. Two applications that do the same thing and have such close names is an obvious issue.

Know The Patents
In a book I read recently, the US author stated how the US is the most litigious country in the world. Unfortunately suing is not just a tool of justice, but part of the business game. Because of this, and because of the issues with patents being released for things that arguably aren’t true “inventions”, its important before you release anything that you check for existing patents and ensure that you’re not infringing on anything.

Is this extreme? Well, no. What we don’t realize is that when we release something into the market, even if its free, its now competing with other products in the market. We see the internet as a flea market, when really we’re entering the same marketplace as any established company. The platform creators don’t push this to the developers though, mainly because they want to encourage application dev and not create fear mongering that the next app published could be targeted for a lawsuit.

Don’t Hate the Player, Hate the Game
On a moral level, I absolutely disagree with the way the suing company is acting. They easily could have sent a cease and desist order first, assuming they believe that this application was released without the individual doing due-diligence and not meant to maliciously damage the company.

Regardless, the law is the law and they are within their right to bring this to litigation. If this makes you angry, and it should, then get in contact with your government representatives to push for patent reform. Note that we’re talking about the US mainly here, but all of what I’ve written applies to any country.

My hope for the software dev in this story is that there can be some sort of agreement between the parties that avoids this going to trial and any huge damages being levied against him. For us, this is a warning about what can happen when we don’t understand or respect the rules of the arena we decide to play in. It’s also a rallying point for us to push for rule changes to how we do battle within it.

CC

Tuesday, February 9, 2010

Fun With CRA – Be Aware of Instalment Payments

In 2008 I was, for the most part, self employed. I did quite a few speaking engagements that involved travel, hotel, and food expenses, and I assumed that the expense write-offs would have a huge dent in the taxes I’d eventually have to pay at the end of the year.

You know what they say about assumptions.

So I owed a bit of taxes for 2008, no biggie. This past Summer (2009), I was sent a notice from Revenue Canada saying that it was time to make some instalment payments. This was obviously about my taxes from 2008, so I paid them off and continued on with my now full-time employee life.

Today I got a call from Canada Revenue Agency alerting me that I still owed all my taxes for 2008. Say WHAT?! This was quite the distressing news: did a cheque get misplaced, did I imagine making those payments, did the money go to the wrong account (like under my wife’s)…all these things raced through my mind as I raced home.

I reviewed my records and there were the payments that were made right in my bank statements. I called CRA back, confident that I was vindicated! But I wasn’t…and in fact, I actually *hadn’t* paid my 2008 taxes…

 Self Employment and Your Tax Schedule

When I was self employed, I *vaguely* remember at some point agreeing to a quarterly tax payment schedule (as opposed to the end of the year like normal). What happened as a result was that CRA looked at what I owed in 2008 for taxes and assumed that I’d probably owe a similar amount in 2009. So last summer they sent an instalment notice saying that I could pay by x date towards my 2009 tax year.

What I did when I saw that was assume it was talking about my 2008 taxes since the amounts were similar (even though it said plainly it was for the 2009 tax year…why would I pay income tax before the year was over?). So all this time I’ve been derelict on my 2008 taxes, but my 2009 tax account has been overflowing!

Luckily, I do have the option to move the income tax I’ve paid in 2009 into my 2008 account, so I’m only out a small amount to cover the accrued interest.

So here’s the takeaways:

Know Your Tax Schedule
If you do agree to a non-yearly tax schedule, understand what that means! Mark it on your calendar, set up reminders, or better yet STAY YEARLY (I really don’t understand the rationale of making early payments…)

Pay Attention to What Tax Year CRA Communications Refer To
CRA has different buckets set up for you as far as taxes go. So it is possible that you owe money for a past year’s bucket and yet have extra stored in a present year’s. If you get a notice from them, make sure you understand what its for and what year its for.

Don’t Assume CRA Staff are Dinks, But Don’t Assume They Tell You Everything
The guy I dealt with at CRA was awesome…he was very patient in trying to explain to me why I still owed money from 2008 even though I had paid it in 2009. With that said, it wasn’t until I called my accountant that I realized I could transfer the money I paid for 2009 taxes to my 2008 taxes. CRA staff are calling you because they need payment, not to give you advice.

Have a Great Accountant You Can Get A Hold Of
’Nuff said.

The Importance of Details

I’m very fortunate to have an amazing graphics artist putting the conference website together. She’s done an amazing job, and I don’t want this post to sound like I’m slaggin’ anyone…its more of a “lessons learned” thing.

We’re launching the site this week and I was sent all of the HTML for the site so I could get it setup on my web host. Admittedly, I didn’t look at them as soon as I got them.

Lesson – Don’t Put Off To Tomorrow What You Can Do Today

When I popped open the zip file last night I saw a collection of PHP files. I wasn’t expecting PHP, but whatever…no biggie. At least, until I tried to get it running on my web host. Turns out that they don’t support PHP.

Luckily the damage was very minor: PHP script was just being used for include files (header, footer, etc.) and for some menu aesthetics…nothing that can’t be remedied with a little Javascript.

But it leads to the real lesson of this experience:

Lesson - Don’t Assume, Spell Out All The Details

*Especially* if you’re a developer dealing with a graphics person. That’s not a slag against graphic artists, its just reality: I live in a Microsoft world with Microsoft hosting providers and Microsoft technologies and leveraging Javascript for UI goodness. Graphics people live in an Adobe world with PHP and Flash. Sometimes terms can mean different things, so make sure you investigate and communicate limitations up front (i.e. If I provided the web host capabilities up front, this wouldn’t be an issue).

Note: In the time it took me to write this post, she had the updated site in my inbox…awesome people = awesome results!

Monday, February 8, 2010

Merchant Account Fiasco

Last Fall I helped organize a local developer conference and we used a registration service to handle our online credit card processing fees. It went really well, but the downside is that their rates are a bit high.

For my upcoming conference I wanted to try and save a bit of money on the credit card processing, and to do this I’d need to open a Merchant Account. From Wikipedia:

A merchant account is a type of bank account that allows businesses to accept payments by debit or credit cards.

I went into this process very naively. I assumed opening a merchant account would be akin to opening a bank account: you go in, you sign papers, you get an account and an account number. Voila, done and done. Unfortunately this was not my reality.

My business banks with BMO, but the banks themselves don’t handle merchant accounts. Other companies do, and BMO partnered with the Royal Bank to create a company called Moneris which they recommend to businesses looking to create merchant accounts. I was put in touch with a Moneris rep and began the process.

And what a process it was! Remember that all I needed was an account to handle online credit card payments. To do this though, I would need to complete a few steps.

Step 1 – Bring Up the Website to Moneris’ Standards
There are a whack of standards your site must meet to use a Moneris merchant account: Privacy Policy, Terms of Service, Refund Policy, visible images of the credit cards accepted, etc. These must be in place before the credit application can go forward.

I was able to provide a test-site for the registration so that they could go through and ensure everything required was set up properly, but as a final signoff they required seeing the registration link be live from the main website. This can be challenging if you don’t want your website open for registration beforehand.

I get why they did this: they want to ensure that I’m actually collecting registrations from the site I’m claiming I am, but its still annoying.

Step 2 – Take Out a Mortgage
Well, not really…but let me tell you: the credit application you fill out for opening a merchant account feels like you’re taking out a mortgage. You’re asked about your assets, liabilities, current income, previous loans, dependents, life insurance, etc. It’s a full disclosure of your entire financial standing.

Step 3 – Expect the Unexpected
At this point I’m very frustrated with the process. It just seems like more work than it has to be to open up a merchant account, and it also feels like Moneris has more involvement with my business than I want it to (While Privacy Policies and Terms of Use are good for any website to have, why is my merchant account provider dictating that to me?). I also felt very uncomfortable with the amount of financial information I had to provide.

But then came the phone call today that pretty much ended my quest for a merchant account. Someone from the credit department at Moneris called me to say that the merchant account could be opened contingent on a few things:

1) Need registration link available from the actual webpage, not just the testing link, to verify that the registration is from me (I mentioned this previously).

2) Provide a $6,500 deposit to cover 50% of the credit exposure. This would be paid back after a certain time period.

3) Something about Non-face-to-face transactions…

I didn’t really hear what she was saying at #3 because I was dumbfounded by #2: $6,500 deposit?! So basically, I had to partially cover the payments I’d process up front to ensure that if there were issues with refunds or anything that I’d actually pay them back and lower the risk on Moneris’ side.

Great for Moneris, but horrible for me. And insulting really. I understand in this day and age that there needs to be more scrutiny to ensure fraudulent and criminal activities aren’t being performed. And maybe, because Moneris is such a big player in the debit card machine business, they see website payment processing as a higher risk and therefore need more hedging.

But this is just ridiculous! How can it be so difficult to open an account to handle online payment processing?! Why are businesses made to feel like they need to jump through hoops for the privilege of using Moneris’ services?

I was trying to get a less expensive method for processing credit card payments. Instead I just wasted a lot of time, got very frustrated, and pushed back launching my site registration.

Very disappointing Moneris, very disappointing.

Wednesday, January 27, 2010

A Year Later and New Adventures!

It’s been a years since I’ve posted here and a lot has happened in my life. I’ve joined a really great company that gives me a lot of freedom to learn and grow in my career, trying new areas of the business that I’ve always wanted to step into. I’ve also become a father to a beautiful little girl, so I’ve added “Daddy” to my list of roles.

But now in 2010 I’m also adding one more title: conference organizer! Really this isn’t a new title for me. I’ve organized code camps and a one-day tech conference through my employer last October. But this is the next logical step: I’m organizing a large technology conference in another city!

I’ll be posting here over the next 6 months talking about the experience, what worked and what didn’t, and even some ramblings on what I think the future holds for conference events and learning opportunities for professionals.

So let’s blow the dust off this feed and settle in for an interesting 6 month ride!

Sunday, January 18, 2009

Rewarding Employees – Don’t Ask ‘How’, Ask ‘Why’

In the current issue of Inc. Magazine, Joel Spolsky discusses something that many businesses face: how do you measure and reward performance.

He discusses in the article the young intern who came up with an idea that brought in a million dollars (almost all profit) for 4 weeks of work. Pretty good ROI for sinking 4 weeks of salary.

But even in the shadow of this obviously huge feat, Joel still struggled with whether to compensate the developer. He writes:

How do you properly compensate an employee for a smash-hit, million-dollar idea? On the one hand, you could argue that you don’t have to – a software business is basically an idea factory. We were already paying Noah for his ideas. That was the nature of his employee agreement with us. Why pay twice?

And what about everybody else at Fog Creek? Those people were doing their jobs, too. Simply because one programmer’s idea translated visibly and directly into a lot of money didn’t mean that the other team members weren’t adding just as much value to the business, albeit in a less direct way.

In the middle of the page (in the printed magazine), is another quote from the article:

The very act of rewarding workers for a job well done tends to make them think they are doing it solely for the reward.

When I first read the article, I was going to write a blog post around some ideas I had relating to the topic. But as I read it, and re-read it, I got angrier. Not at Joel specifically…in fact I applaud that he was so open about his experiences and views on employee compensation and rewards. No, my issue is with the software industry in general and how the employee/employer relationship is viewed.

The issue of how to compensate employees shouldn't be the question business owners need to answer. Why are your employees asking for compensation for their exemplary work is.

This wouldn’t even be an issue in our industry if businesses took more time to evaluate how they view their staff. Many organizations try to attach the same models found in other industries. Those models don’t work.

Example: I used to work for a guy who previously had been a manager at a car dealership. He tried to apply the same tactics used to motivate sales people with the developer staff. Unfortunately, developers have a lower tolerance for bullshit and the entire desktop division that I was part of (nine staff) eventually left the company within a year.

I suggest two areas that need to be addressed by businesses to help them realize exactly how they view their staff and the relationship between ownership/management and their workers.

First, be real about how you view your employees. You have two options really, which is what I describe below under ‘Employees Don’t Exist’.

The second is to be honest about how your business views itself in relation to its employees. I give some examples of that in ‘Employers Are In Denial’ further below.

Employees Don't Exist

You are either a Wage-Slave or you are a Partner. There are no employees in IT.

Wage-Slaves are those that get hired by a company for a set amount of money as compensation. They are then tasked with doing whatever they can to help further the company including sacrificing their own lives when the company requires their time, accepting any directive or command from the company, and coming up with million-dollar ideas. They are promised yearly reviews and raises, and office amenities are usually pointed out as other perks for working (drinks in the fridge, treat days, etc.). While companies will talk about the importance of keeping talent, many see their wage-slaves as replaceable - burn one out, you can just get rid of them and replace them. Wage-Slaves are expendable.

Partners are mythical. I hear they exist, and I know of one company that actively tries to make their staff true "partners" in the business. But by and large, you have a better chance of seeing a unicorn then a Partner. Partners live in an environment where the success of an individual is shared by all, through shares in the company or profit sharing or some other means. Their thoughts and opinions are valued in forming the course of the company and everyone has a seat at the board room table, not just listening in through the door. Partners also have responsibility in ensuring the work environment is one that fosters trust and cooperation. Partners have a vested interest in seeing the company succeed because it means direct gains for them beyond continually getting a paycheck.

Employers Are In Denial

Maybe you're an employer reading this and you think "Well, I don't treat my employees as wave-slaves!" This is a common response...nobody wants to feel like they really, deep down, view their employees as nothing more than resources. Many businesses try to mask reality by applying different archetypes to their business:

The Family
Companies that claim that they are a "family" without anything beyond a salary binding their employees to the company are simply trying to cast the Manson family as the Brady Bunch.

Families love each other. Families are there for each other through trying times. Families go out of their way and sacrifice for the oldest, the youngest, the dumbest, and the poorest, even if its at a personal cost. Businesses DON'T.

Businesses care about profit, and if you aren't helping with that, then your spot in the "family" can be easily replaced. Don't call your business a family unless it literally *is* your family...and even then, I'm sure there are some businesses that really would fire grandma.

Personal Jesus
Oh if only I had a dollar for every time I heard a business owner say "You don't have as much vested in the company as I do...my house is on the line...I took a second mortgage out...blah blah blah". Why, people in their employ should be *grateful* that they stuck their necks out on the line so that the opportunity to work for them was even created in the first place! Of course, the trade off for that gratefulness is total and complete loyalty and submissiveness.

Look, there is always a risk involved with starting a business...but there's also more REWARD for those that do and succeed. People who choose to be in your employment are doing YOU a service by agreeing to help pay off your house, your car, or put your kids through college. The IT industry is a pantheon, and there's more than one saviour that we can choose to serve.

The Government
Secrecy is king in the Government business. Staff are always praised for the work that they do and thanked for their commitment and service, but all discussion surrounding the company are done behind closed doors. Information is sanitized and structured, delivered as part of some yearly kick off meeting where employees aren’t part of the process of forming goals, policies, or vision…they’re just the ones tasked with carrying out what “the government” has decided.

Staff may be able to have a say, but only by approaching the decision makers and making a case for their stance. Opinions are rarely collected.

What Next?

You’re probably thinking its just easier to answer the original question about how to properly compensate an employee for good work. But its not, its just covering up the bigger issue of employer/staff relationship. Joel even states in his article that formalized pay-for-performance programs don’t work.

As always, the right thing to do…the thing that will make your organization better in the long run…is also the toughest, painful, messy thing to do. It means being honest about your business’s deficiencies and committing to change not just company policies or guidelines, but how you…as a business owner, as a person…view your staff and their role in your organization.

If you make your staff partners in the business, if you can get them to buy into the idea of your company and give them a true stake in its success, then you won’t need to worry about your staff wanting something “over and above” their paycheck for a job well done. They’ll want to do an exemplary job because the success of the company will mean as much to them as it does to you.

D