I've found that when facing a decision between two choices it's often the more uncomfortable option that's the better choice. For instance, making the call to tell your client that the delivery of a feature will be late or that a previous design decision will affect the project schedule is usually pretty difficult to do. But, you know it's the right thing to do and lets the client appropriately react. This uncomfortableness stems from the fact that you're deferring your own preferences in favor of somebody else's need for information.
It is this spirit of disclosure I knew I wanted to embrace when forming yFactorial - exposing the internals of the company to the benefit of others. From that, yFactorial and this, The Naked Company blog, were born.
The first part to expose? Company values. I'm not one for mission statements and other corporate fluff, but I think it is important to think about what differentiates you from your competitors and what kind of culture you want to foster. With that said, here are the main tenets that form the foundation of yFactorial:
- Contract software development is about the relationship first, the technology second
- Integrity, ethics and morality are the basis for any relationship
- It's ok to have a personality in the professional world
I've worked at some really great companies in the past but always knew I was headed towards creating my own with its own distinct persona. Too often companies get bogged down in running a business and lose sight that all businesses are are groups of people. As one of my development partners likes to say, when projects fail it's usually because there's an issue with the underlying relationship, not because the technology failed. I really believe this to be true and have made this realization the basis for how I want to approach running yFactorial.
It is my goal to make every business relationship a personal one, which includes projecting my own personal integrity, morality and personality onto the relationship. Professional competence and personality are not mutually exclusive - and one could even say that the latter enhances the former.
Are you interested in working with a software development shop that works with you on a personal level? Give me a shout.

Rida Al Barazi said
I believe that going for you own startup is a great step forward. I'm sure we'll be impressed with the projects you will participate in. Good luck.
Friday, September 07, 2007
Jeremy said
I think you're right on the money. The key to a successful relationship is getting the best feedback mechanism in place. In order of people to be comfortable that the relationship is beneficial, they have to have a sense that they know all the dynamics in play. In the short term, hiding some aspect that would imperil the seeming mutual benefit of the relationship seems advantageous, but in the long run you simply delay eventualities rather than prevent them. A commitment to openness and transparency is a way to ensure that information between parties is of the highest quality, both for you and the client. I've found that a lot of clients don't want this kind of honesty. They like living in a dream world where they hand off projects to developers and they magically manifest, or they simply get used to being disappointed by developers. Transparency is advantageous to us developers, in part, because it weeds out bad clients who don't want to face reality. This is why processes like agile don't work in a lot of ueber-bureacratic, super-large corporations, since so much of their internal organizational behavior relies people reporting to other people with their jobs at stake, which naturally colors the information that goes up and down the chain of command. Sorry for the rambling comment, but this is an area of intense interest to me.
Sunday, September 09, 2007
ryan said
Jeremy - great comments.
I think I would agree that not all companies want this kind of openness from their development shops... and I'd also say that I don't want those types of companies as my clients.
My hope is that the transparency I display will enable my clients to be 'more real' with me as I am with them, thus increasing the value of the relationship. If one side fails to do this then there is no value gained at all.
Wednesday, September 12, 2007