A Public Comment To Those Enabling Abuse

Posted by – August 31, 2010

Michelle Greer recently wrote about viscous online comments on TechCrunch. Unfortunately, over the years I’ve seen a few ugly incidents where a female was singled out online and verbally attacked. To me, there is one thing worse than these gut-less commenters: it’s telling a minority to “suck it up” or “don’t take it personal” or “that’s just the way it is” or “quit whining”.

If you’re someone who tells a minority to ignore abuse, you need to seriously reconsider your position. Because it is sickening.

You’re running a marathon

Posted by – August 30, 2010

I’ll be the first to admit it: I can work myself to death. Paul Boag recently wrote a great article about the false “badge of honor” regarding long hours in the tech field. I love what I do, and I am continuously grateful that I am able to make a decent living in software. But I’m also prone to burnout.

His article really hits home for me because I’ve been burnt out a couple times in the past. I’m still trying to improve my self-awareness, but unfortunately burnout is like bad breath: generally the people around you notice first. So far my main red flag has been “Do I feel like I’m sprinting from task to task?” Despite what some startups believe, running a company is a marathon.

Over the years, I’ve been approached by numerous people asking how they can break into software. How hard is it? How smart do you have to be? Which language is best? My main answer is always: to succeed in software you have to enjoy what you do and you have to be persistent. Software changes monthly, and sometimes it feels daily. At first enthusiasm will carry you through long hours reading and playing with new libraries and frameworks. But when you start picking up your 5th language and your 15th web framework, your motivation is primarily going to come from enjoyment. The key is realize you’re not sprinting to an finish line. You’re running a life-long marathon. I think the same philosophy applies to succeeding in business.

I almost edited the previous paragraph to say “career-long”, yet when I quantify how many hours of my life will be spent earning a living, labeling it “career-” just doesn’t seem appropriate.

There is nothing wrong with hard work and I am certainly not promoting laziness. However over-committing yourself or coming home unhappy is a recipe for disaster. Make yourself take enjoyment from your work and from outside of work. And if you can’t, I wish for you the courage to make the necessary changes.

Client Satisfaction and Resources

Posted by – August 24, 2010

I’ve heard the argument “it takes Resources to provide good Client Satisfaction” and I simply have to disagree. Great client satisfaction has to come first, and the resources will follow. I also believe that companies who take this stance will often re-use those resources to provide even better client satisfaction.

Bargains

When most people think about making their clients happy, they think about bargains. A bargain is simply the same services at a reduced price. And that certainly is one factor in making clients happy, since who doesn’t like saving money? Sadly, I think bargains are the first to come mind because they are so easy compared to the alternatives. “I’ll just slash my prices and more clients will come.” However there are other ways to provide value and make clients happier without taking a hit on price.

Craftsmanship

Some clients heavily prefer the quality of the service or product. If I’m in the market for a high-end acoustical guitar, I’m going to favor the quality of a guitar over the one with the best deal. This resonates strongly with software in the form design and often overlooked practices such as automated testing.

Listening and Solving the Real Problem

One of the most effective strategies I’ve found is: listen to the client and focus on solving the problem at hand. When I say “listen”, I don’t mean “hear the sounds coming from their mouth”, I mean really listen to both what they are saying, and what they aren’t. There are many clients out there who will pass on a bargain if it only partially solves their problem. I constantly hear stories from both other developers and clients about scenarios where developers ignored the problem at hand, and decided to solve a different one. They may work on an optimization issue when performance is acceptable, or decide to roll the work into an open source project when a specific and custom solution is really what’s needed. Or build an exquisitely elegant design, that even I admire, yet it does not do what is requested.

This is not just applied to software. A friend of mine owns a couple local pizza and ice-cream parlors and he shared his experience: The best way to help an upset customer is simply to listen to them. Most of the time they’re not wanting their money back or a coupon. They just want to know that their voice was heard and respected.

I always laugh at how appropriate this SNL clip is:

Experience

Sometimes clients just want a memory to cherish. A couple years back, my wife and I decided to go to a Ruth’s Chris Steak House and we were amazed at the dining experience. It was certainly one we won’t forget. When we were in Portland, we also had a fantastic night at the City Grill on the 30th floor.

