Close

career advice

How to Set Yourself Apart and Get Clients to Chase You

Several years ago, I was in a really tough spot with my freelance coding business. I kept getting undercut by low bidders on Elance and oDesk and it was hurting my family financially.

Then, I discovered a little-known strategy for branding yourself as a coder.

Now, I turn down more work than I accept, clients gladly pay my fees and, I’ve left the Elance bidding wars behind forever.

In this episode, I share that same strategy with you and show you how you can implement it in your freelancing business.
(more…)

March 24, 2014

How I Get Clients to Chase Me

Notes:

  1. Here’s the link to Michael Hyatt’s FREE Platform Revolution Series: http://j.mp/1gaFYwX
  2. The transcript of this video is posted below for your reference

As coders, we all want more money…

We all want more freedom… to NOT be chained to our computers 24/7… to work with clients we like and care about… to be able to travel and spend time with our families…

And, we all want to have more impact… to work on projects that really matter… that make people’s lives better… and to be able to turn down projects that make our skin crawl…

The problem?

All the competition!

Anyone who’s ever been on Elance or oDesk or any of the other freelance sites knows just how bad the bidding wars can get.

And, how frustrating it can be to watch the project you really wanted to get snatched away by someone willing to do it for a ridiculously low price.

And to know full well that coder will probably never deliver on that project… and certainly not with the kind of quality you would have.

But, when you’re one face among a sea of other me-too coders… there’s no way for a potential client to know any better.

To them, there’s very little difference between everyone bidding on their project… and when left with that uncertainty… they always go with the lowest cost… because it’s the lowest risk.

If you want to build the kind of trust in advance that your ideal client will need to be willing to invest more money in you… you need to set yourself apart.

In fact, you need to set yourself apart in 3 very specific ways:
(more…)

March 19, 2014

Why YOUR Freelance Jobs are Getting Outsourced to Someone Who’ll Do It Cheaper

The answer: You’re not branding yourself effectively. If you were, your potential clients would never hire another developer just because they’re cheaper.

As business guru, Tom Peters, puts it:

“All of us need to understand the importance of branding. We are CEOs of our own companies: Me Inc. To be in business today, our most important job is to be head marketer for the brand called You.”

Of course, the big question is… how do you brand yourself effectively and fix your “outsourcing problem”?
(more…)

January 28, 2014

Justin Bieber Should Learn How to Code

Apparently, the Biebs was arrested this morning in Miami for drag racing and driving under the influence. If you’ve paid even a little attention, you know this has been coming for awhile now.

I don’t really hate on the kid too much because I understand he’s a kid with a lot of money and a lot of fame… and I wonder what kind of decisions I’d have made at that age with that money and that fame.

Probably not great ones.

But, it does make me think dude should learn how to code!

Why?

Here’s a few reasons why:
(more…)

January 23, 2014

Should You Just Give Up Learning How to Code?

Give Up Coding

I was recently asked:

Man… I truly hope I can just know what to do at some point without having to ask. You think PHP is an easy language to learn though?

When I read that, it reminds of the frustration I felt when I first started learning how to code. It can be very frustrating and make you feel like you want to give up. Should you? Here’s why I think you shouldn’t:

  1. It will get easier. The first few months are the most difficult. It truly is like learning a new language… not just a new way of speaking but a new way of thinking. But, once you’ve immersed yourself in it for awhile you do start to think differently… and each new piece you learn gets little bit easier. Eventually, learning new skills is pretty simple and happens very quickly.
  2. It’s worth it. Learning how to code may not be easy, but it’s definitely worth it. From a career perspective, you will eventually reach a point where you control your own destiny. You make what you want to make, you work with only the people you want to, and only on the projects you want to. And, you eventually can set your own hours, take off when you want… and you get to build cool new things as your “job”. All in all, it’s a pretty badass lifestyle.
  3. It’s your passion. If you’ve made it this far, my guess is that building things in code is something you’re passionate about. If not, you would have already given up. That being the case you probably couldn’t walk away even if you wanted to. Your mind would continually bring you back to it and you’d find yourself once again tinkering with code. So, you might as well embrace it. In fact, I believe that no matter how frustrating it may be at any given moment… if you follow your passion it will always work out better for you in the long-run.

