<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4752049099111806901</id><updated>2011-12-16T10:50:16.088-05:00</updated><category term='IBM'/><category term='SimpList'/><category term='IPT'/><category term='Cobol Programming'/><category term='FTP'/><category term='DB2'/><category term='politics'/><category term='programming'/><category term='family'/><category term='SPIFFY'/><category term='internet'/><category term='history'/><category term='ISPF'/><category term='IMS'/><category term='humour'/><category term='design'/><category term='performance'/><category term='RDz'/><category term='testing'/><title type='text'>Working title</title><subtitle type='html'>Comments on Work, technology and life</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>64</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2694767883818874074</id><published>2011-12-16T10:38:00.000-05:00</published><updated>2011-12-16T10:38:15.467-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Boss talk</title><content type='html'>What he says: "How is it going?"&lt;br /&gt;What he means: "Why aren't you finished yet?"&lt;br /&gt;&lt;br /&gt;What he says: "This is a challenging task."&lt;br /&gt;What he means: "I don't know how to do it either."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2694767883818874074?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2694767883818874074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/12/boss-talk.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2694767883818874074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2694767883818874074'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/12/boss-talk.html' title='Boss talk'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-7046903119522245369</id><published>2011-06-29T18:47:00.001-04:00</published><updated>2011-06-29T18:50:05.688-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Artifacts</title><content type='html'>I have to fight to suppress a smile whenever I hear people talk about the "artifacts" that have to be produced as part of any modern systems development methodology. &amp;nbsp;As far as I can tell, the term "artifact" has replaced the more descriptive "deliverable", but that's not what I find amusing.&lt;br /&gt;&lt;br /&gt;To me the word "artifact" has always meant something like: "An man-made object of historical or scientific value that has no practical use." &amp;nbsp;Or, in another sense, "data corruption produced by an error in the process that measures the data". &amp;nbsp;To those of us in the trenches who are required to create "artifacts" in addition to executable code, both of these definitions seem apt.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-7046903119522245369?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/7046903119522245369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/06/artifacts.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7046903119522245369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7046903119522245369'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/06/artifacts.html' title='Artifacts'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-6886305090528188066</id><published>2011-06-29T18:38:00.001-04:00</published><updated>2011-06-29T18:39:00.174-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Ergonomic impact of full screen debugging tools</title><content type='html'>Speaking of RDz, as I was in my last post, full screen debugging tools can have an unexpected ergonomic impact, at least on my decrepit old frame. &lt;br /&gt;&lt;br /&gt;When writing code, launching and monitoring batch jobs, or testing an online screen the old fashioned way, I tend to sit back in my chair in a fairly relaxed posture. &amp;nbsp;Debugging interactively, whether using RDz or another tool, tends to change that. &amp;nbsp;I lean forward in my chair intently focused on the screen in front of me as I watch the code execute. &amp;nbsp; &amp;nbsp;I feel poised, ready to pounce when the next breakpoint comes up or when the execution flow appears to go awry. &lt;br /&gt;&lt;br /&gt;All this is good fun (&lt;a href="http://donleahy.blogspot.com/2010/11/i-love-bugs.html"&gt;I love debugging&lt;/a&gt;), but it gets physically wearisome when you do it continuously for 8 hours or so.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-6886305090528188066?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/6886305090528188066/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/06/ergonomic-impact-of-full-screen.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6886305090528188066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6886305090528188066'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/06/ergonomic-impact-of-full-screen.html' title='Ergonomic impact of full screen debugging tools'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-3899255404545281053</id><published>2011-06-29T18:21:00.002-04:00</published><updated>2011-06-29T18:24:33.805-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='RDz'/><title type='text'>Cruelty to Mainframers</title><content type='html'>&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: inherit;"&gt;Was IBM deliberately cruel to us old mainframers&amp;nbsp;when they designed RDz?&amp;nbsp; Why else would they assign F8 to "Run until next breakpoint"?&amp;nbsp; I cannot tell you how many RDz debugging sessions I've ruined by hitting F8 in the source window when all I meant to do was&amp;nbsp;scroll down.&amp;nbsp;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-3899255404545281053?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/3899255404545281053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/06/cruelty-to-mainframers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/3899255404545281053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/3899255404545281053'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/06/cruelty-to-mainframers.html' title='Cruelty to Mainframers'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8678312048339434275</id><published>2011-05-30T17:32:00.000-04:00</published><updated>2011-05-30T17:32:56.294-04:00</updated><title type='text'>Social media inside the company firewall</title><content type='html'>After the first kneejerk reaction to ban social media sites from the workplace, companies are now beginning to explore ways to exploit them. &amp;nbsp;In some quarters social&amp;nbsp;media&amp;nbsp;are touted as a way to spur productivity by encouraging employees to share ideas. &lt;br /&gt;&lt;br /&gt;I have a few concerns about this trend.&lt;br /&gt;&lt;br /&gt;1. &amp;nbsp;It is based on the perhaps dubious assumption that 1000 average people are wiser than one wise man. &lt;br /&gt;2.&amp;nbsp; In any group collaboration only a few voices will be heard. &amp;nbsp;Ask anyone who's been on a committee and they will tell you that a vocal minority tends to dominate.&lt;br /&gt;3. &amp;nbsp;The Man is watching. &amp;nbsp;Will people be willing to put forward unconventional ideas knowing that the Boss is watching? &amp;nbsp;No one wants to look stupid, so the less confident individuals will hold their peace.&lt;br /&gt;&lt;br /&gt;It will be interesting to see how it plays out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8678312048339434275?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8678312048339434275/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/05/social-media-inside-company-firewall.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8678312048339434275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8678312048339434275'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/05/social-media-inside-company-firewall.html' title='Social media inside the company firewall'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5897440650833029292</id><published>2011-04-02T17:27:00.000-04:00</published><updated>2011-04-02T17:27:59.263-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'></title><content type='html'>&lt;span class="Apple-style-span" style="line-height: 14px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;I live in Canada, and I have a question for my fellow Canadians. With people all over the world dying in the streets for the right to vote why do less than 60% of us bother to show up at the polls? &amp;nbsp;&lt;a href="http://www.elections.ca/content.aspx?section=ele&amp;amp;dir=turn&amp;amp;document=index&amp;amp;lang=e"&gt;The numbers are truly dismaying.&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="line-height: 14px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="line-height: 14px;"&gt;Honour their sacrifice by voting on May 2. &amp;nbsp;It's more than a right, it's a duty. &amp;nbsp;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5897440650833029292?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5897440650833029292/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/04/i-live-in-canada-and-i-have-question.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5897440650833029292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5897440650833029292'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/04/i-live-in-canada-and-i-have-question.html' title=''/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-7758771310261969207</id><published>2011-02-18T17:29:00.001-05:00</published><updated>2011-06-29T18:25:51.160-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><title type='text'>Down with periods!</title><content type='html'>&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: inherit;"&gt;I still see recently written Cobol programs where the author uses a period after virtually every Procedure Division statement.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: inherit;"&gt;I find this puzzling. &amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse;"&gt;The introduction of END-IF over 20 years ago has made periods unnecessary in the Procedure Division except for the end of a paragraph and paragraph names. &amp;nbsp;When maintaining a period-infested program I like to remove all unnecessary periods in the paragraph I am working on.&amp;nbsp; If I have time, I change the &lt;i&gt;necessary&lt;/i&gt; periods to END-IF and NEXT SENTENCE to CONTINUE. &amp;nbsp;If you are careful, there is very little risk in doing this, and you will leave the program a little better than you found it. &amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse;"&gt;&lt;a href="http://donleahy.blogspot.com/2009/12/maintenance-make-it-right.html"&gt;Make it Right!&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-7758771310261969207?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/7758771310261969207/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/02/down-with-periods.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7758771310261969207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7758771310261969207'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/02/down-with-periods.html' title='Down with periods!'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2110422950253998499</id><published>2011-01-20T22:14:00.004-05:00</published><updated>2011-01-21T06:26:24.609-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><title type='text'>Rant: Cobol line numbers</title><content type='html'>Why on God's green earth do so many programmers continue to use sequence numbers in their Cobol programs?&lt;br /&gt;&lt;br /&gt;Come on guys, when was the last time you even &lt;i&gt;saw &lt;/i&gt;a card deck, never mind dropped one?&lt;br /&gt;&lt;br /&gt;Ditto for the numbers in columns 73-80. &amp;nbsp;If you have a source management system, you don't need to use these numbers to track changes, the source manager will do it for you. &amp;nbsp;If you don't have a source management system, a source comparison tool (SUPERC works just fine, and it's free with ISPF) will tell you all you need to know.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2110422950253998499?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2110422950253998499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/01/rant-cobol-line-numbers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2110422950253998499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2110422950253998499'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/01/rant-cobol-line-numbers.html' title='Rant: Cobol line numbers'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-7195647583793527688</id><published>2011-01-18T20:26:00.002-05:00</published><updated>2011-01-19T07:36:10.985-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Modern banking</title><content type='html'>I was in the car with my son when he reminded me that he needed some money for school. With a theatrical flourish I whipped out my Blackberry and transferred the funds right on the spot using my bank's app. (Don't worry, he was the one driving).&lt;br /&gt;&lt;br /&gt;He was suitably impressed. So am I... when I started my career you had to plan your whole day around getting to the bank before the branch closed. We have indeed come a long way.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-7195647583793527688?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/7195647583793527688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/01/modern-banking.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7195647583793527688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7195647583793527688'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/01/modern-banking.html' title='Modern banking'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-355768787831322757</id><published>2011-01-15T01:27:00.006-05:00</published><updated>2011-01-15T01:27:00.127-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IMS'/><title type='text'>Mixed case on MFS screens</title><content type='html'>There is no reason why MFS literals cannot be in mixed case. &amp;nbsp;Try it. &amp;nbsp;You will be surprised at how much this small change improves a screen's readability. &amp;nbsp; Your users will see it as a more "modern" look and will sing your praises. &lt;br /&gt;&lt;br /&gt;Handling mixed case &lt;b&gt;data &lt;/b&gt;is another story, but using mixed case MFS literals is a no-brainer. &amp;nbsp;(You don't have to tell your users that part).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-355768787831322757?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/355768787831322757/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/01/mixed-case-on-mfs-screens.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/355768787831322757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/355768787831322757'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/01/mixed-case-on-mfs-screens.html' title='Mixed case on MFS screens'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5168535673923466221</id><published>2011-01-13T18:00:00.022-05:00</published><updated>2011-01-31T12:17:48.070-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ISPF'/><title type='text'>ISPF rants</title><content type='html'>Here is a list of a few of the things that bug me about working with ISPF on the mainframe:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;People who haven't used a new ISPF feature since 3.4 came out. &amp;nbsp;Come on guys, it's been 20 years!&lt;/li&gt;&lt;li&gt;People who don't use Edit HILITE command. &amp;nbsp;Yes, green is a lovely colour, but it is surprising how much more productive you are when your source code is intelligently colour coded. &amp;nbsp;You'll never forget an END-IF again.&lt;/li&gt;&lt;li&gt;People who are still using 24x80 to do everything. &amp;nbsp;No wonder people think that the mainframe sucks!&lt;/li&gt;&lt;li&gt;Vendor panels that don't support large screen sizes.&lt;/li&gt;&lt;li&gt;People who use Extra!'s default colour scheme. &amp;nbsp;Yecchh!!&lt;/li&gt;&lt;li&gt;Companies that force you to use inferior emulators because that's the one they've always used. &amp;nbsp;There are many excellent and inexpensive emulators out there. &amp;nbsp;&lt;a href="http://www.tombrennansoftware.com/"&gt;Vista 3270 for example.&lt;/a&gt;&lt;/li&gt;&lt;li&gt;People who don't know about the Edit COMPARE command and still do their code retrofits manually.&lt;/li&gt;&lt;li&gt;Systems programmers who fail to activate SITECMDS and USERCMDS.&lt;/li&gt;&lt;li&gt;Systems programmers who fail to include new products on the local panels. &amp;nbsp;I hate having to remember startup commands.&lt;/li&gt;&lt;li&gt;Panels with the command line at the bottom.&lt;/li&gt;&lt;li&gt;Dialog Tag Language. &amp;nbsp;A solution in search of a problem.&lt;/li&gt;&lt;li&gt;Local ISPF panels that point to obsolete products and functions. &amp;nbsp;&lt;/li&gt;&lt;li&gt;Non-modifiable KEYLISTs. &amp;nbsp;The "P" in PFK stands for "Programmable", dammit, so let me program my function keys!!&lt;/li&gt;&lt;li&gt;Missing HELP panels. &amp;nbsp;ISPF has a lot of very nice features to help the dialog developer create context-sensitive help dialogs. &amp;nbsp;Why aren't they used more often?&lt;/li&gt;&lt;li&gt;Panels that are all in CAPITALS. &amp;nbsp;Why do so many panels SHOUT at me?&lt;/li&gt;&lt;li&gt;People who don't know how to use the HELP key.&lt;/li&gt;&lt;li&gt;Dialog programmers who don't know how to use the MODEL command.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5168535673923466221?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5168535673923466221/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/01/ispf-rants_13.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5168535673923466221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5168535673923466221'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/01/ispf-rants_13.html' title='ISPF rants'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8973554096504944912</id><published>2011-01-13T17:00:00.006-05:00</published><updated>2011-02-13T21:43:29.684-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><title type='text'>5 more ways to start a war on a mainframe forum</title><content type='html'>&lt;ol&gt;&lt;li&gt;Say something positive about Windows.&lt;/li&gt;&lt;li&gt;Declare that the 'frame is dead and squatty boxen rule. &amp;nbsp;Don't forget the "boxen" part.&lt;/li&gt;&lt;li&gt;Opine that RAS is overrated; the future belongs to Wintel because it's cheaper.&lt;/li&gt;&lt;li&gt;Brag about how long you've been in the computer business. &amp;nbsp;Even if you worked on ENIAC someone will claim to have worked with Ada and Babbage.&lt;/li&gt;&lt;li&gt;Mention Hercules.&amp;nbsp;&lt;/li&gt;&lt;/ol&gt;&lt;a href="http://donleahy.blogspot.com/2010/01/5-ways-to-start-war-on-mainframe-forum.html"&gt;5 ways to start a war on a mainframe forum&lt;/a&gt;&lt;br /&gt;&lt;ol&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8973554096504944912?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8973554096504944912/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/01/5-more-ways-to-start-war-on-mainframe.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8973554096504944912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8973554096504944912'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/01/5-more-ways-to-start-war-on-mainframe.html' title='5 more ways to start a war on a mainframe forum'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8267318094160894134</id><published>2011-01-08T16:18:00.002-05:00</published><updated>2011-01-11T10:01:46.526-05:00</updated><title type='text'>Attack of the turbines</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Lucida, sans-serif; font-style: italic; font-variant: small-caps; font-weight: 800;"&gt;&lt;a href="http://imgs.xkcd.com/comics/alternative_energy_revolution.jpg"&gt;This is the funniest cartoon I have seen in a while.&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;a href="http://xkcd.com/844/"&gt;This one's good too.&lt;/a&gt;&amp;nbsp;(thanks Terry).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8267318094160894134?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8267318094160894134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/01/attack-of-turbines.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8267318094160894134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8267318094160894134'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/01/attack-of-turbines.html' title='Attack of the turbines'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-318879599576732166</id><published>2011-01-05T20:15:00.001-05:00</published><updated>2011-01-07T08:30:37.083-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Too cool for the room?</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 15px;"&gt;Santa brought me an iPad for christmas. Does that make me one of the 'cool crowd'?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 15px;"&gt;&lt;span class="remaining-body" style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-family: inherit; font-size: 12px; font-style: inherit; font-weight: inherit; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;&lt;br /&gt;Not according to my eldest son: "Dad, it'll take a lot more than an iPad to do that".&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 15px;"&gt;&lt;span class="remaining-body" style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-family: inherit; font-size: 12px; font-style: inherit; font-weight: inherit; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 15px;"&gt;Perhaps so, but I am having a lot of fun playing with my shiny new toy. &amp;nbsp;I've never owned a laptop (though &amp;nbsp;everyone else in the family has one) and until recently my smart phone wasn't very smart because I was too cheap to pay for a data plan. &amp;nbsp;I am a late-comer to the portable computing party.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-318879599576732166?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/318879599576732166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2011/01/too-cool-for-room.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/318879599576732166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/318879599576732166'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2011/01/too-cool-for-room.html' title='Too cool for the room?'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-6708501960438127708</id><published>2010-11-25T18:18:00.002-05:00</published><updated>2010-11-25T18:18:00.763-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Down in the Dumps</title><content type='html'>I found myself with some spare cycles at work the other day, so I spent some time reading a few dumps created by our online production regions.&lt;br /&gt;&lt;br /&gt;Does that make me weird?&lt;br /&gt;&lt;br /&gt;There was a time that I found dumps to be both tedious and intimidating, but modern dump formatters have made it much easier to figure out what happened. For example, except in very rare cases, a Cobol programmer reading a dump no longer needs to know the register contents or indeed, what a register &lt;i&gt;is&lt;/i&gt;. &amp;nbsp;Nor does the programmer have to know how to determine the instruction in error or how to find the program's BLW and BLL cells. &amp;nbsp;The dump formatter lays it all out for you. &lt;br /&gt;&lt;br /&gt;I must hasten to add that interpreting a dump is still a challenging intellectual exercise because you need the ability to understand the application logic and have enough imagination to figure out how your data got into the state it is in. &amp;nbsp;In many cases you also require an intimate understanding of how your application interacts with its execution environment.&lt;br /&gt;&lt;br /&gt;Thanks to the dump formatter, it only took me a few hours to diagnose a handful of problems that were responsible for about half of the abends in our application's online regions. &amp;nbsp; Were it not for the formatter, I probably would not have volunteered for the job.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-6708501960438127708?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/6708501960438127708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2010/11/down-in-dumps.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6708501960438127708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6708501960438127708'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2010/11/down-in-dumps.html' title='Down in the Dumps'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2538491466226530575</id><published>2010-11-17T23:15:00.001-05:00</published><updated>2010-11-26T07:35:05.176-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>The Project</title><content type='html'>My wife and I both work in the IT business, so we sometimes tend to view things through the lens of our profession. &lt;br /&gt;&lt;br /&gt;When our first child was born, we referred to him as "the Project". &amp;nbsp;The objective of this multi-year&amp;nbsp;endeavor&amp;nbsp;was to raise a fully functional human being and good citizen who would eventually become a middle class taxpayer. &amp;nbsp;Is that not the duty of every parent?&lt;br /&gt;&lt;br /&gt;Less than two years later we were affected by "scope creep" when our second child came along. &amp;nbsp;As Bill Cosby once said, you do not become a real parent until you have more than one child. &amp;nbsp;"Why? &amp;nbsp;Because if you have only one child, and something is broken in your house, you &lt;i&gt;know &lt;/i&gt;who did it!"&lt;br /&gt;&lt;br /&gt;Additional funding was not forthcoming as a result of this change. &amp;nbsp;We found the money by reducing other expenses such as dining out, exotic vacations, and by eliminating most adult social activities. &lt;br /&gt;&lt;br /&gt;Current Status: &amp;nbsp;Green. &amp;nbsp;We anticipate a +15% variance due to unplanned educational expenses.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2538491466226530575?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2538491466226530575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2010/11/project.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2538491466226530575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2538491466226530575'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2010/11/project.html' title='The Project'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5105931399464314291</id><published>2010-11-12T08:35:00.003-05:00</published><updated>2010-11-26T07:27:34.840-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>RUT?</title><content type='html'>Like many parents, I used to cluck disapprovingly when I saw the silly short forms and tangled syntax used by my kids as they chatted with their friends. &amp;nbsp;"What a waste of time!" I thought. But I never hassled them about it because I knew there were much worse things that they could have been doing on the Internet. &amp;nbsp;And besides, if they didn't have chat they'd be tying up my phone line or running up their cell phone bills.&lt;br /&gt;&lt;br /&gt;I had zero (0) interest in using chat for myself. &amp;nbsp;After all, grown ups communicate in full sentences and we try to get our spelling and grammar correct. &amp;nbsp;(With varying degrees of success, as any reader of this blog can attest).&lt;br /&gt;&lt;br /&gt;Email is a much more refined method of communication; it is both fast and thoughtful. &amp;nbsp;I've been using it for many years, even in prehistoric times when the corporate email system ran on an IBM mainframe. &amp;nbsp;I am no Luddite pining for the days of typed memoranda* and carbon paper. &amp;nbsp;I was quite happy when all of that stuff moved into the electronic age. &lt;br /&gt;&lt;br /&gt;But chat was for kids. &amp;nbsp;It was easy to avoid; every company I worked for forbade the use of chat anyway.&lt;br /&gt;&lt;br /&gt;I recently joined a company that not only allows chat, it encourages you to use it to talk to co-workers. &amp;nbsp;At first I ignored it, figuring that the only reason they allowed chat was to allow &amp;nbsp;the under-30 crowd to coordinate their lunch plans. &amp;nbsp;Or perhaps to save money on phone expenses for its geographically dispersed work force.&lt;br /&gt;&lt;br /&gt;What I didn't realize is how productive chat can be when you are closely collaborating with others on a complex task. &amp;nbsp;Chat eliminates a lot of phone calls and greatly reduces the amount of shouting over cubicle walls in the office. &amp;nbsp;And, if you can't remember what somebody said 10 minutes ago, you can look it up.&lt;br /&gt;&lt;br /&gt;Call me a convert. &amp;nbsp;(It's okay, I've been called far worse).&lt;br /&gt;&lt;br /&gt;* This word is so outdated that my spell checker flags it as an error.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5105931399464314291?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5105931399464314291/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2010/11/rut.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5105931399464314291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5105931399464314291'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2010/11/rut.html' title='RUT?'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2151726367595040917</id><published>2010-11-11T21:26:00.001-05:00</published><updated>2010-11-11T21:27:53.521-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>I love bugs</title><content type='html'>Like most programmers, every now and then one of my programs works correctly the first time. &amp;nbsp;Most programmers are thrilled when that happens. &amp;nbsp;Personally, I feel a pang of regret.&lt;br /&gt;&lt;br /&gt;Hunting for bugs is what I like best about this business. &amp;nbsp;To me, a perfectly working program may be admirable, but it's &lt;i&gt;boring.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2151726367595040917?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2151726367595040917/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2010/11/i-love-bugs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2151726367595040917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2151726367595040917'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2010/11/i-love-bugs.html' title='I love bugs'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-4656037827663297979</id><published>2010-08-25T17:35:00.001-04:00</published><updated>2010-08-27T08:37:57.702-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><title type='text'>The mainframe strikes back</title><content type='html'>I attended an interesting IBM presentation today on the topic of zIIPs, zAAPs and IFLs. &lt;br /&gt;&lt;br /&gt;These specialty z processors are designed to support "new" workloads that were formerly the domain of Java, Linux, and *ix. &amp;nbsp;After spending the past two decades losing workloads to the other platforms, the mainframe is finally* winning some of it back. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*Actually these processors have been around for the past decade or so, so it's not that recent a development.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-4656037827663297979?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/4656037827663297979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2010/08/mainframe-strikes-back.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/4656037827663297979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/4656037827663297979'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2010/08/mainframe-strikes-back.html' title='The mainframe strikes back'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2171151111665302740</id><published>2010-08-19T18:48:00.001-04:00</published><updated>2010-09-02T13:05:20.709-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='history'/><title type='text'>Nostalgia: program flow charts</title><content type='html'>Junior programmers were once required to produce a flow chart of their program before beginning to code.&amp;nbsp; They were told that it would help them work out their logic so that their coding and testing would go more smoothly. &lt;br /&gt;&lt;br /&gt;I think it was a scam.&lt;br /&gt;&lt;br /&gt;The real purpose of a&amp;nbsp; Program flow-chart was to slow down the coding process in order to ease the workload of the keypunch department. &lt;br /&gt;&lt;br /&gt;Full disclosure: &amp;nbsp;When I started my career there was no keypunch department where I worked. &amp;nbsp;We shared terminals; one for every two people. &amp;nbsp;Yes kiddies, I said &lt;b&gt;terminals &lt;/b&gt;not PCs emulating terminals.&lt;br /&gt;&lt;br /&gt;Those were &lt;b&gt;not &lt;/b&gt;the good old days.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2171151111665302740?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2171151111665302740/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/nostalgia-program-flow-charts.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2171151111665302740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2171151111665302740'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/nostalgia-program-flow-charts.html' title='Nostalgia: program flow charts'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-995044665065719628</id><published>2010-08-19T17:48:00.001-04:00</published><updated>2010-08-19T18:59:34.766-04:00</updated><title type='text'>Checkpoint</title><content type='html'>You may have noticed that I haven't posted anything since January 2010. &amp;nbsp;There is no deep dark reason for this; just the usual combination of laziness and busy-ness. &lt;br /&gt;&lt;br /&gt;Most of the posts prior to this point represent a collection of stuff that I've posted on the Internet over the past several years. &amp;nbsp;A "best of" collection, I suppose.&lt;br /&gt;&lt;br /&gt;I've recently started a new job, and that is always a good way to find some inspiration. &lt;br /&gt;&lt;br /&gt;In my first IT job, I was well indoctrinated (brainwashed) in the procedures and processes demanded by that company. &amp;nbsp;The procedure and processes were (mostly) reasonable, and what the hell, I didn't know any better anyway. &lt;br /&gt;&lt;br /&gt;The problem came on my second career stop. &amp;nbsp;I thought the new shop was idiotic for doing things differently than my old one. &amp;nbsp;It was quite an adjustment, but eventually I realized that there were some interesting ideas there that I have since incorporated into my own work.&lt;br /&gt;&lt;br /&gt;Now, many years later, I find myself back at the original company, older, wiser, and with a broader perspective. &amp;nbsp;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-995044665065719628?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/995044665065719628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2010/08/checkpoint.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/995044665065719628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/995044665065719628'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2010/08/checkpoint.html' title='Checkpoint'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-1393543227300607642</id><published>2010-01-15T10:18:00.003-05:00</published><updated>2011-02-13T21:41:57.500-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><title type='text'>5 ways to  start a war on a mainframe forum</title><content type='html'>&lt;ol&gt;&lt;li&gt;Use the acronym "USS" to refer to z/OS Unix features.&lt;/li&gt;&lt;li&gt;Propose the elimination of the 100 byte limit on PARM length in JCL.&lt;/li&gt;&lt;li&gt;Complain about the limitations on the use of System Symbols in JCL.&lt;/li&gt;&lt;li&gt;In a COBOL forum, declare that coding is Paragraphs is better than coding in Sections.&amp;nbsp;&amp;nbsp; Or vice-versa.&lt;/li&gt;&lt;li&gt;Praise Oracle on a DB2 forum.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;a href="http://donleahy.blogspot.com/2011/01/5-more-ways-to-start-war-on-mainframe.html"&gt;5 more ways to start a war on a mainframe forum&lt;/a&gt;&lt;br /&gt;&lt;ol&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-1393543227300607642?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/1393543227300607642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2010/01/5-ways-to-start-war-on-mainframe-forum.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1393543227300607642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1393543227300607642'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2010/01/5-ways-to-start-war-on-mainframe-forum.html' title='5 ways to  start a war on a mainframe forum'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-1002793254316784709</id><published>2009-12-15T17:24:00.004-05:00</published><updated>2009-12-18T09:10:08.671-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Uninitialized storage (2)</title><content type='html'>It is generally a Very Bad Idea to make any assumptions about the contents of &lt;a href="http://donleahy.blogspot.com/2009/11/uninitialized-storage.html"&gt;uninitialized storage&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;What might work today may fail miserably tomorrow, without warning and without apparent cause.&lt;br /&gt;&lt;br /&gt;If you care about it, then initialize it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-1002793254316784709?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/1002793254316784709/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/uninitialized-storage.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1002793254316784709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1002793254316784709'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/uninitialized-storage.html' title='Uninitialized storage (2)'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-3203202435894949635</id><published>2009-12-15T07:35:00.001-05:00</published><updated>2009-12-15T09:45:38.891-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Application entropy</title><content type='html'>If you wait long enough, people will start treating a bug as a feature.&amp;nbsp; Then you can't fix it because you'll break their application.&amp;nbsp; Sigh.&amp;nbsp; I have seen this type of application entropy many times.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-3203202435894949635?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/3203202435894949635/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/application-entropy.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/3203202435894949635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/3203202435894949635'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/application-entropy.html' title='Application entropy'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-4423312988108395761</id><published>2009-12-14T19:37:00.004-05:00</published><updated>2009-12-14T20:59:35.765-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><title type='text'>Business programmers</title><content type='html'>At the risk of stating the obvious, COBOL programmers work in a business environment, and in that environment people are rewarded more for their business acumen than their facility with nested IF statements. If you can charm the user and convince him that you understand his needs and that you know how to meet them, then it doesn't matter if you go back to your desk and write crappy code.&amp;nbsp; As long as you deliver something that more-or-less works in a more-or-less timely manner, you will be well regarded and rewarded.&lt;br /&gt;&lt;br /&gt;Many (perhaps most) programmers in a business environment are not there for the long haul.&amp;nbsp; Programming is merely a phase they have to go through at the entry level.&lt;br /&gt;&lt;br /&gt;Business programmers fall into the following groups:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Managers in waiting.&amp;nbsp; To this group, programming is just a step on the career ladder.&amp;nbsp; This is a large group (maybe 25%).&amp;nbsp; This group cares little about the code they develop, other than it meets company standards and is delivered on time.&lt;/li&gt;&lt;li&gt;Business analysts in training.&amp;nbsp; This group cares more about the company's business than about the programs that support it.&amp;nbsp; This is the largest group,&amp;nbsp; and they eventually abandon programming to become full-time business analysts or end users (about 50%).&amp;nbsp;&amp;nbsp; This group regards programming as utter drudgery, and tend to delegate it to junior team members whenever they can..&lt;/li&gt;&lt;li&gt;Clerks in training.&amp;nbsp; This group does what they're told to do, no more no less.&amp;nbsp;&amp;nbsp; A smaller group (about 15%).&amp;nbsp; This group is capable of producing good code, if they're given detailed specifications and good sample code to work from.&lt;/li&gt;&lt;li&gt;Technicians.&amp;nbsp; This group see programming as a profession (or at least a skilled trade) that they can take pride in.&amp;nbsp;&amp;nbsp; A small group (10%), they tend not to care much about the business they are supporting.&amp;nbsp; Even though they work with COBOL and can use it creatively, many of them have bought into the myth that it is a Creaky Obsolescent Boring Old Language and yearn to move on to other technologies.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-4423312988108395761?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/4423312988108395761/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/business-programmers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/4423312988108395761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/4423312988108395761'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/business-programmers.html' title='Business programmers'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-200327854618688688</id><published>2009-12-14T14:50:00.000-05:00</published><updated>2009-12-14T15:25:30.225-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SimpList'/><category scheme='http://www.blogger.com/atom/ns#' term='ISPF'/><title type='text'>ISPF productivity</title><content type='html'>I love ISPF, I really do.&amp;nbsp; The Editor in particular is a brilliant piece of work, and in my opinion represents the gold standard for text-based editors.&amp;nbsp; ISPF also provides a very rich API so those that are conversant with ISPF dialog progamming can create useful and sometimes very complex applications. Yeah, those applications are text-based, but since most mainframe programming is done in a text-based world that doesn't matter.&lt;br /&gt;&lt;br /&gt;I have written many such applications, and truth be told, it's a lot more fun to write ISPF Dialogs than to write Cobol code. &amp;nbsp; &lt;br /&gt;&lt;br /&gt;Still, ISPF has its shortcomings.&amp;nbsp; The product uses hierarchical menus that require skill and experience to navigate.&amp;nbsp; To be sure, there are many short cuts, but it takes time to learn them.&amp;nbsp; Also, it does not provide a convenient mechanism for organizing the myriad of data sets, DB2 tables, IMS data bases and TSO commands that the programmer has to cope with every day.&lt;br /&gt;&lt;br /&gt;I once wrote an ISPF Dialog application that helped me manage all of that stuff, and I was amazed how much time you could save if you aren't constantly searching for half-remembered data set names.&amp;nbsp;&amp;nbsp; I've used such a tool for many years now, but more recently I've been relying on a commercial product called &lt;a href="http://www.mackinney.com/products/program-development/simplist.html"&gt;Simplist&lt;/a&gt;, which is way better than anything I've been able to write for myself. It's not free, but it's not expensive either.&amp;nbsp; &lt;a href="http://www.soft-center.com/NaspaSimpListReview.pdf"&gt;I highly recommend it.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Don't believe me?&amp;nbsp; &lt;a href="http://www.soft-center.com/NaspaSimpListReview2.pdf"&gt;This guy likes it too&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Disclaimer: I have written about SimpList on several occasions.&amp;nbsp; I would like to point out that I have no financial interest in SimpList or any other commercial software product.&amp;nbsp; My opinion is that of an experienced mainframe developer and consultant, not a product shill.&amp;nbsp; My product review was originally published in &lt;a href="http://www.naspa.com/"&gt;Technical Support&lt;/a&gt;, the official journal of the Network and Systems Professionals Association (NaSPA).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-200327854618688688?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/200327854618688688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/ispf-productivity.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/200327854618688688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/200327854618688688'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/ispf-productivity.html' title='ISPF productivity'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-1160304343940748086</id><published>2009-12-14T08:55:00.000-05:00</published><updated>2009-12-14T09:03:16.977-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Some recent Dilberts</title><content type='html'>Like many in the IT business, I am a big fan of Dilbert, not just because it's funny, but because it sometimes hits close to home.&lt;br /&gt;&lt;br /&gt;Here are a couple of recent strips that I've enjoyed:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dilbert.com/strips/comic/2009-12-07/"&gt;Guesstimating&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.dilbert.com/strips/comic/2009-12-12/"&gt;&lt;br /&gt;Skills utilization&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-1160304343940748086?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/1160304343940748086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/some-recent-dilberts.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1160304343940748086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1160304343940748086'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/some-recent-dilberts.html' title='Some recent Dilberts'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-7796444426285937081</id><published>2009-12-12T21:27:00.000-05:00</published><updated>2009-12-15T09:28:54.206-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='ISPF'/><title type='text'>ISPF weirdness</title><content type='html'>It's not a bad idea to add an explanatory line near the top of each scrollable HELP panel:&lt;br /&gt;&lt;br /&gt;"Press LEFT and RIGHT to scroll up and down"&lt;br /&gt;&lt;br /&gt;Or, depending on your audience:&lt;br /&gt;&lt;br /&gt;"Press LEFT and RIGHT to scroll up and down.   No, I am not kidding."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-7796444426285937081?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/7796444426285937081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/ispf-weirdness.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7796444426285937081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7796444426285937081'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/ispf-weirdness.html' title='ISPF weirdness'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-1817628434221236445</id><published>2009-12-03T19:23:00.003-05:00</published><updated>2009-12-18T09:12:58.411-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><title type='text'>Risk-averse programming</title><content type='html'>In my experience,&amp;nbsp; there are a lot of COBOL programmers who don't give a damn about programming either as an art form or as scientific discipline (take your pick).&amp;nbsp; They spend their days attending endless meetings with business users trying to tease out system requirements from endless discussions that go round and round forever....&amp;nbsp;&amp;nbsp; At the end of&amp;nbsp; each day, they don't sign on to comp.lang.cobol to debate the merits of Sections vs Paragraphs.&amp;nbsp; To them, programming is a just a chore that they have to do in order to get the end result the user wants.&lt;br /&gt;&lt;br /&gt;Generally, business programmers are given the following objectives from their manager (in order of importance):&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Don't screw up&lt;/li&gt;&lt;li&gt;Deliver it on time&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Deliver what the user wants&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;From the users, they get the following objectives:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Don't screw up&lt;/li&gt;&lt;li&gt;Deliver what I want&lt;/li&gt;&lt;li&gt;Deliver it on time&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;I think this breeds a very conservative, risk-averse programmer, for whom avoidance of error is the primary concern.&amp;nbsp; Don't tell him/her about EVALUATE, he/she &lt;i&gt;knows &lt;/i&gt;that nested IFs work.&amp;nbsp;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-1817628434221236445?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/1817628434221236445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/risk-averse-programming.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1817628434221236445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1817628434221236445'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/risk-averse-programming.html' title='Risk-averse programming'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5385787089190545570</id><published>2009-12-03T14:20:00.000-05:00</published><updated>2009-12-03T14:25:10.813-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><title type='text'>Victorian Internet</title><content type='html'>There are some fascinating &lt;a href="http://tinyurl.com/y87b5ws"&gt;parallels between the 19th century telegraph system and the 21st century Internet.&lt;/a&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5385787089190545570?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5385787089190545570/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/victorian-internet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5385787089190545570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5385787089190545570'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/victorian-internet.html' title='Victorian Internet'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-6247396667732266420</id><published>2009-12-02T10:15:00.000-05:00</published><updated>2009-12-03T08:48:28.103-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Rules for young drivers</title><content type='html'>Ontario has a graduated licensing system.  The initial stage is G1, where the new driver must be accompanied by fully licensed driver.  G2 is the next level, where the driver is allowed most of the privileges of a fully licensed driver, with some restrictions.&lt;br /&gt;&lt;br /&gt;We've had two sons go through this process, and I'd like to share some of the rules that we imposed, above and beyond what the law says.&lt;br /&gt;&lt;br /&gt;&lt;style&gt;&lt;/style&gt;  &lt;div&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Here are Mom and Dad's G2 rules:&lt;/span&gt;&lt;/div&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;No solo highway driving  (ie freeways and other major highways)   &lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;No solo night driving (not very practical in the  winter, but workable in the summer.  We eased this restriction after a month or  two)&lt;/span&gt;  &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;No passengers other than family members and a few  trusted friends.  In the case of trusted friends, only one of them at a  time.&lt;/span&gt;  &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The 'Trusted friends list' is subject to parental approval.    &lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;All passengers MUST WEAR SEAT BELTS.  No excuses, no  exceptions.  Anyone who refuses to co-operate must be refused a ride, and will  be dropped from the 'trusted friends' list.&lt;/span&gt;  &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Passengers must also have 0% blood alcohol.  A  young G2 driver is not ready to be a designated driver.    &lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Never, ever, take the car without permission.&lt;/span&gt;   &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;We reserve the right to veto time, destination, and  passengers.&lt;/span&gt;  &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;You will run errands when requested.  This includes  driving siblings and getting gas.  &lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;At our discretion, you will check in with us when  you arrive at your destination.  (This is a good time to get him a cell phone,  if he doesn't already have one)&lt;/span&gt;  &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Any ticket, no matter how trivial, will result in  the suspension of driving privileges.  No excuses, no exceptions, no appeal.   &lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Ditto for accidents.  (We never had to put this  one to the test...thank goodness.  This may seem unreasonable, but the rule  reminds them that they have had defensive driving training and should know how  to avoid accidents, even if they technically are not at fault.)&lt;/span&gt;  &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;No eating or drinking while driving.  Young drivers  need to pay attention to the road at all times.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;No cell phone usage while driving.  (Now illegal in Ontario).  &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt; &lt;div&gt;&lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-6247396667732266420?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/6247396667732266420/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/rules-for-young-drivers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6247396667732266420'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6247396667732266420'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/rules-for-young-drivers.html' title='Rules for young drivers'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5587980823148249710</id><published>2009-12-02T09:56:00.000-05:00</published><updated>2009-12-02T10:11:44.518-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Maintenance: Make it Right!</title><content type='html'>When faced with doing program maintenance, my personal philosophy is to try to leave the code a little better than I found it.&lt;br /&gt;&lt;br /&gt;This goes beyond merely making the requested changes.   Maintenance is a good time to beef up the program comments, untangle twisted logic (be careful with that one!)  and change cryptic paragraph and variable names.&lt;br /&gt;&lt;br /&gt;And, most importantly, take the time to review the error and exception handling.  If inadequate, don't just ignore it and move on, make it right!*&lt;br /&gt;&lt;br /&gt;A wise man once said to me: "Don't tell me how it works, tell me how it &lt;span style="font-style: italic;"&gt;fails&lt;/span&gt;."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;* Apologies to Mike Holmes&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5587980823148249710?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5587980823148249710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/12/maintenance-make-it-right.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5587980823148249710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5587980823148249710'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/12/maintenance-make-it-right.html' title='Maintenance: Make it Right!'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-1214392789241304470</id><published>2009-11-30T10:23:00.000-05:00</published><updated>2009-11-30T10:33:41.831-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>RTFM</title><content type='html'>Although the acronym "RTFM" may be of (relatively) recent origin, the issue that prompted its creation goes back many years.&lt;br /&gt;&lt;br /&gt;Back in the olden days when all manuals were on hard copy only, many programmers were too lazy to walk to the rack and look up the information for themselves. They would show up at my desk, demanding that I help them solve their problem.&lt;br /&gt;&lt;br /&gt;Being young and anxious to show off my recently acquired knowledge, I would give them the answer and then try to explain the reasoning process that I went through to get there. It was at that point their eyes would start to &lt;span class="highlight"&gt;glaze&lt;/span&gt; &lt;span class="highlight"&gt;over&lt;/span&gt;, and I could tell they didn't &lt;i&gt;want &lt;/i&gt;to learn anything...they just wanted to get past an obstacle so that they could finish their task.&lt;br /&gt;&lt;br /&gt;What has changed since those days? Nowadays, with email and the Internet, you don't get to actually &lt;i&gt;see &lt;/i&gt;their eyes &lt;span class="highlight"&gt;glaze&lt;/span&gt; &lt;span class="highlight"&gt;over&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-1214392789241304470?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/1214392789241304470/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/rtfm.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1214392789241304470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1214392789241304470'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/rtfm.html' title='RTFM'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-605875519534283402</id><published>2009-11-27T21:13:00.001-05:00</published><updated>2010-11-11T21:38:46.329-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='history'/><title type='text'>You can't do that with SQL</title><content type='html'>A long time ago I led a DB2 pilot project for one of IBM's earliest DB2 customers in Canada.  By default, that made me one of the most experienced DB2 users, outside of IBM, in the country.&lt;br /&gt;&lt;br /&gt;It wasn't long before it all went to my head, and I found myself making authoritative pronouncements on all things DB2 related.   Why not?  I was qualified; I had a whole 3 months of DB2 experience to draw on.&lt;br /&gt;&lt;br /&gt;One of the challenges was learning how to use SQL when our only reference materials came from a 5 day IBM course.  As you might expect, we ran into one obstacle after another.  And it wasn't just SQL, we had to figure out how to Bind PLANs (there were no Packages in those days) and how to set up and use a DB2 test environment.&lt;br /&gt;&lt;br /&gt;My programmers would ask me for advice on how to code an SQL statement and most of the time I could help them, but once in a while I had to declare: "You can't do that with SQL."  I was the DB2 ghuru after all, so if I couldn't figure out how to do it, then obviously it was impossible.&lt;br /&gt;&lt;br /&gt;Well, there was this very bright young trainee who,  after hearing me say "You can't do that with SQL", came back 30 minutes later with an SQL statement that did exactly what I said couldn't be done.  &lt;br /&gt;&lt;br /&gt;I took it with good humour, not at all irritated to be corrected by a mere trainee.  (Well, not for the first few times anyway).  It eventually became a sort of game: every time I used the words "can't" and "SQL" in the same sentence, he would (almost) always prove me wrong.&lt;br /&gt;&lt;br /&gt;That was an important lesson for me: whenever you think you're the smartest guy in the room, take another look, you may have missed someone.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-605875519534283402?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/605875519534283402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/you-cant-do-that-with-sql.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/605875519534283402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/605875519534283402'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/you-cant-do-that-with-sql.html' title='You can&apos;t do that with SQL'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5054102665339987323</id><published>2009-11-27T21:03:00.001-05:00</published><updated>2011-01-13T10:41:40.074-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>HELP</title><content type='html'>If I had a nickel for every time I've seen a blank look after asking "Did you try the HELP key?", I could have retired years ago.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5054102665339987323?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5054102665339987323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/help.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5054102665339987323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5054102665339987323'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/help.html' title='HELP'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-6652176847949365440</id><published>2009-11-27T20:54:00.000-05:00</published><updated>2009-12-14T14:35:20.540-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Debugging tools and oncall support</title><content type='html'>Debugging tools can require a fair amount of effort to set up, which sometimes earns them the reputation of being a waste of time.  "Just put a DISPLAY message in the code, for God's sake!"says the project leader whose programming days are long behind him.&lt;br /&gt;&lt;br /&gt;If a debugging tool is seen as a "waste of time" it is usually because the installation hasn't put enough effort into tailoring it for local use.&lt;br /&gt;&lt;br /&gt;When we installed IBM Debug Tool in our shop, we altered all of our standard compile procs to support the TEST option and to link in the CEEUOPT module when needed.  All the programmer has to do is select the TEST option on a panel and provide the VTAM LU of his debug terminal.&lt;br /&gt;&lt;br /&gt;We never use the IBM supplied ISPF dialog to set up our debug sessions.  I am not knocking IBM, but their dialog, of necessity, has to be generic, and like all generic tools requires a fair amount of effort to use.  (This is where the "waste of time" perception comes into play).&lt;br /&gt;&lt;br /&gt;We also provided each developer with a private DB2 data base for unit testing/debugging, and developed some in house tools to help them maintain them.  This addresses data base contention concerns cause by people sitting at a breakpoint.&lt;br /&gt;&lt;br /&gt;Finally, we renovated our once rarely used BTS environment to accommodate all of these changes.&lt;br /&gt;&lt;br /&gt;It is the programmer who puts Display messages in the code that is "wasting time".&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Having said that, a well-placed Display message is a useful thing to have in a production program when it blows up in the middle of the night. &lt;br /&gt;&lt;br /&gt;After copying the data to a test environment, recompiling the program with TEST options turned on, you &lt;span style="font-style: italic;"&gt;may &lt;/span&gt;be able to re-create the problem using a debugging tool.  Of course, by then the batch window will be long over and you'll be too busy updating your resume to care about the problem any more. &lt;br /&gt;&lt;br /&gt;On call support is &lt;span style="font-style: italic; font-weight: bold;"&gt;not &lt;/span&gt;the time to exercise your debugging skills.  Finding the logic error and fixing the program is #4 on my list of priorities at a time like this.&lt;br /&gt;&lt;br /&gt;1.  Bypass the failing job.&lt;br /&gt;2.  Bypass the failing step and proceed with the rest of the job.&lt;br /&gt;3.  Pull record from input file or take some other action to bypass the problem record. &lt;br /&gt;4.  Fix the offending program.&lt;br /&gt;5.  Recover the data base and abandon the entire batch run.   Update resume.&lt;br /&gt;&lt;br /&gt;A well chosen DISPLAY message can make #3 very easy to do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-6652176847949365440?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/6652176847949365440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/debugging-tools.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6652176847949365440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6652176847949365440'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/debugging-tools.html' title='Debugging tools and oncall support'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8435747920408476927</id><published>2009-11-27T20:39:00.000-05:00</published><updated>2009-11-27T22:47:57.504-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>RTFC</title><content type='html'>Why do some programmers prefer to spend hours yakking about what a program might be doing, or what it ought to be doing, rather than actually reading the code?  I may be old-fashioned, but I think that it is the programmer's job to RTFC.  Many of them ("us", actually, since I still do a lot of programming) are too lazy, especially if the code in question was written by someone else.&lt;br /&gt;&lt;br /&gt;I think that is why some systems programmers seek  to induce fear in the hearts of application programmers.  I used to think that this was merely a form of torture for the sysprog's amusement, but I believe this is actually a type of training.&lt;br /&gt;&lt;br /&gt;The sysprog's hope is that if he consistently ridicules them for asking stupid questions, eventually the questions will get better.  Maybe even to the point that the programmer will start to RTFC (and RTFM!) before asking for help.   A forlorn hope perhaps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8435747920408476927?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8435747920408476927/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/rtfc.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8435747920408476927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8435747920408476927'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/rtfc.html' title='RTFC'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5782766544784977562</id><published>2009-11-27T20:21:00.000-05:00</published><updated>2009-11-27T22:23:46.525-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Clockwise?</title><content type='html'>I remember when I first taught my son how to use a wrench.  I had to explain to him the difference between "clockwise" and "counter-clockwise".  It was not obvious to him because of digital clocks.&lt;br /&gt;&lt;br /&gt;He must have understood the lesson because he is an engineer now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5782766544784977562?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5782766544784977562/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/clockwise.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5782766544784977562'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5782766544784977562'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/clockwise.html' title='Clockwise?'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-436034037124378077</id><published>2009-11-27T20:16:00.000-05:00</published><updated>2009-11-27T23:19:39.854-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><title type='text'>Buffer this!</title><content type='html'>A learned colleague of mine coded a process that attempted to access the &lt;span style="font-style: italic;"&gt;same row&lt;/span&gt; on a DB2 table 375 million times per run. (It was a code lookup).   When I pointed this out he dismissed my advice by insisting that it didn't matter because the data would be sitting in a DB2 buffer anyway so there would be no I/O cost. &lt;br /&gt;&lt;br /&gt;What he didn't reckon on was the CPU path length of the DB2 SELECT statement he was using.   It is a long way from Cobol to DB2 and back again even when DB2 doesn't do any I/O.   When we changed the process to use an in-core table, the CPU usage dropped from several hours to several minutes.&lt;br /&gt;&lt;br /&gt;The moral is: sometimes a &lt;span style="font-style: italic; font-weight: bold;"&gt;little &lt;/span&gt;knowledge is more dangerous than no knowledge at all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-436034037124378077?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/436034037124378077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/buffer-this.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/436034037124378077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/436034037124378077'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/buffer-this.html' title='Buffer this!'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-7686564157917774599</id><published>2009-11-27T19:36:00.000-05:00</published><updated>2009-11-27T22:39:47.135-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Who do you believe, the programmer or the code?</title><content type='html'>When asking for advice,  Programmers will tell you what they coded, but what they &lt;span style="font-weight: bold;"&gt;really&lt;/span&gt; mean is:&lt;br /&gt;&lt;br /&gt;"This is what I &lt;span style="font-weight: bold; font-style: italic;"&gt;think&lt;/span&gt; I coded"  or  "This is what I &lt;span style="font-style: italic; font-weight: bold;"&gt;meant&lt;/span&gt; to code".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;RTFC&lt;/span&gt; is the only way to be sure.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-7686564157917774599?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/7686564157917774599/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/who-do-you-believe-programmer-or-code.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7686564157917774599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7686564157917774599'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/who-do-you-believe-programmer-or-code.html' title='Who do you believe, the programmer or the code?'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2144470809014115499</id><published>2009-11-27T19:30:00.000-05:00</published><updated>2009-11-27T22:33:11.888-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Another reason not to share your password</title><content type='html'>When I was a junior programmer I was loaned out to another project for half a day.  The PL didn't want to bother setting up my RACF access for such a short assignment, so he just gave me his password (which was against the rules, even in those days) and let me use his TSO userid.&lt;br /&gt;&lt;br /&gt;The PL had PFK10 set up as CANCEL.  This screwed me up because my own userid had PFK10 set up as SAVE.  After losing several rounds of changes by hitting CANCEL when I meant SAVE, I changed the PL's PFK10 setting to match the one I was accustomed to.&lt;br /&gt;&lt;br /&gt;This would have been fine except that I forgot to change it back again when I finished using his userid.&lt;br /&gt;&lt;br /&gt;I heard some colourful language the next day when the PL SAVE'd some changes he'd meant to CANCEL. &lt;br /&gt;&lt;br /&gt;He couldn't very well report me to Security, since he shouldn't have let me use his userid in the first place.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2144470809014115499?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2144470809014115499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/another-reason-not-to-share-your.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2144470809014115499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2144470809014115499'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/another-reason-not-to-share-your.html' title='Another reason not to share your password'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-7021559042688640788</id><published>2009-11-27T19:27:00.000-05:00</published><updated>2009-11-27T22:34:14.195-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Practical jokes on the 'frame</title><content type='html'>I know  'someone' who once wrote a clist that displayed an exact replica of the TSO logon screen that was in use at the time.&lt;br /&gt;&lt;br /&gt;The clist was named after a commonly used local function, so when the poor victim used it, he would think that he'd been booted off the system.   He'd scratch his head, and try to log on again, but the "logon" screen would ignore his password.   It was programmed to unlock itself after about 10 attempts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-7021559042688640788?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/7021559042688640788/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/practical-jokes-on-frame.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7021559042688640788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7021559042688640788'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/practical-jokes-on-frame.html' title='Practical jokes on the &apos;frame'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2555622261966962432</id><published>2009-11-27T17:23:00.002-05:00</published><updated>2009-12-18T09:08:26.301-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><category scheme='http://www.blogger.com/atom/ns#' term='IMS'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Uninitialized storage (1)</title><content type='html'>&lt;a href="http://donleahy.blogspot.com/2009/12/uninitialized-storage.html"&gt;Assumptions about the state of uninitialized storage can bite the best of us&lt;/a&gt;.  Last year we ran into a problem with the Cobol code generated by the SQL Coprocessor using Enterprise Cobol 3.3 under DB2 V8.&lt;br /&gt;&lt;br /&gt;In the SQL---PLIST it was generating the following FILLER area:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;02 SQL---STMT-NUM    PIC S9(9) COMP-5.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt; 02 FILLER            PIC X(20).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Apparently the FILLER area is used by DB2 to store some bit switches and its logic assumes that initially the FILLER contains x'00'. *Usually* this is true, but we ran into some very weird application abends in a production IMS MPR.&lt;br /&gt;&lt;br /&gt;It turned out that we were a bit behind in our Cobol maintenance. After the maintenance was applied the generated code changed to:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;02 SQL---STMT-NUM    PIC S9(9) COMP-5.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt; 02 FILLER            PIC X(20) VALUE IS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;     X'0000000000000000000000000000000000000000.&lt;/span&gt;&lt;br /&gt;&lt;div class="ii gt" id=":1s0"&gt;&lt;br /&gt;In my experience this is one of the very few times which a programmer's protest that "It's not my fault!" turned out to be true.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2555622261966962432?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2555622261966962432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/uninitialized-storage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2555622261966962432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2555622261966962432'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/uninitialized-storage.html' title='Uninitialized storage (1)'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-1483829740430760498</id><published>2009-11-27T17:12:00.001-05:00</published><updated>2010-11-18T11:31:41.763-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Masking test data</title><content type='html'>Many organizations demand that all identifying personal information be scrambled when a copy of production data is used for system testing.  The idea is to limit the damage if the data is accidentally released to the outside world.  Printing a test version of a client statement that accidentally gets routed to the mail room, for example.&lt;br /&gt;&lt;br /&gt;As we found out a couple of years ago, masking can bite you in ways that you might not expect.&lt;br /&gt;&lt;br /&gt;We were testing a new release of a recently developed system using data where the client's name was scrambled to a bunch of random characters.  The testing went smoothly, and the new release went into production.&lt;br /&gt;&lt;br /&gt;It was not until we were running in production that we realized that one of the screens was transposing the client's first name and surname on the data base.  The error had gone unnoticed by the programmer and the testing / QA teams simply because the scrambled names lacked the visual cues that made the problem obvious once real names were used.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-1483829740430760498?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/1483829740430760498/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/masking-test-data.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1483829740430760498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1483829740430760498'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/masking-test-data.html' title='Masking test data'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2258051681406195439</id><published>2009-11-27T15:51:00.000-05:00</published><updated>2009-11-27T22:10:22.661-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><title type='text'>Field Name Prefix on DCLGEN command</title><content type='html'>I strongly advise using the "Field Name Prefix" feature of the DCLGEN command.  This causes each Cobol field in the DCLGEN to have the same prefix.  This makes coding much easier, as it can eliminate the need to code Cobol "OF"s when referring to a field.&lt;br /&gt;&lt;br /&gt;How many of your tables contain an account number field?  A good many of them, probably.   It is easier to code&lt;br /&gt;&lt;br /&gt;MOVE WS-TEMP-ACCT-NUM   TO  VIFCACCT-ACCT-NUM&lt;br /&gt;&lt;br /&gt;than&lt;br /&gt;&lt;br /&gt;MOVE WS-TEMP-ACCT-NUM    TO ACCT-NUM OF ACCT-TABLE.&lt;br /&gt;&lt;br /&gt;Using prefixes, the programmer can tell at a glance which ACCT-NUM is being referred to.&lt;br /&gt;&lt;br /&gt;The prefix name should be related to the table name.  Our shop adopted a procedure in which we establish an 8 character 'short name' for each table.  The short name is used as the prefix name, and is also used to build the table space name.&lt;br /&gt;&lt;br /&gt;I feel so strongly about this that, years ago, before DCLGEN even had a "Field Name Prefix" feature, I wrote an edit macro that added a field name prefix to the DCLGEN output.  It is still in use today.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2258051681406195439?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2258051681406195439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/field-name-prefix-on-dclgen-command.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2258051681406195439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2258051681406195439'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/field-name-prefix-on-dclgen-command.html' title='Field Name Prefix on DCLGEN command'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2515118728557945155</id><published>2009-11-27T15:38:00.000-05:00</published><updated>2009-11-27T22:12:51.710-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='ISPF'/><title type='text'>ISPF survey</title><content type='html'>Asked on ISPF-L:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Who uses the panels you develop and support?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Other programmers, mostly.&lt;div class="im"&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Do you continue to create new panels or is your panel library fairly&lt;/span&gt;&lt;span style="font-style: italic;"&gt; static?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; I create new ones on a regular basis.&lt;div class="im"&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Are you a private company or a government agency?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; I am a self-employed consultant, currently working for a government agency.&lt;div class="im"&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Is there any other product you use to generate panels in ISPF?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; No.  I have never felt the need for one.&lt;div class="im"&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Do you think it wise to migrate to DTL or would that be akin to walking to&lt;/span&gt; &lt;span style="font-style: italic;"&gt;the edge of mount doom with my precious?&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;No.  I would rather put my command line at the bottom of the screen than use DTL.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2515118728557945155?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2515118728557945155/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/ispf-survey.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2515118728557945155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2515118728557945155'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/ispf-survey.html' title='ISPF survey'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-1657935204750846406</id><published>2009-11-26T23:12:00.002-05:00</published><updated>2010-11-18T11:20:25.664-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='history'/><title type='text'>Advice</title><content type='html'>Here is a list of some dubious career advice that I've been given over the years.  The degree of dubiousness varies.&lt;br /&gt;&lt;br /&gt;1981 : "Stay away from COBOL...it's a dead language."&lt;br /&gt;&lt;br /&gt;1982:  "Structured analysis, structured design, structured code...everything else is crap"&lt;br /&gt;&lt;br /&gt;1983:  "There won't be any more batch processing within 5 years, everything will be online"&lt;br /&gt;&lt;br /&gt;1984:  "Find another line of work.  4GLs will make programmers obsolete."&lt;br /&gt;&lt;br /&gt;1985:  "What, you're still using VSAM?  Get a database!"&lt;br /&gt;&lt;br /&gt;1986:  "Hierarchical data bases are obsolete.  If you're not relational, you're not in the game!"&lt;br /&gt;&lt;br /&gt;1987:  "*Still* using COBOL?  You dumb #$@!"&lt;br /&gt;&lt;br /&gt;1988:  "CASE tools will solve the application backlog"&lt;br /&gt;&lt;br /&gt;1989:  "Code reuse will solve the application backlog"&lt;br /&gt;&lt;br /&gt;1990:  "Forget CASE tools.  Desktop development is much faster!"&lt;br /&gt;&lt;br /&gt;1991:  "The mainframe is dead.  Go client server"&lt;br /&gt;&lt;br /&gt;1992:  "Find another line of work.  Overseas outsourcing will put you out of a job"&lt;br /&gt;&lt;br /&gt;1993:  "OO analysis, design and development will solve the application backlog"&lt;br /&gt;&lt;br /&gt;1994:  "What? You're still using IMS??"&lt;br /&gt;&lt;br /&gt;1995:  "Forget Cobol.  Learn C".&lt;br /&gt;&lt;br /&gt;1996:  "Forget C.  Learn C++".&lt;br /&gt;&lt;br /&gt;1997:  "Y2K will be the end of the world as we know it"&lt;br /&gt;&lt;br /&gt;1998:  "Okay, maybe COBOL isn't dead....but it &lt;i&gt;will &lt;/i&gt;be after Y2K is finished"&lt;br /&gt;&lt;br /&gt;1999:  "All future application development will be in JAVA"&lt;br /&gt;&lt;br /&gt;2000:  "The mainframe is the best platform for e-business"&lt;br /&gt;&lt;br /&gt;2001-present:  I stopped listening to advice.  :-)&lt;br /&gt;&lt;br /&gt;The jury is still out on some of these items.....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-1657935204750846406?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/1657935204750846406/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/advice.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1657935204750846406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1657935204750846406'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/advice.html' title='Advice'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-7052782336014657076</id><published>2009-11-17T19:13:00.001-05:00</published><updated>2009-12-16T10:36:24.686-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><title type='text'>Whose default is it? (sorry)</title><content type='html'>The LE run time parameter CBLQDA can bite the unwary.&amp;nbsp; It doesn't help that IBM has changed the default value over the years.&amp;nbsp; I was just recently able to convince our local sysprogs to change it to OFF.&amp;nbsp; Their first reaction was that there had been no change, that the system had always behaved that way, and OFF was the default.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;The story I heard was that IBM originally delivered CBLQDA(ON) as the default, with a recommendation to turn it OFF.&amp;nbsp; This was to comply with some ANSI COBOL standard.&amp;nbsp; Our local sysprogs accepted IBM's recommendation and set it to OFF.&amp;nbsp; A few years later, IBM changed the default to 'OFF'.&amp;nbsp; The local sysprogs knew that in the past they didn't use the default value, so, by reflex, they switched it to 'ON'.&amp;nbsp; And for a long time no one complained.&lt;br /&gt;&lt;br /&gt;(For those not intimately familiar with IBM's Language Environment, the CBLQDA setting controls the behaviour of COBOL programs that fail to assign a dd name to an output file.&amp;nbsp; CBLQDA(OFF) means that an error is thrown, CBLQDA(ON) means that the problem is ignored.)&lt;br /&gt;&lt;br /&gt;I was remined of this when I was approached by a desperate colleague who had been banging his head against the wall for two days, trying to figure out why, no matter what he did, his output file remained empty.&amp;nbsp; He could see the EXCP counts, so he knew data was being written &lt;i&gt;somewhere&lt;/i&gt;.&amp;nbsp; It turned out he had a misspelled ddname, and because CBLQDA(ON) was in effect, z/OS was writing to output to an uncataloged temporary file instead of the one that was intended.&lt;br /&gt;&lt;br /&gt;Ouch.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-7052782336014657076?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/7052782336014657076/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/whose-default-is-it-sorry.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7052782336014657076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/7052782336014657076'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/whose-default-is-it-sorry.html' title='Whose default is it? (sorry)'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-2987187264651104433</id><published>2009-11-14T18:59:00.000-05:00</published><updated>2009-12-14T19:05:09.638-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><title type='text'>Standards are forever</title><content type='html'>I am presently working at a shop where static linked modules are the standard practice. Much to my dismay, convincing them to change to DYNAM is proving to be more difficult than I expected.&amp;nbsp; Change is a constant in this business, except where Standards are concerned.&lt;br /&gt;&lt;br /&gt;Fortunately, the chief defender of the standard retired recently, so there is now some hope that it will change.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-2987187264651104433?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/2987187264651104433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/standards-are-forever.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2987187264651104433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/2987187264651104433'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/standards-are-forever.html' title='Standards are forever'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-1748294942901284153</id><published>2009-11-06T14:23:00.001-05:00</published><updated>2009-12-18T08:58:32.764-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Oops!</title><content type='html'>So what is a mere developer to do when he catches his DBA or sysprog in an error? &lt;br /&gt;&lt;ol style="list-style-type: decimal;"&gt;&lt;li&gt;Mercilessly mock him.  It's payback time baby!  Or,&lt;/li&gt;&lt;li&gt;Tell the sysprog that it is all your fault, that you should have known the answer yourself. Apologize for wasting his time. Or,&lt;/li&gt;&lt;li&gt;Express your astonishment that the laws of physics were changed in the last release, and there is no way on earth that &lt;b&gt;anyone &lt;/b&gt;could have known the answer.  Or,&lt;/li&gt;&lt;li&gt;Take him out for a beer.  With any luck, he'll offer to pay for it.  This time.  The other 99% of the time the beer is on you.&lt;/li&gt;&lt;/ol&gt;Do I need to tell you what the best option is?&lt;br /&gt;&lt;br /&gt;Disclaimer:  this post is an attempt at humour.  Some of my best friends are DBAs and systems programmers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-1748294942901284153?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/1748294942901284153/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/so-what-is-mere-developer-to-do-when-he.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1748294942901284153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/1748294942901284153'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/so-what-is-mere-developer-to-do-when-he.html' title='Oops!'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-9109743038671889110</id><published>2009-11-06T13:58:00.000-05:00</published><updated>2009-12-14T09:47:04.582-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><title type='text'>SDLC: system testing</title><content type='html'>You won't find these in any methodology textbook.  Here are the 10 stages of system testing:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Unwarranted optimism:  "Everything will be fine....it says so in the Plan"&lt;/li&gt;&lt;li&gt;Denial:  "It must have worked...look at the results again"&lt;/li&gt;&lt;li&gt;Bewilderment:  "What do you mean, it didn't work?"&lt;/li&gt;&lt;li&gt;Confusion: "That didn't work either!?"&lt;/li&gt;&lt;li&gt;Panic: "Nothing is working!!!"&lt;/li&gt;&lt;li&gt;Despair: "We're doomed...nothing will ever work"&lt;/li&gt;&lt;li&gt;Desperation: "Maybe if we call it an 'original bug' no one will blame us!"&lt;/li&gt;&lt;li&gt;Bargaining: "Maybe if we defer some more requirements to phase 2 we can get this phase finished"&lt;/li&gt;&lt;li&gt;Hope:  "It's working now?"&lt;/li&gt;&lt;li&gt;Smugness:  "I told you it would work.  Just like we Planned it."&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;What stage is &lt;span style="font-style: italic;"&gt;your &lt;/span&gt;project in?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-9109743038671889110?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/9109743038671889110/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/sdlc-system-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/9109743038671889110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/9109743038671889110'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/sdlc-system-testing.html' title='SDLC: system testing'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8354146567525740840</id><published>2009-11-06T13:57:00.000-05:00</published><updated>2009-12-14T09:47:41.495-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><title type='text'>SDLC: Production support</title><content type='html'>Ah, the forgotten phase of every project.  Production Support never gets the respect that it deserves.  It too goes though phases:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Disbelief: "But it worked during UAT!"&lt;/li&gt;&lt;li&gt;Denial:  "It must be an implementation problem...not our fault"&lt;/li&gt;&lt;li&gt;Dodging:  "Prod support can deal with it".  And now the Prod support team takes a look at it...&lt;/li&gt;&lt;li&gt;Anger: "Those idiots on the project team couldn't have tested this"&lt;/li&gt;&lt;li&gt;Confusion: "What the hell &lt;span style="font-style: italic;"&gt;is&lt;/span&gt; this anyway?"&lt;/li&gt;&lt;li&gt;Dismay: "Oh crap....there's no way that we can fix this"&lt;/li&gt;&lt;li&gt;Bargaining: "Wait a minute...isn't it still under Warranty?"&lt;/li&gt;&lt;li&gt;Glee: "It's screwed up, and it's not *our* fault!"  Now it is sent back to the Project team....&lt;/li&gt;&lt;li&gt;Disgust: "Those idiots in Prod support couldn't find their butts with both hands"&lt;/li&gt;&lt;li&gt;...there is no end to this list&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8354146567525740840?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8354146567525740840/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/sdlc-production-support.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8354146567525740840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8354146567525740840'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/sdlc-production-support.html' title='SDLC: Production support'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8680862977731621071</id><published>2009-11-06T13:49:00.004-05:00</published><updated>2011-01-13T10:44:28.743-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>And the survey says.....</title><content type='html'>Questions originally posted on comp.lang.cobol by Pete Dashwood.  Answers are mine.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;1. What is your personal attitude to your management? Do you see them as a &lt;/span&gt;&lt;span style="font-style: italic;"&gt;bunch of wankers who have no idea what's going on or is required, no &lt;/span&gt;&lt;span style="font-style: italic;"&gt;understanding of the problems you have to grapple with every day, and just &lt;/span&gt;&lt;span style="font-style: italic;"&gt;an unnecessary departmental overhead because a trained monkey could do &lt;/span&gt;&lt;span style="font-style: italic;"&gt;their job? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;As a species Managers are wonderful.  They give direction and comfort to those who need it the most.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;2. Do you have any aspirations to ever be management? Why? Why not? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It is something that I aspire to.  With the right mentor it might be possible.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;3. Could your attitude affect your management? (d'you think...?) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Definitely.  It is important to try to see the big picture...when you look at things that way your manager is always right.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;4. Would you do exactly what is specified in say, a program spec., even if  &lt;/span&gt;&lt;span style="font-style: italic;"&gt;you knew it was wrong, and would cause major disruption to downstream &lt;/span&gt;&lt;span style="font-style: italic;"&gt;processing? How would you deal with this situation (if at all)? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;My manager has an open mind as well as an open door.  He would listen to my concerns, and then share his wisdom with me.  I would soon realize that I am mistaken and he is correct.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;5. In meetings, do you speak your mind and to Hell with them if they don't  &lt;/span&gt;&lt;span style="font-style: italic;"&gt;like it, or do you tend to pussyfoot for the sake of annual review? Would &lt;/span&gt;&lt;span style="font-style: italic;"&gt;you modify your language depending on the level of management present? &lt;/span&gt;&lt;span style="font-style: italic;"&gt;Why? Why not? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Managers are always open to honest feedback.  I see no reason why they would be offended by such.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;6. Are you gleeful when your manager is in trouble? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Not at all.  I fret over it, and do whatever I can to help him overcome it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;7. Does your manager socialise with you on occasion? Is it comfortable or &lt;/span&gt;&lt;span style="font-style: italic;"&gt;would you rather they didn't? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I am not worthy.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;8. If you screwed up, would you look for support from your manager or &lt;/span&gt;&lt;span style="font-style: italic;"&gt;would you make every effort to hide your blunder or divert attention from &lt;/span&gt;&lt;span style="font-style: italic;"&gt;it until you could fix it, if you could fix it? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I would admit my guilt immediately and work whatever overtime was necessary to correct my error.&lt;br /&gt;&lt;br /&gt;In conclusion, my manager is a wise and powerful leader.  &lt;span style="color: red; font-weight: bold;"&gt;And he monitors my &lt;/span&gt;&lt;span style="color: red; font-weight: bold;"&gt;blog postings.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8680862977731621071?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8680862977731621071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/questions-originally-posted-on-comp.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8680862977731621071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8680862977731621071'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/questions-originally-posted-on-comp.html' title='And the survey says.....'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5294718903655823703</id><published>2009-11-06T11:14:00.000-05:00</published><updated>2009-11-27T22:12:51.716-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><title type='text'>Mythbusting: DB2 results table</title><content type='html'>&lt;!-- / icon and title --&gt;         &lt;!-- message --&gt;   &lt;div id="post_message_206473"&gt;DB2 does not always create a results table.   This is a common misunderstanding because programmers are taught to code their cursors as if the results have already been materialized.&lt;br /&gt;&lt;br /&gt;We had a case in our shop, shortly after migrating to DB2 V8, of recently inserted rows suddenly appearing within a cursor.  The programmer was indignant, insisting that since the program hadn't been changed, this must be a DB2 V8 issue.  Well,  DB2 has &lt;u&gt;never&lt;/u&gt; guaranteed that this would not happen in an ambiguous cursor. It was therefore not a bug in DB2 V8, we'd just been lucky for the previous several years.&lt;br /&gt;&lt;br /&gt;More recent versions of DB2 allow much more control over this situation than in the past.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Adding INSENSITIVE SCROLL solved the problem for us. It was an easier alternative than changing the application to ignore recently (within the same unit of work) inserted rows.&lt;br /&gt;&lt;br /&gt;Even a very experienced and expert programmer (ahem) can trip over this one.   I once changed an online program to insert rows into the same table that was the subject of a cursor.   The rows were inserted &lt;span style="font-weight: bold;"&gt;after&lt;/span&gt; the current row, so the FETCH loop just kept running, endlessly chasing EOF without ever getting there.  Doh!&lt;br /&gt;&lt;br /&gt;Fortunately, the problem was caught during unit testing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5294718903655823703?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5294718903655823703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/mythbusting-db2-results-table.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5294718903655823703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5294718903655823703'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/mythbusting-db2-results-table.html' title='Mythbusting: DB2 results table'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8357868716807635057</id><published>2009-11-06T11:04:00.002-05:00</published><updated>2010-11-18T11:27:15.884-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='design'/><title type='text'>Using I/O subroutines to access DB2 tables</title><content type='html'>DB2 shops have been debating this one for years.&lt;br /&gt;&lt;br /&gt;One problem with using subroutines for all I/O is that you lose DB2's ability to fetch just the column(s) you are interested in. I/O subroutines are usually pretty generic, essentially doing a SELECT * on the requested table. *&lt;br /&gt;&lt;br /&gt;Performance geeks will complain about the CPU cost of fetching more columns than you really need. DBAs will complain that you are using DB2 as if it was IMS. And your data modelers, well, they'll just complain, as they always do, that you didn't implement their model properly.&lt;br /&gt;&lt;br /&gt;The only one who won't complain will be your project manager, because the I/O routines save you coding time.  (Assuming that the poor sap coding the I/O routine isn't working for him too.)&lt;br /&gt;&lt;br /&gt;* I once saw an application where an attempt was made to mitigate this problem by requiring the calling program to pass an array of flags, each one corresponding to a column that was to be retrieved. As you can imagine, this bloated the code (no dynamic SQL allowed!) in the I/O subroutine to the point that the cure was worse than the disease.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8357868716807635057?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8357868716807635057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/using-io-subroutines-to-access-db2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8357868716807635057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8357868716807635057'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/using-io-subroutines-to-access-db2.html' title='Using I/O subroutines to access DB2 tables'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5336455163252561519</id><published>2009-11-06T10:50:00.002-05:00</published><updated>2010-11-18T11:28:17.103-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><title type='text'>So you want to do a 7 table join?</title><content type='html'>My usual advice when faced with a query like this is to break it up into simpler parts. Just because you &lt;i&gt;can &lt;/i&gt;do something with a single query, doesn't mean that you &lt;i&gt;should&lt;/i&gt;. Temporary tables (or QMF's SAVE DATA) are an excellent way to achieve this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5336455163252561519?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5336455163252561519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/7-table-join.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5336455163252561519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5336455163252561519'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/7-table-join.html' title='So you want to do a 7 table join?'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5993222371411538735</id><published>2009-11-06T10:48:00.003-05:00</published><updated>2011-02-24T08:26:19.580-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FTP'/><category scheme='http://www.blogger.com/atom/ns#' term='ISPF'/><title type='text'>Why FTP?</title><content type='html'>I have never understood the fascination with FTP. If all you want to do is transfer files between z/OS and a Windows workstation, then ISPF's Work Station Agent (WSA) works great. It's simple to use, fast and secure. Best of all, you can automate it using Rexx or any other language that supports ISPF dialog services.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tsotimes.com/articles/archive/spring04/wsafiletransfer.html"&gt;See this link if you want to learn more about WSA.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Still not convinced?&amp;nbsp;&lt;a href="http://gsf-soft.com/Documents/ISPF-CS.shtml"&gt;See this one too.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5993222371411538735?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5993222371411538735/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/i-have-never-understood-fascination.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5993222371411538735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5993222371411538735'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/i-have-never-understood-fascination.html' title='Why FTP?'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-4814727407787156685</id><published>2009-11-06T10:44:00.000-05:00</published><updated>2009-11-27T22:12:51.724-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cobol Programming'/><title type='text'>Cobol scope terminators</title><content type='html'>All the scope terminators are great, but I especially like END-IF because it allows you to avoid programming in SENTENCES. IMO, the designers of Cobol took the natural language metaphor a bit too far when they introduced the concept of logic flow delimited by periods (aka "full stops").&lt;br /&gt;&lt;br /&gt;IMO the lack of END-IF in early versions of Cobol severely damaged the reputation of the language. I think that is the reason why Dijsktra said:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;"The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense.”&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;END-IF is easily the most important innovation ever made to the language in the 28 years that I've been working with it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-4814727407787156685?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/4814727407787156685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/all-scope-terminators-are-great-but-i.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/4814727407787156685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/4814727407787156685'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/all-scope-terminators-are-great-but-i.html' title='Cobol scope terminators'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8873884413559398732</id><published>2009-11-06T10:42:00.001-05:00</published><updated>2009-12-16T10:39:07.607-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Some of my best friends are DBAs</title><content type='html'>Don't judge DBA's too harshly.  They're not programmers, and may never have actually coded a cursor themselves.  &lt;img alt="" border="0" class="inlineimg" src="http://mvshelp.net/vbforums/images/smilies/biggrin.gif" title="Big Grin" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8873884413559398732?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8873884413559398732/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/dont-judge-dbas-too-harshly.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8873884413559398732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8873884413559398732'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/dont-judge-dbas-too-harshly.html' title='Some of my best friends are DBAs'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-8525826302011487071</id><published>2009-11-06T10:36:00.002-05:00</published><updated>2010-11-18T11:18:18.597-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='IPT'/><category scheme='http://www.blogger.com/atom/ns#' term='SPIFFY'/><category scheme='http://www.blogger.com/atom/ns#' term='ISPF'/><title type='text'>IPT vs ISPF</title><content type='html'>I find this link interesting because IBM appears to be rubbishing ISPF in order to promote IPT&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: Arial;"&gt;&lt;a href="ftp://ftp.software.ibm.com/software/ispfproductivitytool/pubs/IPT-Comparison.pdf" target="_blank"&gt;ftp://ftp.software.ibm.com/software/...Comparison.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Straw men walking!&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-8525826302011487071?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/8525826302011487071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/i-find-this-link-interesting-because.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8525826302011487071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/8525826302011487071'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/i-find-this-link-interesting-because.html' title='IPT vs ISPF'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-3931045468916043750</id><published>2009-11-06T10:35:00.002-05:00</published><updated>2010-11-18T11:21:17.407-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='SimpList'/><category scheme='http://www.blogger.com/atom/ns#' term='history'/><category scheme='http://www.blogger.com/atom/ns#' term='ISPF'/><title type='text'>Feeling young</title><content type='html'>Hearing old timers talk about TSO edit makes me feel young.  (A rare pleasure that is getting rarer).&lt;br /&gt;&lt;br /&gt;I was one of the first generation of programmers to have the privilege of using SPF right at the start of my career. During my entry level training, the topic of TSO was glossed over; I never even had to learn TSO Edit.&lt;br /&gt;&lt;br /&gt;This was back in 1981, when it was called SPF (Structured Programming Facility). A few years later it was re-branded as ISPF (Interactive Structured Programming Facility...."Interactive" being the buzzword of the day).&lt;br /&gt;&lt;br /&gt;Then, sometime in the late 1980s ISPF became "Integrated Systems Productivity Facility". "Integrated" was a fashionable buzzword at the time, and IBM decided that ISPF wasn't just for "Programming" any more.&lt;br /&gt;&lt;br /&gt;Nowadays the official name of the product is "Interactive System Productivity Facility". Whatever happened to "Integrated"? Perhaps I have my chronology wrong.&lt;br /&gt;&lt;br /&gt;Your memories may vary.&amp;nbsp;&amp;nbsp;(Mine vary from day to day).&lt;br /&gt;&lt;br /&gt;I think I first saw option 3.4 in 1986 +- 1 year or so.  I didn't like it very much...&lt;i&gt;&lt;b&gt;real &lt;/b&gt;&lt;/i&gt;programmers knew all of their data set names, so who needs 3.4? (Twenty years later, I am hooked on &lt;a href="http://www.mackinney.com/products/program-development/simplist.html"&gt;SimpList&lt;/a&gt;, a product which is like 3.4 on steroids).&lt;br /&gt;&lt;br /&gt;I remember when you had to hit RETURN rather than ENTER in order to use a Jump function. I also remember complaining when they changed that, but I soon got used to it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-3931045468916043750?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/3931045468916043750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/you-guys-make-me-feel-young.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/3931045468916043750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/3931045468916043750'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/you-guys-make-me-feel-young.html' title='Feeling young'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-6124769707774851781</id><published>2009-11-06T10:29:00.002-05:00</published><updated>2011-02-24T08:17:47.603-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='design'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>How long should a process take?</title><content type='html'>"How long is a piece of string?" may be the flippant answer, but it's not a very useful one.  &lt;br /&gt;&lt;br /&gt;It is possible to predict, with a fair amount of accuracy, how long a process will take if you know how many records must be processed, what is being done to them, what type of machine it is running on, how many i/o buffers are available etc etc&lt;br /&gt;&lt;br /&gt;Or, you can run the input file through DFSORT or other high performance utility.&lt;br /&gt;&lt;br /&gt;If DFSORT can process a file in 10 minutes (even if it's not doing exactly the same processing...most business applications are I/O bound) and my Cobol program can do it in 15, then I don't spend much time tuning the Cobol because it is probably about as good as it is going to get.&lt;br /&gt;&lt;br /&gt;That is just a rule of thumb of course.  Your mileage will vary.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-6124769707774851781?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/6124769707774851781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/11/i-use-dfsort-as-my-benchmark-when-i-am.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6124769707774851781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/6124769707774851781'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/11/i-use-dfsort-as-my-benchmark-when-i-am.html' title='How long should a process take?'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-14108859111439417</id><published>2009-09-15T09:30:00.001-04:00</published><updated>2009-12-15T09:32:25.196-05:00</updated><title type='text'>Don't mess with my PFKeys!</title><content type='html'>You can count me in the "keylist loathing" category. I put a lot of thought into my PFKEY definitions and I hate it when dialog developers try to override my wishes.&lt;br /&gt;&lt;br /&gt;For example, I used to have VCURSOR set up as my PFK13. VCURSOR (thank you Mr. Nadel!) allows you to place the cursor on a data set name on &lt;u&gt;any&lt;/u&gt; ISPF panel and Browse the data set. This is an extremely useful function and I want to be able to use it everywhere without interference from dialog developers.&lt;br /&gt;&lt;br /&gt;*I no longer have VCURSOR mapped to my PFK13 because we have a &lt;a href="http://www.mackinney.com/products/program-development/simplist.html%20"&gt;commercial product&lt;/a&gt; that performs the same function as VCURSOR, plus a lot more.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-14108859111439417?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/14108859111439417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/09/dont-mess-with-my-pfkeys.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/14108859111439417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/14108859111439417'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/09/dont-mess-with-my-pfkeys.html' title='Don&apos;t mess with my PFKeys!'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4752049099111806901.post-5723152417563761936</id><published>2009-03-12T18:13:00.001-04:00</published><updated>2009-12-14T20:58:42.050-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Open Cursor</title><content type='html'>Figures that I'd get into blogging long after the rest of the world.  Well, I work as a mainframe programmer, so everyone expects me to be behind the curve anyway.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4752049099111806901-5723152417563761936?l=donleahy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://donleahy.blogspot.com/feeds/5723152417563761936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://donleahy.blogspot.com/2009/03/figures-that-id-get-into-blogging-long.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5723152417563761936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4752049099111806901/posts/default/5723152417563761936'/><link rel='alternate' type='text/html' href='http://donleahy.blogspot.com/2009/03/figures-that-id-get-into-blogging-long.html' title='Open Cursor'/><author><name>Don</name><uri>http://www.blogger.com/profile/16915390836558865110</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HXWX2UNedYo/TA0zujNg-BI/AAAAAAAABIE/6Q6kO8h5Erc/S220/headshot2.JPG'/></author><thr:total>0</thr:total></entry></feed>
