Keys That Click - Minding your own design business and other observations

Archive for April, 2010

Playing the Role of Accounts Receivable and the Associated Pains

Posted in Business, on April 30th, 2010 by Carlos.

I just finished reading the Wall Street Journal article entitled, More Freelancers Fight to Be Paid, and would have to agree that for self-employed individuals collecting on your accounts receivable can be a daunting task. It can be like asking Howie Mandel to “open the case” and hoping for the best. Having to play the role of the Accounts Receivable agent is perhaps one of the reasons that keep people away from running their own business, or perhaps something people who jump in too soon fail to realize they have to do. It can be tough, and it can be ugly. But if you play your cards right and follow your gut (assuming your gut leads you in the right direction on most occasions), you can minimize those pains.

No one wants to work for free, which is essentially what you are doing when you are unable to collect on your invoices. Not only have you put in the time doing the work, but you then need to put in the time to collect on your receivables. I personally think one of the major reasons that land freelancers in hot water is accepting everyone and anyone as a client. The temptation of the potential work and income can be so great that you might wind up turning a blind eye to some red flags that should be signalling you to turn away. Sometimes it takes being burned a few times to be more picky in choosing your clients.

Trust is a Two Way Street
I’ve turned down work because things just didn’t feel right with the potential client in initial meetings. In one scenario, the client seemed very skeptical of me, asking me how they knew I wouldn’t just use a prepackaged web template when designing their site, and that I was actually doing the work myself vs outsourcing it for cheap labour abroad. If someone isn’t willing to trust you and respect you as a professional, don’t give them the pleasure of blindly trusting them. The potential income can be hard to turn away, but imagine doing the work and not getting anything for it. Or even just doing the work and having to put up with a character that treats you poorly. That’s time you could have been spending on finding other work with reputable clients. Of course, it’s not always so black and white. Skeptical potential clients aren’t always bad clients. They themselves may have been burned in the past by freelancers. Ask them about it. If they are making valid points, there might be hope for you still. If, however, they’re claiming that the designer was in the wrong, but you don’t necessarily agree with their arguments, tread lightly.

Ask for Credit References
Asking for credit references is quite common and any company that is worth doing business with will gladly provide you with them. If they start balking at this stage, perhaps heading for the door will save you a lot of work and unpaid time. Sure, they will always refer you to their best and happiest creditors, but the fact that they have happy creditors at all could be a good sign.

Can’t I Just Request A Down Payment?
Yes, you can. But it won’t always work. Many commenters to the WSJ article suggest that requesting down payments on projects is the way to alleviate these issues. However, some companies have policies that won’t allow that, but it isn’t necessarily a sign that you need to turn and run. Red tape can be so thick, especially in large companies, that multiple payments can very time consuming and difficult. Sometimes, clients may simply be hesitant because of their own past experiences with being burned by a freelancer. Do what you can to alleviate those concerns. Just imagine you were looking to outsource some of your work and the scrutiny you would employ in choosing someone. If, however, they are down right rude about not wanting to pay you a deposit, that’s just poor business sense, and you might be better off skipping the project and the client altogether. If you are going to ask for a down payment, you need to put some work in before you invoice for your first cheque to show the client you are serious about the project. Even it if it’s just an initial proposal on how you intend to approach the project, a gesture like that can put the client at ease and let them know you will be following through on your end of the deal.

Asking for Your Money
I’ve luckily only had to wear the pesky and persistent Accounts Receivable hat on a handful of occasions. Generally, it was for clients I knew would pay (from having a history of payments that were on time, and just being generally trustworthy people), but I had to remind them about outstanding invoices that had gone past due. It happens, people get busy. Heck, I have even forget to follow-up on invoices because I was too busy to realize they were overdue. Your first attempt at collection should stay civil, but direct. Crying foul too often and too loudly can backfire in the longterm. Being confrontational right off the bat can anger your client and possibly delay your payment further. Sometimes it can just be an honest mistake. If, however, you are getting the run-around and lame excuses, you might need to start stepping up your game. What I find can help is talking to the Accounts Payable person/department (if they have one of course). The person you are dealing with on the project on a day-to-day basis may not know the accounts payable process well enough, so cutting to the chase can get you some answers. Don’t do it behind their back though – it won’t earn you any gold stars.

