-----BEGIN PGP SIGNED MESSAGE-----
____/ Homer on Saturday 19 Nov 2011 18:10 : \____
> Verily I say unto thee that Chris Ahlstrom spake thusly:
>> Roy Schestowitz wrote this copyrighted missive and expects royalties:
>>> ____/ Chris Ahlstrom on Saturday 19 Nov 2011 00:45 : \____
>>>> Roy Schestowitz wrote this copyrighted missive and expects royalties:
>>>>> ____/ Chris Ahlstrom on Friday 18 Nov 2011 13:51 : \____
>>>>>> 20. bouml or umbrello for creating UML diagrams
>>>>> People still use those? :-)
>>>> Sequence diagrams are my favorite diagram. I have code in my
>>>> library that will generate event timestamps, very useful to make
>>>> sure all threads are doing the right thing at the right time.
>>> I did some UML diagrams when I was 19, but it seemed like a waste of
>>> valuable time.
>> UML diagrams are very useful for communicating the broad brush strokes
>> of an architecture to someone else.
> Diagrams are just a way of expressing a problem, and its solution, in a
> logical and structured manner, getting to grips with the semantics,
> before getting bogged-down with the syntax. If one can't express the
> solution to a problem in plain English (efficiently, if at all), then
> there's little hope of being able to do so in a programming language.
> People sometimes forget that programming is a means to an end, not the
> end itself, and they waste time by diving into the code before actually
> solving the problem. It's the difference between software engineering
> and mere "programming".
> For most of my first year at university I never touched a computer, and
> I not only had to write programs but prove them too. This was easy with
> languages like SML, which is a self-proving language, but not so with
> the other training language we used, Pascal. Every exercise began with a
> plain English expression of the problem and (proposed) solution, then a
> diagrammatic representation (flowchart). If one couldn't follow the
> logic of the flowchart, then there was little hope of a computer doing
> so either. Using this method ensured programs were semantically correct,
> and resulted in virtually no requirement for bug fixing (apart from
> typos). And these were not simple programs either. An early example of
> one such hand-written exercise was data analysis of multidimensional
> arrays. Advanced mathematics was an obligatory part of the course, as
> was Niklaus Wirth's "Algorithms + Data Structures = Programs".
> I expect the course is very different today. It's now probably nothing
> more than Microsoft Advanced Button Pushing 101. No wonder so much of
> today's software is crap.
Today's software is generally inefficient (pampering by many cores).
Microsoft is problem is that it made unreliable computing "acceptable".
~~ Best of wishes
Dr. Roy S. Schestowitz, Research Fellow
http://Schestowitz.com | GNU/Linux administration | PGP-Key: 0x74572E8E
Editor @ http://techrights.org & Broadcaster @ http://bytesmedia.co.uk/
Managing partner @ http://scifitness.co.uk & http://iuron.com
GPL-licensed 3-D Othello @ http://othellomaster.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
-----END PGP SIGNATURE-----