Skip to content

Report of Ethical Consequences

Kavin Winson edited this page Jun 27, 2018 · 21 revisions

When developing software that is meant to fulfil the requirements of an industrial client and the needs of an end-user, there are a few important ethical considerations to take into account. These considerations span from the onset of project development to final end-user usage.

The Importance of Open Source Software

The term 'open source' refers to something people can modify and share because its design is publicly accessible. Within the realm of software development, 'open source' is used to describe an open approach to creating software in which developers are enabled to inspect, adjust and enhance programs. Open source projects embody and embrace the principles of information-sharing, collaborative development, rapid prototyping, transparency, meritocracy and community participation.

There are advantages and disadvantages in developing open source software and its adoption really depends on who is creating the software, why they are creating it and for what purpose.

Advantages

  1. In the current ecosystem of new software releases, there is virtually a free open-source version of software for every paid proprietary software system. This means that non-institutional everyday users have a choice of not paying for over-priced software.

  2. Programs can continually evolve in real time as developers add to and modify them, meaning it can be better quality, more secure and less susceptible to bugs than proprietary systems, because there are many active users constantly weeding out problems.

  3. Using open source software also means you are not locked into using a particular vendor’s propriety software which often restrict cross-compatibly with other programs and devices.

  4. You can modify and adapt open source software for your own requirements as long as there is community consensus, something that is not possible with proprietary systems.

  5. When you want to change a particular feature and there is no community consensus, then you can fork the software and adapt it to your liking.

Disadvantages

  1. Because there is no need to create a commercial product that will generate revenue, open source software can tend to evolve more in line with developers’ wishes than meeting the needs of the end user.

  2. For the same reason, they can be less “user-friendly” and not as easy to use because less attention is paid to developing the user interface, as most early users are probably competent programmers.

  3. There may also be less support available for when things go wrong, as open source software tends to rely on its community of users to respond to and fix problems, rather than a dedicated team that specializes in testing and fixing bugs.

  4. Although the open source software itself is mostly free, there may still be some indirect costs and unintended costs such as law suits if companies infringe upon open source licences.

  5. Although having an open system means that there are many people identifying bugs and fixing them, it also means that malicious users can potentially view it and exploit any vulnerabilities. This may be very harmful to users in the long-term.

neuron is an open source application operating under the MIT License , since Microsoft and especially the team strongly endorse and believe that the open-source philosophy empowers developers and users.

Collecting & Sharing User Data

When applications collect, store and share user data with third parties, both the developer and the third party must have the permission of the user to do so and their intentions must be made abundantly clear. EU laws such as GDPR aide in regulating and protecting the distribution of user data. In recent months, many companies that provide free software in exchange for tailored advertising have come under scrutiny for mis-handling user data, which has had serious legal ramifications for the future regulation of their respective industries.

There is a responsibility on the shoulders of large companies and academics who carry out Data Science or A.I work, such that they do everything in their power to securely store and process user data. They must ensure user data is not abused in carrying out malicious activities such as using social engineering to penetrate systems. Furthermore, all data sets that contain specific user data must have the express permission of all the users involved and they must be informed of how that data will be used. Under GDPR, users also have the right to ask companies to remove their information from all databases. If work is published on any public or private forum such that it infringes upon data privacy laws, they should be reported to the publishing site and the relevant regulators or authorities should be informed.

The team had decided in advance that neuron would be developed as an open-source application and would not collect or store specific user data. Microsoft's track record and business strategy under Satya Nadella of keeping acquired platforms such as LinkedIn and GitHub free to use, gives the team great confidence that neuron will stay open and free in the future.

Software Security & User Protection

Throughout the duration of the project, thorough testing on both the front-end and the back-end of neuron has taken place. Whenever a bug has been identified, a subsequent issue has been raised and a developer would be allocated to resolve the issue. Once the issue is resolved, two different developers would review the code to ensure there is full integration, no new bugs and no malicious code. Unit tests for each and every feature have been developed to ensure that the software is stable before the final release. Great care has been taken to ensure there are no lines of malicious code that sits inside neuron.

Any installation tasks such as installing Jupyter, new libraries or dependencies require direct permission from the user, else they will not be installed. Furthermore, if a new developer wishes to contribute to the project, they will require permission and their track record will be screened from the original authors before they are added as a contributor. Code reviews will still take place for new contributors as well.

The team takes software security very seriously and thus the above strategies have been implemented to ensure that the protection of the user and their data are as safe as possible and that it is one of our upmost concerns.

Socio-Economic Impacts of A.I

The advance of A.I technologies should be closely monitored and many have advocated for the potential regulation of the industry, as rogue A.I programs could potentially have unintended social and economic impacts. A potential human impact of A.I is the automation of many industries, which can lead to the loss of many blue and white collar jobs. There is a lot of debate in the A.I industry as to whether it will create as many jobs as those that were lost.

We kindly ask developers using neuron to always keep these considerations in mind, especially when embarking on new AI projects, in order to ensure they fully understand the ramifications of the products that they release.

Clone this wiki locally