Of course, learning how to code doesn’t have to be as hard as most of us make it. I learned this the hard when with PHP. I made several mistakes that prolonged my learning curve and set me back a few years. Fortunately, you don’t have to make these mistakes because I’m going to share with you what they are and how to avoid them:

  1. Don’t try to do it all on your own. This is easily the biggest mistakes new coders make. It has to do a little bit with ego and a little bit with this false belief that if you let somebody teach then you’re not “smart enough” to be a good coder. It’s absolutely false. I know some really great coders and what makes them great is that they’ll take instruction from anyone. If it can help them master something they need to know faster, they’ll do it. So, don’t be afraid to let others help you (in fact, I am offering to do just that for you when it comes to both PHP & MySQL and responsive web design).
  2. Don’t learn without a purpose. The next big mistake I made was to code just to code. I was too afraid to take on clients or put out an open-source project, so I would just code things I thought I was “supposed to” know. The problem is that, as a beginner, you have no idea what you’re “supposed to” know. So you end up wasting your time on a lot of things that just aren’t very fruitful. Also, without any kind of deadline from a client, you can prolong and put off your coding… which really slows you down. As scary as it might seem, I recommend you take on clients or start an open source project. You’ll speed up your learning curve dramatically by doing so.
  3. Don’t give up. Sounds bit circular but I made this mistake several times. I would get frustrated and quit for a few weeks or months. But, I also ended up coming back to wanting to learn more. And, the time I took off really set me back. Not only did I miss that time, but I usually had to re-teach myself things I had already learned. Coupled with the things above, it extended my learning curve from a year or so to almost 4 years before I really felt comfortable as a coder. That doesn’t mean you shouldn’t take breaks… just keep them short.

At the end of they day, I know learning how to code isn’t necessarily easy… but I believe it’s worth it. And, if you follow the advice above you can boost your progress and slash the amount of time it takes you to finally get over the hump and feel comfortable as a coder.

QUESTION: Have you ever considered giving up coding? How did you deal with it?

January 7, 2014

Why I Code

It was mid-June 2011 in Texas. I had just been released from Active Duty for the Army and was on my way to pick up my then 3-year-old son, Davin, from daycare.

I pulled into the parking lot, hopped out of my car and headed toward the front door of the daycare. I remember feeling the heat hit my face as I strode across the parking lot.

It was hot… but it was a beautiful summer day. Not at all like what I was about to discover inside the daycare.

Why I Code

I made my way across the parking lot and in the front door to the receptionist’s desk. No one was there.

As I looked around, I heard what sounded like a faint yelling sound from around the corner. Instinctively, I moved toward the sound.

As I hurried down the hallway, the yelling got louder…

“Is this how you behave? Like animals? You are a bunch of monsters! You guys better start acting right or you’ll have hell to pay!”

As I got closer to the sound, I realized, “It’s coming from Davin’s room!”

Now angry, I swung open the door to his room. The room fell silent as everybody turned toward the door.

I saw the receptionist. Her face immediately turned bright red.

“Where’s his teacher?” I asked angrily.

“She called in sick today”, she said meekly.

“Davin, let’s go”, I said as I stepped away from the door. The receptionist hurried by me and back down the hallway to her desk.

Davin gathered his things and we headed down the hallway toward the front door.

When I reached the receptionist’s desk, she was typing frantically at her computer. I noticed she was typing an email to someone… the owners of the daycare I assumed.

“While you’re at it on that email… you can tell them that Davin will no longer be coming to daycare here. And, I won’t be giving a 2-week notice and I won’t be paying any termination fee. If they have a problem with that, then I’d be more than happy make this whole incident a public event”.

She said nothing.

Davin and I left the daycare and never went back. We never heard from them again.

The Moment I Realized Why I Code…

Davin had only gone to that daycare for a few months… but over the last few weeks I had noticed a change in his attitude. He had become a lot more irritable and grumpy. He became very demanding and had began yelling for the first time in his life.

Something had seemed off to me… that day in mid-June I figured out what.

From that day forward, I watched Davin at home. For most people, that would have been impossible. Most people would have been forced to find another daycare… and hoped the same things didn’t happen. They would have been helpless.

But, I code for a living.

I have the luxury of working from home and setting my own schedule.

And, that’s why I code…

I code for Davin. Regardless of your beliefs on parenting… the fact that I code for a living meant I could do something when a daycare went against mine. I didn’t need them. And, I got the added benefit of spending a lot more time with him (and all my other children)… which was good for both him and I.

I code to express myself. Coding is like any other artistic endeavor (Yes! Coding is an art!)… to be good it requires perspective, passion, and persistence. It is more a reflection of its writer than any hard fast “coding rules”. I code to find out who I am as a coder as much as anything else.

I code to learn. I’ve always believed and said the most important skill a coder can possess and facilitated within themselves is the ability to mentally abstract. There is a direct correlation between a coder’s “mental abstraction skill level” and the value of his code. I code to get better at coding… but I code to get better at thinking, as well.