Bad-Debt
If you’ve exhausted your options and know you won’t be collecting on your invoice, check with your accountant to see if you can write the amount off as a bad debt expense. You should at least not get taxed on something you never wound up collecting on!

Unfortunately, being in business for yourself means that you will run into deadbeat clients from time to time, and lose your shirt in some instances. Fortunately, being the sole decision-maker let’s you make the final call on accepting a client or project. Be smart about your choices. You don’t have to say yes to everything that comes your way. When you find clients that pay, hold on to them, and make sure you let them know you appreciate their business.

My Advice to Adobe – Make Flash Open Source

Posted in iPhone, Web, on April 29th, 2010 by Carlos.

Steve Jobs threw some wood on the fire with an open letter to Adobe regarding Apple’s position on Flash. El Jobso refers to open platform technologies, such as Webkit and HTML5, as being the future of the web in the mobile space. Meanwhile, Flash, being a closed and proprietary platform, is the wrong the direction for a truly open and free interwebs.

But what if Flash was open source? I know I have the benefit of being an outside blogger with an opinion, and not someone that truly understands the full legal, business/revenue, implications of such a comment, but it seems to make sense doesn’t it? Adobe would be showing Apple, developers and bloggers with opinions that they are serious about the future of Flash as a platform for the web. With the support of the open source community, I think you would see that Flash could run, and run well, on mobile devices. Sure, Flash as we know it today still needs to adapt to the touchscreen and mobile world, but i think it is possible to get there. Opening it up could be the way to make it happen. I think Adobe can either keep going on their current course and possibly spell the end of Flash as we know it, or shock us all and take a different stance. Go on Adobe, take Flash open source, and show the world you’re serious about Flash as a sustainable platform for the future. Otherwise, I think you’re just digging your own grave.

