Category Archives: Freelancing & Networking

Cheap international money transfers

Did you ever had to transfer money from a bank account in one country to a bank account in another country and used a friend as an intermediary to save on bank fees? Only problem is that you need a friend who’s got bank accounts in those countries. Well, one startup is now offering to be your friend who’s got bank accounts in (almost) every countries. Continue reading

Image Credits: TransferWise blog

Tips and tricks to stay healthy when you work at a desk

Researchers have found that after 20 minutes of sitting still the body is starting to produce toxins, that you are somehow poisoning yourself and that exercising even every day is not enough to counteract the effect. Here are two methods to avoid that and some other ideas to make your life better. Continue reading

The best way to integrate your LinkedIn profile with WordPress

I heard or read someone, recently, saying that LinkedIn was nothing more than a glorified resume. Well, 10 years ago this was certainly true and I was not looking for anything more. I had ditched the Word documents since a long time and was distributing my résumé in PDF format, despite some recruiters stubbornly asking me Word documents. Continue reading

Image Credits: Jerry Luk

Fair warning to my Facebook friends

Last year I started to grow concerns about my privacy on Facebook. Not because of another change in Facebook privacy settings or a hack of any kind but because I started to realize that the biggest threat to my online privacy are my friends themselves. Continue reading

Image Credits: John Goodridge

The network of trust

One of the questions I am often asked when I meet fellow freelance developers is how do I find work? The answer is really simple: I don’t, work finds me!

This may just apply to Switzerland, the Geneva area, software development or me but I doubt it. I think it applies to any kind of freelance job, anywhere. And I also think this is hardly a secret :)

In order to have work find you, you need only one thing: a network of trust.

You need people you trust and who trust you. The trust factor here is important because you don’t need poisonous clients from hell, you need the best clients, those with the best projects and who actually pay the bills in time. And for a network to give you that there must be a safe and natural path leading the client to you.

Building a network

Building a network is not a matter of minutes and distributing name cards is only the beginning. It is about building relationships with people. Building trust among your network will be the subject of the next chapter, for now let’s see where you can find people to build your network.

First, you certainly already have a network. If you worked in the corporate world before being a freelancer it is composed of your former colleagues and bosses but also the people you were in school with. Some of them might become clients or referrals. Then you will need new friends, and the most important thing to make new friends is to meet new people. If you are the shy type then get over it or get back to corporate world.

To meet new people you need to find gatherings. Ask around you, use Google and social networks and find groups of professionals that gather regularly. Conferences are also good but you need to be able to follow up on the people you meet (you hardly build a trust relationship when you meet people once in a year). You can even build your own group if you are, say a Google AppEngine specialist but there is no local GAE users group. This is important: you need to meet people around topics that interest you! If you go to a RoR meetup thinking “I don’t care about RoR but if those guys have a Java project coming in they may refer me” then you are doing it wrong. Even if “those guys” get a Java project and cannot convince the client to switch to RoR, they won’t think about you because you were enable to connect with them during the meetup.

I will not discuss how to connect with people, there is no secret handshake and if you have relational issues may be you should consider working this first.

And then you will have to add your clients to your network. They are an important part of it because they have a unique point of view, they trusted you with their projects and they hopefully are more than happy with your work.

Another thing is that you will need your network to think about you. When the time comes, your name must be floating at the surface of their brain. With the advent of social networks this is something that has become relatively easy, so do not hesitate to use Facebook, Twitter et al. in addition to regular face to face meetings. Your network must hear about you, it must see your face and it must remember who you are. Obviously you need to stay relevant, you can share your passions and your wisdom but you also need to share useful professional information.

Building trust

This is the most difficult part, you must be recognised by your peers and be a point of reference for your clients. I only found one effective way to build trust (if there are others I will be happy to read about them in the comments) and this is to overdeliver.

For clients, overdelivering means exceeding their expectations. It can be in term of schedule, functionalities, quality or just being there when they need you. Or before they need you.

For fellow freelancers or colleagues it means sharing work and knowledge, helping them when they need help, without demanding or expecting anything in return. This can be done is several ways, participating in open source projects is one, giving presentations at meetups or speeches at conference are others.

If you think a project or client may be dubious do not refer it to someone else without the proper warnings. Likewise, do not send a trusting client to an unknown resource without the proper disclaimer. Never refer a client you would not take or a freelancer you would not hire.

Once enough people in your network trust you the network effect will kick in, some people will trust you just because others do and you will receive e-mails from people you don’t know who want to work with you.

And you? How do you find work?

What’s your problem, exactly?

Nacmias Auto Sales, Service, and RepairsWhen you have a problem with your car and you go to the garage you usually say something along the line of “I’ve got a strange noise when I do this or that”. The guy (or, in my dreams, the gal) never say “I don’t understand, come back later with a better description of your problem”.

To my fellow developers: this is the same when a user comes to you with a bug. Believe me, there’s no such thing as an under-specified bug.

There’s a rampant habit among developers for being condescendant and asking for precisely specified bug reports. I know it, I do it as well. Developers have a lot of reason to do that, but mostly it’s because we think we are smarter than average (which is true, most of the time) and you don’t deserve our attention if you’re too stupid to understand the way we work. The other thing is that we don’t like bugs, and one way to avoid bugs is to make it difficult to report them.

When a user (or client, which is worse) take the time to come  to you and say there’s a problem with your software, take their word for granted. Even if it’s not a technical bug it can be a documentation or an education bug. Make sure it’s easy and worthwhile for them to report that bug because, before all, it’s in your own interest.