I  couldn’t imagine not coding. It’s like a writer writing or a painter painting… it’s who I am. But, at the end of the day… it’s more than that. I don’t just code for me. I code so I never have to put my family in a position where they (or I) feel helpless.

And, I write all this because I think it’s important to remember when you’re feeling overwhelmed or un-motivated… why you’re here. So…

Question: Why do you code?

December 30, 2013

Coding Isn’t For You

I’ve been coding for almost 10 years now and I’m finally fully embracing that coding isn’t for me. It’s taken me awhile to reach this point, but the release of frustration is pretty amazing.

Please read on, though, because it’s probably not what you think.

Coding Isn't For You

You see, when I first started out coding… I did it for me. It was about me expressing myself, doing what I loved, making ME a living.

But, the reality of coding is that you’ll spend the majority of your time building stuff for other people. And, that’s why coding isn’t for YOU… it’s for them.

It’s a mutually-beneficial relationship where you achieve your goals by helping them achieve theirs. You win when they do.

I bring this up because as coders it’s easy to get caught up in our own view of how things should be done. It’s easy to believe that a client doesn’t know what they’re talking about and to get frustrated with them wanting things done a certain way.

And, it can even cause you to leave or screw up really beneficial relationships… because you want your way.

And, if you do… well, it’s your loss.

You still need to be an artist… but if you really want to be successful as a coder you need to fully embrace the fact that the more you help your clients achieve their goals… the more you will achieve yours.

And, that’s why coding isn’t for youit’s for them.

QUESTION: Do  you struggle with balancing your perspective on how something should be built vs how your client thinks it should be done? How have you dealt with it?

December 23, 2013

How to Fail in 2014

Brace for impact. As we near the end of 2013, you’re going to be hit with an onslaught of “how to succeed in 2014” posts. That’s all fine and well…

But, sometimes knowing what NOT to do can be more powerful that knowing what TO do. This is one of the times.

Imagine this…

Imagine if you were around 100 or so years ago and were a horse and buggy maker. Imagine if you had ignore this new “fancy” technology called a combustion engine that was making waves at the time.

Imagine how in a few short years you’d be put out of business as the automobile made your product obsolete.

Or, imagine even just a couple decades ago when this “fancy” new technology called the internet came out. Imagine if you ignored THAT.

Now, fast-forward to right now. Consider all the “fancy” mobile technology that’s taking the world by storm.

Wanna know how to fail as a web developer right now?

Ignore mobile.

Ignore mobile and watch as clients and site visitors slowly fade away. Ignore mobile and watch as your competitors slowly run you out of business. Ignore mobile and watch as your online business dreams vanish.

If you really want of fail in 2014… that’s exactly how.

Now, here’s what TO do in order to succeed…

Of course, you don’t want to fail and that’s why responsive web design is now more important than ever. The world has gone mobile and as a web developer you have to keep up if you want to stay relevant.

That said, LEARNING responsive web design isn’t necessarily easy. In fact, at first it can be quite confusing. Plus, there’s a very specific set of skills you need to learn in order to master responsive design… and, if you don’t know what those skills are…

Well, that makes it about 100x harder.

Thankfully, I’m going to tell you what you need to learn:

  1. the 3 different approaches to responsive web design and which one you should be taking
  2. the 5 individual skills that make responsive design “happen”
  3. how to work with and extend responsive frameworks

Once you master those things, you’ll be all set with responsive design.

Of course, if you want to fast-track your learning curve, I offer a responsive web design course that will teach you all of the above and more.

But, whether you take that course, a different course, and you learn it all on your own (not recommended)… make 2014 about mastering responsive design and building mobile-friendly web sites.

Frankly, you can’t afford not to.

December 10, 2013

How Fear Can Kill Your Coding Career and How You Can Easily Overcome It

[powerpress]

How to Subscribe to the Podcast

It’s Really All About Fear, Isn’t It?

Today’s going to be a little tough I think… because today is about standing in front of the mirror a little bit. Let’s talk about fear. Let’s just put it on the table… you’re scared. It’s okay.

So am I… every day.

  • Scared you don’t really know what the hell you’re doing.
  • Scared somebody will find out.
  • Scared somebody will see your code and flame you into oblivion.
  • Scared you’ll wreck your client’s site.
  • Scared you’ll never get it figured out.
  • Scared you might break something.
  • Scared you might not be smart enough for this…

So, why am I bringing this up?

Because, the reality is… as a coder… fear is the one thing you’ll fight your entire career. At every level of mastery… there’s another level of mastery ahead of you that scares the s!@# out of you.

