This is an interview with the software engineering guru Edsger Wybe Dijkstra; I consider this as one of the greatest videos that I could locate in You Tube.
Of course, I must admit that he is much more than a software engineering guru given that his contributions to mathematics and other related topics are equally profound. Still I refer to him here as software engineering guru as software engineering is my subject, specialization and profession. More than that I find much of he discussed decades back about software engineering remain very relevant even now (perhaps more relevant now than ever before). That too when everything else about the industry keep changing!
Well, there are things that don’t change even in an industry which is highly dynamic and evolving. That is, fundamentals don’t change, and it pays to know them well… and that is the reason for me to share it here
Interesting to know the world’s first computer programmer was a lady when we look back in the context of emerging ‘brogrammer’ culture
Computer History Museum video ‘Computer History Museum’
Computer History Museum video of a lecture on Perspectives on Tech Leadership by Google’s Eric Schmidt
A decade or so back, agile community was small.. It was a community that knew what they do and how, and focus was on core values. But now, that does not seem to be the case any more. It looks like, agile has become struggle for learning handful of terminologies, following ritualistic practices, and getting certified for many!
Back then, common refrain when talking about being agile was “what you are talking about makes sense but, you know, our situation is different. We have our own ‘process’ certified by … and we follow the process’. Strangely enough, when I look around I find that most of them have joined the bandwagon, claiming to be agile. Yet how they go about their job remains essentially the same! That is, either they bypass documenting altogether even the very critical information in the pretext of being agile or get bogged down by documentation for compliance to standards. Adapting to change has become more of a knee-jerk reactions and continuous firefighting. Honest communication suffers with routine bullying. Unfortunately, world has not changed much for them, except for the plight of having to deal with a new set of terminologies and technologies as well and getting ‘certified’!
In this context, it is interesting to read article ‘What makes you agile‘. Indeed, it is important to bring focus back into what agile stands for.
I believe they are:
1. Being with the customer, and delivering value to customer continuously
2. Documenting information as we develop software but not getting bogged down by documentation
3. Delivering working software, and ensuring customer is able to use software to meet their needs continously
4. Working as a team with proven practices and effective level of automation
5. Adapting to change as customer needs change
6. Working as a team with honest communication all through
Technology and practices could be help these but not at the cost of these.
looks like human-computer interface set for drastic change, changing for ever man-machine interactions and consequently raising the bar … and scope of computing and consequently that of software
- The Myth of 100% Utilization
- Management Myth #2: Only ‘The Expert’ Can Perform This Work
- We Must Treat Everyone the Same Way.
- Don’t Need One-on-Ones.
- We Must Have an Objective Ranking System.
- I Can Save Everyone.
- I am Too Valuable to Take a Vacation.
- I Can Still Do Significant Technical Work.
- We Have No Time for Training.
- I Can Measure the Work by the Time People Spend at Work.
- The Team Needs a Cheerleader!
I happened to listen to a CAST 2012 lecture “Get the Balance Right: ATDD, GUI Automation and Exploratory Testing” in You Tube; an interesting one in the sense that it highlights essentials from practitioners point of view rather than riding on marketing hype and mundane technical jargons.
It is probably the first sensible one in software testing after a long while. There is unfortunate explosion of jargons which complicate and hinder rather than help improve software testing as a specialization. My personal observation is both hype and jargons more to do with marketing/business needs of consultants and tool vendors rather than the subject matter itself.
A very interesting lecture by Grady Booch