[My image] [Text Version] blog005 Tue Mar 22 10:51:07 PDT 2011
Opening the PDF files on this page may require you to download Adobe Reader or an equivalent viewer (GhostScript).

Contents


    RJBottings Web Log

      2006-01-01 Sun Jan 1 09:01 Back in the USA

      Well I'm back in the USA but brought a Cold with me. The well known sang froid or usual bloody cold.

      It is also rather difficult to reply to Email at the moment...

      2005-12-13 Tue Dec 13 07:12 New Word -- Idionoia

    1. idionioa::psychoses=suffering from delusions that match our prejudices and preconceptions.

      Idionoia is a very common psychotic state where you change your perceptions to fit your ideas. The word comes from combining "idiot" and "paranoia". I need this word because "idiot" has come to mean stupid... even tho' it once ment "id"+"iot" -- some one who had there own (id) ideas.

      Note: You can probably can think of some idionoiacs but be careful.... they are probably people you want to put down etc. You may have exhibitted your own idionioa.

      2005-12-12 Mon Dec 12 10:12 Updated Symphony page...and doing grades and prep

      On saturday went to a pleasant afternoon concert of popular medleys and Tchaikovsky's Little Russian symphony (Ukrainian melodies!). And updated [ symphony.html ] -- my personal summary of the San Bernardino Symphonies current season.

      Meanwhil the usual end of term mixture of grading, checking grades, preparing for the next quarter, and backing off and reviewing plans and ideas.

      Also painted a facia, hoovered the pool, cleaned the house A/C filter, and did the washing....

      DVD: "The Incredibles". Well worth renting.

      2005-12-09 Fri Dec 9 09:12 Recent Reading and writing

      Just had a one paragraph note published in IEEE Transations on Software Engineering: [ newb2005/newb1208.html#Botting05b ]

      I've also posted 14 notes [ newb2005/newb1208.html ] on my latest technical readings:

      1. Botting05b =Correction Statecharts fork vs decision
      2. Schuh05 =HOWTO agile
      3. Wile04 =UNREAD 3 EXPERIENCES DOMAIN LANGUAGES
      4. HardgraveArmstrong05 =EXPERIENCE IMPROVEMENT vs CMM
      5. Mookerjee05 =THEORY evolution maintenance multiple applications SYSTEMS COSTS
      6. KupermanEtal05 =REPORT TECHNICAL RISK ERROR STACK CODE V&V TOOLS
      7. Kugel05 =ESSAY PROGRAMMING BY EXAMPLE COMPUTE IN THE LIMIT
      8. Baggi05 =REPORT MUSIC STANDARD P1599 XML MEI RM0
      9. Cohn04 =UNREAD USER REQUIREMENTS AGILE XP
      10. DonnellanEtal05 =COMPARISON TOOLS KB OPEN SOURCE COSPA MetaData DSpace LAMP Data Centric KMS Lotus Notes
      11. MathiassenNgwenyamaAaen05 =CASE STUDY 4 DANISH COMPANIES VARIED SPI IMPROVEMENT
      12. Erdogmus05 =ESSAY MATH ONE SIZE Economics PROCESS ITERATIVE vs SEQUENTIAL COST-BENEFIT
      13. DangleLarsenShawZelkowitz05 =CASE STUDY DSCS CMM
      14. DarcyKemerer05 =ADVERT =SURVEY CK METRICS Object-Oriented
      15. Dick05 =ESSAY traceability REQUIREMENTS DESIGN

      2005-12-07 Wed Dec 7 17:12 First Final done.... winter shaping up

      [ plan.html ]

      2005-12-06 Tue Dec 6 15:12 Starting on next quarter

      There is this gap between the end of the last lecture and the first final when you can get some planning done.

      So I've been planning [ plan.html ] the next quarter and the class [ cs375/ ] that I'll be teaching. Including a new script for submitting assigned work...

      2005-12-05 Mon Dec 5 08:12 Fuzzy Sets

      Some one has asked about fuzzy sets... I've Emailed a quick summary but the formal definition is in [ Main%20Content in math_83_Fuzzy_Sets ]

      2005-11-30 Wed Nov 30 09:11 Discovered Early Advocacy for Agility

      While refactoring the journals and magazines in my office I rediscovered an early paper?article that seems to propose many of the ideas that are popular these with agile advocates: [Gladden82] What is missing is the idea of iterative development and objects.

      2005-11-29 Tue Nov 29 07:11 Presentations

      I've put together a little search engine that searches for presentations at [ seminar/search.php ] and there is list [ seminar/ ] in date order: YYYYmmddNameOfPresenter of contents.

      Also see the dept web site [ http://csci.csusb.edu/ ] for upcoming events.

      2005-11-28 Mon Nov 28 17:11 Thanksgiving Cold

      Caught a cold.... and went to San Diego Zoo for Thanks Giving lunch.

      Just been trying to schedule the many departmental seminars and presentations for the next two weeks: [ plan.html ]

      2005-11-22 Tue Nov 22 12:11 Ambiguity in UML2.0

      I've been a little preoccupied with a worrying ambiguity in the UML2.0 standard. Briefly you can have two identical diagrams that have completely different meanings depending on what type of diagram they are.

      2005-11-18 Fri Nov 18 13:11 Good news on Wednsday but exhausting -- Cancer

      On wednsday my urologist told me that the cancer has not metatasized (spelling) and the PSA has not changed since 2 months ago (0.27). This adds up to "no need to panic" but keep testing every 3 months to get a reliable trend. As long as the curve is not exponential the remaining prostate cells (where ever they are hiding) have not become cancerous...

      Left me exhausted for the rest of week: just enough energy to keep head above water with grading, reading, and teaching. Administrative duties are, however, definitely rising... Not much energy for thinking.

      2005-11-14 Mon Nov 14 15:11 New bibliographic items and Primes

      I have just uploaded a page that is a sample of using MATHS to document [ samples/primes.html ] an elementary piece of number theory.

      I've also uploaded the next set of nine new bilbliographic items: [ newb2005/newb1114.html ] ( [ newb2005/newb1114.mth ] raw unformatted) that includes a report of Microsoft doing formal methods, an example of the UML approach to business modelling, a useful set of common data modeling patterns, etc.

      2005-11-14 Mon Nov 14 08:11 One step forward...

      Now I have had to fix the Mac version of SSH. Again unswitch DEL and BS. Then chasing down the consequences of a change in the output from the long list file command "ls -l".

      It would be nice if I hadn't lost the syntax coloring feature of 'vi' on the Mac. But then I never had it on the PC anyway.

      2005-11-11 Fri Nov 11 17:11 Not a bug but a feature

      It turns out that the new sed does not have a bug caused by very long lines. Instead it has an added feature that exposed a problem in my long sed script: one command was using \2 but didn't have two \(...\) in the search string.

      Clear as mud, right? -- briefly the later version is less forgiving of human error. A nice example of the importance of the dark matter of normal requirements. Typically we use the following form for requirements:

       		If A then B  will happen.
      but do not define what happens if A does not happen. In this case the behavior of sed given a perfect script is well defined, but it's behavior on imperfect scripts is left open for the programmer to invent. THis makes it vital to be perfect -- and that is beyond my (and most people's) ability.

      It took a fair amount of experimenting to discover that the error was diagnosed on short string and then all it took (:-) was the following

       grep "\\\\2" tsed | grep -v "\\\\(.*\\\\).*\\\\(.*\\\\)"
      to find it.

      This is a good example of using quick and dirty prototypes in production. The fact is, it is time to retire the ad hoc script in [ tools/mth2html.txt ] and replace it. Any takers?

      2005-11-11 Fri Nov 11 14:11 Almost fixed erase char

      Switched two stty commands in .bash_profile and fixed it the way I want it for bash but not for vi.

      Turns out I needed to undo a previous fix: the SSH client had BS and DEL inverted... now sem to be able to use BS ok both commands and inside vi.

      2005-11-11 Fri Nov 11 14:11 Bad news: server compromized

      Yesterday, at 11:30ish, the server I use for most of my programming and web page development died. The sys admin said it had been compromized and would by rebiult. It is now back up and I'm working out what has changed and what the unexepected consequences are.

      (1) I'm not getting my usual shell and DEL and BS keys suddenly have exchanged meanings either in the shell or in vi.

      (2) Lynx has not been installed.

      (3) The 'sed' long parameter bug is back:

       sed: -e expression #1, char 4330: invalid reference \2 on `s' command's RHS

      Pretty much par for the course.

      2005-11-07 Mon Nov 7 13:11 Trying to catch up

      The Computer Science Department Open house was interesting but exhausting: see [ openhouse.html ] for my part. Meanwhile: prep, teaching, grading, etc. and thinking about the dual representation of a sudoku grid....more on this when I figure it out better.

      Meanwhile I had a dream of being hunted a doctor carrying syringes. Direct result of a blood test on the 2nd day of November, I guess.

      Veteran's day was called Armistice day at first. In the UK it is now called Remembrance day. On the 11th of November just about every body wears a little red poppy in remembrance of those killed in war.

      A Remembrance Day Poppy

      The poppy was chosen because of the poppies growing in France in the battle fields of the first world war (1914..1918). They are also a symbol of sleep and so death. The money donated when you get your poppy goes to support veteran's and widows.

      Please visit [ http://www.poppy.org.uk/ ] for more information.

      2005-11-01 Tue Nov 1 05:11 Cold?

      Cold came back over the week end... but worked on CSCI372 [ cs372/blog.html ] and some admin stuff.

      Also looked at a different mathematical model of Sudoku puzzzles. It turns out that there is a dual puzzle. Instead of placing digits in a grid one looks at where in a grid each digit is. More later.

      2005-10-28 Fri Oct 28 07:10 Sudoku Seminar today

      [ samples/sudoku.html ]

      2005-10-26 Wed Oct 26 07:10 Caught a Cold

      I got the departmental Cold last week after getting soaked in the thunderstorms at the start of the week.

      Slowed me down.

      Working on the "sudoku seminar" on Friday 28th [ samples/sudoku.html ] at 10-11.

      Also the regular round of preparing for classes, working with grad students, and answering questions from the internet -- in this case about the numbers adjacent to prime numbers.

      Also the first symphony concert by the San Bernardino Symphony: 3 excellent classics: Schubert, Mendelsohn, Mozart. Next concert [ symphony.html#Next ] in December.

      2005-10-17 Mon Oct 17 05:10 Musical weekend

      Saturday evening went to the Sinfonia Mexicana [ http://www.sinfoniamexicana.com/ ] and on Sunday the SB Symphony [ symphony.html ] offered it's famous home tour. This year it included three houses rebuilt after the Old Fire of October 2003. With music in each house: Renaiscance "Musica Draconis", string quartet's, pianists, violins, flutes,... Thank you to the people who gave up their home to the horde for the day!

      First concert of the season [ symphony.html#C1 ] on Saturday.

      And too early this morning we had Jove on the tympany: thunder in the mountains.

      2005-10-15 Sat Oct 15 09:10 Thanks Paul

      Paul Conrad pointed out I had the wrong Dr. Dobb's Journal issue in the previous entry below. I've corrected the error.

      Another update to the previous entry... Computer Reviews (CR) has published online my latest review of Ambler's style guide.

      2005-10-14 Fri Oct 14 07:10 No pleasure without pain.

      This week a number of admin commitments to committees started to come alive -- a pain.

      But this morning I started to record my thoughts on the mathematics of Sudoku. They are very rough and will grow over the following week or two until the up coming CSci Dept Seminar. If you want to see my working go to [ samples/sudoku.mth ] and forgive the spelling, typing, muddle headedness, holes, and incomprehension that seems a part of formalizing things for me. But it is a pleasure to sort things out.

      Meanwhile nothing in the latest Comm ACM and IEEE Computer magazine worth noting for my research in software development methods and technologies.... but something odd turned up in Dr. Dobb's Journal of Computer Calisthenics and Orthodonture: Jerry Pournelle on page 82 of the October 2005 issue claims to have helped develop the personal computer in San Bernardino. See [ sanberdo.html ] for details.

      2005-10-12 Wed Oct 12 14:10 Comments on Ambler's UML2.0 Style guide

      Here are some notes from a draft of a review I expect to be published in CR real soon now:
      1. Attractive and timely.
      2. Not always consistent with the draft standard[OMG]
      3. Some detailed issues follow that can easily be fixed:
        1. Rule 9 states "Minimize the number of bubble types" but the description that follows talks about the number of bubbles.
        2. Figure 7 and the nearby text suggest that property strings are in the Object Constraint Language. They are not. The property string "{FIFO}" in Figure 7 is nonstandard. Figure 7 also shows the property string "{ordered}" as a constraint on an association. This is ambiguous. It should be a property string on a multiplicity(section 7.4.1 [OMG], page 39[F], page 255 [L]).
        3. Rule 105 suggests using three dots (an ellipsis) to show that the drafter may have omitted some content. This is nonstandard. In the draft standard [OMG] a missing compartment shows the possible existence of hidden content. Ambler's rule 103 states "Never show classes with just two compartments." He advises using a blank compartment as a "placeholder." A blank compartment denies any content. So, an explicit notation would be better. I wish that the Object Management Group would adopt the ellipsis.
        4. Rule 113 on "qualifiers" refers to Figure 22 but it should refer to Figure 23.
        5. Rule 131 ( "Avoid indicating non-navigability") refers to an X in Figure 25 that is missing. Seventh, rule 151 ("Include actors on use-case package diagrams") is an attractive idea. It is not in the standard. So, I would like a clear definition. Apparently, these symbols show actors inside the packages, but must the drafter show all internal actors this way? Eighth, rule 212 refers to "recursive transitions" that are not recursive but loops.
        6. Chapter 10 mentions using activity diagrams for Data Flow Diagrams. Mainly systems analysts use these diagrams to map out the high-level processes that move data between people, subsystems, and data bases. Activity diagrams require too much low-level detail [B]. The standard gives a better option. Section 17.2 provides "information flows" as "mechanisms for specifying the exchange of information between entities of a system at a high level of abstraction." These plus the standard stereotypes for component (<<entity>>, <<process>>, etc.) fit systems analyst's needs.
        7. Figure 49 follows the older UML standard not UML 2.0. It shows components on a deployment diagram not artifacts. Ambler does not mention UML 2.0 artifacts. Fowler [F] and Larman [L] do.
        8. In rule 308 and figure 57 some example timing constraints misuse the variable t. Instead of "{t=0..4 weeks}" writing "{0..4 weeks}" is standard and simpler [F][OMG].

        Refs:
        (OMG): Object Management Group [ 05-07-04 ]
        (F): Fowler's UML distilled [Fowler03e]
        (L): Craig Larman's Introduction to Unified Processes and Patterns [Larman04b]
        (B): My chapter on SSADM and UML [Botting05], or figures from early draft: [ http://csci.csusb.edu/dick/papers/rjb04bDFDs/ ]

      2005-10-07 Fri Oct 7 12:10 Teaching, Bonescan, Bibliography

      A busy week of teaching and waiting for a delivery of a skylight.

      Gathered some items from IEEE publications and via Wired! [ newb2005/newb1007.html ] Here are my key word descriptions of each item.


      1. =DEMO ALGORITHMS DATA XML TOOL UML1.4 MDA PIM-to-PSM PERFORMANCE Client-server CORBA
      2. =SURVEY STATISTICS METRICS PROCESS MANAGEMENT CUSTOMERS RIVALS
      3. =REPORT =HARMFUL SPECIFICATIONS OPEN SOURCE LKML Linux kernel
      4. =SIMULATION RELIABILITY MODULES FAILURE REPAIR
      5. =EXPERIENCE MINING OPEN SOURCE Mozilla OpenOffice EVOLUTION MODULES METRICS size cohesion coupling inheritance
      6. =DEMO TECHNICAL POLYMORPHIC TYPES C# .NET
      7. =DEMO TOOL WEB Requirements TEXT Scenarios + Video Audio BLOBs ART-SCENE DMAN ATC
      8. =SURVEY 5 OPEN SOURCE LIBRARIES IR Xapian Apache Lucene ht://Dig Swish-e DataparkSearch

      This morning an easy procedure at the Kaiser Hospital in Fontana: A shot of radioactive stuff in the arm, drink 32 ounces of fluids, wait, and lie in a scanner scintilating for 30 or 40 minutes... Results will come later.

      2005-10-03 Mon Oct 3 12:10 Uploaded Sodoku brute force solver

      This Prolog program [ prolog/sudoku9.plg ] solves the 9><9 Sudoku published in the LA Times September 25, 2005. Be warned that it takes hours to run. It also has extra outputs designed to show you what process is being made. To try out a different 9><9 puzzle replace these lines
       % the givens LA Times Sunday Sep 25 2005
       	R1=[6,_,_, 9,_,7, _,_,3],
       	R2=[_,_,_, 6,_,3, _,_,_],
       	R3=[7,_,1, _,_,_, 9,_,6],
      
      
       	R4=[_,_,7, 3,_,1, 4,_,_],
       	R5=[4,_,_, _,_,_, _,_,8],
       	R6=[_,_,5, 7,_,2, 6,_,_],
      
      
       	R7=[2,_,9, _,_,_, 8,_,7],
       	R8=[_,_,_, 2,_,6, _,_,_],
       	R9=[3,_,_, 4,_,8, _,_,1],

      Leave the punctuation alone. The '_' indicates a blank square.

      2005-10-03 Mon Oct 3 07:10 Full weekend

      Spent Saturday getting the air conditioning fixed in one auto, buying groceries, buying pool supplies, and marsala chai -- our morning drink at the moment. Then to the first concert of the 2005-2006 season at the University of Redlands -- with a pleasant dinner in the Casa Loma Room. Hence a late night.

      Got up later than usual -- 6:45am and rushed to church. Grocery shopping on the way back. Much cooking and reading of the Sunday L A Times.

      Also checked and optimized my brute force declarative Prolog Sudoku solver. The key step was to only generate new entries that do not clash with known values in the columns. It took at least four hours to correctly solve last week's L A Sunday Times Sudoku on my home lap top (timing is approximate because I put the program on hold while I tried to sleep). Did not sleep well however. Read from12midnight until 3am. Very tired this morning.

      Telecomuting: tried to improve my description of binding and free variables in my MATHS language. To do this properly may mean I have to extend the XBNF I've used so far to by an attribute grammar. This would destroy my hopeful hypothesis of the 1980's that XBNF would be enough.

      2005-09-30 Fri Sep 30 14:09 Added managerial items to bibliography

      Morning spent cleaning leaves, branches, dirt, and beetles out of pool.

      New bibliographic items [ newb2005/newb0930.html ] are about motivation, process, agility vs traditional, moviemaking, etc., and other managerial things.

      Also an excellent comic web site: [ comics.php ] "Pile Higher and Deeper".

      Yesterday was busy: get car, talk to counseller, Teaching, office hour, Teaching, ... but less wind (but a bad cloud of smoke in the distance).

      2005-09-28 Wed Sep 28 14:09 Early start and windy -- grading and seminar planning

      Took car to dealer for an unexpected light in the dash board.

      Winds on campus very high... tree branches cracking and falling. Busy gardeners. My building moving in the breeze a little. Just enough to make one a little dizzy and confused for a second. The winds moderated during the day.

      Graded and debriefed [ cs372/02.html ] yesterdays class.

      Meanwhile.... we had a meeting to organize seminars for the rest of the quarters: Bioinformatics, .NET, Sudoku, Synchronization, etc. etc.. ANd this led to a lot of EMail to be sent out etc. Also improved my methods page and discovered more places where my EMail address can be found by bots. Started to fix that. Also added an entry or two to my [ samples/methods.html ] page.

      2005-09-26 Mon Sep 26 15:09 Debrief, weekend, sudoku, back to work

      After class I always need some time to debrief: record grades earned, replace notes and handouts, tidy things and decompress a little.

      TGIF! DVDs. Saturday similar.

      Sunday: cleaned the back yard up, read the LA Times and got sucked back into programming a declarative Sudoku solver in Prolog. It is either too slow or buggy or both. Continued testing Monday morning before coming to office. MAnaged to read some articles on managing software development in IEEE Software Magazine. I'll be publishing my notes later...

      Worked on the new season of the San Bernardino Symphony [ symphony.html ] and preparing visuals/web pages for classes [ cs372/blog.html ] and [ cs489/index.html ]

      2005-09-22 Thu Sep 22 11:09 First Class corrected error in syllabus

      Found that I had CSCI202 where I should have had CSCI489 in my generic [ syllabus.html ] and then fixed it.

      In [ cs489 ] I did a quick and rough survey of topics that interested senior level computer science students. The winning topic is AI with Security a close second.

      Next: [ cs372 ]

      2005-09-21 Wed Sep 21 15:09 First department meeting of year

      We covered a lot of business including the announcement of a couple of interesting seminars on some bioinformatics projects done by CSUSB students at the University of California, Santa Barbara. The seminars will be in JBH389/391 (the math conference room, 3rd floo, Jack Brown Hall, CSUSB).
      Table
      DayTimeTopicPresenter
      F 10/0710-10:30 Visual Vocabulary Construction Using Principal Component Analysis David Renteria
      " "10:30-11 Enabling Rapid Data Ingest: The Scientist Digital Notebook Daniel Havey
      M 10/1010-10:30 Time Series Analysis on Microtubule Behavior Richard Rivera
      " "10:30-11 Enabling Microscopy in the Macroscale: The Imaging Wall in the Biological Laboratory Daniel Havey
      " "10:30-11 Recruitment Talk Laura Boucheron, UCSB

      (Close Table)

      2005-09-20 Tue Sep 20 14:09 Fixing schedules and starting the year.

      Last Friday I telecommuted as the roofers put more shingles on our house. The result looks good but needs a replacement skylight. The old one was replaced on Saturday.

      Saturday and Sunday were domestic with a trip to Barnes and Noble for some :Rumpole of the bailey" DVDs. We really enjoy these but wonder how many Americans can understand them.

      Monday was full of meetings: First convocation.... you can see the videos at the campus web site (click the banner at the top of this page). Followed by the general faculty meeting. Then I worked in my office.... and to the College of Natural Sciences meeting. I skipped the party and collected my wife for a pleasant reception with the President. Sadly I over-indulged in the guacamole and been dip etc.... and then the thunder, lightening, and rain started. We looked for leaks in the new roof when we got home: none visible.

      The mail included an invitation to get radioactive and have a bone scan -- on a day when I'm doing most of my teaching. A little depressing.

      Didn't sleep much last night: Bean dip and thunder I guess. Reread "The Last Hero" by Terry Prachet". Woke up early to more rain and a new drip in the skylight. Tired.

      Spent morning phoning roofers to fix leak and HMO to reschedule apointment: success in both case.... but I won't know if the leak is fixed until the next rain. Two weeks before the new skylight arrives.

      Started into work to attend the TRC lunch and poster session. Spent 50% of it raving about some of my favorite composers: Bernstein, Stravinsky, Grainger, Holst, .... and the rest talking about how computing has changed since I arrived at CSUSB.

      This is the 24th time I've started the Academic Year since I arrived in 1982. The sequence of events and demands are similar, but this year I was physically tired at the end of it.

      A note on the Kegel maneuver: This is an exercise reccommended to people who have had a baby, a prostate removed, or for other reasons have lost control of their bladders. My experience: if you take them too seriously and clench the muscles hard for 10 secs (a recipe for maximum growth) then you can give yoursel a nice set of piles as a side effect.

      2005-09-15 Thu Sep 15 13:09 Syllabi ready for printing

      Spent the morning being retrained as an advisor by the "Teaching Resource Center" -- -- --(TRC)
      Then check new books in the library and books ordered in the bookstore.

      Then got a new cartridge for my office printer and the ftp Email fixed. The Contact buttons on my pages should now work. Thank you Ken!

      Then started to focus on preparing syllabi for my classes. These need to be sent off to the printers 5 working days before classes start to save any last minute crises. The versions on the web will be more up to date: [ syllabus.html ] [ cs372/syllabus.html ] [ cs489/syllabi.html ]

      Now, I need to wait for information before finalizing the day-by-day schedules.

      2005-09-14 Wed Sep 14 06:09 Software Failures in IEEE Spectrum

      The IEEE's Journal for all members has dedicate nearly 50% of its September 2005 issue to software development and how it fails.

      I spent last evening reading it and intend to summarize any conclusions later today or tomorrow.

      Just noticed that the campus banner has been replaced by a new one with a new name... so all my pages will need regenerating. A nice simple example of why the "DRY" principle saves a lot of work:

    2. (DRY): Don't Repeat Yourself.

      In other words store every item of data once and only once... but keep a backup copy off line.

    3. 08:09 Looks like I still have my system/UNIX skills. Ran a find command that called an ed script to change the URL on all pages on the server. This task was complicated by the fact that there wasn't enough space on the /var file system to run vi.

      In case you don't know ed is a user hostile editor that expects you to work blind on files with commands like:

       	g/access_banner_blu_2.gif/s//CSUSB_top_bar.jpg/
       	w
       	q

      I think I'm going to go to Disneyland.

      Any way here is a sweeping conclusion:

    4. (GUT0): 90% of software failures, from web pages to operating systems, are due to unknown, forgotten, or unexpected couplings between different parts.
    5. (GUT1): The most damaging couplings are implicit contracts: If I do this then you will do that for me.

      Example: if my pages refer to access_banner_blu_2.gif then the user will see the campus banner.

      The acronym

    6. GUT::physics=Grand Unified Theory.

    7. Wed Sep 14 14:09 Many changes made to CS372 and CS489 pages, but long distance to go.

      Uploaded my notes [ newb2005/newb0914.html ] on the IEEE Spectrum issue on software failures.

      2005-09-13 Tue Sep 13 13:09 Uploaded generic syllabus for quarter

      [ syllabus.html ] (Web page) [ syllabus.pdf ] (PDF).

      2005-09-12 Mon Sep 12 16:09 Getting CS372 and CS489 online

      Most of the data is missing or misleading but.... most links on [ cs372 ] (Computer in Organizations) and [ cs489 ] (Senior Seminar) are functional. If not, let me know (by phone 909-537-5327 (new number)).

      2005-09-12 Mon Sep 12 12:09 Not a good week

      The last week started well with the strp throat infection disapearing. I worked in the office and started to get things in order... and got rid a large unplugged monitor.

      Also worked on a review of Scott Amblers new style guide for the UML2.0 and found that my review of "Software Process Modelling" was online at CR.

      I added a link to a site and a book about job interviews in the computer field: [ samples/etc.html ]

      Meanwhile a campus wide power cut caused some havoc and in particular seems to have stopped my PHP scripts from sending me EMail. As a result, my "[Contact]" buttons are not working. Sorry!

      But on Wednsday I found that the PSA test shows that the operation probably did not get rid of all the cancer cells from my body. The next step is to scan the bones for signs of unexplained growth. And also to pray that the 0.27 PSA score was some kind of error -- or for some easier way out than the alternative. Otherwise the normal treatment is to stop the rogue cells from reproducing: Hormone treatment. This controls the cancer but does not cure it. Ultimately it fails... Other treatment options: Chemo therapy is not very effective agains prostate cells, and radiation treatment needs a target to aim at.

      I got through Thursday and Friday by focussing on the mundane things: washing clothes, shopping, etc. Sunday however went and had a good day at the LA County Fair -- what any county fair offers: rides, crafts, everything-on-a-stick, races, beer, shopping opportunities, and animals. Returned home tired and relaxed. Slept quite well for a change.

      Today I got my first real draft of the review completed and collected a batch of nine interesting items [ newb0912.html ] that includes a good survey of MDA(Model Driven Architecture) and TDD(Test Driven Development) plus a nice paper on software rework and quality control.

      2005-09-06 Tue Sep 6 12:09 Its my own invention

      Here are a couple of photos of my Panda Palm Cradle: [ palmpanda2.jpg ] [ palmpanda1.jpg ] which works rather well.

      Also I'd like to thank all the people who sent me "Get Well" cards: [ cards.jpg ] They helped.

      2005-09-06 Tue Sep 6 06:09 Throat infection!

      One day at work and I get a strep throat! Luckily it responds well to antibiotics.

      Meanwhile... to see a list of all my reviews for Computer Reviews check out [ browse_reviewers.cfm?reviewer_id=115728 ]

      And a bit of trivia: The hangman 1817-1819 at the Old Bailey was probably related to me (most Bottings are related somehow): James "Jemmy" Botting.

      I'll be uploading photos of my latest invention: a device to hold a palmtop that doesn't come with a proper cradle.

      2005-08-30 Tue Aug 30 15:08 Back in the Office...

      No parking permit, no cooling, and a ton of EMail to handle...

      Uploaded [ newb2005/newb0829.html ] a collection of half-a-dozen comments and citations on recent papers and articles. Topics: Reuse, Software as art, and the historical milestones in software development.

      2005-08-26 Fri Aug 26 15:08 Review submitted

      Completed and submitted my review of Modeling Software Processes to CR:
      1. Acuna S., Juristo N. "Software process modeling (the kluwer international series in software engineering)"
      2. Springer-Verlag New York, Inc., Secaucus, NJ, 2005.
      3. =SURVEY PROCESS MODELLING MATHEMATICS PEOPLE UML MANAGEMENT JAD IMPROVEMENT CMM PSPS STIN SPEM

      [AcunaJuristo05]

      2005-08-26 Fri Aug 26 08:08 Sudoku solving with Prolog

      The program [ cs320/prolog/sudoku4.plg ] solves a simple 4><4 Sudoku puzzle with 2 solutions using Prolog. By changing one line
       	X11=1, X22=2,X33=3,X44=4,  % Clues
      you can find all solutions of any 4><4 puzzle. A lot of typing will handle the 9><9 ones that are more interesting. I wrote this and it ran first time on Wednsday this week.

      Tuesday the urologist did a cystoscopy -- no scaring, healing normally. Another PSA test in september and a review of the results.

      Thursday.... made a shelf for DVDs, trimmed hedges, added two phones to house, and bought the first "Rumpole of the Bailey" boxed set of DVDs.

      Continuing to improve my review of the book on models of software processes.

      Programming Language Books on the Web

      Peter Kitson contacted me by EMail and asked:
         > I manage a website project which lists quality C
         > programming reference books that are offered as free
         > downloads. My aim is to eventually list 100's of such
         > books.
         >
         > I'm contacting you for two reasons. First to get word
         > out about my project and second to ask you to consider
         > adding a link on your website to our C books page:
         >
         > http://www.computer-books.us/c.php
        [ c.php ]
         >
         > For me, working on this project is a source of great
         > personal satisfaction. Knowing that I'm helping to
         > build something which will give back to the user
         > community for years to come.
         >
         > Please let me know your thoughts.
         >
         > Regards - Peter Kitson

      He is growing an interesting site, full of information on programming languages. Please visit [ http://www.computer-books.us/ ] and see what you can do.

      2005-08-23 Tue Aug 23 07:08 Easy Monday

      Editting draft review of book on Palm Tungsten E (cheap)... and thought about generalized Sudoku puzzles. You can generalize them to any n*n grid as long as n is a square. This means that there is a hexadecimal varaition with 16*16 squares to fill in with the digits 0,1,2,3,...9,A,B,C,D,E,F.

      For people in a hurry there are puzzles with 4><4 digits 1,2,3,4.

      So here is trivial Sudoku: Fill in a 1><1 with the unary digits (1):-)

      Saw Star Wars III. Don't watch it in the front rows of a stadium seating:-) Rather glad I've seen all of them now.

      2005-08-22 Mon Aug 22 08:08 Three day weekend with sneezes and Sudoku

      A cold is haunting our house. Sometimes I think that viri are small enough to have quantum effects... spreading out and being partly here and partly there. But this is just a memory of an excellent funny "Odly Enough" article by the English writer Paul Jennings.

      Took a couple of hours Sunday to do the Sudoku puzle in the LA Times August 21st 2005. Second attempt, and this time apparently successful.

      Interesting logic puzzle. Easy (but repetitive) program in Prolog but with a very long run time I guess:

       	X12=5, X15=8, X21=2, ....,
       	perm([X11,X12,X13,X14,X15,X16,X17,X18,X19],[1,2,3,4,5,6,7,8,9]).
       	...
      where perm(A,B) expresses the idea that A is a list that is a permutation of B. The code for perm is in [ potion1.plg ] (Harry Potter and the Potions).

      In other words it was more fun to do by hand than to code it and wait.

      This morning I added a couple of Frequently asked questions to [ maths/faq.mth ] describing lattices and ontologies.

      2005-08-18 Thu Aug 18 11:08 Interviewing and some new info on mining source code

      Came to work today to interview candidates for a temporary post teaching here.

      Meanwhile uploaded information from the Jun 2005 issue of IEEE Software Engineering Transactions on extracting data from the spurce code and documentation generated as software is developed: [ newb2005/newb0811.html ]

      2005-08-17 Wed Aug 17 07:08 Telecommute today

      Just added an abbreviated proof of [ samples/syllogisms.html#ferison ]

      Thinking about the processes used to develop computer driven games while reading about the effect of the size and type of change to source code has on its correctness. In the system studied( 5ESS ) one line patches where significantly less likely to be fixed later than longer patches. I'll be posting the citation on the research some time this week.

      2005-08-16 Tue Aug 16 09:08 Rebooted office

      I'm back in my office. It is highly disorganized after I dismantled the computer hutch and teaching filing system, but I've got the Dell laptop up and online with no problems... even with the new flash drive. Also reprogrammed the new Voice Mail system with a new password and message: 909 53 75327.

      Now to clear my box, deliver some paperwork, look up some info for a reference, etc. etc.

    8. 14:08 -- voice mail and phone set up. Filled in forms re medical leave, Caught up with User Friendly cartoon, returned two books to library, delivered "fit for work" form to Human Resources, reassembled "computer hutch" on desk, and put my collection of Dilbert mugs and official IBM THINK sign on top.

      2005-08-15 Wed Aug 18 Doing the paperwork run-around

      To campus to check for paperwork, then to urologists office to get evidence that I'm fit for work. But I signed up for a special procedure next Tuesday to see if I have some scar tissue and if necesary stretch the tube that contains it....

      2005-08-12 Fri Aug 12 14:08 Dafted review and two more syllogisms...

      I've now drafted my review of "Modeling Software Processes" and it is clear that part of the Agile Manifesto [FowlerHighsmith01] is correct:
    9. Individuals and interations are worth more than process and tools.

      I've finished [ samples/syllogisms.html#felapton ] but left a deliberate hole in [ samples/syllogisms.html#bocardo ] so that you have a chance of fame.... just work out the missing step(s) in the argument and send me email...

      Only six figures to go.

      2005-08-12 Fri Aug 12 07:08 Getting back to work

      Worked at home and telecommuted this week. Added proofs for [ samples/syllogisms.html#disamis ] and defined the little tags for the derivations rules that I use -- for example: ei stands fro existential instiation and lets you reason that if for some x(P(x)) then P(v) where v` is any locally unused variable.

      Also started writing a review of "Modeling Software Processes". It looks as if "Everything old is new again": systems thinking, the importance of people, flow charts, work shops to involve stake holders, etc.

      2005-08-09 Tue Aug 9 10:08 Back from San Luis Rey in Oceanside

      Pleasant vacation/retreat: food, reading(history), relaxing, and spiritual exercises...

      Came back to San Bernardino and read "Sarek" by Ann Crispin (in the Star Trek series). Not enough logic, perhaps.

      Feeling a lot more normal this week. Gave sample of blood for the PSA test on Monday. Volunteered to review a book for Computer Reviews on modeling software processes this morning.

      Cut up a 4><4 balk of wood by hand this morning and then completed proofs of more of the syllogistic forms: [ samples/syllogisms.html#festino ] [ samples/syllogisms.html#baroko ] [ samples/syllogisms.html#darapti ]

      2005-08-01 Mon Aug 1 09:08 Taking a break

      Just packing up for a 5 day vacation retreat at Mission San Luis Rey. Back online monday 8th.

      2005-07-29 Fri Jul 29 07:07 Getting back to work?

      Drove to campus and parked in the 30 minute free parking slot... CSUSB charges people $3 a day, and I don't like paying to get on with my work. Dropped of stuff in my office and cleared my box, and said "Hi". 20 minutes and off to the dentist for a regular cleaning.

      Meanwhile, I've started writing proofs for the the medieval Categorical Syllogisms: [ samples/syllogisms.html ] to see what happens, deepen my undertanding of logic, and improve the natural deduction system I describe in my MATHS language.

      2005-07-27 Wed Jul 27 07:07 Reply about syllogisms


        Good morning. This is Dennis Gumaer. I was in your CS201 last quarter and enjoyed myself immensely.

        Onto my point, I was reading your web log as a way of getting out of writing my research paper for summer school. I must thank you, I needed a break.

        I was looking at the statement, "If (all A is B) then (there exists an A)."

        I think the writer would make this statement in modern terms, "If A is a subset of B, then A exists."

        As long as A was not required to be a proper non-trivial subset of B then I can't see any reason for this not to be true. If proper and non-trivial was added and B was the empty set, then A would not exist.

        But that does assume that "If (all A is B) then (there exists an A)." can be translated "If A is a subset of B, then A exists." Which is obviously debatable.


      I completely agree. The string "All A is B" is an English translation of a Latin and/or Greek expression. It seems as if the meaning of this kind of expression was different in those languages in ancient times to the meaning in the modern English phrase.

      This is a nice example of how carefully one must be when mapping informal statements into formal terms. This is even more true when translating a client's needs into formal requirements, specifications, and programs. Hence my belief that the first job in many projects is developing a very clear picture of the client's language. Some call this an ontology. Other's a conceptual model. And some use the UML.

      2005-07-25 Mon Jul 25 13:07 Medieval Logic and Syllogisms

      Spent some time today looking into a set of rules for handling categorical syllogisms -- a component of Medieval Education concerned with formal logic. This is partly a hobby and partly an feeling that a new form of logic has to be at least as good as what was done 1000 years ago.

      I was working from [ petrus-hispanius.html ] Tom Van Vleck's page descibing the valid forms of syllogism according to Spanish Peter (I guess). In checking out the rules I had developed I made a two discoveries: (1)some duplicate entries (Fakofo, Dokamok) that are not in Brewer's Dictionary of Phrase and Fable. (2) four of them (Darapti, Felapton, Bramantip, and Fesapo) depend on the following assumption:

    10. If (all A is B) then (there exists an A).

      I think this was called "The existential import of universal affirmation" and I think Lewis Carroll discussed it in his books on logic. It doesn't fit well with modern logic since Russell...

      I need to give these PBIs (Partly Baked Ideas) time to cook and then I may integrate some of the valid arguments in my notes on the language os sets...

      Let me know by email (link above) if you can correct me or confirm my calculations.

      2005-07-25 Mon Jul 25 05:07 Using symbolic logic to take notes

      Some recent EMail:
      1. Hello,

      2. Just a question about your statement of using symbolic logic to take notes for
      3. many years. Could you give me an idea of how you went about this?

      4. Thank you.

      5. From: Joseph Norris

      It started when I did a bachelors degree in mathematics in England. I had studied Symbolic Logic before I went to University using books from the local public library. I used the Principia Mathematica notation to take notes in several classes from the 2nd or 3rd years onwards. I had redesigned the notation by the 4th year.

      It means statements like

    11. For all eta there is a delta so that for all x ..... become short and comprehensible formula.

      I had two problems.

    12. (1) expressing the "Nest of Intervals" theorem in Pure Math/Real Analysis. Never figured this one out!
    13. (2) Noting down proofs in Set theory. The proofs provided by the professor tended to depend on translating the symbols into enlish.... and so when I wrote the English in PM-style notation the result was the identical formula.

      It would be nice to scan in an example as a graphic.... but I've lost most of them over the following 40 years.


        The notation evolved when I bought a typewriter and more when I tried to put them into computer readable form... ultimately into ASCII as [ maths/intro_characters.html ]

        I didn't get a good way to record proofs until I discovere "Natural Deducation" as presented by Kalish and Montague. This is very much the system I present in my notes in [ maths/logic_2_Proofs.html ]

        Since then (circa 1972) I've learned Tony Buzan's Brain Mapping -- I call them spidergrams which are better at recording human discourse: illogical and assoicative rather than logical and structured. They work well... and the logic and math notation is added as footnotes to the diagram.


      2005-07-18 Mon Jul 18 08:07 Uploaded backlog of bibliographic items

      Just put up [ newb2005/newb0718.html ] 22 summaries of readings from recent journals and magazines plus a summary of Michael Jackson's latest thought provoking book from 2001.

      If there is a summary it is: how little we know about the world in which software is embedded, and how vitally important this environment is for determining the fitness of the software. It appaears this is also true of software improvement projects, and probably software development tools. We also do not know very much about how many software projects fail... perhaps it depends on what we define as failure: is it when the project is cancelled, or when a user tries to uninstal it? As the saying is: when a bear is dancing you are not impressed by the dancing, but by the fact that a bear is doing it....

      2005-07-16 Sat Jul 16 07:07 Another step toward health

      Sometimes a small thing like trapping a gopher feels like a large step forward. It appeared when I didn't like leaving the house and the thought of digging made the scars (etc) ache). In the past I've tried gas and poisons with no effect.

      For the three days we tried the "Flood and wait" technique. You flood a hole and wait to wack the gopher when it tries to escape. We once had accidental success with this.... we didn't expect the gopher to come up, but my wife thew a concrete decorative brick at it and killed it. This time I got a glimpse in the early pre-dawn light, but it didn't appear when I was on-guard by the flooded burrow with a spade. When I turned my back and went in the house the varmint plugged the holes up and/or created a new mound. Sometimes the "CaddyShack" trailer comes to mind...

      So.... I went to the ultimate anti-gopher weapon. Here you dig up the lawn and expose a tunnel and place gopher traps in place of the tunnel and cover up. I did this at night, and the next morning found one trap had gone off and dropped the dead gopher into the waiting trash can. Oddly it buried the other trap without trigger it...

      PS. It's not that I dislike small furry animals... It is just that one gopher can ruin your whole garden.

      2005-07-12 Tue Jul 12 07:07 Added some links to this site

      In the "samples" I have a large collection of links (you can search them from this page) on software development: tools, people, standard, languages, methods, etc. I've just added half-a-dozen found in the May 2005 issue of the ACM SIGSOFT Software Engineering Notes: [ samples/ ]

      2005-07-08 Fri Jul 8 14:07 Bombs in London

      I have two or three people I knew before I left the UK and one lives in London and another works there. I'm hoping that they were not one of the victims.

      If you are there send me EMail (I lost a lot of Email addresses when we upgraded our home machine...).

      2005-07-06 Wed Jul 6 14:07 Ouch.... but educational

      Just suffered a forced upgrade of our home computer after program fouled up the hard disk.... Still not 100% functional but getting there. I've had to spend a lot of Geek time reinstalling applications and reloading data. The first job was to buy and install a working backup disk on this iMac, that should save time in the future.

      Lesson relearned: keep data, programs, and settings in several separated systems, including hardcopy:-( As if I didn't know.

      Meanwhile: I am getting healthier and more confident: ate out, trip to Temecula, went to the office to pick up mail etc... Last night slept for 7 hours without a trip to the rest room.

      And: CR has published my review of

      1. On approximation measures for functional dependencies
      2. Giannella C., Robertson E. J
      3. Information Systems 29(6): 483-507, 2004. Type: Article
      4. Date Reviewed: Jul 6 2005

      2005-06-28 Tue Jun 28 11:06 Mobile again

      Yesterday I drove a car for the first time in 30+ days! A big "step" forward. But still shakey, weak, and visiting the bathroom every 3 hours day and night. Tiring.

      Updated a short text (.txt) vita [ short.vita ] to prepare for writing a biography for Computer Reviews(CR).

      2005-06-23 Thu Jun 23 09:06 Corrected some old links in samples and maths

      I had some links to my old CGIs that needed upgrading.

      There is a lot to be said for separating the logical expression of what you want to say from the syntax in which you are forced to say it. In this case I had URLs that explicitly refered to CGIs, and then later developed a shorthand for them.... which was easy to update when CGIs were replaced by PHP on this site. However the "hard wired" URLs were not updated at that time.

      Moral: separate your concerns and "Don't Repeat Yourself".

      2005-06-15 Wed Jun 15 09:06 Fixed some links in some samples

      Added a link to [ samples/etc.html ] and tried to fix some broken closing links in [ samples/algol60.syntax.html ]

      2005-06-08 Wed Jun 8 07:06 Staples and Tubes removed

      The took out the cathetar and staples yesterday. Feels more comfortable, but now I don't like being very far from a rest room...

      All very normal for this operation. Planning to do a lot a resting and some exercise.

      2005-06-03 Fri Jun 3 11:06 Left the house! Surprise!

      Went to see my regular doctore today and came back to find an enormous bunch of flowers from my department [ http://csci.csusb.edu/ ] waiting for me... and a message about not worrying about the oxygen being absorbed by them.

      THANKYOU!

      The doctor reported that everything seems normal...

      2005-05-31 Tue May 31 08:05 Getting better each day...

      Last Monday they removed my prostate and fixed a hernia. The operation went well and left me with 28 staples and attached to two drips, a pain pump, a blood drain, and a bag.

      I started walking the next day, and lost the "IV" drips.

      I came home on wednsday. Moving very slowly and painfully. Slowly my body has been healing and I'm walking faster each day. It turns out that the best exercise is precisely the routine I 've using for the last two years.

      Recovery is full of gross personal details than heroism so I don't intend to describe them here.

      On Friday the pathology lab reported that the cancer was confined to the prostate. Big relief. This was the first day I could get out of bed without help.

      Thank you for the cookies, toffees, books, wishes, and prayers (You know who you are). You have made my recovery easier.

      2005-05-20 Fri May 20 16:05 Preparing to leave the office for 6 weeks

      I've cleared the desk ready for the VOIP people to come and shortly will short down and pack away the Lap top I use in the office. As it is the temperature is starting to climb, since the A/C only turns on when my neighbours are in.

      2005-05-20 Fri May 20 14:15 Thought of the day

      Actually a random thought while teaching yesterday.

      You can make the case that it is unethical to computerize any task that is interesting, and an ethical requirment to computerize all boring activities.

      2005-05-20 Fri May 20 14:05 Reading CACM April 2005

      Just finished CACM April 2005 [ newb2005/newb0520.html ] and working on clearing my desk of CSci201 and CSci320 in preparation for the operation and the recovery next week.

      In the latest batch of reading an article describes how a software developer should handle the failure of a project, and in another there is a discussion of the credibility of computer science as a science. I wonder if there is a connection.

      Yesterday I discovered that all the links on my site to the old "public" web server had been broken when the new dept. web sote was launched. I've patched all the ones I can find (basically the Java stuff) but there may be some more left for me to fix when I get back from medical leave.

      2005-05-19 Thu May 19 18:05 IEEE Software Magazine Mar/Apr 2005

      Nearly a dozen articles worth reading in this issue [ newb2005/newb0519.html ] including [LangFitzgerald05] on web development being "Business As Usual".

      2005-05-18 Wed May 18 15:05 Medical Preparations

      Physical exam, much paperwork, blood and other samples, XRay, and the wherewithal to clear my bowels ready for the operation on Monday 23rd.

      Meanwhile, trying to keep up to date with teaching, get ahead with the reading, and doing all the needed prep for the next 4 weeks -- including two Final exams... and trying to fix a newly unearthed bug in my website, etc. etc.

      Busy...

      Reading: how about evidence that web development is not chaotic and frenetic... and is being done in much the classic software engineering process? More to follow.

      2005-05-16 Mon May 16 15:05 Experimental data on Test First Programming

      Nice piece of experimental work aimed at determining if writing tests before you write the code is better than writing the code and then the tests: [ErdogmasMorisioTorchiano05] (IEEE Trans Software Engineering) with some intriguing results: more tests mean more productive and test-first programmers did more tests. The effect on quality is even more intriguing: the number of acceptance tests passed is not a function of the the number of programmer tests BUT the number of programmer tests does predict a lower limit on the number of acceptance tests passed. In other words, some programmers produce better code than you would expect from counting the number of tests they've done.

      I think this hints at the fact that there is more to quality than testing. Some qualities can not be assessed by running the could a finite number of times.

      2005-05-12 Thu May 12 16:05 9 new bibliographic entries

      An more efficient way to search for patterns in class diagrams: [ newb2005/newb0512.html#BeyerNoackLewerentz05 ]

      Examples of how to express activities and actions in UML2.0 [ newb2005/newb0512.html#Bock05 ]

      Results of a poll of designers on user centered design: [ newb2005/newb0512.html#MaoVredenburgSmithCarey05 ]

      Peter Neumann's wise thoughts on why we do so badly on preparing for disasters. [ newb2005/newb0512.html#Neumann05 ]

      Why getting the winning bid for a technology may be a loosers strategy: [ newb2005/newb0512.html#AnandalingamLucas05 ]

      Showing how weblog technology makes a business run better: [ newb2005/newb0512.html#SrinivasanKrishnaHolmes05 ]

      A comparison of 15 different ways to do a data warehouse: [ newb2005/newb0512.html#SenSinha05 ]

      An introduction to the fashionable and interesting field of bio-informatics [ newb2005/newb0512.html#Cohen04 ] (note this is for completeness and further entries on bio-informatics will have something interesting to say about methods and/or technologies for developing software. For example: How web services enable biological research to be done better: [ newb2005/newb0512.html#GaoHayesCai05 ] (and evidence of the value of Model vs View splits)

      2005-05-11 Wed May 11 13:05 Bug found and fixed

      The bug mentioned below was not in PHP strpos.... but in my assumption that the file I was searching didn't have any weird <script> or <style> tags in it.

      I tightened up the code to only look at valid entries (I hope).

      2005-05-11 Wed May 11 09:05 Bugs and proofs

      Two projects this morning. First add a proof of
    14. for all x, some y ( F(y)->F(x)) to [ maths/logic_2_Proofs.html ] and then trying to find why our PHP has problems finding the string "TeX". For a while I thought that the PHP community had a hatred for Donald Knuth's mark language but it turned out that
        strpos($upperbuffer, $SEARCH)
      seems to break PHP if "SEARCH" starts "TE". It is quite precise: "TD" and "TF" and " TEX" and " TEXT" are OK, but "TE" stops the script from returning any data into the page after it is first executed.

      Ugly.

      I patched a work around but I am not happy.

      PS. To quote Harif, one of our MS graduates working in JSP and Java.... "Copy-and-Paste is evil". I now have to up load 11 versions of the patched script.

      2005-05-10 Tue May 10 16:05 Expanded notes on Semantic Tableaux

      Semantic Tableaux are a "user friendly" way of working out proofs. I've used them for years, taught them to computer science undergraduates, and recently started to look at ways to take advantage of computer technology. Sirisha Vadapathy is working on a web site that helps construct the trees using Java graphics. I've worked out how to do them on a palm pilot... Meanwhile, here [ maths/logic_2_Proofs.html#Semantic Tableaux ] are my notes on them as part of a page on proof methods.

      2005-04-28 Thu Apr 28 09:04 Preparations medical and academic

      Drinking 8 glasses of water today so I can donate blood tomorrow.

      Also preparing for my seminar on changes in the UML: [ papers/20050502Abstract.html ] [ papers/20050502Body.html ] [ papers/20050502Outline.html ]

      2005-04-26 Tue Apr 26 13:04 Chapter in Published book

      It took a year, but I now have my copy of

      Yang05

      1. Hongji Yang (Editor)
      2. Software Evolution with UML and XML
      3. The Idea Group, Hershey PA & London UK 2005 ISBN 1-59140-462-2
      4. =COLLECTION XML UML EVOLUTION
      5. Includes [Botting05]

      Botting05

      1. Richard J Botting
      2. On the co-evolution of SSADM and the UML
      3. Chapter V in [Yang05] pp134-151
      4. =IDEA UML2.0 SSADM

      2005-04-25 Mon Apr 25 13:04 Changes to the UML

      Spent the week end on domestic things and working on a presentation of changes to the UML to be presented next Monday in the Math Seminar Room (10-11 + 11-12noon + lunch).

      Title: Changes in the Unified Modeling Language


        I will be presenting some of the most important changes that have happened to the Unified Modeling Language (UML) as it has moved from UML1.0 to UML2.0. Several older notations now have Unified forms. Many changes invalidate earlier diagrams. Using them could damage one's professional reputation. Some of the ongoing changes planned by the Object Management Group are targeted at changing the way software is developed by preparing standard & compilable models for common business needs . This will be a presentation about 50 minutes long starting at 10am. It will be suited for faculty, undergraduate, and graduate students.

        At 11, I plan to run a workshop/discussion for computer science graduate students and advisors on using the UML2.0 in SRSs, proposals, theses, and projects. I hope it will continue into the lunch that follows.


      2005-04-22 Fri Apr 22 09:04 Thinking about MATHS and UML 2.0

      I'm still thinking about the relationship between the logically clean Lower Predicate Calculus [ maths/logic_10_PC_LPC.html ] and the kind of complex multiverse that we seem to need to rescribe complex domains like inventory systems and animals.

      Also working at home (while the brakes a fixed on my car) on a seminar on changes to the UML and implications for documenting projects in the department.

      2005-04-18 Mon Apr 18 15:04 Seventeen new Bibliographic Items

      See my summary of 3 weeks reading [ newb2005/newb0415.html ] for papers that claim:
      • Selecting process changes on a basis of evidence not hype or hope.
      • How to write better web service standards
      • How small teams go wrong with the RUP
      • Successful projects do not always finish the requirments before they start coding, but the end up having defined all the requirements.
      • "ALL" is dangerous in all requirements and specifications.
      • Its good to use a workshop to trigger of process improvement.
      • Use virtual index cards to organize requirements.
      • Exceptions are not all handled by one component.
      • What the Spirit of RUP is.
      • What "Class Points" are.
      • The chance of failure increases as throughput gets bigger.
      • Etc.

      2005-04-18 Mon Apr 18 07:04 Repurposing this Weblog

      Since I've been diagnosed with prostate cancer my research productivity has dropped off. This will get worse until when they cut it out (May 23rd). Then I'll be offline for some weeks. Then this weblog should deo volante restart.

      2005-04-15 Fri Apr 15 07:04 Start of quarter and tax time

      Much preparation. teaching and admin plus working on Taxes. This was harder than usual because of an odd bug in the spread sheet I was using: Appleworks. When I opened two linked sheets at the same time both get corrupted. One changes so that it can not be read and the other develops the illusion that the corrupted one is open and needs saving for ever after.

      I shouldn't be surprised how much software I use is buggy. Hardly any of it has a proof that it works.

      Another distraction from research: I need to have my prostate removed. Should I choose the traditional manual approach or the new robotic surgery. All the data on the robot assisted operation cames from the people who are doing the operation. For me the key question is: do I trust the software?

      2005-04-01 Fri Apr 1 13:04 Interesting web sites...

      Spring break, ready for [ cs201/ ] and [ cs320/ ] and so reading and doing chores at home.

      Came into to the office submit a short comment to IEEE Trans Software Engineering about UML errors in a paper.

      Meanwhile here are two interesting views of software development [ http://www.softwarereality.com/ ] and [ http://www.developer.com/ ] that I found serendipidously. These are a reality check for researchers. I've been missing Usenet for a long while now and these might satisfy my craving for developer gossip.

      Meanwhile uploaded another half-a-dozen bibliographic items [ newb2004/newb0330.html ] mainly from hard core research journals like IEEE Transactions on Software Engineering, and the ACM Transaction on Software Engineering and Methodology. Here are some high points...

      • Some design patterns do not reduce design errors and so indicate the need for extra care.
      • Project estimation errors are never the fault of the person asked about them!
      • It is possible to automate much documentation.
      • Fast debuggers tend to be good debuggers because they use smart reading strategies... don't touch that scroll bar!
      • Tools to create CASE tools.

      2005-03-29 Tue Mar 29 07:03 Being scanned from UCLA

      Currently 3100 hits from UCLA.... a little behind the earlier 3300 hits from YAHOO.

      More later today (Inshallah/Deo Volante) when grades are submitted to admin and syllabi are being printed for the spring quarter.

      2005-03-24 Thu Mar 24 16:03 SIGCSE Paper published

      My presentation at SIGCSE has been published in the SIGCSE Bulletin: "Teaching and Learning Ethics in Computer Science: Walking the Walk", ACM SIGCSE Bulletin "Inroads" V37 n1 (Mar 2005) pp342-346.

      2005-03-22 Tue Mar 22 16:00 Syntax of PHP

      Paul Conrad, as part of an Graduate independent study has just presented his research into PHP as a set of web pages [ samples/php_intro.html ] prepared using my MATHS language and mth2html tool. This includes the only attempt at describing the syntax of PHP using an extended BNF on the web. Enjoy!

      2005-03-18 Fri Mar 18 11:03 And this just in: A Networks value is n*log(n)

      Interesting technical report on Metcalfe's law:
      (Metcalfe): For network n, value(n) = constant * square(size(n)),

      Argues for

    15. (network effect law): For network n, value(n) = constant * size(n)*log(size(n)),

      OdlyzkoTilly05

      1. Andrew Odlyzko & Benjamin Tilly
      2. A refutation of Metcalfe's Law and a better estimate for the value of networks and network interconnections
      3. Digital Technology Center, University of Minnesota 2005 [ metcalfe.pdf ]
      4. =THEORY ECONOMICS NETWORK VALUE n*log(n)

      2005-03-14 Mon Mar 14 15:03 Recent readings

      Just posted some citations of papers presented at SIGCSE plus some miscelaneous books and papers from CACM... [ newb2005/newb0312.html ] and [ newb2005/newb0314.html ]

      2005-03-10 Thu Mar 10 11:03 Review Published

      [ blog004.html#Wed Sep 29 17:17:13 PDT 2004 Submitted Review Chen vs SSADM experiment ]

      This review has been published in CR March 2005 issue, review # 0503-0361.

      2005-03-07 Mon Mar 7 09:03 Manny Lehman's Law Rules the Web

      Just a thought after a colleague spotted a hole in our department web site.... Manny Lehman's law states that the quality of data decays when it isn't used.

      Meanwhile some person or robot is clcking away at every link in one page.... thousands of them.... all weekend...

      2005-03-04 Fri Mar 4 12:03 Undergraduate Studies Agile Data Bases

      Paulo Laguna has just presented his paper on Agile Data Bases. See [ cs595/ ] for details.

      2005-02-28 Mon Feb 28 07:02 SIGCSE in St. Louis

      First a brilliant explanation of the true evil of computers: [ http://hamsterrepublic.com/james/technomancy/ ] (thank you Matt!).

      Spent Wednesday last week travelling to St. Louis MO, and Thursday thru Saturday at the ACM Special Interest Group in Computer Science Education [ http://www.ithaca.edu/sigcse2005/ ] annual conference. Jet travel is still the ultimate "hurry up and wait" process, only with decreasing perks in flight.

      I presented my own paper on teaching Ethics based on my experiences with CSci488 here at CSUSB in the Fall of 2003. I also presented a paper on the famous AlgorithmA project by Dr. Concepcion, Marc Bernstein, James MacDonald, and Kelly FitzGerald on CSci655. It was good to show the conference that ideas that others are just starting to apply and wondering how to extend have been used at CSUSB since 1991.

      One interesting paper showed how to manipulate a grammar so that it naturally reflected an object-orient structure. Something I've been doing intuitively and informally in CSci320 [ cs320/ ] for several years.

      I met with the Math Thinking [ http://www.math-in-cs.org/ ] group that I've been talking with via EMail for some years. Ifelt a bit of a heretic having been involved in developing a less mathematical BS degree in CSUSB. But also wondering about the possible mathematics underlying the Interaction Diagrams I'm teaching in [ cs375/ ] (Requirements Analysis).

      The other thing I came a way with is that the subject of Computer Science is know longer at the cutting edge. Nobody I talked with had seen any revolutionary ideas this year. Mordechai ben Ari made the case that our technology has not advanced much since Pascal and Simula [ concorde.pdf ] (PDF). He showed how Java takes over new ideas from the 1970's rather than adding any new ones -- including C's cryptic syntax:-) But he also argued that Jet Airplane technology has not changed much in the same period of time. In other words a series of incremental evoltionary steps. Now, one model of science postulates that science goes through "normal" phases when the current paradigm (ways of thought and procedures) is fixed and small "improvements" and adjustments are made, alternating with "revolutions" when the ways of thought and accepted procedures change drastically -- drastically enough that many can not adjust to the change. It appears that Computer Science is in a normal phase.

      Thought for the day: Perhaps the time is ready for a even bigger change than the introduction of objects.

      2005-02-17 Thu Feb 17 16:02 News from the Local Symphony

      [ symphony.press.txt.html ]

      2005-02-14 Mon Feb 14 16:02 Another batch of readings from FSE 2004

      A dozen of the most interesting papers from the latest Foundations of Software Engineering conference [ newb2005/newb0213.html ] plus a couple of wierd ones. Here are some key conclusions:
      1. The Weibull distribution seems to fit the occurence of errors during the life of a release. But doesn't predict future error patterns well. [ newb2005/newb0213.html#LiShawHerbslebRaySanthnanam04 ]
      2. Using interfaces hides information and this may not be 100% a good thing. [ newb2005/newb0213.html#SouzaRedmillesChengMillenPatterson04 ]
      3. Reusing code is unsafe because things change! Must keep and reuse the intent for the code... [ newb2005/newb0213.html#LevesonWeiss04 ]
      4. Niether Fetures nor aspects are the best thing: a combination works better. [ newb2005/newb0213.html#MaziniOsterman04 ]
      5. Static analysis tools are not good at detecting buffer overruns... [ newb2005/newb0213.html#ZitserLippmannLeek04 ]

      2005-02-11 Fri Feb 11 16:02 What IP addresses do the most searches here?

      Here are the top half a dozen IP addresses for searches to start from
      Table
      FrequencyIP#Comment
      11192128.119.246.74University of Massachusetts, USA
      5148148.81.130.62Warsaw Agricultural University, Poland
      439465.214.44.74UUNET Technologies, Inc., VA, USA
      149218.80.198.14Shanghai Telecommunication Wide-Frequency Network Co., Ltd., China
      13864.241.242.18SAVVIS Communications Corporation, MO, USA
      104207.46.98.76Microsoft Corp, Redmond, WA, USA

      (Close Table)

      2005-02-05 Sat Feb 5 08:02 Welcome to the University of Massachusetts

      At this time my site is being scanned from University Computing Services, Lederle Graduate Research Center, Amherst, MA.

      I hope they find it useful!

      2005-02-02 Wed Feb 2 08:02 More statistricks

      I've now modified the search tools to record the REMOTE_HOST number from where the search originates and would like to thank the person (or bot?) in Shanghai for 149 searches last night! I wish you well and hope that the information will help you.

      Here is a quick summary of the most popular searched in the last 2000:
      Table
      FreqFromScriptLooking for
      11newbibbibaAlencarCowanLucenaNova95
      7notn_14_Docn_SemanticsbibaWirsing90
      7?bibontolog
      6notn_9_TablesbibHeimdahlLeveson96
      5subjectsbibSADT
      5processesbibMooreJRada96
      5methodsbibaJackson95c
      5maths/lookupNATURAL NUMBERS
      5logic_9_ModalitiesbibFittingMendelsohn98
      5logic_9_ModalitiesbibFederetal94a
      5logic_8_Natural_LanguagebibaLeech 74
      5indexbibaArlowNeustadt04

      (Close Table)

      Myth, Metaphor, and Magic in Software Development

      Meanwhile, my reading into the dark side of software development. A fascinating anthropological paper surveyed 4 other papers studying various projects:

      HirschheimNewman91

      1. Rudy Hirschheim & Mike Newman
      2. Symbolism and Information System Development: Myth, Metaphor, and magic
      3. Information Systems Research V2n1(??? 1991) & [MyersAvisson02]
      4. Argues that information system development can not described as a rational (scientific, modern) endeavor and gives examples from 4 projects of Myths, Metaphors, and Magic (ritual).
      5. Distinguishes believers(faith overides events) from cynics( belief follows events)
      6. 6 myths: user involvement is good, resistance always happens and must be overcome, integration is good, system people know best, politics doesn't matter, top-down is good.
      7. 3 metaphors: it's a battle, the organization is divided into fiefdoms, people are machines.
      8. 3 magic rituals: involving the user, signing off, owning data.
      I wonder how many of the myths are still held to be true.

      2005-01-28 Fri Jan 28 15:01 Commonest search

      It turns out the commonest search is that 45 times in my 'samples' directory no search string was selected!

      I guess I should fix that somehow.

      Did it later that day...

      2005-01-28 Fri Jan 28 11:01 11 Machiavellian Readings

      Well Old Nicolai would grin to see some of these items. [ newb2005/newb0128.html ] For example, [Rost04] explains how stakeholders can sabotage a project and [Markus83] describes a particular case where central management tried gain some control over division management by implementing a new Financial Information System.... and met with resistance.

      Meanwhile one of my gurus [Jackson04] is writing about the importance of thinking about what happens outside the system you are designing to save lives and money.

      Two more papers [DrobkaNoftzRaghu04] and [MyersBANicholsWobbrockMiller04] are about the adoption of eXtreme Programming in large organizations. I'd like to gather better data about the impact that Agile Methods and the UML are having in the real world. While searching for this in the ACM Digital Library I found a good paper on how to use Use Cases better: [Chandrasekaran97]

      If you can offer me any reliable information on current practices, please EMail me using the link at the top of the page.

      2005-01-21 Fri Jan 21 17:01 Another Batch of Readings: blinding glimpses of the obvious

      Just uploading [ newb2005/newb0121.html ] which includes papers on the qualities of software are important [Voas04] , software changes the way things are done [Blood04] , good systems will be ignored if people don't want them [MalhotraGalletta04] , and hubristic engineers hatch disasters [Petroski04]. The rest of the batch has unexpected data.

      In the ACM Digital Library I found a good paper on how to use Use Cases better: [Chandrasekaran97]

      If you can offer me any reliable information on current practices, please EMail me using the link at the top of the page.

      2005-01-20 Thu Jan 20 15:01 Some Popular Pages to search from

      Here is some data from the last 10 or 11 days. This shows the page where people clicked to do a bibliographic search on my site. This only shows the 10 most common "clicks"
      Table
      FrequencyPageNote
      1333newbibCross reference in the biblography to another item [ newbib.html ] (LARGE)
      166subjectsPrepackaged subject searches [ subjects.html ]
      15200bCitations in a monograph on software develelopment [ monograph/ ]
      43bib(FORMAL)A generated page of links mentioning the word "formal" [ lab.html ]
      26logic_9_ModalitiesLinks on my notes of modal logics [ maths/logic_9_Modalities.html ]
      25blogFrom this very page itself
      14methodsFrom my page of methods (jokes and links) [ samples/methods.html ]
      13blog004A previous blog.
      1201_4Another part of the monograph [ monograph/ ]
      11bib(SamadzadehZand95)A generated page of links refering to this citation [ lab.html ]

      (Close Table)

      2005-01-19 Wed Jan 19 16:01 Incorporating Campus Logo into pages

      I've modified the script that generates the standard head for my pages to include the standard campus banner.

      2005-01-10 Mon Jan 10 08:01 898 seaches in 3 days

      In the last 3 days over 800 searches of my bibliography have been made! Here is a list of the page (if mine) from whence the search request was made
      Table
      FrequencyPage
      662newbib
      76bib
      47subjects
      2201_4
      13blog004
      5rjb9Xa.lift
      400b
      3logic_9_Modalities
      2newb0629
      2index
      201_2
      1uml4
      1newb0803
      1newb0619performance
      1methods
      1math_75_Programs
      1math_42_Numbers
      1math_24_Domains
      1logic_2_Proofs
      1languages.glossary
      1c.semantics
      1blog
      101_3

      (Close Table)
      And here is a list of the most requested blibliographic items
      Table
      FrequencyItem
      4CanevetGilmoreHillstonKloulStevens04
      4AlencarCowanLucenaNova95
      3WoodKleb03
      3UchitalKramerMagee03
      3UchitalKramerMagee02
      3SnoeckDedene98

      (Close Table)
      As in previously experiments very few searches are written by people. Most are following links to the search that I have provided.

      2005-01-07 Fri Jan 7 15:01 Started to monitor bibliographic searches again

      Now that I can send EMail from PHP.... I can restart my experiment of monitoring the kinds of things people search for in my bibliography as I did [ Sat Jul 5 08:01:37 PDT Common search topics in blog002 ] a couple of years ago.

      2005-01-07 Fri Jan 7 13:01 Experimental MailMe Link

      I've decided to program a simple link to a page that send me EMail. This is just the first iteration.

      "To iterate is human, to recurse, divine!"

      2005-01-07 Fri Jan 7 10:01 Change of date format

      I figure the above format might be more readable and also provide a better sort key for entries in future. Currently searches out all Friday entries together, a different format, generated by the Linux command:
       		date +"%F %a %b %e %H:%m"
      should list entries on a subject in order of posting.

      Note that I will not be changing previous entries retroactively, because they may have been used as links on pages that I do not own.

      Fri Jan 7 10:00:55 PST 2005 Editorial Policy

      This Blog is about my research on how soiftware is and should be developed. It will not have very much about my politics, religion, and personal life. I will even try to avoid my teaching... you can find blogs on my teaching this quarter at [ cs320/index.html ] (Programming Languages) and [ cs375/index.html ] (Requirements Analysis).

      I will be providing links to pages that I find interesting and relevant to software development and pointers to interesting reading... These links and citations get archived and can be searched elsewhere.

      You can search this blog (and everything else I put on this site) easily be following the link to [Search] at the top of the page.

      Thur Jan 6 Started Review of paper on approximate functional dependencies

      This is for CR. Interesting how [ShannonWeaver49] is still inspiring and relevant 55 years after it was written. Nothing is quite as useful as a good theory!

      Tue Jan 4 09:00:22 PST 2005 Prep and Polish

      Just visited the classrooms and labs I'll be using for teaching this quarter. The CSci labs are set up as I expected and I decided to add an extra optional exercise to the "Programming Languages" first laboratory [ 01.html ]

      The campus, however, has upgraded the OS in the so-called "Smart Classrooms" from Windoze97 to Windoze2000 and in the process removed the "Secure Shell" program we use to demonstrate programing languages: C++, Java, Prolog, LISP, and many others in CSci320. Our lab tech said he'd fix it. Why is it that upgrades are hardly ever unadulterated joy?

      That left me some time to add a feature to the tool that I use to generate web pages. So far it has not allowed relative URLs. So moving a set of linked pages would be a little painful... and a full path name like

       		.See http://www/dick/cs320/lab/01.cpp
      would be needed. The tool already replaces "//www/" by the internet name "csci.csusb.edu". Now, if the feature works, I can write
       		.See ./01.cpp
      inside a page with URL
       		http://csci.csusb.edu/dick/cs320/lab/01.cpp

      As a simple test here is a circular pointer [ blog.html ] back to this document, and one to the new local syllabus [ syllabus.html ] and to a course page [ cs320/ ] and finally back to the index for this site [ ../dick/ ]

      Mon Jan 3 08:25:04 PST 2005 Archived last Blog

      2005 was not a very exciting year and so the blog fitted into one page: [ blog004.html ] but worked on the final formatting for publication of a chapter in a book and a paper for a conference. I also collected some useful information about software development as it is and how it might be.

      Previous Blogs


      (December 2004): [ blog004.html ]
      (December 2003): [ blog003.html ]
      (July 2003): [ blog002.html ]
      (June 2003 and before): [ blog001.html ]

      Latest

      [ blog.html ]

      Glossary and Links

    16. bibliography::= See http://cse.csusb.edu/dick/newbib.html, (source [ newbib.mth ] ) a large collection of publications on software development. a place to search for data on my site. Now recovered from damage done in the latter half of 2003.
    17. languages::= See http://cse.csusb.edu/dick/samples/languages.html, information on computer languages.
    18. latest::= See http://csci.csusb.edu/dick/blog.html,

    19. MATHS::= See http://csci.csusb.edu/dick/maths/, a language for semiformal documentation including ontologies, logics, conceptual models, specifications, and algorithms that I also use for weblogs, essays, lecture notes, etc. etc.

    20. methods::= See http://cse.csusb.edu/dick/samples/methods.html, links and definitions about software development methods and processes, plus some jokes. Also see [ methods.glossary.html ] instead.
    21. monograph::= See http://cse.csusb.edu/dick/monograph, a study of software development methods 1940-1990 attempting to show how simple mathematics can remove many errors from software.

    22. papers::= See http://cse.csusb.edu/dick/papers, pre-publication drafts, local seminars, unpublished essays, etc..
    23. people::= See http://cse.csusb.edu/dick/samples/people.html,

    24. prostate::gland=`a walnut sized gland found in human males that has cells that have a tendency to turn cancerous as the male gets older`, see PSA.
    25. PSA::blood test=Prostate Antigen Test, the cells in the prostate generate a particular chemical in the blood and this test measures how much. High values (40+) show rapidly growing cancer. From my experience -- values like 5, 6, and 7 are a cause for concern .. but it all depends on age and whether heart disease or some other problem will get you first.

    26. samples::= See http://cse.csusb.edu/dick/samples/, samples of documents prepared using MATHS.
    27. se::= See http://cse.csusb.edu/dick/samples/se.html, links to things about software engineering and software development.
    28. source::= See http://cse.csusb.edu/dick/blog.mth, I use my own MATHS language to write these blogs.

    29. standards::= See http://cse.csusb.edu/dick/samples/standards.html,
    30. STANDARD::= See http://cse.csusb.edu/dick/maths/math_11_STANDARD.html, my personal standard definitions for MATHS.
    31. subjects::= See http://cse.csusb.edu/dick/samples/subjects.html,

    32. tools::= See http://cse.csusb.edu/dick/samples/tools.html,

    33. vita::= See http://cse.csusb.edu/dick/VITAble.html, [ short.vita ] (plain text).

    34. XBNF::=eXtreme Bachus Naur Form, a metalanguage based on EBNF that can handle some forms of context dependency in an intuitive way, as part of the MATHS language.

    35. Z::= See http://cse.csusb.edu/dick/samples/z.html, specification language.

    . . . . . . . . . ( end of section RJBottings Research Web Log) <<Contents | End>>

  1. CR::="Computer Reviews", [ http://www.reviews.com/ ] and [ browse_reviewers.cfm?reviewer_id=115728 ]

End