reads the iTunes EULA ! E. YOU FURTHER ACKNOWLEDGE THAT THE APPLE SOFTWARE AND SERVICES ARE NOT INTENDED OR SUITABLE FOR USE IN SITUATIONS OR ENVIRONMENTS WHERE THE FAILURE OR TIME DELAYS OF, OR ERRORS OR INACCURACIES IN, THE CONTENT, DATA OR INFORMATION PROVIDED BY THE APPLE SOFTWARE OR SERVICES COULD LEAD TO DEATH, PERSONAL INJURY, OR SEVERE PHYSICAL OR ENVIRONMENTAL DAMAGE, INCLUDING WITHOUT LIMITATION THE OPERATION OF NUCLEAR FACILITIES, AIRCRAFT NAVIGATION OR COMMUNICATION SYSTEMS, AIR TRAFFIC CONTROL, LIFE SUPPORT OR WEAPONS SYSTEMS.
Permissive: Aim to have minimal requirements about how they software can be redistributed (BSD and MIT) Copyleft: Aim to preserve the freedoms give to the users by ensuring that all subsequent users receive those rights (GPL) Why so many licenses? Because there are different goals.
License” Cameron Chapman’s “A Short Guide To Open-Source and Similar Licenses” David Lee Todd’s “Free and Open Source License Comparison” GNU’s “Various Licenses and Comments about Them”
to structure, plan, and control the process of developing an information system. Different systems have their own strengths and weaknesses and may be appropriate for a certain kind of project. They can really be considered differing philosophies.
in great detail while attempting to take known risks into consideration. Adaptive Focus on being able to adapt quickly to changing realities. If the need changes, the team changes as well. The future is much more fuzzy. The “Agile” software development methods.
overlaps and some cycling between phases. Emphasis on planning, scheduling, hitting a date, budgeting, and implementing an entire system at once. Tightly controlled through documentation, formal reviews, and management sign-off between phases.
prioritized wish list called a product backlog. During sprint planning, the team pulls a small chunk from the top of that wishlist, a sprint backlog, and decides how to implement those pieces. The team has a certain amount of time, a sprint, to complete its work - usually two to four weeks - but meets each day to assess its progress (daily scrum).
keeps the team focused on its goal. At the end of the sprint, the work should be potentially shippable, as in ready to hand to a customer, put on a store shelf, or show to a stakeholder. The sprint ends with a sprint review and retrospective. As the next sprint begins, the team chooses another chunk of the product backlog and begins working again.
where the biggest jerk makes all the big decisions is asshole driven development. All wisdom, logic or process goes out the window when Mr. Asshole is in the room, doing whatever idiotic, selfish thing he thinks is best. There may rules and processes, but Mr. A breaks them and people follow anyway. (Hilariously true article by Scott Berkun)