[Update: Just so you know... I'm not exactly a super supporter of open source. I mean I'm not against it, but I'm not one to think that it will create a world full of peace, harmony and kittens.]

Apple iPad in Canada. It’s here… Er. In Late May, That Is.

Posted in Gadgets, on April 29th, 2010 by Carlos.

Starting May 10th, us Canadians will be able to pre-order the iPad (presumably in both Wi-Fi and 3G flavours) from Apple. Shipping date is being targeted for “Late May”. Well there’s 31 days in May, and I wouldn’t be completely surprised if Apple waited it out till the bitter end. I guess we can’t really complain. After all, we waited a year before having iPhones with the original iPhone not being sold in Canada at all. [Apple]

Yet Another Social Media Icon Pack, but the first by Keys That Click

Posted in Design, Freebies, on April 28th, 2010 by Carlos.

I know the web is quite saturated with social media icons already, but given I still had to wind up making my own for this site because I couldn’t sift through the thousands to find a style I liked, I thought I’d share the ones I made, plus a handful of others I decided to add. My other motivation is that it still frustrates me when I find a set of icons that look good but are for personal use only. So, I am making this set available free for both personal and commercial use. You don’t have to email me for permission. If you do have it in your heart to let me know where you are using them, that would be great, as I’d just like to see them in action! If there’s interest in these, I’ll look to add more icons, as well as sizes.

I hope you enjoy them! Download the Keys That Click 28×28 Social Media Icon Pack zip file.

Panic Launches Transmit 4.0

Posted in Software, on April 27th, 2010 by Carlos.

Just as expected, Panic unveiled Transmit 4.0 today in the wee hours of the morning. I scooted over and downloaded myself the update. Sorry Flow, I don’t think I’ll be going back to you as an FTP client. The first thing you’ll notice is a much cleaner look to the UI. Not that the previous version was cluttered, but it certainly was starting to look tired.

One of their biggest features is they’re claiming that Transmit 4.0 uploads files a helluva lot faster than version 3. I posted a WordPress site up to a temporary folder on my host just to give it a shot. Well it certainly was faster than version 3 (it took only a few minutes), but I’m going to have to try things a little more to see if it was living up to the difference they are claiming. I already have a host that doesn’t allow for terribly fast uploading, so it may be unfair for me to test it based on that alone.

Perhaps one of the coolest new features in Transmit 4.0 is the ability to mount a favourite FTP, S3, etc. drive into Finder, similar to what iDisk does. You don’t even have to have Transmit open to access these disks. Having these discs accessible in Finder means you can save a document from Pages, for example, and save it directly to a remote location. In a way it’s like DropBox, but you cut out the middleman.

Unfortunately the ability to set the maximum number of simultaneous transfers for uploads/downloads cannot be set independently of each other. Maybe I’m the only one on the planet that would find that useful. Oh well.

Give Transmit 4.0 a whirl for yourself. I mean, sure it’s still just an FTP program, but it has some pretty powerful features that will probably make you want to take a closer look. Upgrading from Transmit 3 costs $19 USD, whereas the full version is $34. At these prices folks, help a developer out and be sure to buy the software. A free trial version is also available. [Transmit 4.0]

Full-screen Browsing with Webkit on a Secondary Display

Posted in Web, on April 26th, 2010 by Carlos.

When I was working on my Status Board, I knew I had to find a full-screen browser that would open on my secondary display to make the whole thing work. Surprisingly enough, it was a lot easier said than done. Can you say niche problem? I know it is, but it’s the kind of information I wish I had found when I was researching browsers, so hopefully this comes in handy for some people. And if, you’re looking at building your own status board, this really may come in handy!

For starters, I knew I wanted to base my Status Board app on Webkit, and not Mozilla, or anything else for that matter. My second criteria was that I couldn’t use Safari. For one, it doesn’t support full-screen browsing, but also, I open and close Safari multiple times an hour, so I know I would unintentionally close my status board even when I didn’t intend to.

My first attempt was with Fluid. Being able to run the browser as it’s own process would allow me to prevent the unintentional closing of the browser window. I currently use it for Google Reader, and even my posts to Keys That Click and love having these windows be independent of my Safari browser. I was happy to see Fluid had a full-screen option. I was disappointed, however to see that it didn’t work properly with a secondary display. If you throw your Fluid browser window onto your secondary display, and enable the full screen mode, it throws the browser back to your primary display with the window/toolbars/etc. hidden. It just doesn’t quite work right. I tried various ways of opening and positioning the browser to see if I can make it work, but I eventually had to give up.

I then turned to Chrome which was the next logical choice. I’ll skip details on this one until later in the article, as I’d like to cover off a couple other browsers I tried.

My hunt was on for other webkit-based browsers for the Mac. Next I tried Shiira, an open-source webkit browser. It to has a full-screen mode. Unfortunately, when I opened my status board in full-screen on my secondary display, the screen went completely white. Looks like theirs some bugs there that need to be figured out. In fact, as I’m writing this article, and am trying to replicate the issues I ran into, the full-screen mode isn’t working properly on my primary display either. It tries to open up the window on my secondary display, but it shows up positioned many hundreds of pixels off center. It also didn’t seem to allow launching in full-screen mode, which would be ideal.

My search continued and I stumbled upon Plainview, by the Barbarian Group. On their FAQs, they quite simply claim Plainview to be a full-screen web browser. Thinking I found the holy grail of full-screen webkit browsers, I gave it a shot. Given that it is meant to be run solely as a full-screen browser, it obviously has the ability to launch in full-screen mode. But once again, having dual displays created a problem for the app. After moving the window to my secondary display, and trying to start it up, it goes to full-screen on my primary display. I did bring this point up to the developers, and it is a known bug that they are working to fix. Apparently it is a much trickier issue than it sounds. I’ll be checking back with them to see if they fix this feature in future builds.

After all that, I figured I’d have no other choice but to turn to Chrome. So what’s so bad about Chrome? Well to be honest, it’s not bad. It’s a decent browser and renders things well, and is stable enough (even in Beta). For starters, it’s full-screen browsing mode works on my secondary display. Given that the development team for Chrome must be sizeable-enough, I would have been surprised that this wouldn’t work properly. There is one thing that I wish it had though, and that is the ability to launch the application in full-screen mode. I currently have my status board set to the homepage, and have Chrome launch on system startup. I, however, have to manually enable full-screen mode. Given that I have to do it typically only once a day, it’s not that much of a problem. But still, it would be nice to have it launch in that mode automatically. Another plus, that it has even has over Safari, is that it supports inset CSS3 shadows, where, it seems that Safari currently doesn’t! As I used a couple of inset shadows, this was a welcome feature.

So there you have it, a quick run down on full-screen browsing with webkit browsers on a secondary display.

Panic-Inspired Status Board Live Preview using HTML5 contentEditable and localStorage

Posted in Status Board How-to, Web, on April 26th, 2010 by Carlos.

Ok folks, ahead of me trying to explain how I built this thing, which might take some time to get to, I figured I might as well share a live preview of my Panic-inspired Status Board with the masses.

Credit goes to the following sites for the different components that I grabbed from various tutorials or resources to make this all happen:

contentEditable with localStorage: http://html5demos.com/contenteditable
I modified it so to save several different chunks, rather than just one list. Admittedly, I’m not a script coding pro, so I’m pretty sure I took a long-way of doing things, but ultimately it worked! If you have suggestions on how to make it better, please let me know!

jDigiClock – jQuery Clock with Weather: http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock
This little plugin is actually much more full-featured than what I used, so check it out for what it can do. I modified to include only the information I wanted (time, weather icon, temperature). I either hid, or deleted the rest of the items that I did not use. I used some CSS to position the items how I wanted them, and used a bit of transform capabilities of CSS3 to scale the plugin to my wanted size. This saved me from having to open all the different graphics that come packaged with the plugin and resize them each.

Juitter – Live jQuery Twitter Feed: http://www.juitter.com
I created some of my own styling, but used the jQuery based Juitter plugin to have a live view of a customizable Twitter feed. Although not perfect, it was one of the best Twitter integration options I could find at the time.

A few things to know, before clicking through to the live preview:

  • You should be able to click on the lists and start typing, deleting, etc. Refreshing, and even closing/opening the browser should leave all your content intact. I’ve even tried clearing browser history/cache/etc. and suprisingly the content stayed there. Read my word of warning below for more on this.
  • Given that this uses localStorage, you will not see your changes on a different machine, as it only shows what is stored on the machine you are using at the time. My hope is to eventually turn this thing into something that PHP based with MySQL integration so that it can be accessible from different machines to show the same information, as well having a database you can easily backup in case of disaster to prevent losing the to-do’s. If someone is interested in helping me do that, drop me a note.
  • I recommend you use Google Chrome in Full-screen mode on a monitor resolution of 1920×1200. This was specifically designed to be run this way, so it will not appear correctly in other resolutions, and perhaps even other browsers, especially non-webkit based browsers.
  • You will see that depending on the size of the individual lists, the lists may actually wind up going completely off screen. I haven’t created a fix for that (it’d be nice to be able to drag-drop the lists to different positions). For now it’s my way to stay on top of my to-do list so it never gets out of hand! :)
  • The weather does not seem to be working at the moment. I believe it is my host that isn’t allowing it to work, as it works running locally on my machine, as well on the plugin page that is mentioned above.
  • The default font for the lists themselves is American Typewriter, which should be loaded up on Mac’s by default. For non-Mac viewers, it should default back to Times.
  • Twitter feed is currently only displaying tweets about/from Keys That Click
  • A word of warning. If you want to use this LivePreview as your own actual to-do list, please know that it experimental, and I cannot by any means guarantee that your to-do list will not just one day disappear! I myself don’t know what to expect when using localStorage.