Reporting a bug must be a conversation. I mean, you would go to another garage if the guy was condescendant, disrespectful or was simply oblivious, wouldn’t you?

Image Credits: Rich Nacmias

Experiencing viral growth

This is something to hear and talk about it but this is something totally different to experience it, it’s thrilling, even on modest scales.

Since my LibraryThing application for Facebook is out it has clearly had a viral growth curve. So far there are only 435 users and every week I am looking for an inflection of this tendency. I know there will be one because there is a limited number of LibraryThing users on Facebook. My goal, right now, is to attract as many of them as possible on this application.

The next step will be to attract Facebook users to LibraryThing. But I know that for this I will need help from Tim Spalding and the LibraryThing team. I have always been grateful for their work but I must admit that I have been quite disappointed recently as I was trying to contact them and they constantly ignored me.

I am also thinking about open-sourcing the application, because I think it is both a good use case for people who are developing Python/Django applications on Google AppEngine and those who are developing for the Facebook platform. I still have to choose a license but the GNU Affero General Public License seems like a good match.

Anyway, if you love books, got plenty of them and want to share your readings, do not forget to give LibraryThing a try and once your are convinced, join the Facebook application, with this application you can:

  • Add a tab and a box to your profile, listing your most recent books
  • Choose the number of books to display in your profile tab
  • Choose whether you want to display them with covers only or as a list which will include your ratings and reviews
  • If you grant the application the right to publish to your stream it will publish books you add to LibraryThing on your wall
  • It will also publish reviews as you write them on LibraryThing

You can also:

  • Browse your Facebook friend’s books
  • Find books on the search page
  • Share a book you like or comment on it (those are Facebook only features and will not appear in LibraryThing)
  • Add a book to your LibraryThing collection with a single click

Enjoy :)

A year in review

As this year in coming to an end I though I should do a post-mortem, like at the end of a project, to see what went well and what did not.

  • I left the office I was renting downtown and started working from home: It was a good move from work perspective, being alone at home allows me to be really productive. However, as the second part of the year was getting busier it became difficult to put limits and my work/life balance suffered.
  • I worked the map editor of the DITA-OP but did not finish it: Not good at all, I have not been able to do a release this year. The other problem with the DITA-OP is that I don’t know my users. I know they are here, somewhere and I really need to find a way to gather the community.
  • I started two toys projects, and a Facebook application for LibraryThing: is rolling on its own, it does not cost me anything beside the domain name (thanks Google App Engine), it’s used regularly and bring some traffic here. fbLibraryThing is slowly but steadily growing but I am wondering if I will be able to add new features – I am completely dependent on the LibraryThing API and I will need help from the LibraryThing team if I want to go farther.
  • I completely put aside my super-secret Babelizr project: That’s not a good thing, for sure, but at least it was because of too much paid work. A positive thing is that I greatly improved my Python and Django skills with other projects and it will payoff for Babelizr.
  • I can now consider myself an Amazon Web Services and Google App Engine expert: And that’s a tremendous addition to my curriculum. I need now to dedicate more time to their respective communities.
  • I accepted too many projects in the second part of the year: The beginning of the year had been slow and I though I needed as many contacts as possible to build a sustainable business. Overall this is a good thing – especially since I exceeded my financial goals. The other positive side is that I only accepted interesting projects and that I met really nice people. But I really had a lot of pressure in the last quarter and this was definitely not the purpose of being a freelancer – “Working more to earn more” is not my moto.
  • I did not blogged enough: Especially since I gained a lot of experience in many fields and with many tools, I should have definitely written more about these.

And last, but not least:

  • I swam with sharks: Biggest thrill ever! I swam with two Oceanic Whitetip (Carcharhinus longimanus) in the Red Sea. My only regret is that I have been totally unable to take a descent picture or make a video of this event.
  • I skied almost every week-end of the winter season and hiked almost every week-end of the summer season: This prepared me really well for our 2 weeks vacation in Peru.
  • I have been more than 80 times to the movie theater: Thanks to the Pathé Pass Yang offered me last Christmas. It allowed me to see movies (good and bad) that I would not have seen otherwise.

I think I can say it was a good year, tiring, a bit stressful near the end but a good year. However, I must say it did not bring me any closer to my biggest goal that is to find ways to automate my revenue stream, so I really need to work that out next year.

The other planned features of next year are:

  • Releasing the latest version of the DITA-OP and finding a way to build and animate the community.
  • More blogging (like everyblogger else) and tweeting. Find a better organization of my Facebook presence.
  • Connecting with the LibraryThing team, although this proved to be difficult so far.
  • Coming back to Babelizr, may be starting with building external interest around the project first in order to force commitment.
  • Dedicating more time to online communities: Google App Engine, AWS, Drupal, Django, etc. May be through Stack Overflow.
  • Planning of a 4 weeks vacation dedicated to hiking or diving.
  • Watch as many movies as possible with my renewed Pathé Pass.

And, of course, keeping my clients happy :)

I only worked for two public projects this year (others are either private or still in stealth mode, so I cannot talk about them):

  • Fontself, a startup company which provides a revolutionary new experience of text, through digital text personalization. It provides digital fonts that preserves the gestures of a given handwriting and the original look of the drawing appliance (ball-point pen, pencil, ink, paper, etc.). I participated in the design of the font distribution system and its implementation on the Amazon’s cloud infrastructure using Python and Django.
  •, the multimedia magazine from the Swiss Romand Television channel asked me to redevelop their website using the Drupal CMS and various media management modules.