Society is driven by wants. The marketplace is driven by wants. Design is driven by wants. You are driven by wants. Each and every one of these wants creates a rich dependancy of needs, and because every want can only be satisfied if those underlying needs are met, every want can be broken down into a series of achievable steps.
At RhodeCode we want to create the best development tools in the world, and for us this generates an almost endless to-do list of needs that must be satisfied.
This puts us in a very privileged position in one of the most demanding and competitive marketplaces globally. We use our own products to develop the tools we make for you. This brings us closer to our users in a manner that most companies will never achieve. We truly understand the needs of our users, because we are users too, with similar wants.
Along the way we encounter the same hurdles that you do, and often we have already solved that problem before it ever appears as one of your road blocks. This is because, while your wants may not match ours, as creators in a competitive industry, many your underlying needs are the same as ours.
We are creating the most secure, high performance, customizable, software development environment anywhere in the world, and we want, just like our users, to feel pleasure at the thoughts of using our products on a daily basis.
SATISFYING SECURITY AND PRIVACY ISSUES
The first and foremost goal that we pay closest attention to is security and privacy, and if you are developing source code to power your company it should be your top priority too.
Our solution is to install RhodeCode Enterprise in house and carry out development behind the firewall. Using this method will allow you to be in total control of your own code, including administrative access to accounts, network access to the service, and even physical access to the hardware.
Additional user authentication plugins, like LDAP and Crowd, enable you to add a further layer of security if needed, and IP whitelisting can be used to limit access to only users on your company VPN. These steps help you to manage access to the code, but what about the code behind RhodeCode?
The facts speak for themselves, and RhodeCode Enterprise is already being used in production inside some of the most security conscious organisations globally. Accelerating development within branches of the military, securing nuclear installation code, powering medical and scientific research and development institutes, enabling major financial players seek alpha, and your next computer game may even have been developed on RhodeCode Enterprise. Every single one of these entities has thoroughly inspected the code, triple checked it, and then happily installed it to meet the demands of their respective fields.
PERFORMANCE AND AVAILABILITY
Being users, and usually very busy users, of our own tools means we need performance and unlimited access to RhodeCode Enterprise. Nothing can stand between us and the work we need to get done, and our tools also need to help us hit those deadlines faster.
"A sharp tool cuts the job in half" ~ Anon
By running our own servers we are always able to access our code and are never dependant on a cloud provider. This gives us 100% availability, and also the flexibility to tweak our servers to make them lightening quick and ultra stable. This level of availability is paramount to staying on track. Even 99% availability means 3.65 days per year of lost productivity, not to mention the frustration of being blocked from your own code.
Performance is where the benefits of using Git and Mercurial come into play when used with your own source code management (SCM) system. Setting up a fully distributed development environment means you are never caught short when it comes to accessing your code. On a train, in a plane, it doesn't matter, RhodeCode Enterprise lets you carry on with your work flow once you open up your laptop and you can run an instance locally which can handle commits, forks, and pull requests that can be quickly synchronised once you get back online.
FEATURES AND STABILITY
RhodeCode Enterprise comes with a number of features specifically designed to make your, and our, life a lot better. Where it comes into it's own is repository management, development collaboration, and automated notifications that let you get on with developing your projects with minimum fuss.
These features have been developed to greatly accelerate the pace at which projects can be accomplished. Every click has been thoroughly tested to make sure it is actually necessary. We aim for streamlined usability, with zero superfluous effort required, and maximum user happiness!
The beauty of these features is that they do not come at a cost. They just make everything better. This is because our rock solid stability is guaranteed through Python. Being completely written in Python gives RhodeCode Enterprise superb back end performance, security, stability, and the ability to install and run across all platforms.
COST AND FREEDOM
Installing RhodeCode Enterprise means not only are you at liberty to tweak everything to your own specifications, but you are able to scale your code base and testing environment with no additional costs. RhodeCode Enterprise has been designed with scale in mind, and comes fully prepared to handle 1 to 100,000 developers without skipping a beat.
The ability to also change your operating system, your database, your work repositories, your issue trackers, and any other part of your infrastructure and yet have RhodeCode Enterprise be compatible with every change you wish to make without requiring a code migration or large transitions allows you to be forever ready for the changing demands of the market, or the emergence of new tools that can be quickly integrated to accelerate your growth.
IN-HOUSE DOMAIN EXPERTISE
Tweaking servers, organising your own VPN, enabling user authentication plugins may all seem like overhead you would like to avoid, but with this aversion to doing it yourself you will quickly lose valuable expertise, and the ability to stay up to date with current technological developments.
Fail to prepare, prepare to fail!
The cost of not keeping yourself educated, up-to-date, and actively implementing theory is obsolescence. You will be deprecated, because there is a competitor our there now taking those extra steps and before long that will translate to delivering more value to their customers, and eventually yours will become theirs!
CONCLUSION
If you are not actively improving your development environment you are going to be found wanting some day. Better productivity tools will pass you by, security concerns will tarnish your reputation, lack of integrations will hamper the systems you can support, and while all this is happening, somebody else is quickly going to eat into your bottom line.
To keep the revenue flowing, you have to think bigger, better, faster, and focus on improving every aspect of your business. RhodeCode solves at least on part of that equation!
Brian Butler