Well without further ado… click the button below to launch the live preview:

FreelanceFolder Article on Deadlines

Posted in Business, on April 23rd, 2010 by Carlos.

FreelanceFolder has a good article about keeping to your deadlines and how you can stay on task. While I agree with general premise, I’m not sure it’s always the designer’s fault that deadlines are missed. As my comment suggests, I find in a lot of instances, timelines are missed because clients haven’t provided all the necessary information/content/feedback, etc. Keeping your clients aware of the part they play in meeting deadlines is just as important as making sure you’re doing your part. I’m fortunate to have clients that understand that deadlines are both the responsibility of the designer and the client. [FreelanceFolder]

Hourly rate? Not here… How about value or per project pricing?

Posted in Business, on April 22nd, 2010 by Carlos.

As I’ve been monitoring the Tweet-o-sphere the past couple of days, I’ve noticed the topic about designers charging by the hour or using value or per project pricing  coming up several times. I also had a conversation about it with a friend the other day as he had just recently took his own business full-time so I figured it would be useful to write something about it.

From my days of working in the Corporate Communications department of my previous employer, I worked with a lot of small design firms and freelance designers. They didn’t, from what I could tell at least, charge by the hour. I never thought much of it to be honest. We were getting great quality work done for a fair price. I never bothered to care if it took them 5 hours or 5 days. Well actually, I did. I wanted it done in less time because it meant we got our projects delivered faster. Our team was constantly under the gun to deliver faster than humanly possible, and having designers we could turn to so we can make that happen was priceless. There’s no doubt, they knew that, and priced accordingly. In turn I knew I was getting quality work done, and turned around quickly. It was win/win.

