The fact of the matter is that too many people think that projects can be run through the interface of stories and feature lists without paying attention to the quality of the software underneath. And, when you don't pay attention to it, it suffers. This, really, is _Joel's Law of Leaky Abstractions_ applied to process. Business wants to see features, and if that abstraction is their only view of the project, they will be blindsided by creeping quality issues. It's nearly inevitable.
So much for high performance software...
In contrast, software engineering stands out as one of the only, if not the only engineering discipline where one person could conceivably build out their entire vision, no matter how large.
But the training for architects is much more circumspect. Architects need to know a little bit about a lot of things. Architects need to know about the economics of development. Architects need to know about schedule and milestones. Architects need to know how to envision the final product. Architects need to know about technology and products, about capacity and operating characteristics, about politics and personalities, about the speed with which development can be done, about hardware and software architecture. In short, the architect needs to become familiar with and up to speed on a very wide variety of topics. There are a few formal classes on information systems development architecture, but far and away architects learn to be architects by through experience – on-the-job training. And the biggest teacher of all is failure. Architects learn what is right and wrong by trial and error. Years of experience enable an architect to know good practices from bad practices. At the end of the day, it is experience that is the great teacher of architects. In a way, this is unfortunate, because ANYONE – and I do mean ANYONE – can claim to be an architect. Literally anyone can put ARCHITECT on his/her resume and there is no one to dispute it.
In grad school, I once saw a prof I was working with grab a text file and in seconds manipulate it into little pieces so deftly it blew my mind. I immediately decided it was time for me to learn awk, which he had so clearly mastered.
Awk is my main tool for doing any type of POC where grinding through text is the order of the day. I've used it transform and analyze large legacy code bases of C, SQL, Java and especially COBOL. Processing logs is also easy work... AWK is well worth your investment in time if you work regularly with processing and analyzing text.
“Design is a funny word. Some people think design means how it looks. But of course, if you dig deeper, it’s really how it works. The design of the Mac wasn’t what it looked like, although that was part of it. Primarily, it was how it worked. To design something really well, you have to get it. You have to really grok what it’s all about. It takes a passionate commitment to really thoroughly understand something, chew it up, not just quickly swallow it. Most people don’t take the time to do that."
“Creativity is just connecting things. When you ask creative people how they did something, they feel a little guilty because they didn’t really do it, they just saw something. It seemed obvious to them after a while. That’s because they were able to connect experiences they’ve had and synthesize new things. And the reason they were able to do that was that they’ve had more experiences or they have thought more about their experiences than other people."
“Unfortunately, that’s too rare a commodity. A lot of people in our industry haven’t had very diverse experiences. So they don’t have enough dots to connect, and they end up with very linear solutions without a broad perspective on the problem. The broader one’s understanding of the human experience, the better design we will have. "
http://blogs.wsj.com/deals/2011/08/24/steve-jobs-resigns-as-apple-ceo/ (Sent from Flipboard)
"Small, agile startups disrupt entire industries because they look at traditional problems with a new perspective. They’re fearless, because they have less to lose. But big, entrenched incumbents should still be able to compete, because they have massive amounts of data about their customers, their products, their employees, and their competitors. They fail because often they just don’t know how to ask the right questions."
Sent from my iPad 2