In software, that’s exactly the purpose field user experience design. Certain applications thrive by continuing to improve their interface to be as simple and effective as possible. Other applications thrive by removing options and choices from their customer base. A recent post by Scott Adams specifically addresses this point.

None of these points take significant resources to do well, and each of these can be improved with additional resources. Please share any successes or failures you’ve found. I’d love to hear them.

You can also discuss this post on Hacker News

Clients that Care

Posted by – August 3, 2010

Whenever a client hires me, I make it a very specific point not to bring baggage to the table. Whether it’s other project scheduling issues, family schedules, strong toolset opinions, or any other demands on a freelancer’s time or mental-space. Some clients will gracefully deal with a freelancer’s baggage, but I’ve found that most clients would rather not have to concern themselves with it. As a result I work hard to guard my clients from that stress.

However, some baggage does inevitably come through. During the middle of July, we had a family emergency and I needed to immediately take off a couple weeks. Keep in mind two of the projects I was on were planning on launching at the end of July. So going offline that abruptly was a significant disruption.

I talked with each of my clients individually and I was relieved that they all took it well. After my first week out though, I was shocked at how thoughtful some of the emails/IMs/and Phone calls were. Here are a few snippets that I received:

“Just wanted to check in and make sure you were doing ok. Again, let us know if there’s anything we can do.”

“Obviously, do what you need to do for yourself. If that’s work I’ll be happy to keep you busy… We’d like to send some flowers…” (In response to me mentioning I may work on a feature to keep my mind busy)

“Take care and as much time as you need.”

“Please take the time you need.”

“Nothing comes before family. Take your time, when you’re ready to start back up just let me know. No rush.”

I’ve come to appreciate that my ideal client is not just a cool project nor a large budget, but instead a rich relationship. I feel very blessed that all of my clients are so considerate because there are many others out there who aren’t.

Thank you Mike, Dana, Orlando, McHughson, Daniel, and Nicholas.

Why should I do business with you?

Posted by – June 17, 2010

All things being equal, people want to do business with their friends.

All things being not quite equal, people STILL want to do business with their friends.

- Jeffrey Gitomer in The Little Red Book of Selling

I love this quote and this book. Brandon Keepers posed a question over a couple beers (well OK, maybe more than a couple beers):

If a client asks you: “Why should I do business with you?”, how would you answer?

It was a great question. I took a long pull of my Poet and stammered an answer. After thinking about the question a couple days, here’s my (sober) answer “because I’m honest, I work very hard, and I have a blast doing what I do”.

Here’s the longer version:

Differentiators

I consider the following as ways for a company to set themselves apart from their competitors.

Cost : How much does it cost for your services or for your product?

Expertise and Experience : How much experience do you have with the tools you’re working with and the problems you’re working on? Are you considered a leader in your community?

Influence : Do you have an audience that your clients also wants to connect with? Do you have certain investment or new business contacts that your clients want you to make introductions?

Fundamentals

These are the fundamentals I feel successful businesses have to address if they want to provide value for their clients.

Authenticity : Are you honest are you about what you’re selling and your ability to meet certain commitments?

Hard Work : Do you care about what you’re doing and more importantly who you’re doing it for? What is the quality of your work? How often do you put yourself in your client’s shoes to better serve their needs?

A Great Attitude : Are you fun to work with? Do your clients dread picking up the phone or having you drop by or do they walk away with a better attitude? Do you make your clients feel ignorant when they ask questions? Do you listen to feedback well?

Mixed Priorities

I see many companies focusing on ways to differentiate themselves and ignore the fundamentals at the same time. Don’t get me wrong, I think the differentiators are great, but only when they build from the fundamentals.

I’m a reasonably smart guy, and I’ve been around the block many times building applications using Ruby/Rails. But my experience, my network, and even my cost are all secondary to providing value through hard work and honesty. As well as being able to do it in a way that makes it a lot of fun for both my clients and myself.

I want to hear from you

What I love about this outlook is that there are no barriers to the doing the fundamentals well. They are difficult to do well, hell I’m constantly learning new ways to better apply them, but you can start immediately. Your experience, expertise and network are all built over time.

