Posts

Software libraries

​Software libraries are the piece of code that is easily consumed by another application and perform specific functions. Using software libraries speedup software development processes, because software developers don’t need to create the code from scratch, but they can rely on the code that was written by someone else. Same is true, when the software is developed. A person who develops it, needs to think what code can be reused. It is a good habit of creating software libraries if such functionality will written again. Instead of writing that code again and again, software libraries can  be used by the code.

Attribution

​Attribution is the process of giving credit to that person who inspired the development.

Getting feedback about the software

​Getting feedback about the software is geared towards Improving that software. Feedback can be from the pears or from the users, if such software is meant to be used publicly. Feedback from the users is collected via alpha and beta testing of the software. It is expected that these are pre-release versions of the software and they may contain errors or bugs. Alpha and beta versions of the software may be time sensitive, meaning such software will only work during specific time period.

Documenting software code

​Documenting software code adds clarity of what that code does and how to use it. Comments can of two types: First type is comments inside the software code. Such comments explain the software logic, so another developer can adjust the code later. Second type are comments included in Readme file. Such comments are geared toward a user of a program and not toward the developer. Comments inside the Readme file explain how such a program needs to be used.

Collaboration

Image
Collaboration is a process of working on the same project by multiple people. Different people may have different skills therefore they can provide better work then others team members. Important features of well collaboration is to set clear expectations of what will be done, focus on individual strength. establish realistic timelines. divide workload equally among the team members, set clear expectations of what each team member is going to do. 

Getting users feedback

Image
Often companies will release alpha and beta versions of the software. These are testing phases of software development process. During alpha and beta testing not final version of the software will be available to the people from public. This is done to involve as many people as many people as possible to test the software.