Software development requires care, responsibility and at least an eye for detail

Creating software is a creative process that requires both craftsmanship and an engineering approach. Open and direct communication as well as knowledge and practical experience in the use of modern software engineering methods lead to functioning software that fulfils the requirements and wishes of its users. Clean code, best practice, test-driven development, continuous integration and delivery lead to high-quality applications, improve the development process and the quality of the product.

So much for theory.

The reality often looks different. In practice, decisions are often made and processes defined out of ignorance, for time and budget reasons, due to the organisational structure or a lack of development capacity, which are less effective, frustrate the developers and ultimately lead to a poorer result.

My name is Tom Cernohorsky. I have more than 25 years of experience in creating software and am familiar with many of the tools and ideas that have been developed in this field over the years, as well as their advantages and disadvantages. I work as a consultant and fullstack developer for individuals, organisations, medium-sized companies and global corporations and know where problems can occur in small to large software projects and how they can be avoided.

More important to me than enthusiasm for technical ideas and innovations is working with people - end users, clients or members of a development team. Software should be made by people for people, intuitive to use, transparent and understandable, because:

“An organism is largely defined by the problems it faces. Human beings have to cope with problems that no machine built by human hands ever has to deal with.” (Joseph Weizenbaum in “Computer Power and Human Reason. From Judgment to Calculation” – W. H. Freeman & Comp., 1976)