Business Overview
We hold very opinionated ideas regarding business in general and software development
in particular. Rampant capitalism and unrestrained consumerisim has left an indelible
mark on both our society and our planet. Here we outline our approach to 'better business'.
Fundamentals
If you run a company, there are 3 things you need to be aware of:
- The default state is that no one cares about your company, nor your products or services. It is up to you to give potential customers a reason to care.
- Similarly, all of your talented employees go home at the end of the working day. It is your job to ensure they have a good reason to come back tomorrow.
- Cash tends to flow out faster than it rolls in; managing cash-flow is therefore paramount.
We read a business article previously which stated that having a passion for creating wonderful food dishes is the worst reason in the world to start a restaurant business. The general theme of the article was to highlight the fact that it takes a keen business mind to run a successful business. The assumptions being made indicated that "successful = profitable". A successful company is simply a profitable company, and vice-versa. The conclusion stated that placing an emphasis on high quality food might actually mean the company fails to generate sufficient profit.
However we disagree with this position.
Yes, every company must be profitable or else it will quickly run out of money and fail. However it opens up the question regarding why you set up a company in the first place. Was it just to generate as much profit as possible, or was it to provide a useful service? Ideally, you would like to do both. But these days it seems the only focus is on profit. Nobody seems to genuinely care any more about the quality of the service being offered. The trend is to constantly drive down costs and maximise profit. The only problem with this is that driving down cost too much also tends to remove anything of actual value and quality. Minimise unnecessary costs by all means, but never loose sight of your true purpose.
We feel it is fundamentally wrong to elevate economic priorities over moral or ethical ones.
Always remember why you got into business in the first place and never forget your ideals and principles. We feel that such things are significantly more important than making vast profits. But then we would say that, since we are idealistic software developers, not bankers. We do run a successful software development company though, which maintains focus on delivering high quality software products in a fraction of the time normally expected. But we never loose sight of why we started the company in the first place.
Overview
Looking at any of the more mature Free-Software projects, the reason these projects tend to fair well is simply that they are controlled by small groups of dedicated and professional individuals and, more importantly, continued membership and degrees of authority within the group are simply artefacts of ability. It is usually obvious within the group who the most appropriate person would be to work on a certain area. Power and authority are therefore both temporary and fluid and are bestowed only with the consensus of the group. In terms of power, no one can take it - it can only be given; and it will only be given to someone who has earned the trust and respect to warrant such a decision being taken. It is also highly dynamic, with positions of power, authority and control passing freely between trusted and respected members - each of whom have earned their reputation.
We feel quite strongly that this is the best mechanism to employ. A meritocracy based on mutual trust, real respect and proven ability. This approach provides all of the benefits, with few (none?) of the problems. Conversely, hierarchies are not a good fit for creative industries.
We also believe that it is better to fail fast, and fail often. "Failing" is usually perceived as being a bad thing; something to be avoided at all costs. No one wants to be seen to fail in front of their peers, or boss. However it is the fear of failure which is the real problem. Remove that fear, and things start moving.
If you are setting out on a course which will ultimately result in failure, then best to find out sooner rather than later. Why bother wasting time and effort on some path which will not lead to the required result? Therefore being able to "fail fast," is a good thing.
It is also true to say that one failure can teach more than one thousand successes. So there should equally be no fear of "failing often". If you are trying and failing, then you are operating at the very limits of your ability. Provided you have the stomach for it, this is a great place to be. Conversely, if you never fail, you are simply living in your comfort zone. Of course this needs to be tempered somewhat. Constant failure, with few successes, probably means you are trying to take steps which are simply too big for you to handle. You need to learn how to crawl before you can walk, and you need to be consistently good at walking before you try to run. Also, if you are running, you need to know where you are going, be on constant alert for obstacles and know where the brakes are.
So creating an environment which has little fear of failure, is a benefit. So too is instilling within that environment feelings of real trust and true respect, given freely and solely because they have actually been earned.
Trustworthy
How to really annoy 99.999% of the people who might actually want to talk to you ...
So you have invested a bit of time, effort and money into building a web-site. You might even have produced some content or a product or service that is of interest to someone, somewhere. So whenever an interested party happens along, and tries to access an item of interest, what do you do?
Well, a right-thinking company might go out of their way to ensure smooth and unfettered access to the content. Whereas the typical not-so-right-thinking company will instead place a series of obstacles in the way.
Firstly, there may be some sort of CAPTCHA system, to try to limit automated systems from gaining access. Depending on the nature of your company and the type of content, this may (or may not) be appropriate.
Secondly, and most damningly, there will typically be a requirement to "sign-up" to a user account or, at the very least, enter a mandatory email address. Perhaps a link to the content will then be emailed.
The purpose of course is to harvest as many email addresses as possible. Most companies these days seem to think there is some value in collecting large numbers of email addresses and other customer data so that they can subsequently spam all of the people who have been attracted to the site, or sell their data.
Whilst certain people may, at times, find a limited amount of such enforced communication mildly interesting, we contend that by far the vast majority of people simply hate it. So much so that many people now rely on temporary email accounts to get around the issue.
We tend to believe that pushing such so called 'information' to users or customers may be of interest to 0.001% of the people; whilst it simply offends, upsets and annoys everyone else.
Worst still are the cookies used to track users across web-sites, along with the wide-scale trade in buying and selling such information; typically for the purpose of mass marketing or other analytics.
Conversely, we like our users, customers, prospective customers and wider developer community; therefore we refuse to participate in such nonsense.
We DO NOT collect email addresses.
We DO NOT enforce "sign-up" accounts.
We DO NOT store ANY cookies.
We DO NOT track users.
We DO NOT trade customer data.
We welcome anyone who takes an interest in our company, products, ideas or solutions. You are our honoured guest. You are most welcome to freely browse the content we make available. You are free to download any of our community tools or products. We hope you will return again soon, and we hope you will tell others about us. You can do all of this, safe in the knowledge that we are an ethical company, with no interest in shady, underhand, off-putting or annoying practices.
Whilst it is our hope this ethical approach will spread to all companies, unfortunately at this point in time it does not look very likely.
Common problems
As technology professionals, we have all experienced attitudes and actions which are pointless, unhelpful or damaging. There are possibly common problems and strongly held opinions we all share, but no one ever mentions. If no one ever highlights the issues, then nothing will ever change. It is certainly dangerous to bite-the-hand-that-feeds, but the flip side of that argument is that sometimes there is nothing wrong with rocking-the-boat if it ultimately gets people talking and results in positive change.
We strive to address the issues we have experienced first-hand over many years working within the software industry.
We judge success if we can prompt you to think about the key issues
within software development and form an opinion of your own. It matters little what those opinions actually happen to be; what matters is simply that you have them - although we would definitely welcome your support to help change the face of the software development world for the better.
We hope you accept our viewpoint in the spirit in which it is offered.