Click control to set volume, start, stop
above: Indy in the map room - Thinking
"Thinking is one of the best ways to solve problems." No, Yogi didn't say that, I did! But Yogi did say: "You can see a lot by looking." and I also agree.
I offer classes and seminars which focus on seeing and thinking. You can get the first one for free! They are short and focused to save your time and mine. They draw on my 50+ years with people, computers and machines. They also make really good intro, survey and overview courses. This is my attempt to pass on experience which is sometimes no longer available to others.
Remember: Thinking is one of the best ways to solve problems! Let's do some thinking together.
Also see Agents about software construction.
CLASSES:
Short and to the point - 1 day, including Q&A -
These classes give you useful skills in areas which are hard to start by yourself and also make a good survey intro and overview.
Information versus Data - We are so preoccupied with procedure that we forget that data is what it is all about. Procedure is merely the movement of and reaction to - DATA. We will discuss how to gather, store, analyze, visualize, react to and profit from data by extracting information out of it. Yes, there is a difference between data and information. [BTW, I created the system structures of the first successful large scale database some 40 years ago - ugh!].
Simulate before you buy - Avoid surprises. Learn to use discrete event simulation to model component interactions in your design. You can test timing, work centers, planning and dispatching. I will take you from a simple single queue barber shop, to a four queue Jiffy Lube, then all the way to a factory or warehouse or radiotelescope with hundreds of queues and workstations.
Concrete Software Architecture - Good systems designs come from concrete real-world objects. Designs should always move from concrete to abstract. Concrete objects make the best models for abstract software objects. Sometimes it is cheaper to use a clipboard and roller skates than a computer system.
SEMINARS:
Short and to the point - 2 hours, including Q&A -
These seminars are different because they are organized by TOPIC:
- Lost Secrets of the SuperProgrammers? - Simplicity in design and implementation. Mostly missing today.
- Why Most Programming Projects Fail - the Tower at Pisa was a bad idea from the beginning - and yet it continued.
- Benefits of Simplicity - If it ain’t there it can’t break.
- Designing for Users - Remember them?
- Designing for Data - Superprogrammers agree - if the data is well designed, the app will code itself.
- Benefits of Higher Level Programming Languages - Large gains in productivity and reliability
- Designing - Move From Concrete to Abstract - Use concrete real world models, not vague generalities.
- Simplifying Visualization - provide rapid, unambiguous recognition of what you are trying to communicate
- Bad Design Ideas - It is not usually technical problems but lack of reality in management.
- Bad Programming Ideas - Somebody wants this. What can it hurt if we throw it in?
- Controlling Projects through Concrete Visualization - It doesn’t help to plan your work if you can’t work your plan.
- Where are the Superprogrammers? - The answer comes from the 1950s.
- Is UML the Useless Modelling Language? - Tools will not make a Michaelangelo.