When I started up my own business, I really felt that an hourly rate could do an injustice to the skills and efficiencies I had developed as a designer. The main question sticking out in my mind was “Why should I be compensated less for being more efficient than the next guy?” Seriously. Especially when your efficiency is a result of having a better understanding of the client, their requirements, the tools you use to complete the job, etc. What’s the incentive to work faster when you get paid more for the longer you take? The argument can be made that with hourly pricing you are aiming for quantity. So if it does take you only 6 hours to finish a job, you have more hours left over to take on more work. But the exact same logic can be applied to value pricing, you just wind up getting compensated for more than just the time you put in. I’m convinced that when you  charge by the hour, it’s part how much time you actually put into a project, part how much time you think should go into a project and part how much time a client thinks should go into a project. So really, maybe an hourly rate is not a truly accurate measure anyways.

In practice, setting a per project price or a price based on value can seem daunting, especially if you are use to charging hourly. How much IS a project really worth? I can’t provide any magical formula to figure it out, it’s just something you get better at as time goes on. Talk to other designers to see what they charge. Talk to people in similar positions as your clients to see what they would expect to pay. Talk to your clients to see what they think (admittedly, not many will open up too much about it). To be completely honest, I still use time as one of the factors that help me calculate my estimates, but it’s not the only factor. Others can be: what the project is worth to you, what the project is worth to the client (that’s a hard one to figure out), the unique value proposition that you bring to the project (e.g. are you an expert in packaging design, are you an expert in 3D renderings, etc.)  and the turn-around expected, to name a few. Practice makes near-perfect in this sense. Sometimes you will lose your shirt because something you quoted actually wound up taking much longer than you had anticipated, making your effective hourly rate peanuts. It’s bound to happen, but it can also work the other way, where you fire off a project in a good amount of time and you are compensated well for it. I’m convinced it really just balances itself out in the end, so it’s not always worth sweating the details.

There will still be plenty of potential clients expecting hourly rates. I’ve lost a handful of opportunities because I didn’t have an hourly rate, and wouldn’t divulge one. It’s just not the type of compensation model I feel comfortable with. But if you’re not comfortable with something, why do it? Value or per project pricing isn’t perfect, but I think it helps to minimize the commoditization of design work. In a world where everyone considers themselves to be a web designer or Photoshop expert just because they swiped a copy of Adobe Creative Suite from a bit torrent site, there is a need to set the truly talented folks apart. I think pricing projects differently is one of the first steps in making that happen. It acknowledges your expertise, and the true value of the work you are doing.

My Status Board in Action

Posted in Tech, on April 21st, 2010 by Carlos.

[Update: You can check out a Live Preview of the Status Board by reading my post, Panic-Inspired Status Board Live Preview Using HTML5 and contentEditable.]

After getting my own Panic-inspired Status Board web app completed, I figured I needed to put it into action. As I wanted it to replace my existing whiteboard, I took that down and mounted the monitor to the wall and surrounded it with sheets of cork board. I’ve got it on an extendable arm in case I need it a little closer depending on what I’m working on. My productivity has increased immensely as a result. Ok, it hasn’t, but it’s cool!