What has been your experience? I want to hear from both companies who provide their services as well as from clients who have had great and less-than-great interactions.

Nginx is extremely performant

Posted by – June 11, 2010

A couple days ago I wrote an article about perceptions I’ve encountered as a freelancer. The article took off on Hacker News, which a great feeling.

I received several thousand page views in the process. At first I was like “Wow!” and that quickly turned into “Oh crap…” I wasn’t sure if my server hosting this blog would be able to handle that amount of traffic. But Nginx handled it like a champ.

When I setup this blog, I found an excellent How-To article on setting up WordPress on Nginx using FastCGI from Aaron Schaefer. At the time this blog was using 5 PHP CGI processes and wasn’t using any form of WordPress page caching, however neither memory nor CPU broke a sweat. And I’m only running on a few hundred MBs.

I don’t think Nginx is a perfect fit in every instance, however I’m really pleased with the results. I definitely recommend it to anyone else who is on the fence.

I am far from unemployed

Posted by – June 9, 2010

Monday was the beginning of my third week working independent. And these three weeks have been a lot of fun. Very busy, but fun. However one thing that surprised me was the reaction from others when they asked what I do for a living.

The most typical reaction I have been getting from local friends and acquaintances who are full time employees is sympathy. Phrases like “Well you gotta do what you gotta do.” or “Things will turn around, the economy is improving.”

No no NO!

I chose this path. I wasn’t forced to go independent as a result of a layoff or the inability to find full time employment. I love what I do and I love that I am able to help other businesses who need my skills and experience.

This reminds me of a blog post a friend shared years ago, that has now been lost, which described an Entrepreneur’s move from the Midwest to the West Coast. He too was taken back at the differences in reactions. Generally a Midwest-ern would say something out of pity or look at him as if he were jobless. While the people he talked to in the West Coast would get excited and share their own dreams of starting something new.

I am far from unemployed and so are the plethora of other software freelancers out there. Sure we may have downtime, but that is just one part of our world. So the next time you are talking to someone who mentions they are independent, and you feel sorry for them, mentally check yourself. If you like the guy or gal, ask for their business card and pass it to someone you think would need their services or tweet/blog about the great interaction you had with them.

I appreciate that way more than sympathetic encouragement.

Update 6/12/2010

This article took off on Hacker news and there was a lot of great feedback both for and against this post.

Big Changes. Going Independent.

Posted by – May 24, 2010

What’s the news?

Starting this week, I’m putting out my shingle … I’m going independent … and I’m praying I won’t starve.

I feel blessed with the opportunities I’ve encountered along my journey, and lately I have had a strong urge to strike out on my own. I want to experience what it’s like to be an independent business owner, and I am excited for the opportunity to work with extremely smart developers as I continue this path.

I’m also curious if I will come to love this new freedom or if I’ll hang myself with it.

But why are you leaving Elevator Up?

Elevator Up has been such a great experience. Both Aaron and Dayna are great guys and they truly care about both their employees and their clients.

One thing I really appreciate about my experience at Elevator Up has been my exposure to many different communities and business models. Even though I’m going independent, I don’t feel like I’m leaving Elevator Up, but instead that I’m staying focused on the development community to which I feel the most attached.

This transition allows me to stay specialized in the my sphere while at the same time still being able to work with the gang at Elevator Up in areas where my strengths shine. It also allows me to engage with clients that may not have originally been a good fit for Elevator Up, but then allow me to bring Elevator Up into the conversation as they grow.

Aaron once said the phrase “Just because you work independent, doesn’t meant you work alone” and I’m pumped that I am continuing my relationship with Elevator Up, but in just a different light.

Ok, what do you really think about Elevator Up?

Just that, Elevator Up is a great place to work and a great family. I think the people who know me best know that I’m too honest to say it any other way. And frankly, I don’t have the energy to put up a false ruse.

I’m excited for this next adventure, and I’m grateful for the support of my Wife, my friends, and especially my family at Elevator Up.

If you want to talk more about my transition or have any Ruby/Rails projects feel free to read about my experience and send me an email at zach -dot- moazeni -at- gmail -dot- com.