To be great, you have to get good at dealing with your fear. You have to figure out how to work through it and continue to push yourself anyway.

To take the client that scares the daylights out of you (what if I “f” it up?). To learn the skill you’re not sure you’re smart enough to figure out. To put your code out there to be mocked (and loved).

You have to do it.

If you can’t, quit now. It doesn’t get any easier. I promise.

BUT…

If you embrace and take it head on… you get better at dealing with it. The fear doesn’t go away, but how you handle it gets easier.

You get more confident. And, the conversations changes from “I have no idea how to do this, I don’t know where to start looking, I’ll never figure it out, my client will be pissed, they’ll tell everybody, the whole world will laugh at me, I will explode…”

Into…

“I have no idea how to do this, but I know I can figure it out”.

See the difference?

When I first started learning how to code, it scared the s!@# out of me. But, I said the two infamous words that have propelled me continually down this path and over every hurdle I encounter.

The two words I hope you’ll tell yourself when you feel that twinge of fear rising up telling you NOT to do whatever it is you really want to.

The two words (pardon my language here):

“Fuck it!”

Dumb? Maybe. But, try it. Things is, I know that fear hits you at times… so NEXT time just try it. Just say those two words to yourself and see how your attitude changes.

You might be surprised.

What About You?

Tell me why I’m wrong. Or, why I’m right. What has your experience shown you? Let me know in the comments below.

September 11, 2013

How Targeting Can Trump Credibility As a Freelancer

[powerpress]

Click to Subscribe to the Podcast via iTunes

Awhile back, I posted a video talking about how you can make more money in web design by laser-targeting the services you offer. Since then, I’ve received a little push-back from a few coders and I wanted to address their concerns.

Their two main arguments are:

  • Being too specific will cause you to lose jobs when you’re first starting out.
  • You have to build up credibility/rapport before you can start targeting more specifically

In the podcast, I cover both of these… but let me briefly summarize the points I made:

You CANNOT Get Too Specific. Period.

It’s as close to impossible as you can get… for you, as a freelancer, to get less business by targeting your services more specifically. Here’s why:

  • You only need a few regular clients (4-5) to sustain your business
  • It’s almost impossible to find a market on the web that doesn’t have 4-5 customers in it

Even if the number of clients you need is higher… say 10… it’s not 1 million or 10,000 or even 100. You couldn’t sustain that many clients anyway. In fact, once you start to get above 5 or so clients, it becomes un-manageable for you, as an individual, to handle all those clients at once.

So, you don’t need a ton of clients to sustain your business.

Even more, with the global nature of the web, it’s almost impossible to find a market with less than 10 or so customers in it. You probably could find one somewhere… but to do so, you’d have to get SO specific it would be obnoxious.

In practical terms, no matter how specific you get… you’ll always have enough customers to sustain you.

Specificity Will Trump Credibility in Many Instances

I go back to my contact lens example from the original post. I knew nothing about the brand of contact lens solution I bought. Even more, I HAD heard of the some of the other brands that were marketing themselves as “Multi-Purpose Solution”.

But, that didn’t matter.

I needed something very specific and I chose the product that marketed itself the best in that regard.

As a freelancer, you certainly want to build up your credibility. However, if you’re the only (or one of the only) people who can deliver a certain outcome for a client… guess what… they don’t really have a choice. They HAVE to choose you.

In fact, when you’re first starting out as a freelancer… one of the easiest ways to get clients right away is to offer a service that very few others can. Then, use that to build credibility and expand into other areas as you see fit.

What About You?

Tell me why I’m wrong. Or, why I’m right. What has your experience shown you? Let me know in the comments below.

September 3, 2013

How Wealthy Developers REALLY Succeed

You know, I’ve spent a lot of time teaching coders technical skills. How to upload files using PHP, how to create website templates, how to hack, twist and mold WordPress to your will, and so on.

In fact, the entire site over at LearnPHP.co is about exactly this when it comes to PHP. I have an entire category on this site called Code Snippets where I do exactly that. All of my YouTube videos do the exact same thing.

But, to be honest, I’ve never really talked much about what it REALLY takes to be successful as a developer. Because, while all that technical mumbo-jumbo is cool… none of it REALLY matters.

Yes, you need to know how to do those things… but those things aren’t what MATTER most when it comes to determining the successful from the unsuccessful. Any monkey can learn to code.

And, there’s 1000s of coders out there who can do all those “cool” things who struggle to get by day after day. People “who can code” are a dime a dozen.

What’s rare is a “Coder”. An artist. Someone who has a point of view about what/how/why they code. Someone who’s so passionate about what they do they’ll not just tell you no but “hell no” when you ask them to do something that they feel violates their art.

