Category: General

Homebrew Upgrade Woes

I ran into an interesting problem recently after updating my installation of Homebrew on my Mac Pro.   Starting with the update command, which ran successfully:

$ brew update

I then attempted to update my redis installation to the latest:

$ brew upgrade redis

I was greeted with this message:

Error: undefined local variable or method `brew_install' for main:Object

Trying several things on my own to no avail, led me to a Google search result pointing out a known issue and solution.  It appears there is an issue with a brew_upgrade.rb artifact being left behind after a brew update.  The following commands from the Homebrew wiki fix the problem:

$ cd $(brew --prefix)/Library/Contributions/examples
$ git clean -n # if this doesn't list anything that you want to keep, then
$ git clean -f # this will remove untracked files

I hope this helps someone with the same problem.

When Will Amazon Stop Running and Face Reality?

I have been an Amazon Associate for a long time and a Connecticut resident even longer.  Here is the sad email I received this morning:

Hello,

For well over a decade, the Amazon Associates Program has worked with thousands of Connecticut residents. Unfortunately, the budget signed by Governor Malloy contains a sales tax provision that compels us to terminate this program for Connecticut-based participants effective immediately. It specifically imposes the collection of taxes from consumers on sales by online retailers – including but not limited to those referred by Connecticut-based affiliates like you – even if those retailers have no physical presence in the state.

We opposed this new tax law because it is unconstitutional and counterproductive. It was supported by big-box retailers, most of which are based outside Connecticut, that seek to harm the affiliate advertising programs of their competitors. Similar legislation in other states has led to job and income losses, and little, if any, new tax revenue. We deeply regret that we must take this action.

As a result of the new law, contracts with all Connecticut residents participating in the Amazon Associates Program will be terminated today, June 10, 2011. Those Connecticut residents will no longer receive advertising fees for sales referred to Amazon.comEndless.comMYHABIT.COM or SmallParts.com. Please be assured that all qualifying advertising fees earned on or before today, June 10, 2011, will be processed and paid in full in accordance with the regular payment schedule.

You are receiving this email because our records indicate that you are a resident of Connecticut. If you are not currently a resident of Connecticut, or if you are relocating to another state in the near future, you can manage the details of your Associates account here. And if you relocate to another state after June 10, 2011, please contact us for reinstatement into the Amazon Associates Program.

To avoid confusion, we would like to clarify that this development will only impact our ability to offer the Associates Program to Connecticut residents and will not affect their ability to purchase from www.amazon.com.

We have enjoyed working with you and other Connecticut-based participants in the Amazon Associates Program and, if this situation is rectified, would very much welcome the opportunity to re-open our Associates Program to Connecticut residents.

Regards,

The Amazon Associates Team

The sad part of this email is what Amazon chooses to handle this….run.  This is exactly what they did with a distribution center in Texas at the beginning of the year.

The reality here is states are losing big tax revenue to online businesses and now they want the revenue they feel they deserve.  I pay my fair share of taxes and don’t really want to pay any additional taxes but it doesn’t seem fair that the local Mom & Pop establishment has to collect sales tax and others do not.

I just don’t agree with Amazon’s actions here and find them spineless.   One part of the email I particularly funny:

To avoid confusion, we would like to clarify that this development will only impact our ability to offer the Associates Program to Connecticut residents and will not affect their ability to purchase from www.amazon.com.

Translation, sorry to stick it to you but we still really want your money.  Thank you!

2011 Conference Season

Railsconf2010

I mentioned in my review post of 2010 that I planned to spend more time networking, in particular attending conferences.  I have a pretty solid schedule between conferences and vacation time to last me into the Fall.

I will be attending the first two representing InfoQ, so if you are speaking and want to get together to talk about what you are doing then hit me up.

Emerging Technologies for the Enterprise, April 27-28 in Philadelphia, PA.  Please take a look at the speaker line-up.  I will be attending the speakers dinner on Tuesday evening, please find me.

The 6th Annual Emerging Technologies for the Enterprise Conference has become the Mid-Atlantic’s go to conference for developers, architects, and IT executives. Subjects as expansive and intricate as emerging technology and Open Source require a dynamic forum. This conference provides just that, with industry experts providing up-to-the-minute insight.ETE 2011 brings together pioneers across the spectrum to discuss the principles, practices, and products that are transforming IT’s ability to drive the success of the enterprise.

RailsConf 2011, May 16-19 in Baltimore, MD.  Please take a look at the speaker line-up.  I attended last year and it was a great event, very well run.  Being held in Baltimore again it is hard to pass up not attending.

Thanks in large part to the Baltimore Rails Community who were such a great hosts in 2010, RailsConf is returning to Baltimore again in 2011. Happening May 16-19, 2011 at the Baltimore Convention Center, RailsConf is the official event for the Ruby on Rails community. If you’re passionate about Rails and what it helps you achieve—or are curious about how Rails can help you create web frameworks better and faster—RailsConf is the place to be. Learn more about RailsConf.

MicroConf, June 6-7 in Las Vegas, NV.  I am tentative on this one only because of how soon it is coming and other work and family commitments.  It is put on by Rob Walling and Mike Taber of Startups for the Rest of Us podcast.  The event, focused on small software companies.

MicroConf is a two-day conference focused on self-funded startups and single founder software companies. A limited supply of discounted pre-launch tickets will be available soon; sign up for pre-launch below.

360iDev, September 11-14 in Denver, CO. This is my first conference covering iOS topics.  After watching the session videos from the last event, I decided this was a good one to get started.

360|iDev is the first and still the best iPhone developer conference in the world. We’re not a publishing company pushing books, or a media company selling subscriptions. We’re a conference company, focused on community. Our goal is to bring the best and brightest in the developer community together for 3 days of incredible sessions, awesome parties, good times, and learning. If you don’t leave Wednesday night, with more ideas than you know what to do with, we’re not doing our jobs!

Business of Software 2011, October 24-26 in Boston, MA.  I wanted to attend last year but the price of admission was too high, but this year an early discount rate made it happen.

In short, BoS is a meeting of minds in an incredible, nurturing, sharing environment where amazing people share their thoughts about building better, more sustainable, more profitable software businesses and getting more out of their lives in the process.

I may end up at some smaller conferences at the last minute involving iOS development or other business of software topics.  Hopefully some become available after October.

Again, anyone reading this attending, please hit me up as I would love to meet and talk.

Moving Forward and the Acquisition of Expens’d

I mentioned my lofty goals for 2010 in a previous blog post.  One of the goals is moving some efforts from freelancing work to products which can happen in a couple of ways; either by developing products yourself or by acquisition.  Acquisition is how we are introducing the first product in our company.

logo

Why Expens’d?

We welcome Expens’d as our first product.  Expens’d is an application for tracking expenses, which sounds a bit boring but is a task many salespeople, consultants, freelances and just about anyone in business needs to do.  I personally think so many applications which are accounting systems also track expenses but do it in a way which is cumbersome and ordinary, we want to change this.

In the weeks and month ahead we will be introducing many new features to the application and changing some that already exist.  Thanks to our users feedback we have some clear guidance on what they want to see and plenty we want to explore.

Why Acquisition?

I have had the idea of a carefully crafted expense tracking application on my mind for a very long time but failed to set aside the time to pursue it.  When I found out Robert Dempsey of Atlantic Dominion Solutions was going to shutter Expens’d due to other interests, I jumped on the chance.  Expens’d had a great start with a good feature-set and knowing Robert, had a great code base.  This would get me part of the way there.

This is a huge advantage when building from scratch wasn’t really an option due to some time constraints.

The Future

I see many great things that can be done in this market.  Things that can make the task of data entry much more streamlined that can be extended to other applications.

Readers can follow what is happening with Expens’d on my company blog which will be updated as new features come out.  Thank you and stay tuned.

2010 – The Year Ahead

2009 was a very interesting year, a year of some realization and a year which helped lay the foundation for the year ahead and hopefully the future.

I decided to document here a bit of what I have on my mind for 2010, not New Years Resolutions, I hate those and never do them. I have gained a fair following of loyal readers over the years and think of you as family, so I thought I would share with my blog family.

Freelancing

As I said in my previous post, I have been freelancing for many years and in 2009 I realized the ability and desire to continue with freelancing as a full-time endeavor was difficult. I will not be pursuing freelancing full-time in 2010 and as the year progresses I see the time spent freelancing to be less and less.

I will continue to work with selected clients as I have a vested interest in their success. In time I imagine their need for my services will be less and less.

I will be open for consulting opportunities with the possibility of part-ownership in a product and/ or for projects that need help figuring out difficult problems in areas I have expertise in but not limited to .NET to Rails migrations as well as scalable ecommerce systems.

Products

Even before I was in college I have always wanted to have an idea for a product, develop it, successfully market it and support it. I have been involved in a product company in the past but not my own individual ideas. I am sure this sounds self-serving, and it is, but there comes a time when we need to decide what is important and do it.

So, my goal is to primarily be a product company by the end of 2010. The company is Still River Software Company, LLC, which has been the umbrella I have been providing freelance services for the past 3.5 years.

Things are progressing nicely in a couple of exciting areas, so new product announcements will be coming soon. Very soon, but not just yet.

Blogging

I have not blogged a lot lately, been too busy with the business side of life. I will be blogging here, mainly about technology trends and my usual odd opinions about some aspects of technology and may begin to add some business writing as well which covers certain aspects of running a software company.

I will also be opening up a new blog for Still River Software which will discuss very company-specific information, including product releases and such. I will announce it here when it’s ready, please check it out.

Conferences

I have not attended as many conferences as I hoped to in 2009, the ones I did attend were developer-related, mainly Ruby. In 2010 I intend to attend more conferences but probably more in line with running a business or software company more specifically. I hope to see you there.

So, I hope the ride is nice and I hope I can report back great success at the end of the year, I certainly expect it.

Technorati Tags: ,

43

Today is my 43rd birthday.  I have since my late 30’s, really disliked thinking about being another year older, I mean, it’s really only another day older than I was yesterday but acknowledging the fact that an additional year has past put me in a somber mood.  Maybe it is the realization of middle-age that makes one think about their place.

In prior years I spent the day reflecting on the past 365 days and wondered if I had made the best use of my time and taken advantage of the right opportunities.

Reflection

This birthday is no different in as much as reflecting on the past year but taking a different view of it.  I realized that I am damn lucky!  I have a great family, I work from home and do the work I choose to do.  I get up everyday and don’t take the dreaded commute to the cubical farm.  I get to see my family every morning a take my daughter to school.  I know many people wished they could have this life because I dreamed of it myself when I was commuting and wasn’t home when I wanted to be.  It is easy to miss too much.  I have reached aspect of my life that I can stand and be proud of.

I am truly happy and at a peaceful point even with the state of our economy and the climbing costs of everything.  Keeping our head above water and moving forward, certainly means success.

Inspiration

I read a lot of blogs, some I read every detail and some I don’t.  I find myself looking for something different now than I used to, so the sources of information have changed.

I find those people that are taking the same path I am taking or are where I want to be are the ones I find so much value in.  My goals are not to be rich or famous but to provide for my family, feel good about the work I do and help others find what inspires them.  It’s not always easy to be able to explain things as one might, therefore some source of inspiration.

It is so true, passion and inspiration mean so much.  I know too many people who have a 9 to 5 “job” they never really enjoy.  I think something we spend so much time doing, we should be happy doing it.  It doesn’t have to be working for yourself, it can mean anything as long as it adds value to your life. 

Projection

It seems part of my career always seemed to be chasing something that I knew existed but I wasn’t exactly sure I would know when I got to it.  I can honestly say that I know what that goal is and I have a fairly good idea how to get there. 

I won’t go as far as lay out the path to the next goal but I do have it laid out in my mind.  I will blog about it here when I feel comfortable talking about it, but I will say that things will change for the better.  Stay tuned, good things to come.

Technorati Tags: ,

Bing for Site Search

bing-logo

I have been using Microsoft Bing as my main search provider from both Internet Explorer and Firefox for a while now and I have to say it has been working really well.  I was a bit skeptical at first, mainly because Microsoft search has lagged behind Google for so long. 

I decided to change my blog search to Bing tonight.  I like the way it allows for local searching of a topic but then allows to see results from the web too.  I have done many test searches on this site and it is working great.

Anyone can do the same for a web site for which they can edit HTML and/or JavaScript.  Check out – http://www.bing.com/siteowner to add Bing to a site.

If anyone gets results they didn’t expect or any odd behavior, please let me know.

Technorati Tags: ,,

Finding Work as a Freelance Software Developer

The recent downturn in the economy has turned many more developers who were full-time employees into consultants to help pay the bills.  This increased competition has led freelancers and contractors to find business in new ways we have not seen in many years, since the bubble in 2000, to be exact.

Get-Clients-Now-2ed I was introduced to a book a short time ago called Get Clients Now!(TM): A 28-Day Marketing Program for Professionals, Consultants, and Coaches by C. J. Hayden.  My original thought was this was a bit of a gimmick but since it came recommended, I would give it a try.

In the past several months I had been trying both Google Adwords and Facebook Ads with miserable results.  The ads are shown a lot but gave little or no results.  I used different types of ads with different copy targeted at various markets with little difference.  I wasn’t really sure why until I read this book and it made a lot of sense.

The program outlined in this book offers much flexibility to the person taking on the marketing program based on their comfort level and their expected rate of return (new leads and new clients).

Referring to the worksheet provided by the Get Clients Now! website and referred to in the book, you can see 6 ways of finding new clients:

ActionWorksheetThe worksheet defines these 6 different strategies by order of effectiveness, with Direct Contact and Follow-Up being the most effective and Advertising being the least effective.   So my new approach to finding clients was the least effect of the 6 and likely explains my lack of lead generation. 

My best source of clients up until this point had been referrals from existing clients and repeat business from clients.  Both are certainly great ways to get business but as spending cuts occur there comes a time to bring in new leads.

The Audience

If you look at each of the 6 strategies there is something interesting to note; as the effectiveness of each decreases from left-to-right, the size of the potential audience goes up.

  1. Direct Contact and Follow-Up – is a one-on-one contact, you and a potential client.
  2. Networking and Referral Building – you in a small group at an event, likely one-on-one or you and 5-6 people talking.
  3. Public Speaking – you talking to a group of 20-100 people.
  4. Writing and Publicity – you addressing an audience with an article and 1000-2000 people, maybe more.
  5. Promotional Events – could be a trade show with 10000 people seeing your message as they walk by looking for freebies.
  6. Advertising – like Google AdWords you are flashing your brand to 100,000+ people.

As we move down the list the message gets lost among others and it becomes colder.  I have always had a very good network and as I said, referrals are great and bring in new business.  The place I tried and failed was attempting #6, Advertising, where I thought if more people saw my message that the hit rate of return would increase.  I could not have been further from the truth, so don’t waste dollars on advertising yourself.

What’s Been Working

I don’t do all of the 6 steps but only 3 of them but they all are working for me very well.  I need to work harder in some areas but things improve over time.

What works for me may not work for you and free time may play a role in some aspects.  My plan consists of:

  1. Writing – I write for InfoQ.com about Ruby technologies and on this blog, of course, about anything technology-related that interests me at the time.  This gets my name out there and recognized.
  2. Networking – I attend conferences and user groups and “work the room” by meeting and talking to as many fellow developers and entrepreneurs as I can.  I need to attend more local user groups, it is important to get out of your office and meet people.  I also think virtually meeting people is a great way as well, using Twitter and Facebook to network works very well for me and I know other too.
  3. Direct Contact – this is what I have focused on over the past couple months and is making the most impact. 

Getting Started

All of these take time to develop but doing a little of each can move things forward. 

Writing – start a blog and write on a regular basis with things that interest you.  Comment on other peoples blogs and link back to your blog if the topic is relevant.  I know people are on the Twitter bandwagon and say blogging has died and Twitter is the king, I don’t agree and think writing is a great way to tell your potential audience you know your stuff.

Network – attend a conference and bring plenty of business cards, meet people and hand them out.  Go to the after hours parties and mingle, don’t just stand in the corner.  Pick some local user groups and attend, could be a developer-related one or a business luncheon, but get out and chat with people and get the name out.

Direct Contact – this sort of stands on its own but also piggybacks Networking.  How? Well, those contacts you meet are great for follow-up later, emailing with a note about meeting them goes a long way.  I am not talking about emailing everyone but those that seemed interested, said to give them a call or you feel has a problem to be solved with which you can help.  I like email versus a phone call, it is less intrusive and you can easily say it was nice to meet them in an email where a phone call to say so might be inappropriate.

There are other ways I have been using Direct Contact to find leads other than follow-up to a networking event.  It requires some ingenuity to find ways to make direct contact.  I use newspapers and magazines to find out what is going on with companies, maybe they are expanding or have a new product.  This might be an opportunity for a new web site or chance to come in as a consultant to help write some new software to support some new business.  You never know until you ask.

I am always listening to my fellow consultants, maybe they need help on a new project or an old project they are behind on.  Maybe they have leads they just can’t follow-up on or are not their expertise.  Taking a lead from them is a really easy way to get direct contact.  I have even offered to pay a finders fee for leads if I get the job, maybe a flat-fee or some amount per hour for
each hour I bill.  This is a great incentive for them to give you the lead over someone else.

One of the single best ways I have found new direct contact leads is using Twitter, Twitter Search to be exact.   People are talking and finding the topic you are interested in is a search away.  If you were looking for ASP.NET work, you could search to see who is talking about ASP.NET and their projects.  You can reply to them or possibly get an email address from their Twitter profile and send them an email.  This works great!

It is surprising to me to see people publicizing they need some help with their project.  They are asking to be contacted…perfect.

Finally

I have been a consultant for many years and finding work is enjoyable to me.  I like the challenge of finding leads and building a rapport with someone well enough for them to give you their money.  Think about it, convincing people to exchange their hard-earned money for your service is a great feat and not to be taken lightly.

If you do a good job that client will tell others and getting new business will be easier.  Starting out is not easy and no magic bullet but I do recommend C.J. Hayden’s book.  Finding leads takes time and even the smallest effort can pay off but the right effort.

Disclaimer: I am not a marketing expert, just someone honing their skills after many years of consulting.  I wanted to write up a bit about what works for me, not a recipe for everyone.

Interesting and Painful First Contest Experience with 99Designs

I am not a designer and I never pretend to be. The projects I have worked on over the years has had a designer involved at some level so the pain of trying to make a user interface pleasant to look at was never a concern of mine. I have a few personal projects I have been working on lately and needed some design work. A bit of searching around the web led me to 99Designs. 99Designs is a web site which will put designers in touch with people who need services. The folks looking for design work create "Contests" with a fixed price for designers to submit an initial design, hoping to get the work.

I created a contest for a web site design for a small utility application I have been creating. The contest started about February 21, 2009 and after only a few days had some entries. The cost of the contest was $45 dollars to setup and I put a fixed amount of $400 dollars as what I thought was a fair price. I received a total of about 25 entries over the life of the contest, which was 7 days. Overall the process of viewing the contest entries was good but, the quality of the entries varied a lot and were less than top-notch design work. It was about what I expected for the amount I was willing to pay.

I found what I determined to be the winning design and informed the designer. Over the next couple weeks the designer was very gracious and work with me on several iteration of the pages he agreed to create. Once he was done it came time to pay him and this is where the issues started. I do a fair amount of transactions using Paypal, love them or hate them, they work. I planned on paying this designer via Paypal, except Paypal does not transfer money to Egypt. After talking with the designer I found out Western Union is the accepted way to send money from the U.S. to Egypt. A quick trip to the Western Union web site revealed they do send money to Egypt but the fee for the transaction was $42 to send $400, what the heck? The $42 fee did not include credit card fees for "withdrawing cash", but not much I could do at this point.

The story gets a bit more interesting when I submitted the request to transfer money to my new designer friend, when I received a message from Western Union who could not complete my request. I then needed to call Western Union to give them additional information about the transfer. A call, and fairly long hold time, put me in touch with a very nice customer service woman who assured me she would take care of this right away and I would be on my way. Well, I was on my way alright. I was told by the customer service representative that Western Union refused to send money to this person and suggests highly that I do not do business with him or attempt to send funds to them. She told me to read between the lines, whatever that meant. I was completely baffled by this response and thought I had triggered some terrorist alarm or something. How could this be? Western Union is in the business of sending my money where I say and how can they determine not to send it.

This left me with little choice other than to tell the designer what had happened and my apparent lack of ability to pay him for his work. It goes without saying he was not very happy and accused me of trying to back out of doing business with him. I couldn’t blame him for being upset.

I then contacted the good folks at 99Designs who assured me they have dealt with sending funds all over the world and could do this for me for the contest cost plus 10%, which equates to about the same as Western Union. After some manual intervention by the 99Designs team I was able to send 99Designs the necessary funds to complete the agreement I had with the designer. The designer later uploaded the artwork and it is now in the hands of 99Designs to forward the funds.

In hindsight I should had found out where this designer lived and possibly taken his location into consideration. I probably should have created a guaranteed contest instead of the type I created, this way 99Designs takes care of paying the designer and then accepts the design which is then delivered to me. 99Designs’ Customer Service was top-notch and salvaged what I thought was a project gone wrong.

I hope my experience saves a fellow developer the hassle of dealing directly with foreign designers.

Technorati Tags: ,