
If you spend a lot of your time looking up all the different methods and functions from your programming language or framework, try gotAPI. gotAPI consolidates a lot of the API documentation scattered across the web and provides a simple live search for it.
Best of all, I can use the same website to lookup Ruby on Rails, Prototype, CakePHP, PHP, and CSS.
Eric
Tagged: cakephp php programming ruby
After reading Shane's post about setting goals I decided I needed to sit down and plan out my next year. 2007 has been a great year for me both personally and professional. I see 2008 as a year of growing and refining what I started in 2007.
2007 Highlights
To see where I am going, I need to know where I've been. Some of the major highlights of 2007 have been:
- Got married
- Started my own business to do custom software development, Little Stream Software
- Moved my family up to Oregon
- Flew across an ocean (Kauai rocks)
- Trained myself in JavaScript and PHP
- Meet at least 84 new people
2008 Goals
- Grow my business to make $100,000 in revenue in 2008
- Finish my personal and business emergency savings
- Get 3 paid Ruby on Rails projects
- Grow my RSS and newsletter subscribers to 500 people
- Redesign my core websites
- Participate on 10 Open Source projects
- Incorporate my business
- Write a short ebook ( 30 to 100 pages)
- Contribute a patch to Ruby on Rails
Scare yourself goal
My first goal of growing my business to make $100,000 in revenue is my "scare yourself" goal. Compared to what I have made, $100,000 is such a large number it terrifies me. Even if every month I made as much as best month, I would still come up short. I see three solutions to fill this gap:
- Charge more
- Work more
- Get creative
Option #1 will not work. I am already charging were I should be at, upping my rate will start to price me out of my bread and butter projects.
Option #2 is also a no go. I started my business to have more time with my family, not to have less time.
So that leaves Option #3, get creative. I will be thinking though the details of this option but think of it now as using leverage to complete more work.
Eric
Tagged: 2008 business goals
October brought my business some great events and some disappointments.
October Daily Actions
Marketing ideas are usually really simple but taking action on those ideas are extremely hard. Last month I said I was going to focus on closing the sales that I had pending. I closed some but I had a hard time working on the daily actions I set for myself. The three actions I was supposed to do were:
By the end of the month, I found I never really did any of them. The excuse I have is that I was busy working on billable work. This is a really good excuse, but the lack of action will end up hurting me in coming months as my marketing has lulled next to nothing.
October Monthly Goal
On a better note, my October goal was to bring in $7,000 in revenue. This goal was to make me stretch and was basically double the amount of work I had confirmed.
Guess what? ..... I reached it
Near the end of the month about 66% of the goal was complete and I was pushing really hard to hit 100%. Then I had a project make some changes that resulted in a ton of work for me to do before the end of the month. This push let me finish my goal, in fact I even beat it by an extra 10%.
It is really surprising what you can do if you put your head to it.
November Goals and Actions
For November I decided to try something new with my goals and actions. Instead of having 10 marketing actions and one goal, I split my goals and actions into 3 sections, each with their own daily actions and rewards.
Business Section
I had a killer month last month, far exceeding my revenue goal. From the projects I currently have, I think I can have another killer month. I've also been wanting to add something to my website that I can give away to visitors, so I will be starting to work on that resource this month.
Goals
- $7,000 in revenue
- Planning completed on a free web resource
- Finish all portfolio tasks
Marketing Section
Over the past few months, my marketing has slowed down a lot. My biggest problem is that I am not meeting enough new people. So my November Marketing goals are focusing on meeting new people.
Goals
- Meet 5 new people
- Get 5 new newsletter subscriptions
Personal Development Section
This section is a bit of an experiment. Since the business is part of my life, it should somehow improve the skills I have. Recently, due to long work hours and just an addiction to reading, I have stockpiled a huge amount of blog posts and books to read. I am already a fast reader, but if I could double my reading speed I would be able to start to catch up and pick up a lot of good information.
Goals
- Speed read at 750 words per minute with 70% comprehension
Some lessons I learned from this month:
- Let your goals help push you to success: I was afraid to set such a high goal in October but I am now glad I did. If it was lower, I wouldn't have driven myself as hard to reach it. Your goals should be far enough out of your grasp, that you need to strain to reach them.
- Track what you want to improve: The last two weeks of October, I started to track how much revenue I made every day. This let me see that I was making progress to my goal and helped motivate me to put in that extra hour of billable work each day.
- Reward yourself: As you accomplish major tasks, take the time to reward yourself. This can be as simple as an hour playing a game, or are large having a shopping spree at your favorite book store. Rewarding the little successes really make running your business fun.
Eric
Tagged: business business-reviews
This morning as I boiled a pot of water, I took a step outside and saw the sun rising through the fall leaves of a tree. Something about it really hit me; the tree, the sun, or maybe the idea that I am able to take time off of my work to really see the world around me.
I realized that my business is making me happy. Not happy like "I am happy I decided to do this" happy, but really deep down happy. Like "My life is fulfilled" happy. My business is letting me work on fun projects with great people and is providing all that I need to survive (that includes a lot of books to read). The best part about my business is that it is mine and all of the successes and failures are because of my choices.
I think we all lose sight of the real reason we start a business, to improve our lives and the lives of people we care about. My business has improved mine and it makes me happy.
Eric
Has your business improved your life? Would you ever give it up?
Tagged: business
Our society has grown dependent on computers. They are used in our shoes, clothing, and our children's dolls. We are creating these computers at a breaking rate but are we really disposing of them correctly?
As harmless as they appear, these discarded computers and electronics contain substances that pose a threat to our environment and to our bodies. According to the Elizabeth Gorssman, author of "High Tech Trash:
Discarded electronics account for approximately 70 percent of heavy metals and 40 percent of the lead found in U.S. landfills according to a 2001 EPA report.
The world generates twenty to fifty million metric tons of e-waste each year, according to the United Nations Environment Programme.
There are several things each of us can do to help:
- Recycle old computers - organizations like Freegeek take old computers and will refurbish or break them down for recycling.
- Donate your old phone or computer to a charity or a needy individual.
- Slow down your electronic purchases - do you really need a new cell phone every 6 months?
This post was created as part of Blog Action Day, where bloggers around the world unite to write about the environment.
Eric
Tagged: Blog Action Day environment
September is now gone but it left me with some vital lessons about business.
Marketing
If you are not marketing, you are not in business.
I think every freelancer should take the above quote and hang it over their desk. You cannot stop marketing and expect to survive for long. All of the marketing I worked on in August payed off this month with two new contracts.
Tracking goals
In order to improve something, you must track it. Last month I said that my goal for September was to bill 60 hours for the month. I ended up missing my goal by only billing 40 hours, but this was from measuring the wrong number.
What I really wanted was to make the amount of revenue those 60 hours would represent. If I used that as my goal I would have hit it, because I worked on some fixed price contracts that brought in the revenue I wanted and took less time than what I estimated. From now on, I will measure something that is the result and not the cause of the behavior that I want.
What to expect in October
Now that my marketing is working in overdrive, I am having to focus on closing many of the sales that I have pending and finishing up the current projects. So following the "Get Clients Now" program I have been using, I am going to focus on the proposals and contacts I have to see if I can serve them better and close out two projects. Some of the daily and weekly actions I have setup for myself are:
As part of my program I have to set a goal for the month. Since last month I was measuring the wrong number I decided to set my goal to be $7,000 in revenue for October. This is a huge stretch but I really think I can make it if I try my hardest. The good thing is by tracking my revenue, I am following what is really important to the long term survival of my business.
Some lessons I learned from this month:
- Track your sales cycle: Start to track how long it takes you from discussing a project until you have a signed contract for the project. This is the length of your sales cycle, I found mine is longer than 30 days. If I want to work on a project in November, then I have to market and start talking to customers about it right now.
- Time for your business: It is really hard to take time to work on your marketing and business tasks when you are swamped but you still have to put in some time everyday. The last two weeks of September I had so many things going on I really slacked off on my marketing and I am starting to see a little dip from that. Try to put aside a set amount of time everyday to work on things other than your customer's projects, and make sure they are the important things.
Eric
Tagged: business business-reviews
written by edavis on September 26, 2007
0 Comments
Depending on what your client needs, Ruby on Rails may or may not be a good technology choice. Whenever someone is looking for a new project I go through this mental checklist to see if Ruby on Rails would be the best fit for them:
1. Does the project call for a web based application?
Ruby on Rails can work outside of the web environment but it loses some of its productivity. Pseudo-web environments like web services will lose some of the productivity but the new REST features is making Ruby on Rails a good contender.
2. Is this a "greenfield project" where no legacy code is in place?
If the client has legacy code in place that they are wanting to keep, the project will have problems when the time come to integrate the two codebases. Ruby on Rails can work in those places, it would just take some more effort and a very good deployment plan.
3. Are you skilled with Ruby on Rails or do you have access to a skilled development team?
A lot of people get into Ruby on Rails thinking it is a magic bullet. Unless you have programmed in Ruby before, you are going to have to be a fast learner. Learning a new programming language (Ruby) along with a large framework (Rails) is going to be painful. Luckily Ruby is a very beginner friendly programming language, and you can pick up the major points in a few weeks.
Because Ruby on Rails is very productive, it might be a good investment for a newcomer to take two weeks and write a simple throwaway application. I'm not new to Ruby or Ruby on Rails but I learned a ton of things in the 48 hours for the Rails Rumble 2007.
4. Does your client have high quality hosting?
Sad fact, Ruby on Rails needs a more powerful computer to run than something like PHP. But one thing to remember, do you really want to have a client spend $10,000 on a web project and then throw it onto a $10 month web host. A 256MB virtual private server is enough to get a good Ruby on Rails website running happily. I recommend Slicehost (referral link), they have hosted my websites since March 2007 and I have not had any problems at all.
5. Is the project going to use AJAX effects?
There exists many libraries to help add in AJAX effects to any programming language or framework but Ruby on Rails has a lot of built in helpers that can make adding AJAX one line changes. Ruby on Rails also makes it easy for your AJAX effects degrade gracefully for non-JavaScript users.
I love Ruby on Rails but I find most of the headaches come from someone who uses Ruby on Rails because it is cool technology, and not because it is the best solution to their specific problem. Remember these are some of my guidelines that I use for my client projects.
What guidelines do you use to decide Ruby on Rails is your best choice?
Eric
Tagged: development ruby ruby on rails
written by edavis on September 21, 2007
0 Comments
Brett over at FreelanceSwitch wrote an article about working with freelancers with complimentary skills. It highlighted how freelancers shouldn't be afraid to bring in extra help on a project, especially if it will help the client.
The first step is to connect to other freelancers or companies who offer skills that compliment your strengths. Graphical design is an area that will compliment my programming, so finding a great web designer to help me on some projects would let me offer more services to my clients.
Contact me if you are a great designer and would like to work with a web programmer on some projects.
Tagged: business
written by edavis on September 18, 2007
0 Comments
Current
- JavaScript: The Definitive Guide - Programming
- Beautiful Code - Software Development
- The E-Myth Contractor - Business
- Micro-ISV - Business
- Book Yourself Solid - Business
- Revelation Space - Fiction
Next
- Adding Ajax - Programming
- Introduction to Algorithms - Programming
- The Design of Everyday Things - Business
- Good to Great - Business
- Growing a Business - Business
- How I Raised Myself from Failure to Success in Selling - Business
Completed
- Addison-Wesley Professional Ruby Series Writing Efficient Ruby Code - Programming
- Ajax on Rails - Programming
- Agile Web Development With Rails v2 - Programming
- Deploying Rails Applications - Programming
- The Rails Way - Programming
- Practices of an Agile Developer - Software Development
- Extreme Programming Pocket Reference - Software Development
- The Pragmatic Programmer - Software Development
- The Dip - Business
- The Business of Software - Business
- How to be a Freelance Rockstar - Business
- Million Dollar Consulting - Business
- The 10 Day MBA - Business
- The IT Consultant - Business
- E-Myth - Business
- Getting Started in Consulting - Business
- Get Clients Now - Business
- A Writer's Coach - Writing
I try to read 3-4 books at a time. I've found that reading different subjects let me retain them better. I think it's because I can take a break from one type and let its ideas sink in deeper. My main subjects are:
Programming - nitty gritty details of programming. These are read to improve my programming skills in the short term.
Examples: Ruby Cookbook, Programming Ruby, and PHP Phrasebook
Software Development - larger issue of creating software. These are more along the lines of looking at software as a process and how to manage and improve it. These lessons will slowly improve my overall development skills over time, no matter what direction software heads in.
Examples: Pragmatic Programmer, The Art of Project Management, and Refactoring.
Business - dealing with running and starting a small business.
Examples: Book Yourself Solid, the 10 Day MBA.
Personal Development - improving myself and how I work and play.
Examples: Getting Things Done, The Now Habit.
Fiction - allows me to enjoy an imaginative story about people. I also find that after reading a SciFi novel, I really want to write software for NASA.
Examples: Hitchhikers Guide, Foundation Series, Ringworld.
Tagged: books
written by edavis on September 18, 2007
0 Comments
My second month of business is complete and the honeymoon is over. Last month I used my contacts at my previous employer to bring in all my new projects but because I wasn't marketing, this month started out slow. I went though the usual questions of doubt every business goes through "Is this the right thing to do?", "What if I'm wrong?", and my personal favorite "Does anyone really want my services?". One great thing that happened, while reading some blogs I caught a reference to a book titled "Get Clients Now!". The Amazon reviews were pretty decent so I picked up a copy of it from my library.
Since I had no real billable work, and I wasn't attracting anything new I decided to go ahead and implement the program "Get Clients Now!" was talking about. As you can see in this post, it generated some great results and brought a lot of work my way at the very end of the month.
After a few days of implementing the program I started to see some results, from the most surprising of places. One great lead came from a personal blog post I made to someone's blog. This is turning into a great relationship and will provide a lot of value for both of us in the years to come. Another great lead came from just asking my friends and family if they knew anyone who needed my services. This lead is taking awhile to solidify but will create more than twice than what I made in all of July.
Some lessons I learned from this month:
- Marketing doesn't have to be cold-calling or shaking hands at a networking event. In my case writing, helping people, and creating a nice website paid off more than me stammering though a rehearsed speech about why I am great.
- Actively work to keep your "sales pipeline" full. What happened in July was I worked so hard my pipeline ran dry, which made August a very slow month. Once it started to fill up at the end of the month, I started to get busy again.
- The main goal of any freelancer, consultant, or contractor is to provide value to their customer. The more value you provide the more business you will create.
Tagged: business business-reviews