So…

You WANT to be one of these coders. Because you’ll make more money. Because you’ll be more appreciated. Because you’ll be happier.

What do you need to do to get there? Here’s some things I’ve picked up from the successful coders (and artists in general) I’ve been around… things I try to integrate into my work:

Be a Picky Bitch

This is my slang way of saying “have a point of view”. I see so many coders who don’t really care about the code they write. Their standard for their code is “it works”. They’ll bend to the will of any client no matter how asinine the request is.

The successful coders I know don’t do this. Meeting them… you might even think, “Man, that guy/girl is a whiny picky bitch”.

Yep. They have a point of view and own it. But, most good artists do.

My guess is if you happen to be around when Michelangelo was painting the Sistine Chapel and told him to use red instead of blue… you’d have been thrown out in a fiery rage.

Why? Because he, and only he, knew what his art was. He knew what his perspective was and he was going to express it his way regardless of what you might think of it.

All the successful coders I know are this way. Hell, all the successful anybodys I know are this way.

My boss, Stu McLaren, is this way. I don’t know how many times I’ve been working on a project with him and at some point told my wife, “Man, he’s a picky bitch”. 🙂

But, you know what… he’s almost always right. And, the stuff he does works. Because, he has a point of view based on years of practical experience and he’s willing to stand up for it.

And, in the long run… I appreciate it. I wouldn’t want to work with anyone else.

So, don’t be afraid of being a picky bitch. Be proud of it. Own it. Because, it’s based on your point of view… your art. And, in the long run, people will appreciate you for it.

Be a Megamind

For coders specifically, I believe the single most important skill you can ever develop is the ability to mentally abstract. I believe that how well you can mentally abstract is inextricably linked to how good your applications will be.

For your applications to get better, you have to get better at abstraction.

If you think about, ultimately that’s what coding is. You’re taking a specific instance of something and abstracting it out into functional code that will work across instances. The bigger your application becomes (i.e. the more it “does”) the more abstraction is required.

All the successful coders I know are wizards at this. They have this uncanny ability to simultaneously hold the full scope of their applications in their mind and focus on the fine details of any individual part.

The best example I have of what it’s like is a mind-map. If you’ve ever done any mind-mapping, you’ll know the power of it is in the ability to get a large-scope view of an entire idea while simultaneously having the fine details of any particular part available at a moment’s notice.

This is what good coders can do.

Of course, the big question is “how do you get better at it”. The answer is you code. You try building bigger and bigger applications and have the ability to keep going when you look back on old code and want to puke.

You’ll never really be completely happy with your code… ever. Especially old code. But, to others, it will seem elegant. It’s kind of like an artist who’s never fully satisfied with a particular painting (that’s why he/she keeps painting)… but to others, the painting is gorgeous.

You just have to keep coding and pushing yourself… and you’ll necessarily get better at abstracting.

Be Like a Dog on a Bone

That is, be tenacious. As a coder, you have to have a dogged persistence with details. You have to care about every last minute detail. For you, “good enough” can never be good enough.

All the successful coders I know are bloodhounds when it comes to details. They iterate over and over and over their code. They labor to make sure every character is where they think it should be at that time.

That’s not to say that they’re perfectionists that never ship. On the contrary. Good coders ship early and often… before they’re ready. But, they’re never done. You’ll find them up late at night working through a 10-line block of code to make sure it’s perfect.

And, once it is… they’ll move onto the next 10 lines.

Of course, a lot of that passion comes from having a point of view. When you have a point of view, you know exactly how you want something to look and function… and you won’t rest until it looks and functions how you want.

And, once it does…  you’ll find ways to make it better.

This is the kind of tenacious attitude all good coders I know have.

You just can’t be afraid to be a little OCD. Don’t worry. You’re not weird. We’re all that way. If you can’t sleep in the middle of the night, because a certain piece of code you want to fix is driving you nuts… you’re on the right track.

At the end of the day, this is the kind of tenacity and passion your clients will appreciate.

What Else?

These are a few of the biggest pieces of the puzzle I’ve identified… but by no means is this list exhaustive. I plan to add to it as I see fit. But, what characteristics have you seen in successful coders? How are they different from the coders you see struggle? How have you tried to implement those skills in your coding?

Share your thoughts in the comments below.

(photo by Ludovic Toinel)

April 4, 2013

Think Small

What if I could tell you the secret making a major breakthrough in your work… in 2 words? How to stop spinning your wheels 1,000 miles an hour but getting nowhere? How to stop being overwhelmed with “everything you’ve gotta do” and start working on only the things that matter?

(more…)

March 1, 2013