Mostrar mensagens com a etiqueta Software Development. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Software Development. Mostrar todas as mensagens

sexta-feira, 13 de abril de 2018

SW Development and Ethics?

After the Cambridge Analytica "issue", ethics becomes more and more of an issue to clarify in the minds of project team members (and managers):
https://www.itproportal.com/features/rewriting-the-code-for-ethics-in-software-development/

Quoting:
"Redefining and reporting on grey areas 

However, as with all questions around ethics, inevitably, grey areas remain. Take for instance a recent survey that asked developers if they would report on ethical issues with their code in which over a third of respondents replied with 'it depends on what it is'. Equally, 58% would hold the upper management or board level members ultimately responsible for code that is produced for unethical purposes. This quite clearly illustrates the current uncertainty - and maybe even fear of speaking up - when it comes to computer ethics in action; just 13% would publicly report an unethical coding practice.  

As an industry, we need to be mindful to consider the purpose of our works and make sure there are safe ways to air concerns that arise during the course of development. Some infrastructure for this exists already in many companies, but we could regulate this to allow ethical concerns to be raised without causing undue stress and worry. (...)"

segunda-feira, 16 de outubro de 2017

STANDARDS: Recommended approach to software development, revision 3 : Landis, Linda : Free Download & Streaming : Internet Archive

The NASA JPL recommended approach to SW development (PDF) is "oldie but goldie" and stated as consistent with NASA/GSFC standards:



Quoting:
"Guidelines for an organized, disciplined approach to software development that is based on studies conducted by the Software Engineering Laboratory (SEL) since 1976 are presented.

It describes methods and practices for each phase of a software development life cycle that starts with requirements definition and ends with acceptance testing.

For each defined life cycle phase, guidelines for the development process and its management, and for the products produced and their reviews are presented.

Documentid 19930009672"

terça-feira, 10 de outubro de 2017

Ethics and software development?

Sure! 2 examples of lack of ethic and the damage (to the image) done: Uber and Wolkswagen:
http://www.computerweekly.com/feature/Ethical-software-development-Ask-Uber-and-Volkswagen

Quoting:
"The software reportedly presents an alternative site to customers, or people wishing to book a ride from outside these buildings, which is used to prevent officials from booking an Uber ride.

Other cities have been concerned abut the use of Greyball software
(...)
This is not the first time a company has been found to have written software explicitly to get around official tests and audits.

In May 2014, Volkswagen was found to have modified its engine management software to detect when its diesel cars were being run on an official emissions test, so that it could dial down the emissions. The carmaker effectively wrote software specifically to cheat, according to the New York Times, which wrote: “Volkswagen admitted that 11 million of its vehicles were equipped with software that was used to cheat on emissions tests.”"
(...)
"The coder wrote: “I think we need to establish a code of ethics for programmers. Doctors, social workers and even lawyers have a code of ethics, with tangible consequences for skimping on them. Why not programmers as well?

“I want to live in a world where a programmer who hasn’t agreed to follow our code of ethics has a hard time getting employed. It is simply not acceptable to write code that is harmful to users. What the hell is wrong with these people?”"

I say: oh yeah! ;)

quarta-feira, 14 de junho de 2017

Development Tools: The 10 tools every "modern developer" should use

The always polemic list of things. But maybe you will find something interesting here (out of 10):

The 10 tools every modern developer should use | InfoWorld

The list (details are on the link, please do follow):

  1. Git and GitHub (version control system); 
  2. SSH (to create an SSH key or do other SSH stuff); 
  3. Terminal Services or remote login (to access remote Windows machines) 
  4. Amazon Web Services (AWS isn’t just cloud; know at least the EC2 stuff); 
  5. JavaScript (the scripting language of the now; widely used for scripting APIs); 
  6. Bash and PowerShell (in Linux, many Unixes, MacOS, and Windows 10 / Microsoft’s PowerShell; also make sure to learn to use Grep / PowerShell’s Select-String); 
  7. MongoDB (document database; Apache Solr - document-shaped); 
  8. Curl and Invoke-RestMethod (for REST APIs; On Mac and Linux, Curl is the command-line tool that lets you test and tweak and even script against a REST API; in PowerShell, it is Invoke-RestMethod; equivalent GUI tools like Postman); 
  9. Markdown (format of the README.md file in GitHub; just seven symbols: # is a header, ## is a subheader, * is a bullet, __ and ** are bold, _ and * are italics, ` is monospace, and --- is a break or rule; learn to convert to slides, PDFs, and HTML with or without CSS); 
  10. Basic HTML

Source: Link above.