This papers complements what DeMarco said. Software should be used - developped - to do things companies are not doing.
Quoting: "...the most financially successful companies are doing things that others aren't doing. Notably, successful companies are working together with their IT organizations to develop new products and IT is used to help support business growth."
What happened to software? Why is there so few creative software (2010)? Are we at the end of software? What are the forces which led to this situation, looking like a bit step backward to the epoch of non-programmable accounting machines? Is there a way out of this situation? Yes, and a very simple one: make good software. With invention. Developing models and abstractions. It is difficult but absolutely possible. It this re-start of software I wish to explore here in this blog. Welcome
terça-feira, 11 de dezembro de 2012
segunda-feira, 10 de dezembro de 2012
sábado, 8 de dezembro de 2012
A Fundamental Duality of Software Engineering
"Once more, as elsewhere in computer science, abstraction is the key to solid results that stand the test of time".
domingo, 2 de dezembro de 2012
Fighting Complexity
Getting rid of complexity is the theme of Dr. Neumann research in computers and network security. See Killing the Computer to Save It
"... the insight that “complex systems break in complex ways” — that the increasing complexity of modern hardware and software has made it virtually impossible to identify the flaws and vulnerabilities in computer systems and ensure that they are secure and trustworthy."
“I’m fundamentally an optimist with regard to what we can do with research,” he said. “I’m fundamentally a pessimist with respect to what corporations who are fundamentally beholden to their stockholders do, because they’re always working on short-term appearance.”
"... the insight that “complex systems break in complex ways” — that the increasing complexity of modern hardware and software has made it virtually impossible to identify the flaws and vulnerabilities in computer systems and ensure that they are secure and trustworthy."
“I’m fundamentally an optimist with regard to what we can do with research,” he said. “I’m fundamentally a pessimist with respect to what corporations who are fundamentally beholden to their stockholders do, because they’re always working on short-term appearance.”
Avoid Object Oriented Programming
Good advices: "In many programming courses and tutorials, everything is going along
just fine when there's a sudden speed bump of vocabulary: objects and
constructors and abstract base classes and private methods. Then in the
next assignment the simple three-element tuple representing an RGB color
is replaced by a class with getters and setters and multiple
constructors and--most critically--a lot more code." in OOP Isn't a Fundamental Particle of Computing. It just put OOP in its right place.
See also Don't Distract New Programmers with OOP: "The shift from procedural to OO brings with it a shift from thinking about problems and solutions to thinking about architecture."
See also Don't Distract New Programmers with OOP: "The shift from procedural to OO brings with it a shift from thinking about problems and solutions to thinking about architecture."
The cost of bugs
Infographic on the cost of bugs. Slightly biased to agile programming.
We do have a serious quality problem in software. Mainly driven by:
- Go to market pressure
- Lack of professionalism and craftmanship
We do have a serious quality problem in software. Mainly driven by:
- Go to market pressure
- Lack of professionalism and craftmanship
2012: Software still sucks
We still have a record of bad software projects. See The Failed Record of the Software Industry. Questions (that we will try to answer):
1. Is it really so?
2. Why?
3. How can we change this?
1. Is it really so?
2. Why?
3. How can we change this?
Assinar:
Postagens (Atom)