Just because we can doesn’t always mean we should

A few weeks ago, I was chatting with the guys in the office about the number of different messaging services there are: messenger, WhatsApp, Instagram, Skype etc, etc. I was bemoaning the fact that I had to download each one in order to be able to communicate with my friends because they all used a  different one. “Why can’t there just be one thing that I can get that crosses all of these?” I cried. And they shook their heads and sent me this:

 

standards

 

When I stopped laughing, they pointed out that the real question everyone had to ask when embarking on a project was:

Does your solution add to the problem?

In the same week, I had been reading about Nick Herbert and the ReplyASAP app he had developed to stop his son ignoring messages. Whichever side of the fence you sit on with this app (personally, I think my kids would kill me if I even considered subjecting them to something like this whereas my husband thinks it’s a great idea), the fact remains that Nick developed an android app and his son has an iOS phone. These situations serve to emphasise that what is key is actually ensuring good solid architecture of projects to make sure that your solution is fit for purpose and doesn’t add to the problem.

So many systems that set out to simplify a task ending up actually complicating things. Take a step back and remember, just because we can doesn’t  always mean we should. And the simplest solution is usually the best solution.


Independent Contractors for Software Development Projects?

As your company grows, your IT requirements change. You may find you need to integratHippo cropped computer-nerd-2017653 copye systems to improve efficiencies or develop bespoke software, and you may come to the point where you need to make use of the services of a specialist software developer. Perhaps you don’t have any software development or systems integration engineers within your IT department or, if you have, they are either already working at capacity or don’t have the specific skills you need for this project. Your first thought may be to hire an individual contractor to come and work within your company to fill that gap for you. On the face of it, this appears to be the simplest and most logical solution – you get the skills you need without any of the financial commitments involved in taking on another member of permanent staff. While hiring a contractor can certainly have its benefits, it also has some, potentially serious, downsides.

The chances are your contractor will work from your premises, meaning that you have to supply them with a number of resources, even if they bring their own laptop! While a contractor will be employed for a fixed term that you believe will cover the time needed to deliver your project, this may not allow for delays in project delivery and your costs could spiral. Delays could potentially arise due to a number of factors such as sickness, holidays, or a skills gap in the contractor’s own knowledge meaning it takes them longer to effect a fix or provide a solution. There are also the difficulties that can arise from a desire to directly supervise the contractor’s work but actually being hands-off in terms of not being able to control their work.

Over the last few years, HMRC have been challenging contractor status in a growing number of instances. If the law decides that someone’s employment status is wrong, the company and the individual may have to pay unpaid tax and penalties. While you may believe your contractor to be self-employed, there are factors that could lead, in law, to that contractor being declared an employee. If they are, the implications are not just restricted to tax and National Insurance because there are also employee rights to consider – sick pay, holiday pay, maternity/paternity rights and so on. So what are the factors that are considered?

A truly self-employed contractor can decide what work they do and when, where or how to do it. They can also hire someone else to do the work and can work for more than one client. A self-employed contractor is in business for themselves so they use their own money to buy business assets, cover running costs and provide tools & equipment for their work. So is the person you have sat in your IT department, at your desk, on your chair, using your computers, and who you expect to work Monday-Friday 9-5 an employee or a contractor? What if you walked in on Tuesday and found a different person sat in that chair?

…under a contract of service a man is employed as part of the business and his work is done as an integral part of the business but under a contract for services his work, although done for the business is not integrated into it, but only an accessory to it.” Denning LJ (Stevenson, Jordan and Harrison Ltd v Macdonald and Evans (1952)

The whole situation has now been made even more complex with the introduction of the IR35 tax rules in April 2017 for public sector contractors. The general view is that these rules could be extended to apply to private sector contractors within the next 2 years, and possibly as early as spring 2018. More on that next month.

Of course, you could hire a contractor through an ‘umbrella’ company and that should take care of any employment status issues. There is another option to consider though, and that is to outsource your project to a company that will allow you access to a small team of software developers and specialists. Apart from removing all concerns about employment status, there are a number of other benefits: working collaboratively with a small team who have knowledge and experience of a broad range of platforms ensures that solutions are developed quickly, delivered on time, and to budget; a small, established company can provide more flexibility and expertise than an individual; sickness and holidays do not present problems and downtown is virtually eliminated.

Software development and systems integration projects need to run as smoothly as possible. Doesn’t it make sense to use not only the best type of resource for the job, but to eliminate the risk of a challenge from HMRC at the same time?

 

 

More information on employment status can be found at:

https://www.gov.uk/hmrc-internal-manuals/employment-status-manual


Open Source Software

What is open source software (OS Software)?

OS Software is software with a source code that has been publicly distributed for other programmers to access, use and learn from, meaning that anyone can inspect, modify and enhance the software. Because of this, open source software is generally considered to be more stable, more secure and more flexible. While users still have to accept the terms of a licence when they use OS Software it is very different to the licence of a proprietary software (eg Microsoft Office). Use of proprietary software often involves the payment of licence fees that increase in line with the number of end users at a specified location, or the purchase of “seats” (often referred to in CRM systems). Proprietary software licences also generally prohibit the altering or sharing of the software so if it doesn’t do quite what you need it to you may end up adapting your processes in an unsatisfactory manner. In addition, if there is a bug in the software, you may have a very frustrating wait while the company decides on and distributes a fix. The Licence for OS Software, on the other hand, quite often specifies that modifications to the software must be shared so fixes are often quickly and freely available.

What are the benefits of using Open Source Software?

If someone is building software for you using OS Software, more often than not, you are paying for their skills and expertise rather than the software. And because the software can be modified and enhanced by any developer, there are many benefits to using OS Software, including flexibility, cost effectiveness and security.

Flexibility
Because the licence for OS Software generally permits developers access to the source code, the end product can be adapted to fit in with your existing systems and processes rather than the other way round. This enables a good software developer to seamlessly integrate the new software with your existing systems and processes. The software can continue to be enhanced to meet your changing business needs too rather than you having to wait until the owners of proprietary software decide there is a market for the enhancement before developing and releasing it.
Cost Effectiveness
The ability to modify and enhance OS Software also leads to cost effective long term solutions as there is rarely the need to purchase entirely new software when your business requirements do change. Because the source code for OS Software has been publicly distributed for other programmers to access, use and learn from, you can be sure that there will always be the tools and skills available to maintain your software, particularly beneficial if you are relying on your software for critical tasks! And you can be sure that any bugs will be fixed quickly and the fix will be shared freely amongst software developers saving time as well as money.
Security
Security is a huge consideration for anyone utilising IT within their business and because OS Software is freely distributed and open for developers to modify and enhance the source code, it would be easy to make the assumption that the software would be less secure than proprietary software. However, in reality, the opposite is true. Since there are many developers working on the OS Software, fixes for vulnerabilities are shared quickly and there are likely to be fewer problems. Indeed Open Source Software is already a part of many large companies IT infrastructures and concerns that OS Software is less secure than proprietary software are unfounded.

Open Source Software can provide you with flexible, long lasting, cost effective and secure solutions to your ongoing business systems requirements.