ad1

Wednesday, November 19, 2014

What will human beings do?

T

he last episode of "Parts Unknown" on CNN with Anthony Bourdain on Shanghai contained a discussion between Anthony Bourdain and Professor Zhou Lin, Economist and current Dean of the College of Economics and Management at Shanghai Jiao Tong University. Professor Lin was educated in American universities and has taught at Yale, Duke, and Arizona State. During the discussion Professor Lin raises an interesting point at the end of the conversation.


He says "the difficulty, nowadays, is" ... that ... "the technology is so advanced ".. that ... "we don't really need that many people to do things that many people used to do," ... with the population being ... "7 billion people, the world probably doesn't need that many people working anymore... So the question is what should human beings do? You know, how can you let them not do anything and then still live a good life? I don't know. It's going to be a big issue" ... that the ... "whole world" ... will have to face"


Do we all become poets, artists, philosophers? Vegetate? Dream? If all of the worlds needs and wants can be fulfilled by a few because of technology then how does the rest of the population occupy itself? Or how does it access what the few has produced? If they must buy or trade for it, then how do they get something to trade or buy with? What then is the currency? Or is everything distributed based on some other system? What system?

Fallacies of Scale: Agile vs SAFe



The Agile development approach as described in the Agile Manifesto, has greatly improved the efficiency of software development in many small to medium sized projects around the world. By connecting development teams with product owners, customers, and gaining continuous feedback with continuously delivered functionality, the Agile approach has transformed software engineering and development.


On the other hand, the Scaled Agile Framework (SAFe) approach, in trying to apply the Agile method to enterprise scale, with teams of teams and scrums or scrums, and release trains etc. has only recreated the waterfall method with new names and designations. The crux of the Agile approach is lost with SAFe. There is no logical reason why Agile should work with large systems development but nevertheless it is being attempted in some cases just so an enterprise can claim to be agile. However, once the connection with the customer is broken and truly useful complete functionality to the end user is no longer what is being delivered, the approach will no longer reap the benefits of the Agile method.


Maybe instead of trying to scale up the Agile approach we should instead be looking at how to scale down large projects into sizes that will work with the Agile method and then leave the integration of these smaller systems to methodologies designed for such.

Fallacies of Scale: OO vs SO(A)

The introduction of Object Oriented design as a continuation of modular programming paradigms, has greatly improved the software development and design process. It has made it much easier and more possible to describe highly complex systems and processes by allowing us to model and work with associated domains and problems in software by abstracting functionality and data. This has decreased complexity, increased reliability, and through efficiency saved resources. Service Oriented design and architectural approaches are an extension of the principles of Object Oriented design to the architectural and systems spaces along with distributed computing principles. As such, Service Oriented design and architecture represents an attempt, whether conscious or not, to translate the success associated with Object Oriented design to a larger scale problem space; to the systems, the systems-of-systems, and/or the distributed systems domains. However, there is no logical reason why this translation should succeed in the transference of benefits from the one scale to the other and it has not done so. Furthermore, I argue that SO(A) has achieved the opposite effect as compared to OOD in that it has increased complexity, decreased reliability, and wasted vast amounts of resources. It may have made it easier for non-technical higher levels of management to think that they understand or can manage systems but this is with great inefficiencies and unnecessary expenditures of time and resources.