<?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-4577455583142648696</id><updated>2012-01-24T14:04:39.376-08:00</updated><category term='IBM'/><category term='PHP'/><category term='clapton'/><category term='zendcon'/><category term='http://www.blogger.com/img/blank.gif'/><category term='Blackberry'/><category term='tek'/><category term='8310'/><category term='PHP Architect'/><category term='Framework'/><category term='7250'/><category term='memorial'/><category term='community'/><category term='BES'/><category term='SugarCRM'/><category term='Zend'/><category term='IBM i'/><category term='Certificatin'/><category term='Zend Server'/><category term='Open Source'/><title type='text'>Mike's IBM i PHP blog and more...</title><subtitle type='html'>A nice little space tucked away in suburban cyberspace where you and the IBM i kiddies can come and seek safe haven.  Oh, and a dash of PHP and CL for good measure!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-8047091495637546181</id><published>2012-01-23T17:56:00.000-08:00</published><updated>2012-01-23T18:15:22.966-08:00</updated><title type='text'>New Toolkit, anyone?</title><content type='html'>&lt;span style=" font-weight: bold;font-family:arial;" &gt;Want a new, simpler way to access IBM i artifacts like HLL Programs and Spooled files? The new open Source toolkit is just for you!&lt;/span&gt;&lt;br  style="font-family:arial;"&gt;&lt;br  style="font-family:arial;"&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i 5.6&lt;/a&gt; no longer ships with the old i5 toolkit.  That much is true.  And there has been some press about the expiration of the relationship with Aura, the authors of the toolkit we have used for the last few years.  Zend’s official position can be found &lt;a href="http://forums.zend.com/viewtopic.php?f=113&amp;amp;t=41648"&gt;here&lt;/a&gt;.  So with change comes the good, the bad and the downright awesome!  What we are witnessing here is not just a new toolkit, but the dawning of a new era in software development.&lt;/span&gt;&lt;br /&gt;&lt;br  style="font-family:arial;"&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM&lt;/a&gt; has been a primary engineer of the new toolkit as they have built &lt;a href="http://174.79.32.155/wiki/index.php/XMLService/XMLService"&gt;XMLSERVICE&lt;/a&gt;.   &lt;a href="http://174.79.32.155/wiki/index.php/XMLService/XMLService"&gt;XMLSERVICE &lt;/a&gt;is &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM's&lt;/a&gt; first (as far as I know) official entry in the open source arena regarding &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt;.  Sure &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM&lt;/a&gt; has contributed projects like &lt;a href="http://eclipse.org/"&gt;Eclipse&lt;/a&gt; and contributed to projects like &lt;a href="http://apache.org/"&gt;Apache&lt;/a&gt; and others.  But &lt;a href="http://174.79.32.155/wiki/index.php/XMLService/XMLService"&gt;XMLSERVICE &lt;/a&gt;represents &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM&lt;/a&gt; Rochester’s biggest investment in opening a new technology to the community that will drive &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt; workload for &lt;a href="http://php.net/"&gt;PHP &lt;/a&gt;and other open source languages to come.  Yes, I said it, when the right group comes around to support &lt;a href="http://python.org/"&gt;Python&lt;/a&gt; or &lt;a href="http://www.ruby-lang.org/en/"&gt;Ruby&lt;/a&gt;, &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM&lt;/a&gt; will be ready and waiting with &lt;a href="http://174.79.32.155/wiki/index.php/XMLService/XMLService"&gt;XMLSERVICE &lt;/a&gt;to take care of their system integration needs!  &lt;/span&gt;&lt;span style="font-family: arial;"&gt;Special shout out to the &lt;a href="http://www.youngiprofessionals.com/"&gt;YoungiProfessionals&lt;/a&gt; website for hosting the project up to now.  the new home is a closely guarded secret, but will be made available very soon. &lt;span style="font-family: arial;"&gt;And a GREAT BIG community shout out to Tony Cairns for the development work on &lt;a href="http://174.79.32.155/wiki/index.php/XMLService/XMLService"&gt;XMLSERVICE&lt;/a&gt;, Sam Pinkhasov on the Toolkit API and &lt;a href="http://www.alanseiden.com/"&gt;Alan Seiden&lt;/a&gt; for the CW!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br  style="font-family:arial;"&gt;&lt;span style="font-family:arial;"&gt;Zend is the first official consumer of &lt;a href="http://174.79.32.155/wiki/index.php/XMLService/XMLService"&gt;XMLSERVICE &lt;/a&gt;by introducing the new Toolkit API classes into Zend Server.  These classes represent the plumbing necessary to communicate with &lt;a href="http://174.79.32.155/wiki/index.php/XMLService/XMLService"&gt;XMLSERVICE &lt;/a&gt;and return values important to the &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt; developer whether they be parameters from HLL programs or values from data areas.  Oh, and we fixed a few things along the way.  If you ever tried calling a sub-procedure from &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; you might have gotten frustrated with the fact that all you could get back was an INT.  Well, not any more!  The new toolkit can process goo-gobs of stuff and pass all kinds of data around the house.  &lt;/span&gt;&lt;br /&gt;&lt;br  style="font-family:arial;"&gt;&lt;span style="font-family:arial;"&gt;But I have all those i5 function calls out there, what do I do?  Well, as the &lt;a href="http://forums.zend.com/viewtopic.php?f=113&amp;amp;t=41648"&gt;FAQ&lt;/a&gt; indicates, we are also introducing the new &lt;a href="http://174.79.32.155/wiki/index.php/XMLService/XMLService"&gt;Compatibility Wrapper&lt;/a&gt; classes in the new toolkit.  These classes will deliver the ability to code i5 function calls using the procedural model and have the work completed by the new toolkit.  This fills the last gap in the migration of the new toolkit.&lt;/span&gt; &lt;span style="font-family:arial;"&gt;Customers who upgrade from previous versions of &lt;a href="http://www.zend.com/en/resources/zend-documentation/old"&gt;Zend Server for IBM i&lt;/a&gt; to &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i 5.6&lt;/a&gt; will still be able to use the old toolkit, if they so choose.  But they also have the option to explore the new Open Source toolkit, as well.  Kind of like having you cake and eating it too!&lt;/span&gt;&lt;br /&gt;&lt;br  style="font-family:arial;"&gt;&lt;span style="font-family:arial;"&gt;I just got back from Toronto where I introduced the new toolkit to &lt;a href="http://tug.ca/"&gt;TUG&lt;/a&gt; and it seems the enjoyed the presentation.  I’ll be doing that at &lt;a href="http://omniuser.org/"&gt;Omni&lt;/a&gt; in Chicago tomorrow and maybe at a local user group near you, soon!  &lt;a href="mailto:mike.p@zend.com"&gt;Drop me a line&lt;/a&gt; and let’s talk!  &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-8047091495637546181?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/8047091495637546181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2012/01/new-toolkit-ahttpwwwbloggercomimgblankg.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/8047091495637546181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/8047091495637546181'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2012/01/new-toolkit-ahttpwwwbloggercomimgblankg.html' title='New Toolkit, anyone?'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-2122852996844322905</id><published>2011-11-28T16:52:00.000-08:00</published><updated>2011-11-28T17:13:20.519-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='http://www.blogger.com/img/blank.gif'/><title type='text'>PHP jobs and IBM i</title><content type='html'>&lt;span style=" font-weight: bold;font-family:arial;" &gt;If you were wondering where the next opportunity is in IT then PHP might be just the thing for you.&lt;/span&gt;  &lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I was reading a newsletter from another &lt;a href="http://cancillaoni.blogspot.com/2011/11/figures-dont-lie-look-at-these-job.html"&gt;IBM i pundit&lt;/a&gt; who was disparaging the future of the IBM i &amp;amp; for RPG programmers using a statistical grid from the job trends section of &lt;a href="http://www.indeed.com/jobtrends"&gt;Indeed.com&lt;/a&gt;.  Indeed.com is a site that tracks IT job opportunities and has a nifty graph that lays them in so you can make comparisons.  The best part is that it is very easy to use.  The author of the newsletter was trying to diminish &lt;a href="https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/communityview?communityUuid=b542d3ac-0785-4b6f-8e53-f72051460822"&gt;RPG&lt;/a&gt; as a language with little future because Indeed.com had very few hits.  I was not happy with his assessment and posted a response.  Unfortunately he is moderating his postings and chose to not allow mine through, as of this writing.  So here is what his &lt;a href="http://www.indeed.com/jobtrends?q=RPG%2C+Java%2C+C%2B%2B%2C+C%23%2C+Visual+Basic&amp;amp;l="&gt;graphic&lt;/a&gt; looks like as he put it forth:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-BvMfhKYX6j8/TtQuvzUUd5I/AAAAAAAAAFA/y2ZQCCPX9rQ/s1600/IndeedNoPHP.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 182px;" src="http://2.bp.blogspot.com/-BvMfhKYX6j8/TtQuvzUUd5I/AAAAAAAAAFA/y2ZQCCPX9rQ/s320/IndeedNoPHP.JPG" alt="" id="BLOGGER_PHOTO_ID_5680216428785203090" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;As you can see from this image, the future for the typical RPG programmer looks pretty bleak.  That was what the author was trying to portray.  But these graphs can be interpreted in many ways.  First of all, the entire RPG job market is not very big to begin with. Also, I had gotten my last 3 RPG opportunities via recruiters and they do not post openings via boards like this.  As this graphics is display Percentage of opportunities over all, then yes I would agree that there are not nearly as many job opportunities for RPG developers as there are for Java developers, etc.  But I could hardly put this on RPG or the IBM i.  Another thing to point out is that some of those Java jobs might be on IBM i.  That skews the whole equation. &lt;/span&gt;&lt;span style="font-family:arial;"&gt;What I did when I read the piece and followed the authors link is I added one more language to the chart.  This language is called PHP and look at the &lt;a href="http://www.indeed.com/jobtrends?q=RPG%2C+Java%2C+C%2B%2B%2C+C%23%2C+Visual+Basic%2C+PHP&amp;amp;l="&gt;graphic&lt;/a&gt; it created:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-hFozECmDhEA/TtQvL5u0TDI/AAAAAAAAAFM/1Y7vuknb12U/s1600/IndeedwithPHP.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 182px;" src="http://2.bp.blogspot.com/-hFozECmDhEA/TtQvL5u0TDI/AAAAAAAAAFM/1Y7vuknb12U/s320/IndeedwithPHP.JPG" alt="" id="BLOGGER_PHOTO_ID_5680216911543290930" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family:arial;"&gt;In this graphic we can see that the market for PHP developers is on a steep incline.  Are any of these opportunities on IBM i?  I am not sure.  But I have heard of a few IBM i shops leveraging their significant investment in RPG and COBOL while opening up to the open source continuum with PHP.  One can also infer fro the above graphic that PHP job growth is far more explosive than many other contemporary languages and that since PHP runs natively on IBM i there might be a future!  I believe there is a future to IBM i and that future is made up of many technologies and third party solutions.  All should be evaluated and considered when the traditional green screen shop starts looking to go to a GUI solution.  And then in the spirit of the season, you select PHP.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The truth, as many of you already know is that statistics can be manipulated to support or defend nearly any idea or agenda.  Please read as much as you can about a certain topic but do NOT accept any one persons view as the truth without first evaluating it creditability with at least a little Googling. &lt;br /&gt;&lt;br /&gt;Happy Holiday's!&lt;br /&gt;&lt;br /&gt;Mike&lt;br /&gt;&lt;/span&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="&amp;#45;-"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Table Normal";  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-priority:99;  mso-style-qformat:yes;  mso-style-parent:"";  mso-padding-alt:0in 5.4pt 0in 5.4pt;  mso-para-margin-top:0in;  mso-para-margin-right:0in;  mso-para-margin-bottom:10.0pt;  mso-para-margin-left:0in;  line-height:115%;  mso-pagination:widow-orphan;  font-size:11.0pt;  font-family:"Calibri","sans-serif";  mso-ascii-font-family:Calibri;  mso-ascii-theme-font:minor-latin;  mso-fareast-font-family:"Times New Roman";  mso-fareast-theme-font:minor-fareast;  mso-hansi-font-family:Calibri;  mso-hansi-theme-font:minor-latin;  mso-bidi-font-family:"Times New Roman";  mso-bidi-theme-font:minor-bidi;} &lt;/style&gt; &lt;![endif]--&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-2122852996844322905?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/2122852996844322905/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/11/php-jobs-and-ibm-i.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2122852996844322905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2122852996844322905'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/11/php-jobs-and-ibm-i.html' title='PHP jobs and IBM i'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-BvMfhKYX6j8/TtQuvzUUd5I/AAAAAAAAAFA/y2ZQCCPX9rQ/s72-c/IndeedNoPHP.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-6431454686206675552</id><published>2011-10-24T12:49:00.000-07:00</published><updated>2011-10-25T05:56:03.421-07:00</updated><title type='text'>To OO or not to OO, that is the question...</title><content type='html'>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="&amp;#45;-"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Table Normal";  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-priority:99;  mso-style-qformat:yes;  mso-style-parent:"";  mso-padding-alt:0in 5.4pt 0in 5.4pt;  mso-para-margin-top:0in;  mso-para-margin-right:0in;  mso-para-margin-bottom:10.0pt;  mso-para-margin-left:0in;  line-height:115%;  mso-pagination:widow-orphan;  font-size:11.0pt;  font-family:"Calibri","sans-serif";  mso-ascii-font-family:Calibri;  mso-ascii-theme-font:minor-latin;  mso-fareast-font-family:"Times New Roman";  mso-fareast-theme-font:minor-fareast;  mso-hansi-font-family:Calibri;  mso-hansi-theme-font:minor-latin;  mso-bidi-font-family:Arial;  mso-bidi-theme-font:minor-bidi;} &lt;/style&gt; &lt;![endif]--&gt;&lt;p  class="MsoNormal" style="font-family:arial;"&gt;I grew up with procedural programming.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;What does that mean?&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;To me it means I have spent a MAJORITY of my business career delivering value to companies by developing programs that have subroutines and possibly functions and sub procedures.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;I like to think I have added tremendous value but at the same time I also realize that some of my code has been superseded by newer programs and alternate methods.&lt;/p&gt;  &lt;p  class="MsoNormal" style="font-family:arial;"&gt;But everyone tells me that OO (Object Oriented programming) is where I should be!&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;The “industry” is/has moved to the OO model of development thanks to such powerful languages like Java and C++.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Even PHP has an OO model to let me feel like I am playing along.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;So what should I do?&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Well, here is my tale on the OO paradigm and I hope this makes some sense to all of you!&lt;/p&gt;  &lt;p  class="MsoNormal" style="font-family:arial;"&gt;As a procedural programmer in the 90’s I heard the “good news” of Java from IBM.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;I struggled with Java at first and then had some VERY marginal success.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;I found it cumbersome to try and learn, not because Java was necessarily hard, but because I was trying to absorb too much at one time.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Many challenges plagued this old RPG dog like a new language, syntax, structure, environment, etc.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;I’m not the only one who struggles, even &lt;a href="http://existentialtype.wordpress.com/2011/03/15/teaching-fp-to-freshmen/"&gt;Carnegie Melon dropped OO&lt;/a&gt; from their freshman curricula because students were coming up with not nearly enough experience in developing algorithms. &lt;/p&gt;  &lt;p  class="MsoNormal" style="font-family:arial;"&gt;Enter in PHP and the opportunity to learn something new.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;PHP becomes the ideal language for education and more since it can start you at your level.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Think of the PHP landscape as a major expressway with different lanes for more or less experienced drivers.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Folks who come to PHP with no programming experience can start with very simple inline code.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;For those of us who hail from the procedural world we can pick up with functions.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;And for those who are flying in and out of traffic with a Java or C++ background there is a fully support Object Oriented model to work with.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;I have been recommending PHP to many educational institutions and have it on good rumor that the curricula I have been teaching at &lt;a href="http://www.morainevalley.edu/"&gt;Moraine Valley Community College&lt;/a&gt; will become permanent courses called MIS126 and MIS226.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;These courses start at procedural PHP and then work up to and through the Object Oriented realm.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;This is great news as we can now add more PHP developers to the world and demonstrate that PHP is not just a hobbyist language by delivering classes in true academia!&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;For those who cannot wait, the educational path at &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; offers &lt;a href="http://www.zend.com/services/training/course-catalog/php-foundations-i5"&gt;PHP 1 Foundations for IBM i  Programmers&lt;/a&gt; and &lt;a href="http://www.zend.com/services/training/course-catalog/higher-structures-of-php"&gt;PHP Foundations 2: Higher Structures&lt;/a&gt;.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;The first class takes an RPG programmer from zero to sixty with a full immersion in the functional world of PHP while the second class starts off at functions and whips you up into the object oriented realm.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;Even more educational opportunities exist at places like &lt;a href="http://www2.systeminetwork.com/edu/e-learning/"&gt;SystemiNetwork&lt;/a&gt; where we are about to begin a whole new online sequence for PHP training.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;No excuses, get out there and play!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-6431454686206675552?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/6431454686206675552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/10/to-oo-or-not-to-oo-that-is-question.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/6431454686206675552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/6431454686206675552'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/10/to-oo-or-not-to-oo-that-is-question.html' title='To OO or not to OO, that is the question...'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-3592081193856248332</id><published>2011-09-19T20:15:00.000-07:00</published><updated>2011-09-19T21:37:56.889-07:00</updated><title type='text'>Zend DBi to the rescue!</title><content type='html'>&lt;span style="font-family:arial;"&gt;Are you looking for MySQL for IBM i?  Look no further as Zend and IBM are introducing Zend DBi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;A few years ago I was at in a &lt;a href="http://www.blogger.com/www.common.org/CAAC.html"&gt;CAAC&lt;/a&gt; meeting with some really good customers and some really good  IBM’ers.  IBM’s Software Chief Architect at the time or maybe someone nearly as powerful said “Hey, how about we bring &lt;a href="http://mysql.org/"&gt;MySQL&lt;/a&gt; to &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt;?” As &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; has started to gain popularity via the Zend distribution at this point I chimed in and said “Why?  I’ve got &lt;a href="http://www-01.ibm.com/software/data/db2/"&gt;DB2&lt;/a&gt;…”.  Well, in the spirit of &lt;a href="http://www.snopes.com/quotes/kenolsen.asp"&gt;Ken Olson&lt;/a&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt; I too am capable of a really bad prediction question when it comes to hindsight.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Until that point I had really thought &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; on &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt; would only be used for accessing &lt;a href="http://www-01.ibm.com/software/data/db2/"&gt;DB2&lt;/a&gt; data and &lt;a href="https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/communityview?communityUuid=b542d3ac-0785-4b6f-8e53-f72051460822"&gt;RPG&lt;/a&gt; programs.  Sure there would be the odd &lt;a href="http://www.cobol.com/"&gt;COBOL&lt;/a&gt; programmer out there, but I was an &lt;a href="https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/communityview?communityUuid=b542d3ac-0785-4b6f-8e53-f72051460822"&gt;RPG&lt;/a&gt; guy and very narrow minded.  I saw lots of opportunities to web enable &lt;a href="http://www-01.ibm.com/software/data/db2/"&gt;DB2&lt;/a&gt; data, make green bar reports disappear and replace them with &lt;a href="http://www.w3.org/html/"&gt;HTML&lt;/a&gt; tables generated by bunches of &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; scripts running 100% on &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt;.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Then we started to discuss the opportunity.  Thousands of open source and commercial applications in the &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; world are essentially written to the &lt;a href="http://php.about.com/od/phpbasics/p/LAMP.htm"&gt;LAMP&lt;/a&gt; stack: &lt;a href="http://www.linux.org/"&gt;Linux&lt;/a&gt;, &lt;a href="http://www.apache.org/"&gt;Apache&lt;/a&gt;, &lt;a href="http://mysql.org/"&gt;MySQL&lt;/a&gt; and &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.  What we had done to that point was create the iADP stack: &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt;, &lt;a href="http://apache.org"&gt;Apache&lt;/a&gt;, &lt;a href="http://www-01.ibm.com/software/data/management/?pgel=ibmhzn&amp;amp;cm_re=masthead-_-products-_-sw-db2"&gt;DB2&lt;/a&gt; and &lt;a href="http://php.net"&gt;PHP&lt;/a&gt;.  With several thousand &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; applications looking for MySQL there was a perfect fit about to be created.  By implementing &lt;a href="http://mysql.org/"&gt;MySQL&lt;/a&gt; on &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt;, customers could then install nearly ANY open source application natively on the machine and reap the benefits of some really good technology without having to deploy YAFS (Yet-Another-Friendly-Server).  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So now customers could write &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; applications and web services, implement database agnostic &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; applications via Zend Framework and PDO and now implement MySQL based applications.  OK, I was sold.  Then IBM went one better and created the &lt;a href="http://www.redbooks.ibm.com/abstracts/sg247705.html"&gt;DB2 Storage Engine for MySQL&lt;/a&gt;.  &lt;a href="http://mysql.org/"&gt;MySQL&lt;/a&gt; is constructed in such a way where the database storage engine is abstracted from the SQL interface layer.  This creates a VERY powerful equation in that your &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; applications can think it is reading and writing to &lt;a href="http://mysql.org/"&gt;MySQL&lt;/a&gt; yet all the time and under the covers it is really storing and retrieving from &lt;a href="http://www-01.ibm.com/software/data/db2/"&gt;DB2&lt;/a&gt;!&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Then the folks at Oracle said NO MORE MYSQL FOR YOU to the entire &lt;a href="http://www.ibm.com/systems/power/?cm_re=masthead-_-products-_-sys-power"&gt;IBM Power Systems&lt;/a&gt; family!  The distributions of &lt;a href="http://mysql.org/"&gt;MySQL&lt;/a&gt; were relegated to the archive site and IBM i customers were confused and looking for answers.  IBM immediately set out to find a new suitor for MySQL on &lt;a href="http://www-03.ibm.com/systems/power/software/i/index.html"&gt;IBM i&lt;/a&gt;.  There was too much at stake to let it languish in obscurity and after all it was just another open source project.  So, looking to the company that successfully landed &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; on the platform made a LOT of sense.  Now Zend and IBM have one more thing to brag about, Zend DBi!  Zend DBi is essentially a drop-in replacement for the &lt;a href="http://mysql.org/"&gt;MySQL&lt;/a&gt; distribution that customers have been leveraging.  Zend will provide, as part of the &lt;a href="http://www.zend.com/en/products/server/downloads"&gt;Zend Server Download&lt;/a&gt;, or alone, a current distribution of &lt;a href="http://mysql.org/"&gt;MySQL&lt;/a&gt; under the name Zend DBi.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Some of the details are still solidifying, but the excitement is building and more information can be gathered either from my &lt;a href="http://www.zend.com/en/webinar/IBMi/70170000000bc0P-webinar-collaborative-open-source-php-on-ibmi-20110913%20.flv"&gt;webcast from last week&lt;/a&gt; or in a periodical near you.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-3592081193856248332?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/3592081193856248332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/09/zend-dbi-to-rescue.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3592081193856248332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3592081193856248332'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/09/zend-dbi-to-rescue.html' title='Zend DBi to the rescue!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-2064564763495560725</id><published>2011-08-04T11:34:00.000-07:00</published><updated>2011-08-04T12:53:07.506-07:00</updated><title type='text'>ZendCon for Mere Mortals</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;br /&gt;As we ramp up our plans for &lt;a href="http://www.zendcon.com/"&gt;ZendCon&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, the annual &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; conference run by Zend, I have been asked time and again what would attract the IBM i crowd to our annual conference.  If you have any suggestions please feel free to share as I am always open to leverage other people's IP just like most of the &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; community.  But seriously, we have all the right things planned for IBM folks like good technical content surrounding the new open source toolkit.  Tony Cairns will emerge from the depths of the Rochester labs to share a little of the new toolkit's plumbing.  Alan Seiden will be on hand with the best-of-the-best practices and a capstone session that will blow the lid off of anything you have seen lately that will include announcements, success stories and much more.  So what else would the IBM i faithful want?  How about good &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; content?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;You see, this is what is so AWESOME about &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.  Nearly EVERY session at &lt;a href="http://www.zendcon.com/"&gt;ZendCon&lt;/a&gt; applies to the IBM i customer as well as the Linux/windows crew.  Sure there will be the odd session on Cluster Management which we do not need to be concerned with as IBM has taken good care of us from a scalability and up time perspective.  But BUNCHES of other sessions like…&lt;/span&gt;&lt;br /&gt;&lt;span style="display: block;" id="formatbar_Buttons"&gt;&lt;span onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);" class=" down" style="display: block;" id="formatbar_CreateLink" title="Link"&gt;&lt;img src="http://www.blogger.com/img/blank.gif" alt="Link" class="gl_link" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://zendframework.com/"&gt;Zend Framework&lt;/a&gt;!  See what is new and exciting about &lt;a href="http://zendframework.com/"&gt;ZF&lt;/a&gt; and maybe a sneak preview of &lt;a href="http://framework.zend.com/wiki/display/ZFDEV2/Home"&gt;ZF2&lt;/a&gt;.  This is the nice thing about &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; on IBM i; it support Zend Framework completely.  Anything you see regarding &lt;a href="http://zendframework.com/"&gt;ZF&lt;/a&gt; at &lt;a href="http://www.zendcon.com/"&gt;ZendCon&lt;/a&gt; can apply to IBM i as well.   &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;SOA and Web Services seem to work well in the IBM i community.  I have spoken to several customers leveraging Web Services within their infrastructure. One of my customers is using it as glue in a cross-platform environment!  So if you have disparate systems or even want a better way to explore program-to-program communication some of these session on REST or SOA might do the trick.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Web 3.0 anyone?  I have no idea if that is a real term, but figured I’d coin it before Steve Jobs does.  What do I mean?  Simply that we are about to turn the corner on the next generation of the Web using HTML 5, CSS 3 and Flash/Flex, regardless of what &lt;a href="http://calacanis.com/2007/10/03/web-3-0-the-official-definition/"&gt;Calacanis &lt;/a&gt;says!.  Also concepts like context-sensitive applications side by side with mobile are part of this new REQUIREMENT.  Yes, all these will be quite well represented at &lt;a href="http://www.zendcon.com/"&gt;ZendCon&lt;/a&gt;.  But wait, you say, these technologies have nothing to do directly with PHP.  And to that I would say "yes" and "no".  We all know the entire purpose of PHP as a server centric language is to produce something the browser can digest.  These technologies are fair game and very digestible by today’s browsers.  If you are still dependent upon IE6 then I would say you NEED these sessions!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;All this and more like certification testing, demos in the expo area, simply the best sponsors in the community, killer nightlife and the uncon will make the &lt;a href="http://www.zendcon.com/"&gt;ZendCon&lt;/a&gt; value proposition not only attractive to the PHP faithful, but especially to the IBM i &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; faithful.  Oh, and did I mention the annual IBM i evening event?   I think my good buddy the elePHPant will be stopping by too.  Yes, lots of good things for IBM i &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; developers, managers and analysts than just the awesome IBM i sessions.  Check it out for yourself!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-2064564763495560725?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/2064564763495560725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/08/zendcon-for-mere-mortals.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2064564763495560725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2064564763495560725'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/08/zendcon-for-mere-mortals.html' title='ZendCon for Mere Mortals'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-6287241106389928617</id><published>2011-07-15T13:10:00.000-07:00</published><updated>2011-07-19T14:10:11.895-07:00</updated><title type='text'>Is Ajax a spice or an entree?</title><content type='html'>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="&amp;#45;-"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Table Normal";  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-priority:99;  mso-style-qformat:yes;  mso-style-parent:"";  mso-padding-alt:0in 5.4pt 0in 5.4pt;  mso-para-margin-top:0in;  mso-para-margin-right:0in;  mso-para-margin-bottom:10.0pt;  mso-para-margin-left:0in;  line-height:115%;  mso-pagination:widow-orphan;  font-size:11.0pt;  font-family:"Calibri","sans-serif";  mso-ascii-font-family:Calibri;  mso-ascii-theme-font:minor-latin;  mso-fareast-font-family:"Times New Roman";  mso-fareast-theme-font:minor-fareast;  mso-hansi-font-family:Calibri;  mso-hansi-theme-font:minor-latin;  mso-bidi-font-family:"Times New Roman";  mso-bidi-theme-font:minor-bidi;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;A recent trip to visit a customer site had me thinking about food.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;No, it wasn’t the great big burrito I had for lunch.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;It was the use of technology in the application.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;We were invited to this customer site to examine a PHP application that was not performing well.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;This is not unusual for IBM i, Linux or Windows based PHP applications as no one is immune from challenges with coding practices and I for one can write bad code in more than 10 languages!&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Frequently, customers ask us a couple of standard questions like “where is the problem”.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;In many cases there isn’t just one problem but a handful of poor practices or as in this case some really good practices, poorly applied.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;Now it is not unusual for PHP to “take it on the chin” for the sins of poorly applied technologies like Dojo, ExtJS and others.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Frequently, we at Zend are in the trenches of a “This PHP application performs like $@#%” war and have to explain that the PHP is perfectly fine.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;In many cases the lack of indexes on SQL calls, tuning of the FastCGI or overuse of ajax can contribute to poor application performance.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;This is why the Application Audit from Zend becomes EXTREMELY valuable.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Forgive me as I am not trying to turn this into an advertisement for our canned services as much as relating a recent experience.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;&lt;/explicative&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;After we finished the application audit, our auditor creates a summary.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Sometimes in as few as 20 pages and others have shot well past 100.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;The length of the document really depends on what we find and the overall size and complexity of the application. Once the summary is completed we schedule a conference call with the auditor, customer and maybe a couple of carefully selected folks from Zend. For example, it would not be unusual to have someone from the ZF team join the call for a customer who is using ZF and needs direction on how best to optimize it.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;We went into the call for this customer with our punch list and I got to drive the discussion.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;Like many of my discussions, I tend to think on the fly.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;The combination of ADD, diverse cultural experience and IT training gives me a unique ability pull analogies out of thin air.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Some at Zend have referred to this as the “Pavlakian Response”.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;I was honored when they named it…I think.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Regardless, I got on a bit of a roll with this customer as I started down a food analogy. Everybody can relate to food!&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;We all have to eat, we’ve all had good meals and we’ve all had meals that left us a little less impressed.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;In this case, I chose to attack the application issues using the spicing analogy.&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;The meat and potatoes of most PHP applications are typically made up of the PHP code, HTML and database access.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;In most transaction based applications THIS IS ALL YOU NEED.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Now stop with the torches and pitchforks regarding ZF, CSS, JavaScript, etc.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;I’m not saying those technologies are not valuable; in fact it is quite the contrary. I think JavaScript is EXTREMELY valuable and would encourage everyone to get educated.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;But just like with food, a balanced approach can make for an ideal experience. &lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;Different applications require different solutions much like food may differ based upon the environment.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;You simply cannot compare a buffet at a conference to a seven course meal at a fine steak house, yet I have enjoyed the experience of both.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;Clearly this application was using JavaScript more like an entrée than as a spice and was causing significant problems with latency and unnecessary page rebuilds.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;For example, somewhere along the line they forgot that the A in ajax stands for asynchronous.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Instead they were building everything serially, every time the page was built!&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;This is nice for graphical applications or high level summaries where the data may not change very often.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;But in transaction processing you do not want to make the data entry folks wait for a summary element to be built before they can continue keying.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;As IBM i programmers we know this.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;As web designers become transaction based application developers, a little time in the kitchen working on how to make a balanced meal is in order!&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;These analogies come in handy because sometimes you never quite know who you are talking to on the phone.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;The audience for this call was very diverse as everyone on the phone understood what the application was supposed to do but each person possesses a very different level of technical expertise.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;While opening up the code might work for the developers in the room the business analysts and executives who may not have seen code in a few years might not appreciate the level of detail and potentially tune out.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;The food analogy helped all of the people in the room relate the fundamental issue and communicate at a common level.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;While nothing communicates value like a shared understanding we all can relate to a really good meal!&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;So, I ask you, are you using Ajax or other technologies as a spice or as an entrée? &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-6287241106389928617?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/6287241106389928617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/07/is-ajax-spice-or-entree.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/6287241106389928617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/6287241106389928617'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/07/is-ajax-spice-or-entree.html' title='Is Ajax a spice or an entree?'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-4321181007496282132</id><published>2011-06-16T18:14:00.000-07:00</published><updated>2011-06-22T12:20:52.368-07:00</updated><title type='text'>Global Services means GLOBAL SERVICES...</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;br /&gt;When they say Global Services, they really mean Global Services…&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Some of you may be aware that I used to report to the manager of the North American region.  A few months ago I was moved to Global Services which is an awesome reaction to some of the work I have done at Zend.  As a result I had a chance to visit the Zend folks in Europe including Paris, Cologne and Milan.  The trip was well planned and orchestrated by the local team and I sure had my skates on!  One thing that became crystal clear is that there is HUGE demand for application modernization using PHP in Europe!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;First, in the West end of Paris I had a wonderful opportunity to meet one of the few remaining IBM i focused FTSS (Field Technical Sales Support) by the name of Philippe Beorgeois.  Philippe hosted a two day event at the IBM offices near the West side of Paris on modernization and I had a chance to present an introductory breakout session on PHP for IBM i.  With well over 170 attendees and about 35 people in my room the event was a HUGE success on every level.   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Our team in Paris including Christophe, Christian, Clement  and David were exceptional hosts.  I did not have to worry about anything as they make sure I did not get lost.  I would highly recommend the Metro system and anxiously await Scott Klement to review the rail someday.  Speaking of rail, on Wednesday I took a bullet train (&lt;a href="http://www.thalys.com/"&gt;Thalys&lt;/a&gt;) from Paris to Cologne Germany where I met our local account manager Stefanie.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-Az2R8WFqgCU/TftdW-Ft4iI/AAAAAAAAAEA/n7BoD5Z18dA/s1600/ThalysCologne.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 390px; height: 365px;" src="http://2.bp.blogspot.com/-Az2R8WFqgCU/TftdW-Ft4iI/AAAAAAAAAEA/n7BoD5Z18dA/s400/ThalysCologne.jpg" alt="" id="BLOGGER_PHOTO_ID_5619187609280307746" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;She introduced me to a wonderful customer called GroupMT where Dr. Rainer Schmitz is working magic with PHP on his IBM i.  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;Here is the link to his &lt;a href="http://www.zend.com/de/resources/webinars/"&gt;webinar&lt;/a&gt; in German where he discusses some of his awesome achievements. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Two big discoveries as Cologne is the home of &lt;a href="http://en.wikipedia.org/wiki/K%C3%B6lsch_%28beer%29"&gt;Kolsh&lt;/a&gt; style beer so I had to try some…&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;The &lt;a href="http://en.wikipedia.org/wiki/Cologne_Cathedral"&gt;Dome of Cologne&lt;/a&gt; which is a magnificent cathedral that is the final resting place of the &lt;a href="http://www.newadvent.org/cathen/09527a.htm"&gt;Magi&lt;/a&gt; (three wise men from Christian history).  As I emerged from the train station I got a great look at the cathedral.  I received a call from Stefanie who asked where I was and I responded “I’m between the train station and this really dirty church…” she giggled and new exactly where I was.  After checking with a few of the locals I discovered the dirt is from hundreds of years of train soot.  There is a walking tour available inside the cathedral for the low price of a 1 euro donation.  I highly recommend the investment. &lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-mt9bbZWToP8/TfteJK6RJrI/AAAAAAAAAEI/ZhccCZzKWac/s1600/CologneCathedralClose.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://3.bp.blogspot.com/-mt9bbZWToP8/TfteJK6RJrI/AAAAAAAAAEI/ZhccCZzKWac/s400/CologneCathedralClose.jpg" alt="" id="BLOGGER_PHOTO_ID_5619188471715407538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;When it was time to leave Cologne, Stefanie dropped me off at the station and when I saw my train come up on the board I saw a message.  It was in German so out came the Blackberry and thanks to Google Translate I discovered the message read “fall from train”.  Needless to say the last train was canceled so I headed back to the &lt;a href="http://www.starwoodhotels.com/fourpoints/property/overview/index.html?propertyID=1412"&gt;Four Points&lt;/a&gt; hotel for one more night and enjoyed a little more Kolsch.   &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I got to spend my Saturday off in Paris and see some of the &lt;a href="http://www.aviewoncities.com/maps/paris.htm"&gt;sights&lt;/a&gt;.  This was very cool.  As I love to walk I took a Metro from my hotel in the opera district to the Eiffel Tower.  I was beginning to feel like an expert Parisian on the Metro.  I walked from the Eiffel Tower to the American Church, then to the Grand Palace, up the Tuileries to the Louvre and then to Notre Dame.  After experiencing the Cathedral in Cologne I was not as impressed with the size of Notre Dame as I was with the &lt;a href="http://www.usna.edu/Users/humss/bwheeler/notre_dame.html"&gt;relics&lt;/a&gt;.  The museum tour is a little over priced, but I would not have missed it for the world as they have a relic that contains a sliver from the cross of Jesus and many other priceless artifacts.  Feeling a bit tired I walked back to my hotel and grabbed a quick nap.  Then off to meet some awesome friends for dinner, Anne and Kent, who just happened to be on vacation in Paris.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Sunday was the trip to Milan and began my visit to &lt;a href="http://www.comeur.net/common/index.php"&gt;COMMON Europe&lt;/a&gt;.  Dinner that night was in a little café in the &lt;a href="http://www.panoramio.com/photo/14183692"&gt;Piazza el Duomo&lt;/a&gt;, a very famous cathedral.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-Step7JkKVeA/TftfE2otNdI/AAAAAAAAAEQ/rI7dgbe8BZk/s1600/piazza-del-duomo-milan-italy.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://2.bp.blogspot.com/-Step7JkKVeA/TftfE2otNdI/AAAAAAAAAEQ/rI7dgbe8BZk/s400/piazza-del-duomo-milan-italy.jpg" alt="" id="BLOGGER_PHOTO_ID_5619189497065190866" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The next day I went to COMMON and met with Angela and Elena, our Zend team in Italy.  Along with &lt;a href="http://www.zimuel.it/blog/"&gt;Enrico&lt;/a&gt; who has recently been recruited to the &lt;a href="http://www.zendframework.com/"&gt;ZF&lt;/a&gt; Core team from professional services, they do a great job taking care of our customers.  It was an unbelievable experience because as I presented my session in English there were attendants who translated it into Italian for people who got headsets.  It was a little unsettling when I told a joke because as the English speaking folks would giggle about 3 seconds later the folks with the headsets would giggle.  But a great turn out and wonderful response for PHP on IBM i!  several session by Zend and other companies regarding PHP!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-ScIhdmgkNhs/Tftk7Up6_OI/AAAAAAAAAEw/g-0RlZxebB0/s1600/IMG-20110523-00209.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/-ScIhdmgkNhs/Tftk7Up6_OI/AAAAAAAAAEw/g-0RlZxebB0/s400/IMG-20110523-00209.jpg" alt="" id="BLOGGER_PHOTO_ID_5619195930394426594" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The first night of COMMON we had a great dinner with some IBM’ers.  Met up with &lt;a href="http://ibmsystemsmag.blogs.com/you_and_i/"&gt;Steve Will&lt;/a&gt; and his lovely wife, Sherry, Alison Butterill, Trevor Perry and some new friends.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-KgdeFZyrdyc/TftlU5aciyI/AAAAAAAAAE4/HLoHh2KOAok/s1600/IMG-20110524-00211.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/-KgdeFZyrdyc/TftlU5aciyI/AAAAAAAAAE4/HLoHh2KOAok/s400/IMG-20110524-00211.jpg" alt="" id="BLOGGER_PHOTO_ID_5619196369758358306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The second night was the Gala event.  This was truly special as we were shuttled out to the country to a farm with live entertainment.  There was an Italian version of the renaissance fair where they conducted sword fights and dancing.  After a wonderful dinner we were shuttled back to the hotel and I saw a little more of Milan.&lt;br /&gt;&lt;br /&gt;Sessions at COMMON in Italy were VERY well attended.  The Zend team was fully engaged starting with Christian Durel our General Manager of European Operations.  Working with a couple of other partners he led a very popular round table on New Business Models, innovation, skills development and professional attitude as key factors to exit the current crisis.  Many attendees found it to be VERY helpful as they move forward in this treacherous economy!&lt;br /&gt;&lt;br /&gt;There were a few other PHP sessions that explored several different aspects of the technology.  it impresses me how creative people become once they realize the chains of the 5250 interface have been released.  Mobile, javascript, Flash and other technologies are both powerful and liberating.  Seeing members of the IBM i community en bracing these technologies reinforces the fact that we are all on the right track.&lt;br /&gt;&lt;br /&gt;Also on deck was Elena and Enrico who hosted a seminar on PHP on the last day.  I hear it went very well!  I could not stick around as I had to high-tail it home for my son's graduation.  Another AWESOME event!&lt;br /&gt;&lt;br /&gt;Without question this was an AWESOME trip.  WE covered a lot of ground, did a lot of business and saw a lot of the area.  Looking forward to my next trip across the pond which looks like it will be around November for an event in London!&lt;br /&gt;&lt;br /&gt;Woohoo!&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/4577455583142648696-4321181007496282132?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/4321181007496282132/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/06/global-services-means-global-services.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/4321181007496282132'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/4321181007496282132'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/06/global-services-means-global-services.html' title='Global Services means GLOBAL SERVICES...'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-Az2R8WFqgCU/TftdW-Ft4iI/AAAAAAAAAEA/n7BoD5Z18dA/s72-c/ThalysCologne.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-2785677823324874401</id><published>2011-05-06T23:28:00.000-07:00</published><updated>2011-05-09T09:49:33.504-07:00</updated><title type='text'>My Breakfast with Al</title><content type='html'>&lt;span style="font-family: arial;font-family:arial;" &gt;Several years ago I had just wrapped up some interesting &lt;a href="http://www.common.org/index.php/vol-groups/caac.html"&gt;CAAC&lt;/a&gt; meetings and I was standing around the &lt;a href="http://www.common.org/index.php/annualmeeting.html"&gt;COMMON conference&lt;/a&gt; registration area trying to decide on breakfast.  In walked &lt;a href="http://www.mr400.com/Al.html"&gt;Al Barsa&lt;/a&gt; who was looking to get into the same kind of trouble.  Having never met the man, he looked me in the eye and asked me if I wanted to go get something to eat.  I said sure, why not!  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;br /&gt;Certainly I had heard and seen of Al before that event.  His many session presentations at COMMON and around the country at local user groups, his tireless efforts advocating and consulting on IBM i, and his passionate questions at the “sound off” session at each COMMON conference were well known.  But I never thought I was worthy of breaking bread with the legend.   What I learned at that meal was very helpful to me and I try to put some of what Al said into my daily living.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;br /&gt;Al was very focused on two things: The IBM i community and his family.  His passion for both was about equal and he loved to tell stories about his kids or his systems.  It was difficult sometimes listening as I think even he struggled to separate them.  But it was clear where his passions lie.  I was inspired.  It was after that breakfast that I decided to start submitting material for sessions at COMMON.  Later at the conference, I considered myself fortunate to now be on a first name basis with the man.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;br /&gt;A few years later, the community was shocked by the terrible tragedy that Al had passed away on the last night of the COMMON conference in Nashville.  When I heard the news I was stunned.  Thanks to such tools as email and web forums, details started to spill and so did the many gestures of respect and reflections of the man.  We all discussed things like life and death and wondered what we could do.  Many said they wanted to contribute this and that.  With &lt;a href="http://midrange.com/"&gt;Midrange.com&lt;/a&gt; fielding most of the posts, &lt;a href="http://imho.midrange.com/author/david/"&gt;David Gibbs&lt;/a&gt; decided that he wanted to contribute too.  It was clear that Al had quite a long reach.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;br /&gt;Not too long after, the &lt;a href="http://www.common.org/index.php/ed-foundation.html"&gt;COMMON Education Foundation&lt;/a&gt; decided to arrange a memorial scholarship in Al’s name.  This scholarship is awarded once a year and is meant for only the people who best represented the commitment and caring qualities that Al had for the community.  The award has been given two times before this conference:  The first to Paul Rogers and the second to my good friend Larry “&lt;a href="http://www.frankeni.com/bio.html"&gt;Dr. Franken&lt;/a&gt;” Bolhuis.  As the third recipient of this prestigious award, I am lucky to share in some pretty awesome company.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;br /&gt;Al had quite a reputation as a hell raiser with IBM and I am proud to be honored with a reward that sees a similar trait in me.  While I am thrilled to win this award, I reflect upon my own life and how I have been running pretty hard myself these days.  As i look at the clock on the wall I see it is 1:45 am and maybe it’s time to slow down a bit.  Not too much, but just a little.  Enough to stop and smell the roses, admire my five children at athletics &amp;amp; academia and spend a little more time with the woman who makes me whole.  I challenge all of you to look into your own lifestyle and seek the balance that Al seemed to struggle with.  But even if Al’s life was not completely balanced, it sure was full of passion and love.  Godspeed, Al!&lt;/span&gt;&lt;span style="font-family:arial;"&gt;  As i reflect upon Al I am reminded of an old Japanese proverb: &lt;span style="font-weight: bold;"&gt;Vision without action is a daydream-Action without vision is a nightmare&lt;/span&gt;.  Al had a good dose of both and I am proud to be considered worthy of his memorial.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;br /&gt;Well, the COMMON Annual Conference is over and I know a lot of people who are heavily educated and a lot of other people who are completely exhausted.  But both are happy for the experience.  Working with any volunteer group can be a rewarding experience.  I have found that my local user group &lt;a href="http://omniuser.org/"&gt;Omni&lt;/a&gt; and the national user group COMMON can be very rewarding.  If you ever thought of helping out a local user group please consider stepping forward.  Consider folks like Al and the commitment and passion they brought to the platform.  You too can make a huge difference with surprisingly little effort.  &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-2785677823324874401?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/2785677823324874401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/05/my-breakfast-with-al.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2785677823324874401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2785677823324874401'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/05/my-breakfast-with-al.html' title='My Breakfast with Al'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-831936849019072961</id><published>2011-04-16T05:05:00.000-07:00</published><updated>2011-04-18T11:24:09.089-07:00</updated><title type='text'>Database or Bust!</title><content type='html'>&lt;span style="font-family:arial;"&gt;A couple of years ago I was quoted as saying “&lt;a href="http://systeminetwork.com/article/inevitable-rise-php"&gt;Let’s have a going away party for DDS…&lt;/a&gt;”&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;That article caused a lot of commotion in the community.  I like that.  Stirring things up. That is part of what I do.  I’m not nearly as provocative as some of the other players in the space, but I do my best to get my licks in.  &lt;a href="http://systeminetwork.com/author/chris-maxcer"&gt;Chris Maxcer&lt;/a&gt; did a great job of capturing some of the passion and emotion of members of the community but enough is enough. &lt;a href="http://en.wikipedia.org/wiki/Sql"&gt; SQL&lt;/a&gt; is here to stay and if you don’t believe me just look around.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I was speaking at the &lt;a href="http://www.systemideveloper.com/conferences.html"&gt;RPG &amp;amp; DB2 Summit&lt;/a&gt; conference last month and I happened upon a breakfast table where &lt;a href="http://systemideveloper.com/Summit/speakers.html#SM"&gt;Skip Marchesani&lt;/a&gt; was chatting with a few folks.  I had gotten to know &lt;a href="http://systemideveloper.com/Summit/speakers.html#JP"&gt;Jon&lt;/a&gt;, &lt;a href="http://systemideveloper.com/Summit/speakers.html#SG"&gt;Susan&lt;/a&gt; and &lt;a href="http://systemideveloper.com/Summit/speakers.html#PT"&gt;Paul&lt;/a&gt; a bit over the years.  But for some reason Skip and I never really crossed paths.  Not sure why, though I am sure I attended a few of his sessions on database.  Regardless, this was a great opportunity to see Skip in action so I politely asked if I could sit down and was graciously accepted to the circle.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Skip was embroiled in the age old discussion of “should I throw away my DDS and move to SQL?”  Truly a religious war if I ever heard one.  My initial reaction was “Hell Yeah!” but I wanted to hear more.  Having been cornered in a religious war or two has made me a little more reserved in the timing of my responses.  In this case I watched the master at work.  Skip acknowledged each of the attendee’s concerns.  Performance, scalability, RPG/SQL performance vs. record level access.  I was happy to say that a lot of my own impressions were in line with what Skip was saying.  Woohoo!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;When the conversation died down I jumped in with a few comments of my own that Skip probably would have offered but timing may have given me an advantage.  Things like cross platform ubiquity and the fact that school kids KNOW SQL and not record level access.  Solutions like MySQL and &lt;a href="http://harrypotter.wikia.com/wiki/Puking_Pastille"&gt;Miscrosoft Access&lt;/a&gt; do a great job of weaning people onto SQL.  Languages like &lt;a href="http://en.wikipedia.org/wiki/Java"&gt;Java&lt;/a&gt;, &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; and others use SQL as a primary data access mechanism and thus the programmers KNOW SQL.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;It was a healthy discussion that ended somewhat awkwardly as some do.  The attendee was the sole supporter of his software.  He had no intention of rewriting the application any time soon.  He had no need for a DDS to SQL migration.  From that Skip and I were hard pressed to encourage him to move everything.  “By golly” we said “leave it alone!”  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;But, from the perspective of keeping the skills up and learning something new the attendee did surprise us by saying he would take a piece of his application and give it a try.  He would explore the opportunities of SQL vs. DDS and report back his experience.  At that point I felt that we had achieved the goal.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;One of the things I harp on in my sessions and I would bet Skip would agree, is that you should use the right hammer on the right nail.  Frequently folks try to bait me into a religious war on Java vs. PHP.  I’m sorry, that dog just doesn’t hunt.  We could be here for days talking about the advantages of one over the other and it would only become a religious discussion.  If you like Java and have a lot of Java and want to explore PHP?  That’s OK.  If you decide to stick with your Java, that’s OK too!  Make an informed decision and move confidently in the direction you like.  Same goes for this guy and DDS.  If he were looking to turn his application into the next generation of the software and add in new features, etc.  Skip and I would have beat him mercilessly about the head and shoulders with SQL.  But it was clear he was leveraging the investment.  That’s OK too.  As long as you are willing to absorb the risks and the rewards, have at it!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So, in a nutshell, “DDS is dead!...Long live DDS!”     &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-831936849019072961?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/831936849019072961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/04/database-or-bust.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/831936849019072961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/831936849019072961'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/04/database-or-bust.html' title='Database or Bust!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-2836942623890129777</id><published>2011-03-17T10:22:00.000-07:00</published><updated>2011-03-17T10:42:14.091-07:00</updated><title type='text'>Interview with the ElePHPant</title><content type='html'>&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-c2B6Rxei6FU/TYJGyzZeYgI/AAAAAAAAAD0/bYExXL_tkPQ/s1600/fan-with-elePHPant-zendcon1.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/-c2B6Rxei6FU/TYJGyzZeYgI/AAAAAAAAAD0/bYExXL_tkPQ/s400/fan-with-elePHPant-zendcon1.jpg" alt="" id="BLOGGER_PHOTO_ID_5585104326497296898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Many of you may have seen or heard of the PHP elePHPant.  He has been making the rounds to different events around North America and is looking forward to another exciting year of visiting different parts of the country and the world to meet &amp;amp; greet the PHP faithful wherever they are playing.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;This entry is a very special edition where we get an exclusive interview with “the” PHP elePHPant!  Many of your questions about this mysterious creature can be answered here finally and for the first time.  We are very lucky to have bumped into the elePHPant at an event in Texas.  Here is his story. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="file:///C:/Users/mike.p/Pictures/Zend/fan-with-elePHPant-zendcon1.jpg" alt="" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Mike: You have been reclusive and it seems that last year you came out of hiding to meet folks around the world who are doing PHP.  What is your background and where do you hail from?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPant: It is really very boring story, but if you insist, I was born in Kenya.  Although there are many who wish to dispute that.  After growing up with a couple of my siblings I got the itch to move beyond the limitations of the African continent and started traveling the world.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Mike: So great to hear about where you came from, where do you call home today?  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPant: Today I live in suburban Chicago.  It is a great town for pachyderms and other wild life because there is very little that impresses the typical Chicagoan.  Looking forward to the new mayor as some say he used to work for an ex-Kenyan.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Mike: You mentioned that you have siblings.  Have we seen any of them?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPant: My brother is mascot for Republican party and since I live in Chicago he doesn’t come by to visit very much.  Nice guy but ironically he can be a bit of an ass!  Some years ago my sister got hooked up with some bad folks back in the old country and ended up doing taxi work in India, got a small family, etc.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Mike: I hear you’ve been sighted all over the states: Orlando, San Antonio, San Jose and Chicago.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPhant: Yeah it’s been great.  Although I fly SW and they get a little cranky when I take up two seats.  I am an elephant for heaven sake. What are they thinking? With a little luck I will get to Minneapolis, St Petersburg and possibly Europe.  But those long flights in coach can really be a challenge.    &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Mike: Why do you fly SW, someone with your notoriety should be able to get 1st class on a major carrier.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPant: Two words: Free Peanuts!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Mike: I guess that makes sense…How did you ever get connected with PHP?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPant:  Well, to make a long story short, I just couldn’t get my trunk around Java.  I bumped into a couple penguins while vacationing in Madagascar.  They were talking about how their guy Rico was able to throw up a web site with no cash and serve up some content for their “clients.” I chatted them up and they were happy to share a little, but they were rather cagey about the specifics of their content.  Then I turned around and they were gone.    They struck me as really nice fellas, but a bit paranoid.  Later, &lt;a href="http://www.elroubio.net/"&gt;this guy in France&lt;/a&gt; saw me on IRC and asked me if I’d mind posing.  Then this hits the street and the rest they say is history!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Mike: So I have seen you at a couple of shows, most notable the IBM conference called COMMON and the PHP tek conference in Chicago.  While you are obviously a huge fan of PHP I see you have a Zend cape.  Does that get you into trouble with the PHP community who may not look favorably on a commercial endorsement?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPant:  Look, I’m not looking to piss off anyone but I got my own family to feed.  Work has been tough lately and as you can guess, my grocery bill isn’t exactly small.    I used to compile my own binaries and stack. It was pretty cool to optimize everything EXACTLY as I liked it.  But, after a while, the maintenance got a little old.  I was more interested in the development of apps and the constant changes to PHP for security and other reasons was a real hassle.   Then a guy turned me on the Zend Server CE and I became a fan.  It has just about everything I want and now a local shlub at the customer site can maintain the server and I can focus on developing apps.  That’s just how I roll these days and would not deny anyone the opportunity to experience building the stack from scratch.  But I’ve ben there and done that so it’s time for me to move on.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Mike: So do you use Zend Server CE exclusively or are you using some of the supported features of the full Zend Server product? &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPant: It really depends on the client.  Sure there are a lot of cheap companies out there and they know I’ll work for peanuts.  But then they find out just how many peanuts I need and they change their tune pretty quick!  I show them the advanced features and set up a demo with Ed or Mike at Zend.  They really do all the heavy lifting as far as showing the solution.  But the real benefit is the ROI.  Having access to Code Tracing means I can get home at night and tuck in the little ones rather than calling on my cell phone, yet again, to wish them goodnight!  Keeps the Mrs. Happy, too.  Have you ever seen an overworked female elephant with an attitude?  It’s not pretty.  You know the old saying, if big momma isn’t happy, ain’t NOBODY happy!  Zend Server helps me code in PHP all day, get home at night, and I can still play on other side jobs with the same distribution whether it is full Zend Server or CE!  Consistency is key!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Mike: But what’s with the cape?  I mean, did Zend pay for you to have a little space on your…ahem…back for advertising?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ElePHPant:  Listen, that cape is symbolic as it really implies that I can fly.   And, with the bytecode, data and page caching features of Zend Server my sites fly.  There is no formal agreement with Zend but when I’m in the Zend office they have these really cool macadamia’s they fly in from Honolulu and I’ll do just about anything for those!  I’m such a tramp!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Mike: Well I want to thank you for the time you spent with us today.  If you had one thing you would like to share with the masses about PHP, what would that be?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; ElePHPant: Just do it!  PHP is pretty hot right now.  Sure there are plenty of Java bigots out there who feel the need to slam PHP, but at the end of the day you just need to play and then decide for yourself.  One third of the internet running on PHP and 1.7% of the Internet sites worldwide running Drupal is kind of hard to sneeze at.  Although, when I sneeze, folks do take notice… &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-2836942623890129777?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/2836942623890129777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/03/interview-with-elephpant.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2836942623890129777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2836942623890129777'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/03/interview-with-elephpant.html' title='Interview with the ElePHPant'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-c2B6Rxei6FU/TYJGyzZeYgI/AAAAAAAAAD0/bYExXL_tkPQ/s72-c/fan-with-elePHPant-zendcon1.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-5252597856305838293</id><published>2011-02-18T06:10:00.000-08:00</published><updated>2011-02-18T06:38:08.984-08:00</updated><title type='text'>Confessions of a PHP advocate: Hey Java, I’m sorry if I hurt your feelings…</title><content type='html'>&lt;span style="font-family: arial;"&gt;This article looks at what several members of the &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; community are up to, and more...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Is &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;ready for enterprise?  I say yes but why not let the community answer and vote with their feet!  People have been using &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;as a programming language for several years to manage content and now mission critical data entry applications.  People in various technology religions tend to focus on a single point in an effort to attack a technology.  That’s OK as people with a limited perspective should be allowed to focus.  The point of this blog article is to broaden the perspective of all developers and essentially say, use what you feel is the correct technology that applies to your application.  If &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;is a strong candidate then great!  If Java makes more sense for you because of your current shop skill sets then have at it.  Ultimately, it is nice to know we have choices.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;I won’t engage directly into the religious wars of Java and &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;but I am guilty of playfully poking at other technologies.  I have been accused of disparaging Java in a few forums.  Obviously these folks don’t know me very well because I disparage all languages simply because each language has its own strengths and weaknesses.  In my presentations I am certainly guilty of having fun at the expense of Java, RPG, and COBOL.  I have even taken a shot at Paschal, FORTAN and PL1.  I kind of liken my playfulness with programming technologies as Mel Brooks tends to poke at nationalities.  I have a healthy respect for Java and please keep in mind that our workbench &lt;a href="http://www.zend.com/en/products/studio/"&gt;Zend Studio&lt;/a&gt; is Java based (&lt;a href="http://www.eclipse.org/"&gt;Eclipse&lt;/a&gt; is a Java project)   If I offend anyone that is not my intention and I apologize.  But my method of communication is doubtful to change any time soon.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;With regard to some recent forum posts about dynamic vs. static typing, please use your own judgment.  If you were not aware of a “pro-PHP” perspective on the topic, please check out this posting from a prominent member of the &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; community and very good friend &lt;a href="http://www.eschrade.com/"&gt;Kevin Schroeder&lt;/a&gt;.   &lt;a href="http://www.eschrade.com/page/objections-dynamic-typing-4d5038ad"&gt;Kevin's blog article&lt;/a&gt; explores what he views are the myths and misconceptions many folks have when comparing strongly typed languages vs. dynamically typed languaes.  i encourage folks to review it before taking an extreme perspective, one way or the other.  After all, 1/3rd of the internet would not be running on PHP if it sucked and would roughly 7 of the&lt;a href="http://www.alexa.com/topsites"&gt; top 10 internet sites by WWW traffic&lt;/a&gt; be running PHP?  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;What I will comment on is the diversity in the community as &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;continues to grow its following.  If you happen to check out some of our recently released &lt;a href="http://www.zend.com/en/resources/case-studies/"&gt;Case Studies&lt;/a&gt; then you can see that some folks are taking more than a passing interest in &lt;a href="http://php.net"&gt;PHP&lt;/a&gt;.  &lt;a href="http://www.zend.com/topics/Corvette-America-CS-1210-R1-EN-RS.pdf"&gt;Corvette America&lt;/a&gt; and &lt;a href="http://www.zend.com/topics/VDM-CS-1010-R1-EN.pdf"&gt;Value Drug Mart &lt;/a&gt;widens the perspective of some long time &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;advocates for IBM i like &lt;a href="http://static.zend.com/topics/Allied-Beverage-CS-0111-R1-EN.pdf"&gt;Allied Beverages&lt;/a&gt; and &lt;a href="http://www.zend.com/topics/Aarrowcast-CS.pdf"&gt;Aarowcast&lt;/a&gt;.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;And furthermore, there are these crazy guys at &lt;a href="http://www.idevcloud.com/"&gt;iDevCloud&lt;/a&gt;!  I have known &lt;a href="http://www.google.com/url?sa=t&amp;amp;source=video&amp;amp;cd=1&amp;amp;ved=0CDYQtwIwAA&amp;amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D7qLwuDKQd1Q&amp;amp;rct=j&amp;amp;q=jim%20oberholtzer%20IBM&amp;amp;ei=8IFeTduFD8T68AblxICoDA&amp;amp;usg=AFQjCNFjngA22trm9Ztp1E8inU3MwijmIw&amp;amp;sig2=rzu8PMszHlxUIy7slHO8VA&amp;amp;cad=rja"&gt;Jim Oberholtzer&lt;/a&gt; and &lt;a href="http://www.frankeni.com/bio.html"&gt;Larry Bolhuis&lt;/a&gt; for some time and their latest escapade has really struck a note.  &lt;a href="http://www.idevcloud.com/"&gt;iDevCloud &lt;/a&gt;is all about making &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt; affordable to those who need a place to develop or learn but can’t afford their own box.  Jim and Larry are world renowned for cleverly assembling IBM i hardware and software to suit their needs and sharing those precious resources with folks looking to learn more about &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt;.  &lt;a href="http://www.zend.com/"&gt;Zend&lt;/a&gt; has partnered with &lt;a href="http://www.idevcloud.com/"&gt;iDevCloud &lt;/a&gt;to provide the full version of &lt;a href="http://www.zend.com/en/products/server/"&gt;Zend Server&lt;/a&gt; for each of their environments so that folks looking to learn &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;on &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt; not only have the environment, but also the best tools for developing &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;applications.  Jim has reported that the overwhelming majority of the customers using &lt;a href="http://www.idevcloud.com/"&gt;iDevCloud &lt;/a&gt;have purchased a contract so that they could learn &lt;a href="http://php.net"&gt;PHP&lt;/a&gt;!  This is huge!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Furthermore, Jim has written the management of the iDevCloud site in a &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;framework known as &lt;a href="http://www.zendframework.com/"&gt;Zend Framework&lt;/a&gt; (ZF) and it is running 100% on &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt;.  If anyone tells you that something cannot run on &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt;, please send them my way.  I tend to believe that anything is possible, although something just may not be practical like running a VB application on &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt;.  But I digress.  Jim is in the process of developing content for a series of presentations where he will be talking more about the &lt;a href="http://en.wikipedia.org/wiki/Model%E2%80%93View%E2%80%93Controller"&gt;MVC&lt;/a&gt; architecture of &lt;a href="http://framework.zend.com/"&gt;ZF&lt;/a&gt; and &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;for IBM i developers.  This is a good thing as many &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt; shops want to use &lt;a href="http://framework.zend.com/"&gt;ZF&lt;/a&gt; but struggle on basic concepts and where to get started.  Zend offers training, of course, but assumes you have a solid foundation in Object Oriented principles.  This creates a bit of a gap as most RPG and COBOL developers have a procedural background and have avoided OO for years.  Jim along with several other folks in the community are looking to close that gap and enable RPG and COBOL programmers with the tools and concepts to adopt all kinds of &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;concepts.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Yes, having a choice is a nice thing!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-5252597856305838293?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/5252597856305838293/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/02/confessions-of-php-advocate-hey-java-im.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5252597856305838293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5252597856305838293'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/02/confessions-of-php-advocate-hey-java-im.html' title='Confessions of a PHP advocate: Hey Java, I’m sorry if I hurt your feelings…'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-1203257439865217873</id><published>2011-01-07T16:01:00.000-08:00</published><updated>2011-01-07T16:56:54.090-08:00</updated><title type='text'>Patches?  We don need no Stinkin' Patches!</title><content type='html'>&lt;span style="font-family:arial;"&gt;Well, if you are familiar with that famous scene from the “&lt;a href="http://www.youtube.com/watch?v=VqomZQMZQCQ"&gt;Treasure of the Sierra Madre&lt;/a&gt;” you probably have an idea where I am going…&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I am having a little fun here with my reference to this classic film and the recent &lt;a href="http://www.exploringbinary.com/php-hangs-on-numeric-value-2-2250738585072011e-308/"&gt;PHP hotfix&lt;/a&gt; that was developed to address a processor exploit.  The truth is that all systems need patches sooner or later.  Some operating systems need them more than others and release them on a &lt;a href="http://www.microsoft.com/security/updates/bulletins/default.aspx"&gt;weekly basis&lt;/a&gt;.  Others batch them up and say &lt;a href="http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/index.html"&gt;come and get them when you are ready&lt;/a&gt;.  But as we know, on the IBM i things are a little bit different.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;First, let’s explore what happened.  On the &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; website you can read an &lt;a href="http://www.zend.com/en/company/news/news-links/php-remote-exploit-information-and-hotfix"&gt;article&lt;/a&gt; that describes the issue.  Essentially there was a flaw in the floating point conversion of the &lt;a href="http://www.zend.com/en/community/php/"&gt;Zend Engine&lt;/a&gt; that when running on some  &lt;a href="http://www.intel.com/support/processors/sb/CS-001471.htm"&gt;processors&lt;/a&gt; that could cause a site to seize up.  As an organization, &lt;a href="http://www.zend.com/en/products/"&gt;Zend R&amp;amp;D&lt;/a&gt; and several other groups within the company jumped in and deployed the patch in a mere 24 hours from the point of diagnosis.  Not bad if you are looking for &lt;a href="http://shop.zend.com/en/ibm-i-solutions.html/"&gt;enterprise support for PHP&lt;/a&gt;, I’d say.  Here is the important thing, who was exposed?  This article goes on to talk about the architectures that were not impacted.  Those include Intel &lt;a href="http://www.linuxforums.org/forum/linux-tutorials-howtos-reference-material/69585-should-you-choose-32-bit-64-bit-linux.html"&gt;64-bit Linux&lt;/a&gt;, &lt;a href="http://www.apple.com/macosx/"&gt;MAC OSX&lt;/a&gt; and &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.  So why was &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; safe?  Simply put, &lt;a href="http://www-03.ibm.com/systems/power/news/announcement/20100209_annc.html"&gt;Power PC&lt;/a&gt;!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;People who get embroiled in the religious wars over platforms tend to lose sight of the significant value proposition that we enjoy simply because we run on another processor.  Does that mean the &lt;a href="http://www-03.ibm.com/systems/power/news/announcement/20100209_annc.html"&gt;PowerPC&lt;/a&gt; is without flaws?  Hardly.  But it does mean that we enjoy a little security through obscurity.  Hackers and exploiters are simply not attacking &lt;a href="http://www-03.ibm.com/systems/power/news/announcement/20100209_annc.html"&gt;PowerPC&lt;/a&gt;.  Why?  Well probably for the same reason you don’t see too much in the trade press about it.  &lt;a href="http://www-03.ibm.com/systems/power/news/announcement/20100209_annc.html"&gt;Power PC&lt;/a&gt; is powering the &lt;a href="http://www-03.ibm.com/systems/power/?cm_re=masthead-_-products-_-sys-power"&gt;Power&lt;/a&gt; systems at &lt;a href="http://ibm.com/"&gt;IBM&lt;/a&gt; and some game station like &lt;a href="http://wii.com/"&gt;Wii&lt;/a&gt;, &lt;a href="http://www.xbox.com/"&gt;Xbox&lt;/a&gt;,  &lt;a href="http://us.playstation.com/"&gt;PS3/PS4&lt;/a&gt;, etc.  so the folks who have a Power System are using it for business, and the gamers are hacking their boxes to load Linux on a 64-bit architecture.  Woohoo!  We’re safe on this one!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;But, enjoying the wonderful safety of &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; does not mean we should sit back and expect that “&lt;a href="http://www.murphys-laws.com/murphy/murphy-true.html"&gt;Murphy&lt;/a&gt;” will never come knocking.  The reality is that the &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; has one of the best “patching” processes in the industry and the fact that most IBM i developers have no clue about it lends itself to significant credibility as most of you simply do not HAVE to know about it.  So after talking to so many of you I figured I summarize some of the recent discussion point about &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF’s&lt;/a&gt; and Zend as a bit of a refresher.  For an in depth discussion on &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF&lt;/a&gt; strategy, I would highly recommend &lt;a href="http://www.idevcloud.com/"&gt;Larry “Dr. Franken” Bolhuis&lt;/a&gt;' presentation “&lt;a href="http://common.confex.com/common/s10/webprogram/Session26995.html"&gt;Managing IBM i PTF’s&lt;/a&gt;” at &lt;a href="http://www.common.org/"&gt;COMMON&lt;/a&gt; or a local user group near you!&lt;/span&gt;  &lt;span style="font-family:arial;"&gt;Here are two slides he donated to this blog for your consideration!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TSe2OyN0OJI/AAAAAAAAADo/T9QV8p6wz0s/s1600/slide1.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 280px;" src="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TSe2OyN0OJI/AAAAAAAAADo/T9QV8p6wz0s/s400/slide1.JPG" alt="" id="BLOGGER_PHOTO_ID_5559612630126311570" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_h4u4Pb99Lhc/TSe1-YjfP6I/AAAAAAAAADg/gO2QnwwozBk/s1600/slide2.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 269px;" src="http://2.bp.blogspot.com/_h4u4Pb99Lhc/TSe1-YjfP6I/AAAAAAAAADg/gO2QnwwozBk/s400/slide2.JPG" alt="" id="BLOGGER_PHOTO_ID_5559612348359983010" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;First, a refresher on how and where &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server&lt;/a&gt; runs on &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.  There are two major worlds that comprise the IBM i Zend Server universe.  The first is the &lt;a href="http://www-03.ibm.com/systems/i/software/http/"&gt;IBM HTTP Server Powered by Apache&lt;/a&gt; and the second is &lt;a href="http://www-03.ibm.com/systems/i/software/http/"&gt;PASE&lt;/a&gt; (Portable Application Solution Environment).  Ideally your system manager should have a strategy in place for keeping current with &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/guide/terms.html#cmptfpkg"&gt;Cumulative&lt;/a&gt; and &lt;a href="http://www-912.ibm.com/s_dir/sline003.NSF/GroupPTFs?OpenView&amp;amp;view=GroupPTFs"&gt;Group PTF’s&lt;/a&gt;.  If that is the case then you should be good to go.  If not, get some religion NOW and some help if you need it.  Either way, please read on!  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Starting with the Apache server I would direct your attention to the group &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF&lt;/a&gt; for HTTP for your respective OS version.  It is easy to determine where you are on this food chain as IBM has created a one stop shop to see your current status.  Simply run the WRKPTFGRP command from the green screen and press F11 to see the descriptions for the group &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF’s&lt;/a&gt; that are currently installed.  If, per chance, you run the command and see nothing, there is a very good possibility that you have no group or cumulative &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF’s&lt;/a&gt; installed or applied.  Need I say more to you about that?  I think not.  If you have groups installed you should be able to navigate around the screen to see the current level.  Find that current level and then head to the IBM website for Fix Central.  This page contains a VERY valuable link for current group &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF&lt;/a&gt; levels.    Compare your level to the IBM level to get a “feel” for how far off you are.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I am pleased that most of my customers tell me they are either current or only a level or two behind.  Every once in a while, though, I get someone who cannot install Zend Server and when I ask about their &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF&lt;/a&gt; levels they will respond “What’s a &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF&lt;/a&gt;?”  I walk them through the steps identified above and we discover a lot!  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So why do I need &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF&lt;/a&gt;’s to implement Zend Server on IBM i?  Well, the word “need” is a relative term.  When Zend revised the stack from Zend Core to Zend Server on IBM i, several changes were implemented to address a number of customer requirements.  Most notable was the dual Apache configuration of Zend Core.  To achieve a better performance model and reduce the Apache servers to a manageable ONE, IBM and Zend collaborated on delivering &lt;a href="http://www-03.ibm.com/systems/i/software/http/product/brochure.html#PASEFASTCGI"&gt;Fast CGI&lt;/a&gt; as a method for deploying PHP on IBM i.  &lt;a href="http://www-03.ibm.com/systems/i/software/http/product/brochure.html#PASEFASTCGI"&gt;FastCGI&lt;/a&gt; is an open source approach to work with Apache servers and since IBM essentially OWNS the Apache server on IBM i, they have graciously built and provided the &lt;a href="http://www-03.ibm.com/systems/i/software/http/product/brochure.html#PASEFASTCGI"&gt;FastCGI&lt;/a&gt; infrastructure with significant contributions from Zend.  IBM implemented these changes as part of the base for &lt;a href="http://www-03.ibm.com/systems/power/software/i/v7r1/index.html"&gt;i7.1&lt;/a&gt; and via &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF’s&lt;/a&gt; for V5R4 and i6.1 as well as the interim releases.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Any company that implements new technology is going to have an aggressive update process.  IBM is no stranger to this phenomenon so in order to ensure that you have the latest and greatest fixes and features for &lt;a href="http://www-03.ibm.com/systems/i/software/http/product/brochure.html#PASEFASTCGI"&gt;FastCGI&lt;/a&gt; you should keep current with the group for HTTP as well as your Cumulative &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF&lt;/a&gt; package and PASE.  &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-1203257439865217873?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/1203257439865217873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2011/01/patches-we-don-need-no-stinkin-patches.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/1203257439865217873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/1203257439865217873'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2011/01/patches-we-don-need-no-stinkin-patches.html' title='Patches?  We don need no Stinkin&apos; Patches!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_h4u4Pb99Lhc/TSe2OyN0OJI/AAAAAAAAADo/T9QV8p6wz0s/s72-c/slide1.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-5342130290381134747</id><published>2010-12-14T06:56:00.000-08:00</published><updated>2010-12-14T09:49:58.796-08:00</updated><title type='text'>If you think education is expensive, try ignorance!</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Usually, I try to write about education in September.  I missed that point so now it’s time to make up some ground and look back at 2010 and forward to 2011…&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The title of this piece is probably one of my favorite bumper stickers.  I have a soft spot for people learning a new technology.  I for one know it is not easy as I had to battle my own complacency and really dig in to Linux based solutions this year.  I still have a way to go but gaining ground!  As a young veteran in the IT industry I found it hard to prioritize and focus.  there is no forgiveness in the number of distractions we must contend with today.  I have the unbelievable privilege of working with some of the smartest people on the planet and their patience has been a blessing.  But this experience makes me realize every day the value proposition of &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; in the &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; space and would not trade this job for the world!  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;2010 was a wonderful year.  I have been VERY privileged and honored to present several &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; sessions at user groups across the country and even in Europe!  But I also had the chance to present a bunch of sessions at both &lt;a href="http://www.common.org/"&gt;COMMON&lt;/a&gt; events, too.  I’m going to take a brief look at where we all went in 2010 and try to prognosticate on where 2011 is headed.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The year started off well with the beta announcement of &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i&lt;/a&gt; followed by the GA release in April and a West coast tour of user groups including &lt;a href="http://pacificmidrange.com/about.htm"&gt;PMSA&lt;/a&gt;, &lt;a href="http://www.cascadeusergroup.net/download.html"&gt;Cascade &lt;/a&gt;and Power SURG.  Spring gave way to the annual &lt;a href="http://www.common.org/index.php/annualmeeting.html"&gt;COMMON Meeting and Expo&lt;/a&gt; in Orlando, a &lt;a href="http://www.wash-midrange.org/"&gt;WAM&lt;/a&gt; East Coast tour (after a snow delay) and the traditional trek to the &lt;a href="http://wmcpa.org/"&gt;WMCPA &lt;/a&gt;conference. With the summer  trip to &lt;a href="http://www.gomitec.com/"&gt;MITEC &lt;/a&gt;and Irvine for the &lt;a href="http://www.ocean400.org/"&gt;OCEAN&lt;/a&gt; conference under my belt I got caught up on LPAR’s and updates as I prepared for the fall events in &lt;a href="http://www.common.org/index.php/fall-conference-and-expo.html"&gt;San Antonio for COMMON&lt;/a&gt;, &lt;a href="http://www.omniuser.org/index.php"&gt;Omni &lt;/a&gt;and a trip to Ireland &amp;amp; England.  I made some wonderful new friends at the Manchester event for Penton and at IBM’s South Bank in London.  The highlight of the trip, however, was meeting the UK arm of the &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; Sales team who work in an office space leased inside the &lt;a href="http://www.guinness.com/"&gt;Guinness Brewery&lt;/a&gt;.  What a hoot!  Last week I saw the fine folks in &lt;a href="http://www.gateway400.org/"&gt;St. Louis&lt;/a&gt; and talked PHP all day with hardly anyone running out of the room! &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;In my spare time I have tried to keep up with my family and the most aggressive schedule imaginable.  My wife is the most awesome quarterback keeping us all moving the ball forward and I would be lost without her!  But also I managed to teach a couple of classes in &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; at &lt;a href="http://www.morainevalley.edu/"&gt;Moraine Valley Community College&lt;/a&gt; and for &lt;a href="http://www2.systeminetwork.com/edu/e-learning/"&gt;SystemiNetwork&lt;/a&gt;.  Two things I plan to carry forward in 2011.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;But then there is 2011.&lt;br /&gt;&lt;br /&gt;What could be in the plans for Zend?  Well, we have not completely baked it yet but there are some AWESOME product announcements coming.  Kent Mitchell out Director of product Management gave a preview of &lt;a href="http://www.zend.com/en/products/server/"&gt;Zend Server&lt;/a&gt; 6 at &lt;a href="http://www.zendcon.com/"&gt;ZendCon &lt;/a&gt;with features like application activation that turns your PHP cluster into an iTunes like environment.  But clusters are not available for IBM i, you say?  Well how about an alternate PHP toolkit that gives full access to the OS with 100% Open Source code?  In the words of the immortal Mark Shearer, Watch this space!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Events for 2011 you can certainly bank on are &lt;a href="http://www.common.org/index.php/annualmeeting.html"&gt;COMMON in Minneapolis&lt;/a&gt; in the Spring and St. Petersburg in the fall.  I have just been accepted for a full day pre-conference workshop on &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; for the Spring COMMON and look forward to about 5-6 sessions too.  I am cutting back on sessions as we are seeing real traction from community members like &lt;a href="http://www.alanseiden.com/"&gt;Alan Seiden&lt;/a&gt;, &lt;a href="http://www.youngiprofessionals.com/"&gt;Brian May&lt;/a&gt; and &lt;a href="http://www.olen-inc.com/site/index.html"&gt;Jeff Olen&lt;/a&gt;.  These guys are not only &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; literate; they are in the trenches doing &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; every day!  I challenge everyone to get out to some event or do some offline training or even consider presenting a session at your local user group.  Pick something interesting, something fun.  Challenge yourself.  I don’t think you will be disappointed!  Watch out for other in the community to offer ways to learn PHP on IBM i.  The folks at &lt;a href="http://www.idevcloud.com/"&gt;iDevCloud&lt;/a&gt; are on the job and rocking out some really great opportunities.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;2010 saw the birth and rebirth of &lt;a href="http://www.imanifest-us.com/"&gt;iManifest&lt;/a&gt;.  &lt;a href="http://www.linkedin.com/in/jenniefer"&gt;Jen Halverson&lt;/a&gt; has done an AWESOME job of helping “herd the cats” and her passion is immeasurable.  I am glad she decided to join our team and offer HUGE assistance to a very necessary agenda.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;We will continue to see product announcements and fixes and updates and more.  &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; is not going away and neither am I!  But some of my roles in the community will change as I need to focus on other things.  More on that later.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I want to offer a hearty “thank you” to all of the folks who have welcomed me to their user groups.  The IBM i community is a VERY special crowd and many of you have made me feel very much at home whether I travel near or far.  It truly is a privilege meeting and speaking to the folks who love the IBM i as much as I do.  And I look forward to meeting even more new friends in 2011.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;In the spirit of the Holiday’s, I offer you all one wish:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Peace.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-5342130290381134747?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/5342130290381134747/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/12/if-you-think-education-is-expensive-try.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5342130290381134747'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5342130290381134747'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/12/if-you-think-education-is-expensive-try.html' title='If you think education is expensive, try ignorance!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-8810999359258021523</id><published>2010-11-12T11:50:00.000-08:00</published><updated>2010-11-18T17:21:51.194-08:00</updated><title type='text'>ZendCon 2010 - What a time!</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;a href="http://www.zendcon.com/"&gt;ZendCon 2010&lt;/a&gt; has come and gone.  If you were there you saw some pretty cool things.  If you were not there, why?  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The IBM i track was well represented by some truly awesome speakers.  Alison Butterill, &lt;a href="http://ibmsystemsmag.blogs.com/idevelop/"&gt;Susan Gantner&lt;/a&gt;, &lt;a href="http://www.alanseiden.com/2010/11/12/zendcon-2010/"&gt;Alan Seiden&lt;/a&gt; and Sam Pinkhasov all contributed to the usual cadre of PHP community speakers to make the overall experience well rounded and useful!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Each year I look forward to the &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt; evening customer networking event.  This year we were able to hold it in one of the rooms at the hotel and this is a perfect opportunity to round up the &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt; customers in a central location where they can do the most important thing they can do at this event: COMMUNICATE.  I think they all enjoyed it as we had to kick a few folks out of the room after last call.  I think education is important but hearing what other &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt; customers are doing with PHP is of great value to everyone.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;How about that ElePHPant!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;One of the things I love to do with &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM &lt;/a&gt;customers is review any new features they are looking for in the &lt;a href="http://www.zend.com/en/solutions/modernize-ibm-i/"&gt;Zend solution suite&lt;/a&gt;.  This is important because we need to hear what you are up to and what you need to make the solution better for your organization.  Just about everyone who has adopted &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i&lt;/a&gt; would extol the virtues of better performance and a single Apache server.  That came directly from the community.  A highlight of Sam’s session had to do with a new toolkit that is being developed.  We don’t have all the details yet, but it looks like it will add functionality and performance improvements over the existing i5 functions.  More to come VERY soon!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The IBM i sessions are listed below and the slides should be available on &lt;a href="http://joind.in/event/ZendCon2010"&gt;JoinedIn for ZendCon2010&lt;/a&gt; soon.  Anyone looking for the handouts from the IBM i sessions, please check this out!&lt;br /&gt;&lt;a href="http://alanseiden.com/presentation%20slides/Web-Services-on-IBM-i-with-PHP-and-Zend-Framework.pdf"&gt;Web Services with PHP, Zend Framework and IBM i&lt;/a&gt; by Alan Seiden&lt;br /&gt;PHP and IBM i by Alison Butteril&lt;br /&gt;The MySQL - DB2 for i Connection by Susan Gantner&lt;br /&gt;&lt;a href="http://alanseiden.com/presentation%20slides/PHP-for-batch-tasks-on-IBM%20i.pdf"&gt;PHP for Batch Jobs on IBM i&lt;/a&gt; by Alan Seiden&lt;br /&gt;What's New in Zend Server for IBM i by Sam Pinkhasov&lt;br /&gt;Expanding IBM i Applications to the IFS Easily with PHP by Mike Pavlak&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Start thinking about ZendCon 2011 now.  I think you be just jazzed about joining us!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-8810999359258021523?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/8810999359258021523/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/11/zendcon-2010-what-time.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/8810999359258021523'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/8810999359258021523'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/11/zendcon-2010-what-time.html' title='ZendCon 2010 - What a time!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-7167191596109938470</id><published>2010-10-11T09:50:00.000-07:00</published><updated>2010-10-12T10:09:00.431-07:00</updated><title type='text'>COMMON, LUG and Zend-Oh My!</title><content type='html'>&lt;span style="font-family:arial;"&gt;Last week was a long one but exciting!  First, flying out to San Antonio for the first annual &lt;a href="http://common.org/"&gt;COMMON&lt;/a&gt; fall conference and expo and then to the &lt;a href="http://www-947.ibm.com/systems/support/i/lug/index.html"&gt;LUG&lt;/a&gt; in Rochester, MN. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://common.org/"&gt;COMMON&lt;/a&gt; was a very nice event where many new and veteran speakers joined together to welcome over 250 people to the Crowne Plaza hotel in San Antonio, TX.  The facilities, expo and content seemed to fit just right.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; booth saw a lot of traffic from current and future customers.  Many people looking for alternatives to the current cadre of productivity tools and web solutions.  PHP sessions were well attended, too.  &lt;a href="http://common.org/"&gt;COMMON &lt;/a&gt;welcomed a new PHP speaker in &lt;a href="http://alanseiden.com/"&gt;Alan Seiden&lt;/a&gt; to share his perspective and he was well received.  I hope to see Alan on stage at the Spring event for a “Best New Speaker” award.  I have also heard that Alan had a good time &lt;a href="http://www.alanseiden.com/2010/10/07/rocking-at-common/"&gt;himself&lt;/a&gt;!   I think we’ll be seeing more of Alan!&lt;/span&gt;&lt;span style="font-family:arial;"&gt;  Looks like Alan made a new friend, too!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h4u4Pb99Lhc/TLSVOKgDd_I/AAAAAAAAAC0/ILC-hTQ20ZA/s1600/IMG00040.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_h4u4Pb99Lhc/TLSVOKgDd_I/AAAAAAAAAC0/ILC-hTQ20ZA/s400/IMG00040.jpg" alt="" id="BLOGGER_PHOTO_ID_5527206713259948018" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The location was a winner as many people found the time to run out to the &lt;a href="http://www.thealamo.org/"&gt;Alamo &lt;/a&gt;and the &lt;a href="http://www.thesanantonioriverwalk.com/"&gt;Riverwalk&lt;/a&gt; to see some of the local culture and shopping.  I decided to hide in my room and catch up on email but still managed to have a beer with an old friend who was kind enough to pick me up at the airport.  (Thanks Paul!)  There seemed to be a shortage of &lt;a href="http://www.shiner.com/main.php"&gt;Shiner Bock&lt;/a&gt; in the bar, but each morning a new case or three was carried in.  The hotel staff was great in assisting any last minute request.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; Thanks to some fancy footwork by the folks behind the scenes at &lt;a href="http://common.org/"&gt;COMMON &lt;/a&gt;(thanks Ian!) I was able to squeeze all of my sessions into the first day and a half so I could join my CEO, &lt;a href="http://andigutmans.blogspot.com/"&gt;Andi Gutmans&lt;/a&gt; at the &lt;a href="http://www-947.ibm.com/systems/support/i/lug/index.html"&gt;LUG&lt;/a&gt;.  For those who may not be aware, LUG stands for the Large User Group.  This is an independent entity made up of organizations that represent some of &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i’s&lt;/a&gt; largest installations.  Usually only &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM &lt;/a&gt;speakers are welcome and they can be a very honest bunch.  It is very rare that the &lt;a href="http://www-947.ibm.com/systems/support/i/lug/index.html"&gt;LUG&lt;/a&gt; would welcome a vendor like Zend, let alone a lowly solutions consultant like me.  But they must have liked what I had to say because they invited me back a couple of hours later for a demo of an install of Zend Server on &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.  On top of a couple of great sessions I was asked to attend the LUG HUG which is an evening event where the &lt;a href="http://www-947.ibm.com/systems/support/i/lug/index.html"&gt;LUG &lt;/a&gt;members get together for pizza and gather around tables like a Birds-of-a-Feather session.  Met some more great people and had a great time.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I truly feel blessed to be able to speak to groups like these in my travels.  Seeing the &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; faithful exploring new options on our beloved platform is the best tonic for an aging soul.  Working with customers who decide to stay on the platform or consolidate workload back on the platform is huge.  But don’t tell my boss how much I like these events, he still thinks its work!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TLSV2UY1E8I/AAAAAAAAAC8/CBFh3AHnDEA/s1600/IMG00049.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TLSV2UY1E8I/AAAAAAAAAC8/CBFh3AHnDEA/s400/IMG00049.jpg" alt="" id="BLOGGER_PHOTO_ID_5527207403108766658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TLSWDY4phFI/AAAAAAAAADE/rDKCE5awsd8/s1600/IMG00044.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TLSWDY4phFI/AAAAAAAAADE/rDKCE5awsd8/s400/IMG00044.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5527207627654267986" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-7167191596109938470?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/7167191596109938470/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/10/common-lug-and-zend-oh-my.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/7167191596109938470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/7167191596109938470'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/10/common-lug-and-zend-oh-my.html' title='COMMON, LUG and Zend-Oh My!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_h4u4Pb99Lhc/TLSVOKgDd_I/AAAAAAAAAC0/ILC-hTQ20ZA/s72-c/IMG00040.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-6973659156300862776</id><published>2010-09-15T13:36:00.000-07:00</published><updated>2010-09-15T17:53:21.669-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM i'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='Zend'/><category scheme='http://www.blogger.com/atom/ns#' term='Framework'/><category scheme='http://www.blogger.com/atom/ns#' term='Zend Server'/><title type='text'>Updating Zend Framework on IBM i</title><content type='html'>&lt;span style="font-family:arial;"&gt;Several &lt;a href="http://www-03.ibm.com/systems/i/index.html"&gt;IBM i&lt;/a&gt; customers have asked me about &lt;a href="http://www.zendframework.com/"&gt;Zend Framework&lt;/a&gt;.  Everything from should we adopt to how do we do it?  I will talk about updating ZF in this piece but for a lack of sounding impertinent I have to reply to their inquiries about adoption with “It depends…”&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-family:arial;"&gt;It is no secret that the brass ring of PHP coders is framework based development.  It’s not so much that Zend purports this approach as it is the community.  The Zend Framework team has done an admirable job responding to the community with an enterprise grade solution.  If you look at what solutions were around before Zend Framework you can easily see the need for such a solution.  In its early stages, Zend Framework was created to address the plethora of frameworks that were being developed concurrently and were grossly incompatible.  In other words, applications built with Cake would have to be modified in order to seamless integrate with Smarty.  What’s even more concerning is the number of PHP developers out there who insist on creating their own framework for each company they work for.  Since each company is different, they should get their own framework is the rationale.  The reality is, however, a generic Framework that has attributes like modular design principles and a use at will architecture may very well be the right approach.  But at which time?&lt;/span&gt;  &lt;span style="font-family:arial;"&gt;Many i5 shops are still kicking the tires of PHP and that’s OK.  When they hear about Zend Framework they want to know more.  I do not try to discourage folks from looking at Zend Framework, but do try to enlighten them as to the realities.  And the reality is that you can use Zend Framework with just a cursory knowledge of PHP.  But to understand Zend Framework you need a little more background in PHP and OOP.  This is where RPG programmers get into trouble.  Believe me, after 15 years developing RPG programs I too struggle with ZF and OOP.  But that is because I feel I have to understand all the code before I use it.  If you wait until you understand all of ZF before you use it, you may never get the chance to start taking advantage of its principles.  So, let’s start in the beginning, updating your ZF implementation.&lt;/span&gt;  &lt;h2 style="font-weight: normal; font-family: arial;"&gt;ZF upgrade process for IBM i&lt;br /&gt;&lt;/h2&gt; &lt;span style="font-family:arial;"&gt;Zend Framework, the fabulously useful framework for building applications with PHP comes with Zend Server.  But, the current version of Zend Server that installs on IBM i may not be as current as the version you wish to install.  Or, maybe you would prefer to back-level the current version of ZF to be compliant with an applications requirement.  Most users of the Zend Framework are far more interested in a more contemporary version of ZF as the development team is running fast and furious on new features.  So, as there may be various ways to perform the update, the method identified here strikes me as the most efficient.  As I try to maintain my position as one of the laziest programmers in New Lenox, techniques like this help me maintain a significant distraction rate while the computer does all of the heavy lifting!  If you would like to share your favorite approach, please feel free to comment!  This article will discus, in detail, the steps you can use to update the ZF library on your IBM i. In case you were wondering, this short snippet of ZF code can show you what version of ZF you have installed:&lt;br /&gt;&lt;/span&gt; &lt;a style="font-family: arial;" href="http://4.bp.blogspot.com/_h4u4Pb99Lhc/TJFesm_-F4I/AAAAAAAAACc/2QiWYN5Ax1Y/s1600/ZF+Version.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 145px;" src="http://4.bp.blogspot.com/_h4u4Pb99Lhc/TJFesm_-F4I/AAAAAAAAACc/2QiWYN5Ax1Y/s400/ZF+Version.JPG" alt="" id="BLOGGER_PHOTO_ID_5517295138981681026" border="0" /&gt;&lt;/a&gt; &lt;span style="font-family:arial;"&gt;Let’s get a little housekeeping squared away.  First, you will need to download the most current "stable" distribution from the ZF home page (http://www.zendframework.com/download/latest).   As of this writing, 1.10.8 is stable.  I chose 1.10.8 because I like things that are stable.  That's why I am on an IBM i!  If you prefer an older release you can check those out at the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.zendframework.com/download/archives"&gt;Zend Framework Archive&lt;/a&gt;&lt;span style="font-family:arial;"&gt; .  I brought this file down using the tar.gz option and not the .zip.  I’ll explain why in a bit.  You will also need all of the prerequisite License Programs as indicated by the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.zend.com/topics/Zend-Server-IBMi-Installation-Guide.pdf"&gt;Zend Server for IBM i Installation Guide&lt;/a&gt;&lt;span style="font-family:arial;"&gt; available as a no-charge download at &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.zend.com/"&gt;Zend.com&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.   Last but not least, BACKUP YOUR WORK!  Anyone who assumes all will be well with the universe when treading new ground has never met Murphy.  As a ¼ Irishman I must acknowledge that little bugger and pay him his due.  So, even a measly save file in QGPL is better than nothing.  It sure wouldn’t hurt to dust off those operations skills and see if you can run the tape drive or at least make sure operations has backed up the IFS in the last few days (weeks, months, years?).  The directory we will be messing with is ‘/usr/local/zend’ I would heartily recommend using the SAV command and saving that entire directory to a save file and then copying the save file somewhere.  Tape is preferable; a network file share is OK too, as long as it gets backed up!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TJFnAMd56jI/AAAAAAAAACk/CXmTeaUltmI/s1600/SAVCommandforZFdir.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 67px;" src="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TJFnAMd56jI/AAAAAAAAACk/CXmTeaUltmI/s400/SAVCommandforZFdir.jpg" alt="" id="BLOGGER_PHOTO_ID_5517304271549884978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;OK, with the housekeeping done I can climb down from my operations soap box and we can get busy.  First you need the download file.  This file can be brought down in either the windows .zip format or the Linux/Unix tar.gz.  Since I am going to leverage the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=/rzalc/pase.htm"&gt;PASE environment&lt;/a&gt;&lt;span style="font-family:arial;"&gt; to do my dirty work I chose the tar.gz format.  But let’s explore what the heck that really means.  Tar is a Unix command that stands for, believe it or not, Tape Archive.  This is a method supported by nearly all Unix based systems and since PASE is an AIX runtime, it is no exception.  PASE appears to fully supports the tar command and most of its options.  Ok, that explains the .tar extension, but what the heck is the .gz mean to me?  Ah, this is a little more interesting.  In windows land we typically use a utility like PKZip to archive and compress all at the same time.  In Unix land, we have two steps.  I indicated that the tar command archives the files into a single tape file.  The .gz stand for GNU-Zip which then compresses the file.  So, since the file was archived first and then compressed, you need to do the reverse when opening up the files for access.  As I indicated I like PKZip for getting rid of the .gz extension.  Oh, and do not trust Windows to tell you the extension.  You may need a DOS prompt to show you the real file name is:  ZendFramework-1.10.8PL1.tar.gz.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TJFo5G8NmKI/AAAAAAAAACs/q5Uj_SOwiAY/s1600/ZipTar.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 302px;" src="http://1.bp.blogspot.com/_h4u4Pb99Lhc/TJFo5G8NmKI/AAAAAAAAACs/q5Uj_SOwiAY/s400/ZipTar.jpg" alt="" id="BLOGGER_PHOTO_ID_5517306348830562466" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So, chose your favorite PC based compression utility, open the GNU-Zip and extract the tar to a local directory.&lt;/span&gt;  &lt;span style="font-family:arial;"&gt;With the file in a local directory it is possible to FTP the file to a temporary directory like, &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;/usr/local/zendsvr/share/ZFtemp&lt;/span&gt;&lt;span style="font-family:arial;"&gt; on the i.  That should be all you need your PC for!  You can use an FTP utility if you like but I am still pretty comfortable with the command line options.  Here is my script for FTP from the DOS prompt on my PC and I typically put things I need to FTP in a directory off C: called temp:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt; &lt;div  style="text-align: center;font-family:arial;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;cd  /usr/local/zendsvr/share/ZFtemp&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;&lt;br /&gt;lcd  c:\temp&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;&lt;br /&gt;put ZendFramework-1.10.8.tar&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;With the file on the IFS we can now take advantage of the IBM i and let it rock through the rest of the process.  So let’s rename the current ZF directory.  It should be located in /usr/local/zendsvr/share/ and is called, simply enough, Zend Framework.  From the i5 command line issue the WRKLNK command for the /usr/local/zendsvr/share/* directory and page down till you see Zend Framework.  Take option 7 to rename the directory to something useful like ZendFramworkOldVersion or something like that.  This technique may come in VERY handy should you need to back out the upgrade for any particular reason.  Now take that temp directory and rename it to the proper Zend directory, or something you prefer.  &lt;/span&gt;  &lt;span style="font-family:arial;"&gt;From here you may start a PASE Shell by using the CL command CALL QP2TERM.  This will start a PASE shell interface and any Unix command line loving geek out there will start to feel right at home since you are now, essentially, at an AIX command line interface.  Remember that PASE is an AIX runtime so while it supports MANY AIX commands it may not necessarily support all of them.  Check out the &lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/rzalc/pase_commands.htm"&gt;PASE command reference&lt;/a&gt; on the IBM website.  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;From here, navigate to the directory where you wish to install Zend Framework.  I chose the same directory it was already in so I would not have to adjust any hardcoded scripts or includes in the PHP.ini.  The command would look something like cd /usr/local/zendsvr/share/ZendFramework  and then issue the command to unzip the ZF file system.  There are MANY files that make up ZF and to use netserver to do the drag and drop might be cumbersome.  Ultimately, it’s up to you.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;To unzip the file, or actually untar, the command is: tar  -xvf  ZendFramework-1.10.8PL1.  let’s look at this command as it is a little different than your typically CL command.  The –xvf represents switches that control the behavior of the command.  &lt;span style="font-weight: bold;font-size:130%;" &gt;x&lt;/span&gt; means extract the contents, &lt;span style="font-weight: bold;font-size:130%;" &gt;v&lt;/span&gt; means give detailed messages about the extraction and &lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;f&lt;/span&gt;&lt;/span&gt; means the next parameter in the command is the file name of the archive.    More information about tar can be found on the &lt;a href="http://www.gnu.org/software/tar/"&gt;GNU website&lt;/a&gt; and also the &lt;a href="http://www.gnu.org/software/tar/manual/"&gt;manual &lt;/a&gt;.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;Now that the unzip is complete there is only one step left to update the php.ini file.  If you plan to use &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i&lt;/a&gt; to load the path to the Zend Framework library, then update the path directive via the Zend Server Admin Interface.  Log in to Zend Server and Navigate to the Server Setup tab and then the directives sub-tab. Click the twistie for Paths and Directories to reveal the php.ini directive for “include_path”.  There should already be an entry for Zend Server in there.  There is no change necessary as long as the new ZF files in the same directory.  If another directory is selected, simply edit the value in the box to the right of the directive, click save changes and restart Zend Server.  You are off to the races!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-6973659156300862776?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/6973659156300862776/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/09/updating-zend-framework-on-ibm-i.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/6973659156300862776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/6973659156300862776'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/09/updating-zend-framework-on-ibm-i.html' title='Updating Zend Framework on IBM i'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TJFesm_-F4I/AAAAAAAAACc/2QiWYN5Ax1Y/s72-c/ZF+Version.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-787609070297465607</id><published>2010-08-13T08:24:00.000-07:00</published><updated>2010-08-13T15:39:43.630-07:00</updated><title type='text'>I want to do PHP on IBM i so what do I have to pay for?</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;My &lt;a href="http://mikepavlak.blogspot.com/2010/07/sample-code-in-zend-server-woohoo.html"&gt;last blog&lt;/a&gt; highlighted the fact that there are free samples of PHP scripts that come with Zend Server.   But I keep fielding the age old questions about what everyone wants for free.  The truth is that NOTHING is free.  With that said, let’s discuss the licensing arrangement between IBM, Zend and the customer.  At a high level, &lt;a href="http://www.ibm.com"&gt;IBM &lt;/a&gt;reached out to Zend to provide the PHP runtime, IDE and support for IBM i.  This means that IBM does not provide direct technical support to customers for the Zend Stack.  But IBM does support Zend in delivering support and solutions like Fast CGI and updates to Apache, DB2, etc.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;The ubiquitous Zend Server for IBM i&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;First, let’s talk about &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i&lt;/a&gt;, the PHP solution for IBM i.  Zend Server is a complete PHP runtime with a variety of added features.  There is a single distribution of Zend Server for IBM i and it will behave differently depending on which license key is installed.  Installation of the Community Edition key will enable the PHP runtime and a couple of bells and whistles.  Customers who purchase the full license key will get the additional productivity features like Code Tracing, Job Queue and PHP Application Monitoring.  Since the download is the same for either product, come to Zend.com for the files.  At this writing there are two option of running PHP 5.2 or 5.3. Also, we have moved to a PTF method for updates.  So if you have Zend Server 5.0.1, all you need to do is download the PTF update for 5.0.2 and install using the IBM PTF method.  This is a lot easier than doing a rip and replace and it gives the customer more control over the changes.  In addition to the free scripts I mentioned in the last blog there are some other pieces like &lt;a href="http://www.phpmyadmin.net/"&gt;phpMyAdmin&lt;/a&gt;, the open source database utility that provides a GUI admin for you &lt;a href="http://dev.mysql.com/"&gt;MySQL&lt;/a&gt; environment.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Zend Server Community Edition for IBM i&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I mentioned earlier that NOTHING is free.  But, customers of IBM i, do not have to pay for Zend Server Community Edition for IBM i.  That is because IBM has paid for this feature for you!  To get the Zend PHP runtime, known as Zend Server Community Edition for IBM i customers simply navigate their browsers to Zend.com and download the solution as indicated above and get a free license key at &lt;a href="http://www.zend.com/en/products/server-ce/ce-for-ibm-i"&gt;Zend.com&lt;/a&gt;.  Please keep in mind that this is a perpetual license and will not stop running at the end of the support agreement and that all of the full version features are available for the first 30 days as a trial.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Where’s my free support for Zend Server? &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The Community Edition shipped with the IBM i operating system or downloaded from zend.com comes with a first free year of Silver level support.  The free year of support corresponds to the first year of usage of a new IBM i operating system purchase, or first installation of Zend Solutions.  As Zend Server replaces Zend Core for IBM i, which also came with a first year of Silver level support, the first free year does not restart with an upgrade from Core to Server.  This means that if you downloaded Zend Core for IBM i 6 months ago, you are entitled to 6 months of support for Zend Server for IBM i for the same IBM i serial number.  If your first year of support for Core has expired, you are still entitled to upgrade to Zend Server Community Edition;you may use the new software unsupported of purchase a support subscription from Zend.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;I’m out of support so what do I do?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;To buy or not to buy, that is the question!  There are two options.  Customers who would like to continue some level of support can contact their friendly neighborhood Zend account manager for pricing on Gold or Platinum support.  Support and software licenses are sold together on a subscription basis.  This means that both support and the advanced features are licensed for a specific period of time, usually 1 to 3 years.  There is a charge for this support, but you get what you pay for!  Customers who choose not to purchase support can still get questions answered via the forums like WEB400 at Midrange.com or the Zend Forums.  If a customer decides to not renew support, the product will continue to run but only with the Community Edition functionality.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;So what about that Studio product?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Zend Studio for IBM i is the premier IDE for PHP applications.  It is also the ONLY IDE that supports debugging PHP scripts on the IBM i, QED.  Zend Studio for IBM i is available at no charge to IBM i customers.  Additionally, customers ae entitled to a first year of free basic support from Zend.  IBM purchased this product for everyone in the IBM i community so why not take advantage of it?  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Zend Studio for IBM i is constrained, however.  IBM i customers can only run, deploy and debug PHP scripts on an IBM i.  Customers who wish to deploy against a local PC or Linux/Windows server must purchase the full Zend Studio product.  There are a variety of license options available but all based upon an annual subscription model. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Zend Studio features are documented at Zend.com but at a high level there is support for PHP, JavaScript, HTML, CSS, Object Introspection, and much more.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;I got an email saying that my support is running out!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Most likely you did.  Just before the one year anniversary of your support expiration Zend will send out notices to customers who have downloaded the solutions and registered their servers.  This is to provide you with planning options so that your support does not lapse.  Both Zend Server Community Edition and Zend Studio are perpetual license so they will continue to run.  But updates may not be as frequent and there is no support outside of the defined support agreements. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I hope this clarifies a few things.  Ultimately, any questions can be addressed by an account manager.  If you are not sure who your account manager is, please let me know or contact our sales folks at Zend.com.  &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-787609070297465607?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/787609070297465607/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/08/i-want-to-do-php-on-ibm-i-so-what-do-i.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/787609070297465607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/787609070297465607'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/08/i-want-to-do-php-on-ibm-i-so-what-do-i.html' title='I want to do PHP on IBM i so what do I have to pay for?'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-5058840920121580742</id><published>2010-07-15T17:04:00.000-07:00</published><updated>2010-07-15T17:11:02.747-07:00</updated><title type='text'>Sample code in Zend Server, Woohoo!</title><content type='html'>&lt;span style="font-family:arial;"&gt;I work remote.  You may work remote too.  But as I was planning a trip to the corporate HQ I was asked to provide remedial &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; training to some of our newer account reps.  And the subject of the Samples directory came up.  I know what you are thinking, yet another gratuitous post about &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i&lt;/a&gt;, right?  Of course it is.  But this is beneficial to both paying and non-paying customers alike.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;The samples directory that ships in the document root of &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i&lt;/a&gt; has something that any company looking to explore PHP would like to see: free code!  I have said several times that &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server for IBM i&lt;/a&gt; addresses many, not all, of the issues that &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; shops have encountered.  We fixed, enhanced or added a bunch of stuff to the product and the repose from those who have taken the plunge is overwhelmingly positive.  The Samples directory addresses yet one more question raised by many an &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; shop looking to explore PHP: How do I show my boss a PHP script running on MY machine?  Lets’ explore each of the scripts available and how you can leverage them for your needs.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;First let’s discuss the welcome page.  Once you have Zend Server for IBM i installed and you start the Admin Interface (http://youribminamehere:10088/ZendServer) you are presented with a welcome screen.  The screen lists 8 things that help you to learn &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; for &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;.  Option number 8 talks about the samples and all you need to do to see and run the sample code is click that link.  Each has two links.  The first runs the script and show the output.  The second shows you the code that makes up the script.  But if you have Zend Studio for IBM i handy you open up the Samples directory in the document root of your &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server&lt;/a&gt; instance.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I won’t go into boring detail about each of the scripts but it may be helpful to know that there are six examples.  Hello World, SQL Access, SQL Access using Zend Framework, SQL Access to MySQL, Program Call and LDAP example.  Let’s discuss the SQL Access script in more detail as that is my biggest requests: How do I show my boss some of our data in the web using &lt;a href="http://php.net"&gt;PHP&lt;/a&gt;?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The SQL access example is no glamorous.  But it does the necessary heavy lifting of going to a library on the IBM i, getting some data from a physical file and displaying it in an HTML table.  The file in the example, SP_CUST, is located in the library ZENDSVR.  This file contains several columns which are all requested via the SQL statement in the code example.  Only customers with a customer ID greater than 1220 are selected from the database.  Then, as the resultant data set is processed, each record is formatted to load into an HTML table.  There are examples of error control and basic PHP and database control.  A nice script for newbies.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;For those of you who are adventurous, you can copy this script and modify it to display some of your very own data.  There are only two changes you would really need to make.  The first is in the SQL statement where you would create your own select option.  The second is in the bind statement as you can omit or alter the lower-limit selection of the SQL statement.  The rest of the code will generate the HTML table automatically.  Please copy the PHP code and then modify it.  Don’t destroy the original as you may want to get back to it at some point.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Well, I hope this helps a few of you who are thinking about kicking the tires of PHP.  Like many other aspects of the PHP experience on &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;, there is no charge for this feature.  But if you are interested and having fun, I encourage you to take the next step and play some more.  Maybe get a little education at Zend or SystemiNetwork.  We’d love to see you there!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-5058840920121580742?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/5058840920121580742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/07/sample-code-in-zend-server-woohoo.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5058840920121580742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5058840920121580742'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/07/sample-code-in-zend-server-woohoo.html' title='Sample code in Zend Server, Woohoo!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-731442165472385053</id><published>2010-06-16T09:31:00.000-07:00</published><updated>2010-06-16T09:41:46.325-07:00</updated><title type='text'>My time at MITEC</title><content type='html'>&lt;span style="font-family: arial;"&gt;&lt;span style="font-weight: bold;"&gt;What is MITEC?&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.gomitec.com"&gt;MITEC &lt;/a&gt;is an event held in the Detroit area each year by several IBM midrange users groups in South Eastern Michigan.  It has been my privilege to present to these folks several times and on June 8th I had the chance to do it again.  &lt;a href="http://www.semiug.org/officers.htm"&gt;Laura Ubelhor&lt;/a&gt; of &lt;a href="http://consultechservicesinc.com/"&gt;Consultech &lt;/a&gt;Services is the primary ringleader for this event each year and she works tirelessly with her band of volunteer to do a wonderful job.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Getting There&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The day before I drove up to Detroit with a good friend of mine, Jerome Hughes who is the webmaster for &lt;a href="http://www.hideoutchicago.com"&gt;The Hideout&lt;/a&gt;, and had a great time up and back.  Jerome is the guy that first got me interested in PHP and so I thought it was fitting that we travel together!    For dinner we met several other speakers for a burger at the local Red Robin.  Great seeing folks who we usually don’t get a chance to chat with as we are doing sessions.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Day of event&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The day started out like many others in the world of user group events.  There was a wonderful venue in the VisTa Tech Center that is part of &lt;a href="http://www.schoolcraft.edu/"&gt;Schoolcraft College&lt;/a&gt; in Livonia, MI.  This facility was designed for events such as this and is by far one of the best places I have been asked to speak.  I had a chance to present a couple of pretty standard discussions on the basics of getting started with &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; on &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.  Both presentations were well attended and the discussions were lively.  As always there were the standard discussions about &lt;a href="http://www.zend.com/en/products/server/zend-server-ibm-i"&gt;Zend Server&lt;/a&gt; and what comes as part of the relationship with IBM.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Atmosphere&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Last year there was a downbeat atmosphere as the downturn in the economy had taken a firm grip on the attendee’s and their jobs.  This year’s event had a decidedly upbeat feeling to it and the attendee’s were looking for new ideas, concepts and topics.  Several folks I had talked to had a wonderful experience and left the event with strengthened resolve to try something new in either PHP, RPG or CL!  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Lab Challenges&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;I conducted an onsite lab and have to thank a few folks for helping make this turn out well.  Let’s look at the issue and then see what we did to address it.  I had 8 of 24 workstations reaching out via SSH to one of &lt;a href="http://frankeni.com/"&gt;Dr. Franken’s&lt;/a&gt; machines.  So the fact that some of the machines could connect while others could not was puzzling.  I spent a fair amount of time playing around with the software before Jerome summoned the good doctor from his temporary lab in the lunch room where he was performing surgery on something organic for a change.  When he heard the problem he immediately assessed that “this doesn’t sound like a problem at the server.”  So the facilities engineers were brought in to look into the issue and they started tracing wire and looking at switches.  Turns out that one of the switches was bad and was not opening a path out of the VLAN.  After about 20 minutes they had a new switch installed and all was well.  First, I have to thank the facilities staff for reacting to a switch configuration issue.  As I have always offered, you really need to verify your network infrastructure before getting started.  The next shout out goes to Stephanie Jerome Hughes who helped me with my session and did an awesome job helping round up resources. Both of these folks saw that I was working though lunch and got me a plate of food and brought it to me in the lab where we were working.  By the time the students returned from lunch, we were ready to go!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Since this issue I have run in to two customers with similar constraints where there was a VLAN blocking SSH.   The moral of the story is that you can never be too careful with your environment.  Talk to your Network Admin and you might be surprised at what you can learn from each other!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-731442165472385053?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/731442165472385053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/06/my-time-at-mitec.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/731442165472385053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/731442165472385053'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/06/my-time-at-mitec.html' title='My time at MITEC'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-252621770418341584</id><published>2010-05-14T13:05:00.000-07:00</published><updated>2010-05-14T13:24:16.101-07:00</updated><title type='text'>What I did on my trip to COMMON</title><content type='html'>&lt;span style="font-family: arial;"&gt;While there are probably several examples of great educational opportunities in the IBM i space, COMMON has to be the most popular.  If you did not make it to COMMON you missed a great show and I’m going to take a few minutes to discuss what you missed. I have to say that I have been to several COMMON conferences and that this one was laid out really well.  Reno was so spread out I got plenty of exercise walking form session to session.  The fact that I gave 10 talks with one of the being a repeat means I really had my skates on in Orlando.  But in all cases we were able to concentrate on a single area of the hotel where we had access to all of the session rooms.  This was a really nice feature!  The Expo and main event rooms were also very conveniently located.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Big speaker?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;I wish I could tell you that I was the most popular presenter at the event.  While the numbers are still being tabulated I must say I did OK but Scott Klement blew out nearly every room in which he appeared!  In one case, the COMMON and Hotel staff opened an air-wall to make room for folks who were sitting on the floor and standing in the aisles to hear him speak.  If I wasn’t so darn busy I would have probably checked him out myself!  Check out his videos at you tube.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-family: arial;"&gt;What about the expo?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The expo is what I look forward to the most.  As a vendor, I had “booth duty”.  This includes things like setup, working the booth, meeting people and breakdown.  Obviously meeting the people there is the highlight of my trip and I met lots of folks who are doing all kinds of exciting things with PHP on IBM i.  We even had a special visit from the PHP Elephpant who was making his debut appearance at COMMON 2010!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-family: arial;"&gt;And the nightlife?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Then there were the evening events.  The first night we had the power down, “Ask the Experts” session.  I have always enjoyed this session as a customer because I had virtually unbridled access to IBM and community experts for many topics.  I was working the Open System table with abunch of folks from around the world &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-252621770418341584?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/252621770418341584/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/05/what-i-did-on-my-trip-to-common.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/252621770418341584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/252621770418341584'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/05/what-i-did-on-my-trip-to-common.html' title='What I did on my trip to COMMON'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-7830989089995070502</id><published>2010-04-19T10:45:00.000-07:00</published><updated>2010-04-19T10:51:01.066-07:00</updated><title type='text'>One way to succeed with PHP on IBM i</title><content type='html'>&lt;span style="font-family: arial;"&gt;&lt;/span&gt;&lt;span style="font-family: arial;"&gt;One question I field a lot is “Do I really need to know HTML in order to program in PHP?”  In my opinion the answer is an unequivocal “YES!”  And I can’t put enough exclamation points after that YES!  As many who will read this are IBM i developers, I feel comfortable challenging you to think back to when you learned RPG and were first exposed to interactive programming.  There is this funny little language called DDS (Data Definition Specifications) that was used to describe data, display formats and report formats.  This odd language was so simple in its design and so obvious in its use.  But it has started to fall away with the advent of SQL, report writers like Query Manager &amp;amp; DB2 Web Query and newer UI technologies such as PHP, RPG-CGI and others.  Many in the RPG arena I have talked to don’t seem to think there was any effort expended in learning DDS.  Seems a bit strange but I challenge you to consider, if you can, the number of hours you spent learning the nuances of DDS for interactive processing.  And if you have trouble, think back to your first subfile program and the first time you struggled with a subfile issue.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Why is this so important to me?  Well, you see, a good friend of mine was trying to learn PHP in my class and he got so frustrated he walked away.  Not because he could not grasp the PHP but because he struggled with the application of PHP in the web presentation realm: i.e HTML.  I feel that I let him down all the time he was struggling assuming he would just “pick it up”.  I should have added more HTML content to the class or offered more assistance.  There was a huge gap and he ultimately felt it was no longer worth the time or stress.  I have spent a great deal of time reflecting up upon this issue and have decided to recommit as much energy as possible into encouraging IBM i developers to learn HTML as soon as possible.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;So where do I go to learn HTML?  There is an abundance of resources on the internet that are fabulous for learning HTML.  Since there are far too many resources to discuss that cost absolutely nothing I prefer to give one example of each and allow you to spend a little time using Google to discover another.  Better yet, add a comment to this article with your favorite place to find good info about general web development.  First there are the free resources like W3schools.com, which is a great place to start.  Their online list of tags and examples are well worth the time to review.  Second there are books.  My favorite is the Head First HTML with CSS and XHML.  This book takes the knowledge you gain from the places like w3schools and applies the concepts in an actual application.  Granted they are basic in nature but that is still a great start.  Third are classes like the ones at the local community college.  Moraine Valley Community College in Palos Hills, IL hosts a 16 week class on HTML and Java Script.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Wait Mike, you started talking about HTML and now your babbling on about CSS and Java Script!  What gives?  Yes, I realize I am all over the board, here.  The first thing any IBM i developer must accept about the web programming realm is that this world is different than the world of RPG and COBOL.  Suck it up and get used to it.  I can’t change it for you and neither can IBM, Microsoft or Google.  But we can make it a little easier to understand.  So let’s reign it in with a few IBM i analogies that might help.  HTML has to do with formatting.  Think of the display attributes and subfiles you build using DDS.  HTML controls the look and feel of your site.  Now if you think about a good application that you built using DDS you probably got into the use of reference fields.  In many cases this is where you set up standard sizes and attributes for many data elements in your display files.  The field reference file, sometimes referred to as a Data Dictionary is somewhat akin to the Cascading Style Sheet or CSS.  CSS is a super-charged version of the data dictionary and is used to maintain the consistency of website layout across multiple pages.  So if you choose that your HTML table (something that looks a lot like a subfile) should always have a grey background, bold piping, heading in italics and every other bar alternating a green background then you would want to use a CSS.  The CSS saves you the trouble of hard coding formatting on every page and lets you focus more on the application when working in PHP.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;But what about Java Script, Mike?  Yes, dear JavaScript.  Well, it used to be that folks wanting to add special functionality to their web pages would occasionally use JavaScript.  In fact, I remember the early wars where folks would disable JavaScript in hopes of making their browsers safe.  As in many risks to humans today the benefits far outweigh the risks.  Many of us are taking JavaScript for granted when surfing web pages like Google and others.  The “magic” that auto completes search box entries is often times JavaScript!  And, if you think you need to deliver that functionality for your users you are absolutely correct.  Why?  Because they are surfing Google, too and expect jst as much from you as they get form the hundred or so web developers at Google.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The good news is that this is all achievable.  But as the old Chinese proverb says, ‘The journey of a thousand miles begins with a single step’.  You too must realize that this can be learned but you have to start somewhere.  So, what is Mike’s prescription?  Here is a guidline and not a guarantee:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;- Go to w3schools (or some portal) and start learning HTML  (30 days) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o You can program HTML on your IBM i or your PC.  You pick.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o The only way to learn this is by doing it&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o If you are looking for examples of how to do something in HTML just go to a given web page that has it working and click “View?Page Source.  In Firefox it is CTRL-U.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;- Now you can start learning PHP. (60 days)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o Come to Zend for the PHP for RPG Programmers course&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o But there are books&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o And online portals to help with that too&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;- Get some CSS training (15 days)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o Again books and online tutorials are great.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o Don’t forget about your local community college&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o Or maybe your local user group…&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o Go to csszengarden.com for examples of the power of CSS!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;- By now the JavaScript stuff will start making sense (30 days)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o Same as above&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;o No longer an option, thou shalt learn JavaScript!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Please understand that a lot of what is placed in this article applies to just about any web programming paradigm.  PLEASE do not let some slick sales person sell you on how easy their “tool” is to learn and use and that you will never need to learn a given technology although you make a living developing in it.  It is important to understand how the technology works for you to support it.  Tools can help bridge the gap and accelerate the learning, in some cases.  But you will need to learn these basic technologies to do web development regardless of your path.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Lastly, the only way to learn this stuff is to play.  Get your hands dirty and “JUST DO IT!”  The Matrix was a movie that showed how easy it is to learn things and until that becomes a reality you need to start at the beginning and work through it.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Good luck!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-7830989089995070502?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/7830989089995070502/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/04/one-way-to-succeed-with-php-on-ibm-i.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/7830989089995070502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/7830989089995070502'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/04/one-way-to-succeed-with-php-on-ibm-i.html' title='One way to succeed with PHP on IBM i'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-3580808702875436759</id><published>2010-03-15T20:12:00.000-07:00</published><updated>2010-03-15T21:05:49.356-07:00</updated><title type='text'>Spring has sprung!</title><content type='html'>&lt;span style="font-family:arial;"&gt;So it’s another Spring with lots of changes.  Many exciting things going on with &lt;/span&gt;&lt;a style="font-family: arial;" href="http://zend.com/"&gt;Zend&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;&lt;span style="font-family:arial;"&gt; and the industry as a whole.  As I run around I get to talk to lots of folks.  I figured I’d share what I have been hearing and a little of what I’ve seen.  Last week I presented six sessions for the &lt;/span&gt;&lt;a style="font-family: arial;" href="https://event.on24.com/event/19/08/25/rt/index.html?&amp;amp;eventid=190825"&gt;SystemiNetwork iEssentials Virtual Conference&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.  I wasn’t sure how this event would work.  With virtual booths, virtual speakers and virtual refreshments it really was a huge success.  Over 1,400 people registered and attended the two day event that covered many topics intersecting in the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;&lt;span style="font-family:arial;"&gt; space like Document Management, RPG, .Net and, of course, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://php.net/"&gt;PHP&lt;/a&gt;&lt;span style="font-family:arial;"&gt;!  The recordings and session materials are now available for those who could not attend.  What a great alternative to the live conference for shops that just cannot afford to make the trip to a big event.  Even the networking room was packed with folks talking about all kinds of stuff!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;As I write this I am preparing for the annual &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.wmcpa.org/index.php?option=com_content&amp;amp;view=article&amp;amp;id=24&amp;amp;Itemid=6"&gt;WMCPA&lt;/a&gt;&lt;span style="font-family:arial;"&gt; conference in &lt;/span&gt;&lt;a style="font-family: arial;" href="http://ci.delavan.wi.us/"&gt;Delavan Wisconsin&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.  This group of volunteers always puts on a good show with lots of value for the attendees.  There will be no less of that for this year’s event as it starts with an optional full day TCP/IP event led by &lt;/span&gt;&lt;a style="font-family: arial;" href="http://frankeni.com/"&gt;Larry Bolhuis&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.  I especially look forward to the Tuesday evening panel discussion with such &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; luminaries like &lt;a style="font-family: arial;" href="http://www.mowyourlawn.com/"&gt;Aaron Bartel&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.angustheitchap.com/Welcome.html"&gt;Trevor Perry&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, Alison Butterill and some guy from Chicago blathering on about PHP.  With two days of sessions covering RPG, PHP, Java and Rational there is something for everyone.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Next week I get to head to the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.wash-midrange.org/seminars/"&gt;mid-Atlantic midrange&lt;/a&gt;&lt;span style="font-family:arial;"&gt; group to show of &lt;/span&gt;&lt;a style="font-family: arial;" href="http://php.net/"&gt;PHP&lt;/a&gt;&lt;span style="font-family:arial;"&gt; and &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.zend.com/en/products/server/"&gt;Zend Server&lt;/a&gt;&lt;span style="font-family:arial;"&gt; to the folks on the East coast.  This event is a reschedule as a result of the lovely weather they endured last month.  I am not hoping for a repeat, here!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The big event we are all awaiting is &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.common.org/conferences/2010/annual/index.html"&gt;COMMON&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.  With the 50&lt;/span&gt;&lt;sup style="font-family: arial;"&gt;th&lt;/sup&gt;&lt;span style="font-family:arial;"&gt; anniversary, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;&lt;span style="font-family:arial;"&gt; 7.1 and a new &lt;/span&gt;&lt;a style="font-family: arial;" href="http://php.net/"&gt;PHP&lt;/a&gt;&lt;span style="font-family:arial;"&gt; stack, what more could you be looking for?  Well, how about some killer networking sessions where you can talk to nearly anyone and everyone in the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;&lt;span style="font-family:arial;"&gt; space.  From the “ask the experts” Power Down event to the final closing event and CUDS2 there are a boatload of opportunities to chat with people from around the country about Power systems and &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.  I will be present about 6 sessions on &lt;/span&gt;&lt;a style="font-family: arial;" href="http://php.net/"&gt;PHP&lt;/a&gt;&lt;span style="font-family:arial;"&gt; in additional to hanging out with the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.common.org/about/CAAC.html"&gt;CAAC&lt;/a&gt;&lt;span style="font-family:arial;"&gt; (COMMON Americas Advisory Council).  Be sure to get your requirements in for the &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.common.org/about/CAAC.html"&gt;CAAC&lt;/a&gt;&lt;span style="font-family:arial;"&gt; so &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;&lt;span style="font-family:arial;"&gt; can continue to evolve.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;In a few more weeks I will be heading down to &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.chattanooga.gov/"&gt;Chattanooga, Tennessee&lt;/a&gt;&lt;span style="font-family:arial;"&gt; to meet with the folks at &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.tvmug.info/"&gt;Tennessee Valley Midrange&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.his should be a great time to meet with some folks I have not had a chance to hook up with.And this area of the country is showing some serious &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;&lt;span style="font-family:arial;"&gt; street cred with customers and applications all over &lt;/span&gt;&lt;a style="font-family: arial;" href="http://php.net/"&gt;PHP&lt;/a&gt;&lt;span style="font-family:arial;"&gt; and &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.ibm.com/software/rational/cafe/community/rpg"&gt;RPG&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The Springtime conference season is upon us!  If you can’t get out to a big show then support your local user group as there are many more events coming soon or going on all the time.  If you have not looked up your local user group in a while maybe it’s time to Google them and see what they are up to.  You might just be surprised!!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Get ready: &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.zend.com/en/products/server/zend-server-5-new-ibmi"&gt;Zend Server for IBM i&lt;/a&gt;&lt;span style="font-family:arial;"&gt; is right around the corner.  The bakers in R&amp;amp;D are cooking up a good batch and it’s starting smell like it’s about done! &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-3580808702875436759?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/3580808702875436759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/03/spring-has-sprung.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3580808702875436759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3580808702875436759'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/03/spring-has-sprung.html' title='Spring has sprung!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-8846629267214785881</id><published>2010-01-08T08:21:00.000-08:00</published><updated>2010-01-09T07:09:18.702-08:00</updated><title type='text'>Top 10 List:What IT Managers should get for their team</title><content type='html'>&lt;span style="font-family:arial;"&gt;As 2009 drew to a close I noticed a lot of articles from folks about resolutions and summaries of the year.  I thought about doing something similar and then said to myself “let’s not reinvent the wheel, here!”  But I still wanted to talk about a something to help IT managers and staff so I thought I’d put a new spin on the wish list concept.  This list is my recommendation for what the IT Manager in an &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; shop should get for staff in 2010.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Now many people are thinking why should the IT manager get me anything?  Maybe you get a review and a couple of bucks each year.  In the spirit of giving and capitalism, can’t we share a little more with the people who are producing in hopes of maybe building a better team?  My list has 10 items that I think every &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; shop should have and I will count them down to what I feel is the best item.  Sorting them in order was no easy process and I still believe ALL of them have great value.  I welcome comments from all members of the IT staff as responses to this piece.  You never know if your boss is reading this and maybe will surprise you before Valentine’s Day!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#10 Upgrade to i6.1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;No, IBM is not sponsoring my blog.  Not yet, at least!  (You listening, Craig?)  Keeping current with patches, &lt;a href="http://www-947.ibm.com/systems/support/i/fixes/"&gt;PTF’s&lt;/a&gt; and versions of the OS was one of the most important things I did as an IT director.  It breaks my heart to run into folks who can only code &lt;a href="http://en.wikipedia.org/wiki/RPG_III"&gt;RPG III&lt;/a&gt; style applications because some penny pincher locked the hardware or software at a certain level.  I have talked to many companies still running &lt;a href="http://www-947.ibm.com/systems/support/i/planning/upgrade/suptschedule.html"&gt;V5R4&lt;/a&gt; and I know that IBM has extended the life of that version.  But please, take advantage of performance increases, database functionality, &lt;a href="http://www-949.ibm.com/software/rational/cafe/community/rpg"&gt;RPG&lt;/a&gt; features and great additions to the OS like CL commands for SSH in &lt;a href="http://www-947.ibm.com/systems/support/i/planning/upgrade/v6r1/index.html"&gt;i6.1&lt;/a&gt;.  Besides, getting current now will only make it easier to move to i7.1 this Spring!  For those of you stuck on &lt;a href="http://www-947.ibm.com/systems/support/i/planning/upgrade/v5r4/index.html"&gt;V5R4&lt;/a&gt;, the Zend stack still runs and is supported there.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#9 Plan your trip to ZendCon now!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://zendcon.com/"&gt;November 1-4&lt;/a&gt; is the date for the number one PHP event in the world.  Wouldn’t it be an awesome way to motivate the team by offering a round trip to &lt;a href="http://sanjose.org/"&gt;San Jose&lt;/a&gt; to meet and greet &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; developers from around the world sharing ideas and code regarding our favorite technology?  I recently read a blog about a long time &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; player and &lt;a href="http://www.ibmsystemsmag.com/ibmi/december09/webexclusive/30930p1.aspx"&gt;her first trip&lt;/a&gt; to &lt;a href="http://zendcon.com/"&gt;ZendCon&lt;/a&gt; and how this will now be added in as an annual pilgrimage.  I had the pleasure of meeting &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; developers for the &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; from all over the globe.  So plan for so many of your staffers this year and so many next year.  Get it in the budget and I hope to see you there!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#8 Zend offers training credits&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;This is a really great way to tell your staff how much you appreciate them.  Investing in education is expensive, but so is ignorance!  &lt;a href="http://www.zend.com/en/services/training/training-units"&gt;Zend Training Credits&lt;/a&gt; offer the maximum flexibility to an IT manager while delivering a predictable expense.  You purchase them in bulk and use them as the year rolls on for any online class that Zend offers.  This way you do not lock you or your staff into a fixed training cycle.  If they need a little more time between classes, they can take it.  If they pick things up a little quicker you can accelerate their pace.  This is the ultimate in flexibility and works well within tight budgets!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#7 Power 6 hardware&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Upgrading your OS is great.  Upgrading your hardware is even greater!  Recently I had the opportunity to use a brand new &lt;a href="http://www-03.ibm.com/systems/power/advantages/power6.html"&gt;Power 6&lt;/a&gt; machine instead of the &lt;a href="http://www-03.ibm.com/systems/i/os/"&gt;LPAR&lt;/a&gt; I have on a Power 5 box.  I installed the &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; stack in a fraction of the time it usually takes me to complete the exercise.  This means IBM is really delivering on its promise of more and more for less and less.  If you are on lease you should seriously consider the cost savings in maintenance and productivity improvements of your staff and users by taking a good hard look at some new hardware.  Give your BP a shout today!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#6 Development LPAR&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Too many companies that I run into these days still have the developers in the same machine AND the same &lt;a href="http://www-03.ibm.com/systems/i/os/"&gt;LPAR&lt;/a&gt; as production.  This is a HUGE red flag for any &lt;a href="http://www.itil-officialsite.com/"&gt;ITIL&lt;/a&gt; or &lt;a href="http://www.sarbanes-oxley.com/"&gt;SOX compliance&lt;/a&gt; issue.  But for years it was difficult to cost justify giving the developers their own box because the price was high and &lt;a href="http://en.wikipedia.org/wiki/AS/400_Library_List"&gt;library lists&lt;/a&gt; worked too well.  Well, as applications continue to get more and more complicated and middleware continues to get more and more integrated the library list is getting to be harder and harder to rely on.  But fear not, if you upgrade to &lt;a href="http://www-947.ibm.com/systems/support/i/planning/upgrade/v6r1/index.html"&gt;i6.1&lt;/a&gt; on Power 6 hardware, IBM has implemented this new thing called Guest &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; &lt;a href="http://www-03.ibm.com/systems/i/os/"&gt;LPAR&lt;/a&gt;!  These &lt;a href="http://www-03.ibm.com/systems/i/os/"&gt;LPAR’s&lt;/a&gt; do not have the hardware requirements that the old &lt;a href="http://www-03.ibm.com/systems/i/os/"&gt;LPAR’s&lt;/a&gt; had and can be configured in minutes instead of hours.  Once you get the hang of it, you could fire up an &lt;a href="http://www-03.ibm.com/systems/i/os/"&gt;LPAR &lt;/a&gt;for each developer.  So if you cannot afford an additional machine, you can still isolate your developers from the production environment at a very low cost. Take a look at this great feature today!  You know you want to upgrade, this could be a really good reason to find justification.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#5 &lt;a href="http://shop.zend.com/en/zend-developer-solutions/zend-platform-developer-solution.html"&gt;Zend Developer Solution&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So you are taking the leap into PHP and maybe you bought a little training.  Your developers have avidly watched all of the &lt;a href="http://www.zend.com/en/resources/webinars/i5-os"&gt;IBM i webcasts&lt;/a&gt; out at &lt;a href="http://zend.com/"&gt;Zend.com&lt;/a&gt; and are actively building the next web page.  But they get stuck on something.  They read through the forums and are confused.  They can do something a myriad of ways, but which is the best?  &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; has the answer with the development bundle.  The development bundle is very nice because it wraps a full versions of &lt;a href="http://www.zend.com/en/products/studio/"&gt;Zend Studio&lt;/a&gt; with telephone support along with a full version of &lt;a href="http://www.zend.com/en/products/platform/"&gt;Zend Platform&lt;/a&gt; with telephone support.  This alone takes the bundle a great deal but for enterprise customers we throw in 8 hours of “how-to” consulting with one of our &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; PHP sharp-shooters!  By giving the developers 2 incidents of 4 hours each in the standard package and 4 incidents of 4 hours each for Enterprise, you now have the ability to call Zend when you hit a brick wall or just plain want to understand something a little bit better.  Zend Framework how to is included in the Enterprise package and has become VERY popular among &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; shops.  And if you run out of time, don’t worry.  We would be happy to sell you more!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#4 PHP Architect Magazine&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;If your budget is REALLY tight then this will work for you.  Our good friends at &lt;a href="http://www.phparch.com/"&gt;PHP Architect &lt;/a&gt;magazine publish a very affordable monthly magazine that is loaded with great &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; and &lt;a href="http://www.zendframework.com/"&gt;Framework&lt;/a&gt; advice.  Articles on all sorts of topics like best practices, IDE’s debugging and the latest and greatest concepts of UI development using &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; applications are available and you get both print and a PDF copy for the low-low price of $35 for the year of 12 issues.  Don’t worry that the content would be too advanced.  While some article really gets deep into the fun of &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;, there are others like the “&lt;a href="http://pointbeing.net/"&gt;HTML for Developers&lt;/a&gt;” piece in the October 2009 issue that is ideal for anyone looking to pick up PHP!  One of the truly interesting pieces is the &lt;a href="http://www.flickr.com/groups/elephpants/"&gt;ElePHPants pictures&lt;/a&gt;.  This is a page dedicated to folks traveling the world with their little blue &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; Elephants and snapping a candid shot in interesting places.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#3 Kevin and Jeff’s really good book – &lt;a href="http://www.mc-store.com/5096.html"&gt;IBM i Programmers Guide to PHP&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Anyone starting out with &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; on &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; must get this book.  This book was written by two guys who have excellent skills in their respective areas and a completely open mind about each other’s space.  &lt;a href="http://www.mc-store.com/kevinschroeder.html"&gt;Kevin&lt;/a&gt; is a &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; sharpshooter who has a day job as a Technical Consultant at Zend and moonlights as a musician.  &lt;a href="http://www.olen-inc.com/site/index.html"&gt;Jeff&lt;/a&gt; is a long time IBM midranger and currently heads up &lt;a href="http://www.linkedin.com/groups?home=&amp;amp;gid=2245211&amp;amp;trk=anet_ug_hm"&gt;iManifest &lt;/a&gt;and enjoys stargazing in the Southern California skies.  This book covers a lot of the fundamentals of basic &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; and how it works on &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;.  Code samples and a &lt;a href="http://www.linkedin.com/groups?home=&amp;amp;gid=1908381&amp;amp;trk=anet_ug_hm"&gt;companion website on Linked-In&lt;/a&gt; give you a great start with &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.  It is available from &lt;a href="http://www.mcpressonline.com/"&gt;MC Press&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#2 &lt;a href="http://www.common.org/conferences/2010/annual/index.html"&gt;COMMON 2010&lt;/a&gt;: 50 years and counting!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The annual &lt;a href="http://www.common.org/"&gt;COMMON&lt;/a&gt; conference is a must see for any &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; developer, manager or administrator.  The content is solid and lots of great speakers and attendees to network with.  Plus a bunch of 50th anniversary activities for all to share.  Staff will get a lot of good education and management needs to check out the &lt;a href="http://www.common.org/conferences/2010/itec/index.html"&gt;ITEC&lt;/a&gt; conference where IT industry leaders get and exclusive executive experience that is second to none!.  I will be there with a host of other &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; bigots talking about the latest features of &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;, the &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; stack and much more.  Not to mention the announcements about the new version of the operating system. Make your plans today and come join the fun.  I will be at the &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; booth, presenting or hanging out with the &lt;a href="http://www.common.org/about/CAAC.html"&gt;CAAC&lt;/a&gt; members.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;#1 Zend Server for IBM i&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The next generation &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; stack for &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; is currently in beta and due for GA sometime REALLY soon.  This has easily been the best Christmas present I could have asked for.  If you haven’t had a chance to download and play you are really missing out!  There is no automated upgrade path from &lt;a href="http://www.zend.com/en/products/platform/"&gt;Zend Core/Platform&lt;/a&gt; to &lt;a href="http://www.zend.com/en/products/server/"&gt;Zend Server&lt;/a&gt; and this implementation allows you to run parallel quite nicely.  This allows existing &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; shops to continue working while testing the new stack all on the same LPAR.  Enhanced performance and lots of new features like &lt;a href="http://www.zend.com/products/server/zend-server-code-tracing"&gt;code tracing&lt;/a&gt; and &lt;a href="http://www.zend.com/products/server/zend-server-job-queue"&gt;Job Queue&lt;/a&gt; make this solution a must see. Plus we eliminated the &lt;a href="http://apache.org/"&gt;Apache&lt;/a&gt; server inside &lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/rzalf/rzalfgetstart.htm"&gt;PASE&lt;/a&gt; and cleaned up a lot of the administration with a single user interface.  Easier implementation, administration and usage will give management and staff a lot to be thankful for this New Year.  Yes, this stack will run on all supported &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; operating systems (V5R4, i6.1 and whatever they decide to call the next one).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I hope my list helps your shop plan and enjoy 2010.  I think there is a lot to chew on in there and many great places to show your staff you care by investing a little and getting a whole lot!  Please let me know what is essential in your IT strategy for the New Year.  Good luck in 2010 and God Bless!  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;input id="gwProxy" type="hidden"&gt;&lt;!--Session data--&gt;&lt;input onclick="jsCall();" id="jsProxy" type="hidden"&gt;&lt;div id="refHTML"&gt;&lt;/div&gt;&lt;input id="gwProxy" type="hidden"&gt;&lt;!--Session data--&gt;&lt;input onclick="jsCall();" id="jsProxy" type="hidden"&gt;&lt;div id="refHTML"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-8846629267214785881?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/8846629267214785881/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2010/01/top-10-listwhat-it-managewrs-should-get.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/8846629267214785881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/8846629267214785881'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2010/01/top-10-listwhat-it-managewrs-should-get.html' title='Top 10 List:What IT Managers should get for their team'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-1911901682169880010</id><published>2009-09-23T05:09:00.000-07:00</published><updated>2009-09-23T05:48:46.453-07:00</updated><title type='text'>The 3-year CIO vs. IBM i:  PHP to the rescue!</title><content type='html'>&lt;span style="font-family:arial;"&gt;So are you staying on the &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;?  With downturned economies, abandoned maintenance renewals, layoffs and slashed budgets I wonder if you will stick with &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;.  We have all known for years that the &lt;a href="http://www.investorwords.com/81/acquisition_cost.html"&gt;TCA&lt;/a&gt; (Total Cost of Acquisition) for IBM i is not terribly competitive while the &lt;a href="http://www.businessdictionary.com/definition/total-cost-of-ownership-TCO.html"&gt;TCO&lt;/a&gt; (Total Cost of Ownership) is more in line with what you might pay for a real server or server farm.  But the advent of server &lt;a href="http://www-03.ibm.com/systems/i/os/"&gt;virtualization &lt;/a&gt;and more and more ubiquitous software in the &lt;a href="http://www.linux.org/"&gt;Linux &lt;/a&gt;and &lt;a href="http://www.fakesteve.net/"&gt;Windows &lt;/a&gt;realm have made a serious dent in that philosophy.  I wonder, are you staying on &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;For years I have worked with the local user group in Chicago called &lt;a href="http://www.omniuser.org"&gt;The Omni User&lt;/a&gt;.  Just in my tenure we have had countless speakers come from all parts of the &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; community and geography.  Folks like &lt;a href="http://www.linkedin.com/pub/alison-butterill/1/15b/a"&gt;Alison Butterill&lt;/a&gt;, &lt;a href="http://www.linkedin.com/in/algrega"&gt;Al Grega&lt;/a&gt;, &lt;a href="http://www.partner400.com/"&gt;Jon Paris and Susan Gantner&lt;/a&gt;, &lt;a href="http://www.creativelyspeaking.com/"&gt;Randall Munson&lt;/a&gt;, &lt;a href="http://www.frankeni.com"&gt;Larry Bolhuis&lt;/a&gt; and many, many more.  Even I have picked up a session or two at a dinner meeting or one-day conference.     But some years ago I recall a keynote at one of our annual conferences given by &lt;a href="http://en.wikipedia.org/wiki/Frank_Soltis"&gt;Dr. Frank Soltis&lt;/a&gt;.  It was truly one of the more memorable presentations I have seen in a while.  I must say I have gleaned quite a bit from his books and talks that I now know the folks there as well as my own kids!  And, I rarely miss the opportunity to see him talk.   One of my favorites was a &lt;a href="http://www.common.org"&gt;COMMON&lt;/a&gt; opening session when he came out, placed his laptop down on the table, opened it and showed everyon in the audience the &lt;a href="http://www.fakesteve.net/"&gt;Apple&lt;/a&gt; logo on the front.  The crowd went wild and his only response was: “of course you would expect I am going to run something reliable…”&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;At the &lt;a href="http://www.omniuser.org"&gt;Omni &lt;/a&gt;event, &lt;a href="http://en.wikipedia.org/wiki/Frank_Soltis"&gt;Dr. Frank&lt;/a&gt; was discussing the R&amp;amp;D group of &lt;a href="http://www-03.ibm.com/ibm/history/exhibits/rochester/rochester_intro.html"&gt;IBM Rochester&lt;/a&gt;.  He was talking about all the wonderful things being developed behind the scenes.  All of it sounded exciting and then he made a point about &lt;a href="http://www.microsoft.com/windows/default.aspx?icid=winvan"&gt;Windows &lt;/a&gt;and &lt;a href="http://www.microsoft.com/en/us/default.aspx"&gt;Microsoft&lt;/a&gt;.  The point he made was that &lt;a href="http://www-03.ibm.com/ibm/history/exhibits/rochester/rochester_intro.html"&gt;IBM Rochester&lt;/a&gt; could not sit back and the could not sleep, that they absolutely HAD to focus on bringing new solutions to the market because &lt;a href="http://www.microsoft.com/windowsserver2008/en/us/default.aspx"&gt;Microsoft &lt;/a&gt;would eventually catch up.  He said that &lt;a href="http://www.microsoft.com/windowsserver2008/en/us/default.aspx"&gt;Microsoft &lt;/a&gt;would eventually put out an OS that did not require daily reboots and weekly patches.  Well, maybe he was half right.   The folks at &lt;a href="http://www.microsoft.com/windowsserver2008/en/us/default.aspx"&gt;Microsoft &lt;/a&gt;have come out with better server software and now own the lion’s share of the server market.  &lt;a href="http://www.ibmsystemsmag.com/ibmi/january09/endpgm/23633p1.aspx"&gt;Dr Frank&lt;/a&gt; is a tremendous observer.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So I wonder, will you stay on &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;?  Has the Intel space captured you, even a little?  Usually it starts out with a file server, something that is rather small and harmless. Then you discover the benefits of &lt;a href="http://www.microsoft.com/windowsserver2008/en/us/active-directory.aspx"&gt;Active Directory&lt;/a&gt; and think “OK, What’s a couple more servers”.  Especially when you consider how important authentication is to the organization you are told by EVERY Microsoft BP to “cluster” your &lt;a href="http://www.microsoft.com/windowsserver2008/en/us/active-directory.aspx"&gt;AD&lt;/a&gt;.  Then a specialty server or two, maybe even a &lt;a href="http://www.microsoft.com/sqlserver/2008/en/us/default.aspx"&gt;SQL Server&lt;/a&gt; to satisfy the back end of a &lt;a href="http://sharepoint.microsoft.com/sharepoint/default.aspx"&gt;Sharepoint &lt;/a&gt;application.  And then it begins.  A user asks a developer if they can have the same data in SQL Server as they have on &lt;a href="http://www.ibm.com/systemi"&gt;i5&lt;/a&gt;.  The reasons are numerous and unnecessary for the purpose of this writing, but we have heard them all.  Maybe you used DTS and moved to the new SSIS for replicating &lt;a href="http://www.ibm.com/systemi"&gt;i5&lt;/a&gt; data.  You mused when the folks talked about how much more useful the data is here than on the &lt;a href="http://www.ibm.com/systemi"&gt;i5&lt;/a&gt;.  Then it comes, a new CIO.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I have joked around about the 3 year CIO in many presentations and writings.  I have seen these individuals and they are numerous and plentiful.  They are focus on a simple agenda:  Year 1: Honeymoon and quick hits.  Maybe they shake up the department with staff changes and a simple solution for a couple of key users in the organization.  Usually loud key users are sought out at this point.  During this time she is building up momentum and groupthink for the big project.  Year two is the initiation of the big project.  Something exciting like a new ERP would do the trick.  Does the organization need a new ERP?  That should depend on many things from a practical perspective.  But we are not dealing with practical, here.  From a functional aspect, a new ERP should be warranted when the needs of the company outweigh the capabilities of the software and a reasonable attempt by the IT department to keep up with the changes.  Like a discreet manufacturer moving to process manufacturing, or something like that.  But what I see more and more is the comment: “The &lt;a href="http://www.ibm.com/systemi"&gt;AS/400&lt;/a&gt; and the green screen are just not strategic…”  In many cases I wish there was an IT police department I could call to have a restraining order put out on some of these guys.  But, alas we cannot legislate stupidity.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://www.angustheitchap.com/Blog/"&gt;Trevor&lt;/a&gt;, if you are reading, don’t send me any notes about the naming.  I am just writing what I hear and see.  And the 3-year CIO will never call it by its correct name.  It is to their advantage to use the old name as they are trying to connote the “ancient” nature of the &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;.  It is a tumultuous ride during this second year and if all goes well, the 3 year CIO starts to prepare her resume for the next 3-year gig somewhere else.  Certainly, there are variations on this where the CIO may last 4-5 years.  But eventually they get bored and move onto look at a new challenge.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Can you hang on to your &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; through the tenure of the 3-year CIO?  I would guess that you wouldn’t.  Primarily because the 3-year CIO is cost justifying all the new systems based upon the upgrade costs and maintenance fees of the &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt;.  (TCA vs. TCO)  And how many CIO's are reporting to the CFO?  And what CFO wouldn’t be attracted to the smell of fresh cut costs?  It’s like catnip to the tabby crawling around my feet as I write this.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Then there is the long term CIO who “gets it”.  They understand the value of server consolidation.  They appreciate the maintenance costs for the machine that really doesn’t need a full time administrator, in most shops.  One of our customers has truly enjoyed thinking strategically.  This customer went from a 3-year CIO to a more strategic CIO.  The new CIO who took over from the 3-year CIO was presented with a contract to implement a very large &lt;a href="http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/4516"&gt;German based ERP&lt;/a&gt; with a three letter acronym.  This CIO wisely said “I’m not  signing that without doing my own due diligence!”  I love this guy, already!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The new CIO wanders down to the IT department where the news of the new ERP was causing the RPG developers to dust off the only useful Microsoft application at a time like this: Word - in preparation for the latest iteration of their respective resumes.  He asks the IT guys “what’s up with this ERP project and what alternatives are there?”  The CIO reiterated that the primary complaint about the existing system was the perception that it was old due to the prevalence of green screens.  The IT guys looked at each other, dropped their resumes, and said “We’ve been playing around with PHP on a Linux box over there and I just heard that IBM is now supporting &lt;a href="http://www.zend.com/en/solutions/modernize-ibm-i/"&gt;PHP&lt;/a&gt; on the &lt;a href="http://www.ibm.com/systemi"&gt;i&lt;/a&gt;.  The CIO gave the order to build and develop a pilot project.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The IT guys dug in and installed &lt;a href="http://www.zend.com/en/products/core/core-for-i5os"&gt;Zend Core&lt;/a&gt; on their &lt;a href="http://www-03.ibm.com/systems/i/"&gt;System i&lt;/a&gt; at &lt;a href="http://www-03.ibm.com/systems/i/advantages/v6r1/index.html"&gt;V5R4&lt;/a&gt;.  In a couple of weeks they had GUI interfaces with data and charts and all kinds of demos for the CIO.   Nothing earth shattering, but it was significant.  The CIO was impressed and said “OK, How long to convert the whole shooting match?”  The IT guys responded with ‘do you mean EVERYTHING?”  The CIO nodded in the affirmative.  So the IT guys headed back to the drawing board and developed an aggressive plan.  A plan, by the way, that would take half the time and a fraction of the cost of the new ERP system.  The IT guys not only built the plan, but they delivered the goods on time and just a little over budget (within 10 points).  Try that with your ERP implementation!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The more I work with &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; customers, the more I hear stories like these.  &lt;a href="http://www.zend.com/en/solutions/modernize-ibm-i/"&gt;PHP&lt;/a&gt; on &lt;a href="http://www.ibm.com/systemi"&gt;IBM i&lt;/a&gt; is giving companies new hope and fresh approach to opportunities.  Many of these opportunities have always been there with tactical tools and Java, CGI, etc.  But PHP brings world class power within the reach of the &lt;a href="http://www-949.ibm.com/software/rational/cafe/community/rpg"&gt;RPG &lt;/a&gt;developer along with a roadmap that the CIO can fine tune to the needs of the organization.  That is not to say that a new ERP might still be in order for some companies, but it does beg the question: Is your CIO on the three year track?  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The moral of the story is that the new CIO should be embraced and not be feared.  At least until year 2!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-1911901682169880010?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/1911901682169880010/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/09/3-year-cio-vs-ibm-i-php-to-rescue.html#comment-form' title='19 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/1911901682169880010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/1911901682169880010'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/09/3-year-cio-vs-ibm-i-php-to-rescue.html' title='The 3-year CIO vs. IBM i:  PHP to the rescue!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>19</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-8582799157119450756</id><published>2009-08-24T12:40:00.000-07:00</published><updated>2009-08-24T12:42:13.622-07:00</updated><title type='text'>Back to school - 2009!</title><content type='html'>&lt;span style="font-family:arial;"&gt;Those of you who know me understand that I am crazy.  This of you who don’t, well, let me just say that I have five kids.  ‘nuff said.  But this year is especially momentous in the Pavlak household as each of the five kids is in a different school!  Five schools, 2 districts various bus schedules a well organized Mom and a Dad who is just trying to keep up.  It is exciting and challenging and rewarding and exhausting.  But I wouldn’t trade the experience for anything.  Ironically, education was not such a big deal for my family when we were growing up yet my 3 siblings and I managed to figure out how to get college degrees.  So let’s talk a little about education.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I got a call last night from an old friend.  This friend, let’s call him Jack, was an IBM midrange programmer.  I say IBM midrange programmer so as to not provoke the wrath of Trevor who might insist on correcting me .  Jack is no Spring chicken.  In fact, his kids are about grown and gone.  But Jack has another similar aspect as to many in the IBM midrange space.  Jack is out of work…since January.  Jack’s only crime, specializing in the IBM midrange space.  Well, that might be a bit dramatic, but you get my point.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So Jack called me up to let me know he was really jazzed about something.  He was playing with Drupal on his home computer in the XAMPP stack and was in the process of migrating the stack to his new laptop.  He was stunned to see the power and features in this open Source CMS and couldn’t wait to tell me about his new career path.    He mentioned that getting laid off might have been the best thing to ever happen to him as he can now focus on the future.  And he plans for that future to include PHP.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The reality is that I continue to hear about friends and associates getting laid off.  Many times it has very little to do with the technology currently employed whether it be IBM midrange, Microsoft, open source or something else.  Often the reason I am hearing is related to profitability and productivity.  No one wants to admit they are not being productive.  I mean, even an RPG III programmer who enhances an accounting report and turns it into a DSO for the CFO has just improved productivity.  But we all need to be aware of where the bus is heading and start making plans to be on it.  Retirement may be a fantasy for many in my generation as 401-k get decimated and Pension funds continue to evolve and dry up.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I am a big fan of PHP, no duh!  But regardless of which technology you choose I challenge you to explore something new.  The good news is that once you learn PHP you now have skills that are 100% transportable to any other platform.  That is a benefit for both you and your management because new platforms are popping up all over.  And some you can’t even identify like SaaS or cloud based technologies.  These days the hardware and OS are becoming less and less important.  Understanding the application technology allows you to plug in and communicate.  Web Services is just plain huge.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So, I salute my firend Jack and wish him good luck on his new endeavor.  Oh yea, I have heard of a lot of opportunities for IBM midrange folks with PHP experience.  Hmmm…wonder why that is?&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-8582799157119450756?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/8582799157119450756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/08/those-of-you-who-know-me-understand.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/8582799157119450756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/8582799157119450756'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/08/those-of-you-who-know-me-understand.html' title='Back to school - 2009!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-3590137899190532006</id><published>2009-07-27T12:14:00.000-07:00</published><updated>2009-07-27T13:11:57.478-07:00</updated><title type='text'>Zend Platform for Development too?</title><content type='html'>&lt;span style="font-family:arial;"&gt;Folks in the i5 community love to know if software companies eat their own dog food.  The unequivocal answer to that question for me is a hearty and resounding YES!!!  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I can’t tell you the number of times I have written a piece of code that looks perfectly fine but still refuses to execute.  Then I find the missing semicolon or non-aligned curly brace.  Jumping between &lt;a href="http://en.wikipedia.org/wiki/COBOL"&gt;COBOL&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/IBM_RPG"&gt;RPG&lt;/a&gt;, &lt;a href="http://php.net/"&gt;PHP &lt;/a&gt;and &lt;a href="http://en.wikipedia.org/wiki/AS/400_Control_Language"&gt;CL&lt;/a&gt; I am forever leaving out the &lt;a href="http://www.php.net/manual/en/language.operators.comparison.php"&gt;extra equal sign&lt;/a&gt; in my comparison operators!  I have given up blaming the &lt;a href="http://en.wikipedia.org/wiki/Compiler"&gt;compiler&lt;/a&gt; years ago, although I did find a bug in a beta &lt;a href="http://en.wikipedia.org/wiki/AS/400_Control_Language"&gt;CL&lt;/a&gt; API last year.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;So I’m tooling along testing a web services Proof of Concept for a prospective customer and I can’t seem to see what the issue is the hunk of code.   One of our outstanding PS guys tossed it together in less than an hour on his &lt;a href="http://www.linux.org/"&gt;Linux&lt;/a&gt; box and I needed to get it running on the &lt;a href="http://www.ibm.com/systems/i/"&gt;i5&lt;/a&gt;.  Once I updated the version of &lt;a href="http://www.zendframework.com/"&gt;Zend Framework&lt;/a&gt; on the development LPAR(check in to &lt;a href="http://devzone.zend.com/public/view"&gt;DevZone&lt;/a&gt; for more details) I started to get some really meaningful error messages.  I knocked through a couple of simple configuration issues and was off the to the races!  What I like most about &lt;a href="http://www.zend.com/en/products/platform/"&gt;Zend Platform&lt;/a&gt; is the fact that I do not need to go chasing through logs to get the important information and help me along the way.  With &lt;a href="http://www.zend.com/en/products/platform/"&gt;Zend Platform&lt;/a&gt; I have a browser based interface that I an leave up and toggle to while testing my &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; code.  A quick F5 to refresh the page and I see the most recent error.  No digging, no tailing and no SSH to find the file that should contain the error.  This feature of &lt;a href="http://www.zend.com/en/products/platform/"&gt;Zend Platform&lt;/a&gt; is referred to as Platform Intelligence.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Platform Intelligence provides a huge advantage when doing development.  I wouldn’t work without it now.  But for production applications it comes in handy too.  It basically acts like the QSYSOPR message queue for your PHP applications.  So while users are cranking away on your WEB applications, &lt;a href="http://www.zend.com/en/products/platform/"&gt;Platform&lt;/a&gt; is collecting information about different errors and warnings on problems with PHP code through poor performing database calls.   The information stays around for as long as you need it.  Some shops I work with check the &lt;a href="http://www.zend.com/en/products/platform/"&gt;Zend Platform&lt;/a&gt; GUI Interface once or twice a day while other shops are wired into the errors via the email notification feature.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The &lt;a href="http://www.ibm.com/systems/i/"&gt;i5&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/LPAR"&gt;LPAR &lt;/a&gt;I maintain is used by several folks around the world for presentations and such.   I usually use the &lt;a href="http://www.zend.com/en/products/platform/"&gt;Platform&lt;/a&gt; interface while I am developing code for presentations and I also check now and then to see what the other SE’s might be doing.  With very little effort I can see the issues and help them out.  This process can be interesting as many of these folks speak a variety of languages.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Developing applications these days is all about productivity.  So whatever you have in your tool bag that can increase your productivity makes you a more valuable resource.  At the end of the day, that’s a good chunk of what matters!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-3590137899190532006?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/3590137899190532006/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/07/folks-in-i5-community-love-to-know-if.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3590137899190532006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3590137899190532006'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/07/folks-in-i5-community-love-to-know-if.html' title='Zend Platform for Development too?'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-5133296978378219802</id><published>2009-05-25T07:44:00.000-07:00</published><updated>2009-05-25T07:57:46.233-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zendcon'/><category scheme='http://www.blogger.com/atom/ns#' term='memorial'/><category scheme='http://www.blogger.com/atom/ns#' term='community'/><category scheme='http://www.blogger.com/atom/ns#' term='tek'/><title type='text'>Memorial Day, PHP and tek…</title><content type='html'>&lt;span style="font-family: arial;"&gt;It is Memorial Day as I write this.  For several years, our parish priest would print in the weekly bulletin a story about the song &lt;/span&gt;&lt;a style="font-family: arial;" href="http://freepages.music.rootsweb.ancestry.com/%7Eedgmon/cwtaps.htm%20"&gt;Taps&lt;/a&gt;&lt;span style="font-family: arial;"&gt;.  Whether you are familiar with the song or not, the lyrics and the story behind them are both sensitive and compelling.  It speaks not about the politicians or the bureaucrats who try to make decisions on our behalf, but of the soldiers and the citizens they are sworn to protect. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;But now on to more geeky fare.  I got a chance to attend to the &lt;a href="http://tek.mtacon.com/"&gt;php|tek&lt;/a&gt; conference again.  Last year I was on a different blog where all the pages were destroyed.  So, for those of you who missed my summary I will restate a lot of the points again this year.  And yes, I was once again the most overdressed person in attendance as I did have a collared shirt on.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Organized by &lt;a href="http://mtabini.blogspot.com/"&gt;Marco Tabini&lt;/a&gt; and Associates, &lt;a href="http://tek.mtacon.com/"&gt;php|tek&lt;/a&gt; is an event held twice a year.  Spring in Chicago and fall in another location like Orlando or something.  I am really not sure and Marco has not updated the site with the next conference yet.  Last year I was new to a lot of things - New to Open Source, new to Zend and new to &lt;a href="http://tek.mtacon.com/"&gt;php|tek&lt;/a&gt;.  I found the event last year to be VERY interesting as I met MANY friendly people.  Some of which were Zend employee’s I met for the first time!  Last year no one knew who I was.  This year a couple of folks recognized me not because of my meager PHP skills but because I am the i5 guy. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;So on behalf of &lt;a href="http://systeminetwork.com/"&gt;SystemiNetwork &lt;/a&gt;and &lt;a href="http://www.zend.com/"&gt;Zend&lt;/a&gt;, I had the chance to not only attend &lt;a href="http://tek.mtacon.com/"&gt;php|tek&lt;/a&gt;, but I also got to speak!  This was a big deal for me as this event is all about the technical side of &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;and the community.  I chose to speak on two topics and sandwiched between them was an IBM speaker named &lt;a href="http://devzone.zend.com/article/3675"&gt;Erwin Earley&lt;/a&gt;.  If you have never met Erwin, please seek him out at the next event.  He is a hoot and know a TON about Open Source on &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.  My first session was “PHP on IBM i:What the Heck is That?”  This session focused on giving the folks in the LAMP community a perspective on what and &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; really is.  I expected no one to be interested or care about this topic and was pleasantly surprised to find a few folks actually coming to see it.  I got a chance to meet some new friends and catch up with a couple of old friends.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;If you r are even remotely interested in the fabric of the PHP community and how they think, operate and grow, this event is worth checking out.  There is a ton of great content and really great people who make it up.  I had the opportunity to meet with a developer from &lt;a href="http://www.mysql.com/"&gt;MySQL &lt;/a&gt;as I was killing time getting caught up on email and attending a conference call.  She was very instrumental in helping me understand that this event is all about the community.  So, as a relatively new member of the community, I asked her share some thoughts about the community.  She immediately sent me to a web page that has the manual about how to ask a question.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;You might think that asking a question is a fairly straight forward thing.  But in the open source community time is time and energy is precious.  So these folks, while helpful, do not like to waste time.  This was very helpful to understand as the &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; community tends to clash with the&lt;br /&gt;Open Source community.  It really has to do with self-reliance.  The Open Source community prides itself of not needing anyone and asking for help only when every other avenue has been exhausted.  Check out the directions on &lt;a href="http://catb.org/esr/faqs/smart-questions.html"&gt;how to ask a question&lt;/a&gt; and they are both enlightening and hilarious!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Although one might think this is the only event that draws a &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; crowd, it isn’t.  This fall you can expect the annual &lt;a href="http://www.zendcon.com/"&gt;ZendCon&lt;/a&gt; – the premier PHP conference.  This event will be wall to wall with great &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; content, tutorials and opportunities to meet and network with peers and members of the community.  As I indicated, networking is my favorite part.  This is where you lean the most about things you just can’t get out of a book or wiki.  How and why people attack certain situations and the methods employed to help achieve the goal.  This is where it’s at!  Sometimes getting an education at an event like this is somewhat akin to getting a drink of water form a fire hose!  So what I do is set my sights in a different direction.  I come prepared to learn a thing or two.  But I really am there for the networking.  I want to know how people are using &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; in the enterprise to solve real life problems.  This is what drives me as I am intensely curious about how &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; is making life better for everyone!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Most of you know my position on education.  If you don’t just read up on a few of my older blog articles.  I really do not care how you get it.  I would hope that you come to &lt;a href="http://www.zend.com/"&gt;Zend&lt;/a&gt;, but books, websites, and OPC (Other Peoples Code) don’t hurt.  The point is that you MUST keep current in IT if you want to maintain your competitive advantage.  An old boss of mine whom I respect a great deal used to say: “There will always be a shortage of GOOD programmers!”&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-5133296978378219802?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/5133296978378219802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/05/memorial-day-php-and-tek.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5133296978378219802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5133296978378219802'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/05/memorial-day-php-and-tek.html' title='Memorial Day, PHP and tek…'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-5361916181269239037</id><published>2009-05-03T14:30:00.000-07:00</published><updated>2009-05-03T14:47:30.842-07:00</updated><title type='text'>Do more with less…When is Les starting?</title><content type='html'>&lt;span style="font-family:arial;"&gt;Well, the &lt;a href="http://common.org/"&gt;COMMON&lt;/a&gt; conference for 2009 is behind us.  I won’t bore you with a recount of the event as there are many folks out there who have done an admirable job summarizing “the” event in the &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; realm.  But as I was speaking at a couple of &lt;a href="http://common.confex.com/common/s09/htsearch.cgi?words=pavlak&amp;amp;action=search&amp;amp;formaction=http%3A%2F%2Fcommon.confex.com%2Fcommon%2Fs09%2Fhtsearch.cgi&amp;amp;meetingid=1003&amp;amp;dir=webprogram&amp;amp;override=&amp;amp;exclude=&amp;amp;config=&amp;amp;method=and&amp;amp;format=builtin-long&amp;amp;sort=score"&gt;sessions&lt;/a&gt; I stumbled across a couple of phrases that seemed to resonate with the community.  I wanted to share a few of these with you today.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The first is “Many hands make light work”.  In the volunteer community this phrase couldn’t be more appropriate.  It appears to hail from an English playwright, &lt;a href="http://en.wikipedia.org/wiki/John_Heywood"&gt;John Heywood&lt;/a&gt; from the 16th century.  At &lt;a href="http://common.org/"&gt;COMMON&lt;/a&gt;, as is done in many &lt;a href="http://www.eserverusergroup.org/"&gt;local user groups&lt;/a&gt;, several of the activities that the attendee’s take for granted are planned and executed by volunteers.  And truly, the more help the better.  But volunteerism seems to be dropping off these days.    Fewer and fewer of us have the free time to give to our communities, churches and user groups.  We struggle with attracting volunteers to the IBM i community as well.  So a great effort has been set forth by the &lt;a href="http://www.youngiprofessionals.com/site/"&gt;YiPs&lt;/a&gt; (Young i Professionals) who do not necessarily need to be under 30 but are generally new to the &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.  The &lt;a href="http://www.youngiprofessionals.com/site/"&gt;YiPs&lt;/a&gt; have done some very cool things with a borrowed LPAR and a little open source software.  Check them out and see for yourself. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;As the 21st century moves on we are all living the Chinese curse “May you live in interesting times”.  I know I am.  And at work we seem to be transitioning from the phrase “Many hands make light work” to “Do more with less”.  Our &lt;a href="http://www.common.org/about/CAAC.html"&gt;CAAC&lt;/a&gt; (COMMON Americas Advisory Council) ring Leader, Guy Havelick, told me that the other day.  He told me that “less” is his best friend!  I thought that was a hoot and I can’t wait for “less” to start.  Having a chance to meet old and new friends on the &lt;a href="http://www.common.org/about/CAAC.html"&gt;CAAC&lt;/a&gt; is always a special treat.  It made me glad to know that we are attracting new members while some of the veterans are moving on.  We are all finding that regardless of where we look doing more with less can be a very interesting challenge.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;One of my new customers has recently decided to move toward &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; on &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.  I won’t go into the details of the account or their decision making process as it was very similar to most shops and generally falls into these three categories: Make the &lt;a href="http://www-03.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; relevant, leverage RPG investments, build a path to the future for both staff and applications.  But what impressed me the most was how they are going about the training of the RPG contingent.  Our online training is typically delivered by an interactive Webex presentation with a live instructor where the students log in for about 2 hours a day, every other day for three weeks.  The management of this shop is insisting that his staff take not just the two hours out but the entire day to focus on learning &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; and web development.  This represents a SIGNIFICANT investment on the part of the company and I applaud their efforts.  Staffers need to realize that in these times there may not be a lot of money going around.  When management decides to invest time there is still a financial component.  And that investment is very valuable not only to the company but also to the developer.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;But I have a special message to management.  This one appears to be attributed to Benjamin Franklin by some and Albert Einstein by others.  Regardless, the phrase represents the definition of Insanity as “doing the same thing over and over and expecting a different result”.  I have seen in my travels many types of &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; shops.  And I am seeing some talented workers getting thrown out on the street.  After a layoff, downsizing, rightsizing, or whatever you want to call it, the folks left behind have many challenges.  The one thing they all must face is the challenge of “Doing more with less!”  But what happens if your people are already working 50 hour weeks.  Reducing staff and tossing more on the plate is somewhat akin to that definition of insanity.  Now I am very aware of the creative juices flowing through the human soul and the phrase “necessity is the mother of invention” rings true in this age we are all living through.  But without giving the staff the opportunity or the tools to learn a new skill, doing more with less should not be a reasonable expectation.  In fact, it may just blow up in your face as the economy turns around, the good folks may remember what was asked or expected and look for greener pastures.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I sincerely hope this isn’t the case in your shop.  I have seen many approaches to downsizing and some work better than others.  For any manager willing to invest in his/her staff like the one I highlighted above I salute you!  For those of you who are expecting more productivity with the same or fewer resources, I hope you realize that you may need to shake things up a bit to get those different results!  Things like exploring open source or offering training.  Consider training each other, even if you are only exploring a new op-code or function in RPG.  One last bumper sticker comment and this applies to both management and staff: “If you think education is expensive, try ignorance!” &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-5361916181269239037?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/5361916181269239037/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/05/do-more-with-lesswhen-is-less-starting.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5361916181269239037'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5361916181269239037'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/05/do-more-with-lesswhen-is-less-starting.html' title='Do more with less…When is Les starting?'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-724444099056325020</id><published>2009-03-23T05:34:00.000-07:00</published><updated>2009-03-23T06:37:53.615-07:00</updated><title type='text'>Religious wars</title><content type='html'>&lt;span style="font-family:arial;"&gt;You would have figured by now that I would know better.  20 plus years in IT, programming everything from assembly to &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.  But, no, I still got sucked in to the vortex of a religious war of technologies.  At first I didn’t know what to think.  It was a typical customer call.  Showing them the presentation of &lt;a href="http://www.zend.com/en/solutions/i5-solutions/"&gt;Zend products&lt;/a&gt; and I was wondering where their thoughts were.  Then I tripped.  I mentioned that one of the key features that &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; had and Java didn’t was it’s divided personality of &lt;a href="http://en.wikipedia.org/wiki/Procedural_programming"&gt;Procedural development&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Object-oriented_programming"&gt;OOP&lt;/a&gt;.  The Java guy in the back of the room reared his head and exclaimed “That’s not true!”  And, he was right.  Java does have a &lt;a href="http://en.wikipedia.org/wiki/.jsp"&gt;model&lt;/a&gt; that is more forgiving to the typical RPG programmer.  So, if Java has that loving and forgiving model, why haven’t all of the RPG programmers learned Java?  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;You would think the legendary burger flipping ad would have motivated enough folks.  Not so much.  RPG is still around. &lt;a href="http://ibm.com"&gt; IBM&lt;/a&gt; continues to invest in it.  And, it’s looking more and more like Java every day!  So why the struggle?  For years I have felt that &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; is a much more forgiving language.  Not as rigid and structured.  It hearkens me back to the days when I used to burst forms in my dad’s data center.  They had a &lt;a href="http://www-306.ibm.com/e-business/la/ve/innovation/history/year_1974.shtml"&gt;System 3&lt;/a&gt; and a couple of COBOL developers.  My Dad was getting frustrated that it took several days for a COBOL developer to put out even a basic report.  Punching the deck, turning around the cards, bursting the print: It all took time.  Then an IBM SE (Software Engineer, for those who were wondering) came in and told my Dad about a new macro language that would put out reports in a fraction of the code required for COBOL and in record time.  My Dad took the plunge and headed down to &lt;a href="http://www-03.ibm.com/ibm/history/exhibits/vintage/vintage_4506VV8010.html"&gt;IBM downtown&lt;/a&gt; for a week of intensive RPG training.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The other COBOL developers warned my Dad.  They said: “George, you really should mess around with toy languages like that.  COBOL is Strategic, COBOL is enterprise and besides, it supports a structured programming model.”  My Dad considered what the other developers said.  And then continued developing his reports in RPG.  The productivity gain was unbelievable.  He was happy and the owners of the company were getting information faster than they ever had before.  RPG evolved over time from a Macro language in RPG I that replaced the old &lt;a href="http://www-03.ibm.com/ibm/history/exhibits/mainframe/mainframe_coi79.html"&gt;FARGO&lt;/a&gt; machines and RPG II used by the &lt;a href="http://www-306.ibm.com/e-business/la/ve/innovation/history/year_1974.shtml"&gt;System 3&lt;/a&gt; to a full blown structured programming language in RPG III on the &lt;a href="http://www-03.ibm.com/ibm/history/exhibits/rochester/rochester_4009.html"&gt;System 38&lt;/a&gt; and RPG/400 and RPG IV.  Not to mention ILE that just kicks the whole structured thing up a notch: “BAM”&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Today, I feel that I am reliving the same religious war that my Dad endured.  I listened to people who have been fed the Java Kool-Aid and regurgitate the same FUD about &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.  Yet so many websites and business applications are written in &lt;a href="http://php.net"&gt;PHP&lt;/a&gt;.  I wanted to describe why I think &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; is gaining in popularity.  It all centers around the desire to create.  &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; is a blue collar language that gets stuff done.  It’s OK to sometimes write a piece of procedural code just like its OK to sometimes use the &lt;a href="http://jaymoseley.com/hercules/rpgtutor/rpg003.htm"&gt;logic cycle&lt;/a&gt; to crank out a report.  If that is all you need, then have at it!.  Certainly &lt;a href="http://en.wikipedia.org/wiki/Object_Oriented_Programming"&gt;OOP&lt;/a&gt; has its place.  Many hands can make light work and with so many i5 shops have 1 or two programmers that the luxury of designing a monolithic Java architecture just isn’t in the cards.  So a little &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; can go a long way!  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The community is another reason. Sure, Java is Open Source and quite possibly about to become another IBM asset.  But the reality is that Java became open source a little too late.  &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; has been open source nearly since its birth.  Many people in the community have grown up with &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; and still many can adopt it as if it were still young.  It’s cool to be working with &lt;a href="http://php.net"&gt;PHP&lt;/a&gt; in the open source arena and there is a far reaching camaraderie that envelops the members like no other technology save Linux. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;But the last reason I wanted to mention is purely the organic growth of &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.  We recently updated a slide in one of our presentations that describes the top 10 web sites by traffic.  This is estimated and tracked by the Alexa group.  When I started  with Zend four of the top 10 websites by traffic were running &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.  Today, six of the ten are running &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; and there does not seem to be any loss of momentum.  Those six include: &lt;a href="http://yahoo.com/"&gt;Yahoo&lt;/a&gt;, &lt;a href="http://youtube.com/"&gt;YouTube&lt;/a&gt;, &lt;a href="http://wikipedia.com/"&gt;Wikipedia&lt;/a&gt;, &lt;a href="http://blogspot.com/"&gt;Blogger&lt;/a&gt; (which I am using for this piece), &lt;a href="http://facebook.com/"&gt;Facebook&lt;/a&gt;, &lt;a href="http://myspace.com/"&gt;MySpace&lt;/a&gt;, and &lt;a href="http://yahoo.com.jp/"&gt;Yahoo Japan&lt;/a&gt;.  It’s OK if you want to combine Yahoo and Yahoo Japan as number eleven is a Chinese search engine called Baidu which is also written in &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;No matter how you slice it, &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; is running a significant portion of the web.  It was developed for the web and by the community to be a powerful and fast way to get applications developed.  Sounds a lot like the early days of RPG to me!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-724444099056325020?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/724444099056325020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/03/religious-wars.html#comment-form' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/724444099056325020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/724444099056325020'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/03/religious-wars.html' title='Religious wars'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-3124496894361524357</id><published>2009-02-16T20:11:00.000-08:00</published><updated>2009-02-16T20:27:52.332-08:00</updated><title type='text'>Oversight</title><content type='html'>I am musing at the relationships of old and new friends.  It appears that while everyone is connected via &lt;a href="http://www.linkedin.com/"&gt;Linked-In&lt;/a&gt;, the world is really on &lt;a href="http://www.facebook.com/"&gt;Facebook&lt;/a&gt;.  I have entered into a “&lt;a href="http://apps.facebook.com/kidnapped/home"&gt;kidnap&lt;/a&gt;” battle with two very successful &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; folks.  Who’d a thunk it!  But an old friend found me last night and it appears that his company has a new partnership with &lt;a href="http://www.easycmdb.com/"&gt;EasyCMDB&lt;/a&gt;.  I think this is a good place to be.&lt;br /&gt;&lt;br /&gt;Over the last several years, IT has benefitted from some of the most interesting (I’m being generous here) legislation.  &lt;a href="http://www.soxlaw.com/"&gt;Sarbanes-Oxely&lt;/a&gt;, &lt;a href="http://www.hipaa.org/"&gt;HIPPA&lt;/a&gt;, and &lt;a href="http://www.ediscoverylaw.com/"&gt;eDiscovery &lt;/a&gt;are a few that come to mind.  These pieces of legislated compliance have done wonders for IT. &lt;a href="http://www.ediscoverylaw.com/"&gt; eDiscovery &lt;/a&gt;selling disk drives for folks who cannot stand to delete their email, &lt;a href="http://www.soxlaw.com/"&gt;SOX &lt;/a&gt;for causing more automation and less human touch and &lt;a href="http://www.hipaa.org/"&gt;HIPAA &lt;/a&gt;for rearranging every hospital, Doctor’s office and pharmacy in the world. My local drug store has gone paperless.  But there is no reason that they would have invested in a $1,300 scanner x2 if it weren’t for the legislation, maybe.  Yes, oversight is GOOD for IT!  Whether you are conservative or liberal one fact is true, we will be seeing a lot more oversight in the &lt;a href="http://www.whitehouse.gov/administration/cabinet/"&gt;new administration&lt;/a&gt;! &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When I saw my old friend was working indirectly with &lt;a href="http://www.easycmdb.com/"&gt;EasyCMDB &lt;/a&gt;I felt compelled to look it up as I knew I had seen the name before.  As a New Zealand based company, &lt;a href="http://www.easycmdb.com/"&gt;EasyCMDB &lt;/a&gt;is a commercial software application that supports &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL&lt;/a&gt;, the British Standard for IT management.  It is geared toward process and service management excellence.  People running around with an &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL &lt;/a&gt;certification are somewhat akin to the accountant with his CPA.  It doesn’t guarantee the guy is perfect, but he has met some standard of excellence and qualification.  I happened to think &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL &lt;/a&gt;is good and will help transform the IT industry as the software becomes more prevalent and usable.  While I started this discussion comparing &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL &lt;/a&gt;to the compliance legislation above its voluntary nature would cause it to be compared more favorably &lt;a href="http://www.isoiec20000certification.com/about/whatis.asp"&gt;ISO20000&lt;/a&gt;, etc.  But with the current &lt;a href="http://www.whitehouse.gov/administration/cabinet/"&gt;executive administration&lt;/a&gt; who knows how long that will last?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;While I served as an IT director I looked heavily into &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL &lt;/a&gt;and specifically &lt;a href="http://www.itsm.info/ITSM.htm"&gt;ITSM&lt;/a&gt;.  I wanted to implement many pieces of the puzzle and got a few things in the door.  I had some small successes with centralization of information and documentation, &lt;a href="http://passwordsafe.sourceforge.net/"&gt;passwords especially&lt;/a&gt;.  But the overall discipline of &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL &lt;/a&gt;was a bit much.  As I look back I muse about the fact that things improved under my oversight, but I always feel I could have done more.  I think &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL &lt;/a&gt;is a great place to start and would advocate that any and all IT management explore this technology. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So why am I blathering on about this stuff?  Simply because &lt;a href="http://www.easycmdb.com/"&gt;EasyCMDB &lt;/a&gt;is a PHP based application.  Yes, a world class compliance application written in &lt;a href="http://php.net"&gt;PHP&lt;/a&gt;.  Hmmmm, maybe this language is around to stay.  One can only speculate.  But the application is certified to run on Linux, Unix and Windows.  Not sure about &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;, yet.  But let’s look at what else is out there.  A quick scan of &lt;a href="http://sourceforge.net/"&gt;Sourceforge &lt;/a&gt;shows me that &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL &lt;/a&gt;projects number in the low 40’s.  Not bad for such a niche industry.  But more revealing is that the statistics of the open source solutions out there while still favoring &lt;a href="http://php.net"&gt;PHP &lt;/a&gt;are starting to show more Java activity. &lt;a href="http://www.zend.com"&gt; PHP &lt;/a&gt;accounted for over half of the solutions while &lt;a href="http://www.javasucks.org/"&gt;Java &lt;/a&gt;only accounted for about a dozen or so.  5 solutions were indeterminable from their profiles on &lt;a href="http://sourceforge.net/"&gt;Sourceforge &lt;/a&gt;and I was too lazy to download the code just to see what technology it was written in.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;While this is hardly a scientific sampling, it is a strong indicator that &lt;a href="http://www.zend.com"&gt;PHP &lt;/a&gt;is going and going strong.  The other technologies represented included Python, Perl and Ruby had one project out there.  But we really know who the heavy hitters in the &lt;a href="http://www.itil-officialsite.com/home/home.asp"&gt;ITIL &lt;/a&gt;realm are today.  And tomorrow, who knows?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-3124496894361524357?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/3124496894361524357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/02/oversight.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3124496894361524357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3124496894361524357'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/02/oversight.html' title='Oversight'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-623259600310618291</id><published>2009-01-26T13:24:00.000-08:00</published><updated>2009-01-26T19:48:20.735-08:00</updated><title type='text'>IBMi and PHP</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;a href="http://www.zend.com/en/solutions/i5-solutions/"&gt;Zend&lt;/a&gt; has covered a fair amount of ground in the last three years in their effort to support &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; on the &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.  Looks like the future will be equally as thrilling.  With an interest level that is at a fever pitch among the likes of IBM, industry analysts and customers I am seeing an accelerating adoption rate that indicates things are brighter than ever.  So, why am I so cheerful in this economy?  There is no better time for a company looking to deploy new solutions that exploit what &lt;a href="http://en.wikipedia.org/wiki/Open_source"&gt;open source&lt;/a&gt; and &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; have to offer the &lt;a href="http://common.org/"&gt;IBM i community&lt;/a&gt;.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Let’s say the CFO walks into the IT director’s office and says good news bad news.  Good news is that you still have a budget.  Bad news is that it has been slashed by 10-20-30% and you now have to decide where.  But where do you go?  What do you go after?  IT shops everywhere are seeing what we call “compressed budgets”.  He could spend the next five days calling all of your vendors to try and trim or eliminate the maintenance contracts.  He could cut someone loose.  After all, no one would bat an eyelash at seeing one more unemployment number.  Or maybe it’s time to finally look at that &lt;a href="http://en.wikipedia.org/wiki/Open_source"&gt;open source&lt;/a&gt; desktop application in &lt;a href="http://www.ibm.com/software/lotus/products/notes/"&gt;Lotus Notes&lt;/a&gt; or &lt;a href="http://www.openoffice.org/"&gt;Open Office&lt;/a&gt;.  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Over the years our customers have commented that they are looking at &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; for a number of reasons.  The most common reason we are hearing in 2009 reflects that fact that open source is no longer an option or a luxury but &lt;span style="font-style: italic;"&gt;strategic and cost effective&lt;/span&gt;!  Linux, &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;, &lt;a href="http://openoffice.org/"&gt;Open Office&lt;/a&gt;, it doesn’t matter.  No cows are sacred in this new economy.  The ability to deliver more with less is essential and &lt;a href="http://en.wikipedia.org/wiki/Open_source"&gt;open source&lt;/a&gt; can help that effort.  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So, &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; is still here and with several improvements in the IBM Midrange space over the last three years.  More features, numerous updates, consistent parallels with the community &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; code base and &lt;a href="http://www.eclipse.org/"&gt;Eclipse &lt;/a&gt;as well as commitment from IBM to keep &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; as a strategic solution within the &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; toolset.  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So how does someone get on board this &lt;a href="http://en.wikipedia.org/wiki/Open_source"&gt;open source&lt;/a&gt; train?  There are a bunch of articles out there that weigh the advantages of open source and discuss what you should be doing.  But I recommend a slightly different approach.  Even though the CFO starts with the budget I think that is the last place to start even though it is a good motivator.  A true CIO will start with the business requirements.  There has to be a need, strategy or an application in the user’s requirements that you have been considering.  Only now consider it with a technology like &lt;a href="http://php.net/"&gt;PHP &lt;/a&gt;or &lt;a href="http://www.linux.org/"&gt;Linux&lt;/a&gt;.  Look at your current environment.  You think you are not using open source technologies in you i5 environment?  Take a good look at the &lt;a href="http://www-03.ibm.com/systems/i/software/http/index.html"&gt;IBM HTTP Server Powered by Apache&lt;/a&gt;, &lt;a href="http://www14.software.ibm.com/webapp/set2/sas/f/hmc/home.html"&gt;HMC&lt;/a&gt; or &lt;a href="http://www.ibm.com/software/awdtools/developer/rdi/"&gt;WDSc/RDi&lt;/a&gt;.  People who use these products are using open source solutions!  There is open source everywhere and bolted right onto the IBM i.  IBM has been moving forward with open source for years.  Why shouldn’t you?  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;But wait there’s more!  You don’t need to leave your favorite platform to deliver world class open source solutions.  All four components of the LAMP stack are available and supported on IBM i.  If a &lt;a href="http://linux.org/"&gt;Linux&lt;/a&gt; &lt;a href="http://www.forrester.com/Research/LegacyIT/Excerpt/0,7208,28381,00.html"&gt;LPAR &lt;/a&gt;makes sense, then off you go.  I prefer running PHP natively in &lt;a href="http://www.ibm.com/systems/i/advantages/v6r1/"&gt;IBM i 6.1&lt;/a&gt; and &lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/rzalf/rzalfgetstart.htm"&gt;PASE&lt;/a&gt; since &lt;a href="http://www.apache.org/"&gt;Apache&lt;/a&gt;, &lt;a href="http://dev.mysql.com/"&gt;MySQL&lt;/a&gt; and &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; are available for the low-low cost of NOTHING!   Yes, you can get started loading and running Open Source applications like &lt;a href="http://www.sugarcrm.com/crm/"&gt;SugarCRM&lt;/a&gt; on your &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; and not have to spend one thin dime.  Invariably, many customers have come to us looking for enhanced &lt;a href="http://www.zend.com/en/services/support/"&gt;support&lt;/a&gt;, &lt;a href="http://www.zend.com/en/services/training/"&gt;training &lt;/a&gt;and &lt;a href="http://www.zend.com/en/solutions/i5-solutions/"&gt;tooling&lt;/a&gt;.  After all, we are the &lt;a href="http://zend.com/"&gt;PHP people&lt;/a&gt;!  It really costs you nothing but a little time to look into &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.  And who wouldn’t be interested in a solution with a low price of admission in this economy.&lt;/span&gt;  &lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;But wait, there’s more!  So it’s not just a new application, you also get a box of priceless tools!  Must be why they are free.  These include a superior runtime with which to deploy mission critical applications (&lt;a href="http://www.zend.com/en/products/core/for-i5os"&gt;Zend Core&lt;/a&gt;), full implementation of the industry leading &lt;a href="http://www.zendframework.com/"&gt;Zend Framework&lt;/a&gt; that provides as much or as little community driven code as needed, and an integrated development environment to help develop and maintain those applications (&lt;a href="http://www.zend.com/en/products/studio/for-i5os"&gt;Zend Studio&lt;/a&gt;).  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Yeah the ride has been interesting, but it ain’t over.  Not by a long shot!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-623259600310618291?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/623259600310618291/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/01/ibmi-and-php.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/623259600310618291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/623259600310618291'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/01/ibmi-and-php.html' title='IBMi and PHP'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-5344629590992200357</id><published>2009-01-25T19:00:00.000-08:00</published><updated>2009-01-25T19:19:04.116-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='7250'/><category scheme='http://www.blogger.com/atom/ns#' term='Blackberry'/><category scheme='http://www.blogger.com/atom/ns#' term='8310'/><category scheme='http://www.blogger.com/atom/ns#' term='BES'/><title type='text'>Saying goodbye to a dear old friend</title><content type='html'>&lt;span style="font-family:arial;"&gt;In the world of technology it is difficult to get comfortable with anything or anyone for more than a year.  Today I say goodbye to a dear friend that has traveled with we to every destination and has loyally served my needs without question, day or night.  Yes, I am replacing my &lt;a href="http://na.blackberry.com/eng/"&gt;Blackberry&lt;/a&gt;.  This if you who know me well also know how much this device has meant to me.  Certainly my wife was very kind to remind me several times that I spent more time with the &lt;a href="http://na.blackberry.com/eng/"&gt;Blackberry &lt;/a&gt;than her.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The model &lt;a href="http://news.vzw.com/images/releases/Blackberry7250H4Web.jpg"&gt;7250&lt;/a&gt; Blackberry has been an extremely loyal device for nearly four years.  Oh sure, it needed a little electricity every now and then and I even replaced the battery once.  Two batteries over four years is pretty darn good I hear.  But what was more telling is the fact that the device software had to be updated only once (&lt;a href="http://www.blackberry.com/DST2007/patch/index2.shtml"&gt;DST&lt;/a&gt; Patch) otherwise it just worked and worked.  In fact, it is still providing some service as a repository of old information.   I tend to be a minimalist and this device was right up my alley.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;With all the buzz about the &lt;a href="http://www.apple.com/iphone/"&gt;iPhone&lt;/a&gt; I seriously considered heading over to the dark side.  But a &lt;a href="http://na.blackberry.com/eng/services/server/exchange/"&gt;BES&lt;/a&gt; license loosened up at work and my &lt;a href="http://www.zend.com/en/company/management/"&gt;manager&lt;/a&gt; made the offer.  I was headed to the &lt;a href="http://www.wireless.att.com/find-a-store/"&gt;AT&amp;amp;T&lt;/a&gt; store like a flash and grabbed a shiny new &lt;a href="http://na.blackberry.com/eng/devices/blackberrycurve8300/#"&gt;Blackberry Curve 8310 Titanium&lt;/a&gt;.  With all of the busy activity I sat on the device for a couple of days before digging in.  When I did I was not disappointed.  Coming from the 7250 I knew I needed the full keyboard.  The buttons are a different touch but working well.  The shift key is in a slightly different place but I am getting used to it.  The browser is what I cannot live without and it is extremely fast on the Edge network.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I am also integrating with a new mail server.  My old unit was always talking to a &lt;a href="http://na.blackberry.com/eng/services/server/exchange/"&gt;BES&lt;/a&gt; server that was hooked into &lt;a href="http://www.ibm.com/software/lotus/products/domino/"&gt;Domino&lt;/a&gt;.  I am now using the &lt;a href="http://www.microsoft.com/exchange/default.mspx"&gt;Exchange&lt;/a&gt; server at corporate and the responsiveness is incredible.  The import function of my contacts got fouled up but this is a minor inconvenience compared to doing all the heavy lifting by hand.  This is where it all comes together for me with the browser, mail, contacts and tasks all accessible from my hip.  I have played with an &lt;a href="http://www.apple.com/iphone"&gt;iPhone &lt;/a&gt;but I really wanted a business device.   For fun I have loaded &lt;a href="http://www.tinytwitter.com/"&gt;tinytwitter &lt;/a&gt;and it seems to be working just fine.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So my friends have asked why I did not go for the &lt;a href="http://na.blackberry.com/eng/devices/blackberrybold/"&gt;Bold &lt;/a&gt;or the &lt;a href="http://na.blackberry.com/eng/devices/blackberrystorm/"&gt;Storm&lt;/a&gt;.  The answer is simply money.  I was given a budget and in this economy you don’t ask twice.  Plus several folks I have talked to that have the storm have indicated that while it is a pretty cool device it still has a lot of bugs.  I have enough on my plate to have to worry about being a beta tester for &lt;a href="http://www.rim.com/"&gt;RIM&lt;/a&gt;.  I know they really wanted o compete with Apple but that should not mean fast tracking a buggy and expensive device.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;So, I have placed my old 7250 in a place of reverence on my desk.  I look at it every once in a while and still find myself looking for a &lt;a href="http://en.wikipedia.org/wiki/File:Bb7510.jpg"&gt;trackwheel&lt;/a&gt;.  But the new device is taking good care of me and I expect to serve me nearly as long at the old one.  We’ll see.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-5344629590992200357?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/5344629590992200357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/01/saying-goodbye-to-dear-old-friend.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5344629590992200357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/5344629590992200357'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/01/saying-goodbye-to-dear-old-friend.html' title='Saying goodbye to a dear old friend'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-7007580391822766229</id><published>2009-01-19T08:14:00.001-08:00</published><updated>2009-01-19T09:10:29.558-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP Architect'/><category scheme='http://www.blogger.com/atom/ns#' term='clapton'/><category scheme='http://www.blogger.com/atom/ns#' term='Zend'/><category scheme='http://www.blogger.com/atom/ns#' term='Certificatin'/><title type='text'>A little light reading...</title><content type='html'>&lt;span style="font-family:arial;"&gt;I have not been a very good reader.  Seemed to struggle with it most of my life and to this day if I read anything longer than an error message I tend to lose interest.  The most recent book I read, cover to cover, was &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.amazon.com/Clapton-Autobiography-Eric/dp/076792536X/ref=pd_bbs_sr_2?ie=UTF8&amp;amp;s=books&amp;amp;qid=1232381840&amp;amp;sr=8-2"&gt;Eric Clapton’s auto-biography&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.  It is packed to the gills with action and adventure and I could not put it down!  OK, so there was no &lt;a href="http://www.007.com/"&gt;James Bond&lt;/a&gt; type action.  But there was a LOT of adventure and name dropping.  I highly recommend if for anyone who considers themselves a fan of the British invasion and the influence of R&amp;amp;B on musicians of the 60’s and 70’s music scene. &lt;a href="http://www.ericclapton.com/"&gt; Clapton&lt;/a&gt; covers a lot of ground and I look forward to a movie sometime soon.  I read the book while at my computer and when I came upon a name or song I did not recognize I used the web to research it.  Amazing how the web continues to integrate into our lives!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;But, that is not why I am writing this piece.  I am writing today to extol the virtues of the &lt;a href="http://www.phparch.com/c/phpa/magazine/current"&gt;PHP Architect magazine&lt;/a&gt;.  I just got my &lt;a href="http://www.phparch.com/c/magazine/issue/89"&gt;January edition&lt;/a&gt; and in the spirit of the changing of the &lt;a href="http://inaugural.senate.gov/"&gt;Presidential guard&lt;/a&gt; it too is choke full of change!  If you are an experienced PHP’er or just kicking the tires you will no doubt gain benefit from the content in this publication.  Not too much advertising and a delivery model that supports both paper and PDF makes it especially enjoyable to the folks on both sides of the environmental fence!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;First, the proprietor of the magazine, &lt;a href="http://mtabini.blogspot.com/"&gt;Marco Tabini&lt;/a&gt;, has tapped some really strong folks to help him put the publication together.  This is very representative of what I love most about PHP: the passion of the community!  This sense of community is exhibited by the new Editor in Chief &lt;a href="http://www.linkedin.com/pub/5/458/92b"&gt;Elizabeth Tucker Long&lt;/a&gt; and her first Community Corner article about how it takes a village to make a programmer.  She does a great job of describing her own growth from a development silo to her emergence as a pillar of the &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; community.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The January edition takes a strong focus on &lt;a href="http://www.zendframework.com/"&gt;Zend Framework&lt;/a&gt; and how it can simplify the PHP environment.  There is some very good content regarding components like &lt;a href="http://www.zendframework.com/download/amf"&gt;Adobe Flex&lt;/a&gt;, &lt;a href="http://www.zendframework.com/manual/en/zend.search.lucene.html"&gt;Zend Search Lucene&lt;/a&gt;, and an Intro to &lt;a href="http://www.zendframework.com/manual/en/zend.cache.html"&gt;Zend_Cache&lt;/a&gt;!  I know there has been a ton of interest in the &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; community about &lt;a href="http://www.zendframework.com/"&gt;Zend Framework&lt;/a&gt; so this might be a great place to get some familiarity.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;There is a nice piece that discusses the pro’s and con’s of the certification process.  I for one have always been a big fan of the cert process as a means of education.  I remember the first time I took the &lt;a href="http://www.ibm.com/certify/certs/04011003.shtml"&gt;RPG certification&lt;/a&gt; test with &lt;a href="http://ibm.com/"&gt;IBM &lt;/a&gt;and how much I learned from that experience.  It made me a better RPG programmer and that is what helped me sell myself as an independent consultant and RPG programmer.  This comes in handy for me as I pursue my own &lt;a href="http://www.zend.com/en/services/certification/"&gt;Zend Certification&lt;/a&gt;. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;There is plenty for Enterprise customers too with an article from &lt;a href="http://www.jansch.nl/"&gt;Ivo Jansch&lt;/a&gt; about requirements analysis and another bit on security using &lt;a href="http://www.captcha.net/"&gt;CAPTCHA&lt;/a&gt;.  I know that there are folks in the &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt; community discussing &lt;a href="http://www.captcha.net/"&gt;CAPTCHA &lt;/a&gt;as it was a major topic in the &lt;a href="http://archive.midrange.com/web400/200809/msg00007.html"&gt;Midrange.com&lt;/a&gt; threads a few weeks back.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;I do not get one thin dime from Marco for writing this.  I am just a big believer in communication whether it is from &lt;a href="http://systeminetwork.com/"&gt;SystemiNetwork&lt;/a&gt;, &lt;a href="http://www.phparch.com/"&gt;PHP architect&lt;/a&gt; or the &lt;a href="http://www.phpcommunity.org/"&gt;PHP Community&lt;/a&gt;.  Learning &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; is important and there are many out there ready willing and able to help.  Now it’s your turn to go and get it!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-7007580391822766229?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/7007580391822766229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/01/little-light-reading.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/7007580391822766229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/7007580391822766229'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/01/little-light-reading.html' title='A little light reading...'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-3763409509461340358</id><published>2009-01-05T08:13:00.000-08:00</published><updated>2009-01-05T08:41:04.891-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='Zend'/><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='SugarCRM'/><title type='text'>Happy New Open Source!</title><content type='html'>&lt;p style="font-family: arial;" class="MsoNormal"&gt;It’s that time again to look into the crystal ball of the New Year and make some optimistic predictions about what we will get done.&lt;span style=""&gt;  &lt;/span&gt;I, for one, am very excited as one of my New Year’s resolutions is to explore the other sides of the &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; house in more detail.&lt;span style=""&gt;  &lt;/span&gt;Since joining &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; back in May I have spent a majority of my time focusing on the IBM i products and market position.&lt;span style=""&gt;  &lt;/span&gt;Don’t worry, you will continue to see me pop up here and there to chat about IBM’s latest festivities and what &lt;a href="http://zend.com/"&gt;Zend&lt;/a&gt; and &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt; have to offer the ever challenging midrange space.&lt;span style=""&gt;  &lt;/span&gt;There is a world beyond &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;First I am exploring &lt;a href="http://www.zend.com/en/products/core/"&gt;Zend Infrastructure on Windows&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;While Windows is hardly new to me, I am not nearly as well versed in XP, Vista or the various Server models as I am with &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;Going through the installation process was a pleasurable experience as there were very few bumps along the way.&lt;span style=""&gt;  &lt;/span&gt;Got one of my favorite applications, &lt;a href="http://www.sugarcrm.com/crm/"&gt;Sugar CRM&lt;/a&gt;, up and running in no time.&lt;span style=""&gt;  &lt;/span&gt;Next challenge to tackle is the LAMP stack.&lt;span style=""&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;As I have railed about in the past, you need to take control of your own career.&lt;span style=""&gt;  &lt;/span&gt;Learning something outside your core competency will pay dividends right now as nearly EVERYONE is being asked to do more with less. &lt;span style=""&gt; &lt;/span&gt;Those who have focused beyond the four walls of their comfort zone will now be able to contribute and present more value to the organization.&lt;span style=""&gt;  &lt;/span&gt;Thus, challenging management to look elsewhere when the old “RIF” devil comes haunting around.&lt;span style=""&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;Economic figures are all pointing downward for 2009 and Washington is about to do what it can, &lt;a href="http://www.nydailynews.com/money/2009/01/05/2009-01-05_presidentelect_barack_obama_eyes_a_300_b-3.html"&gt;print more money&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;But we in the open source space are confident.&lt;span style=""&gt;  &lt;/span&gt;One of our CTO’s, &lt;a href="http://andigutmans.com/"&gt;Andi Gutmans&lt;/a&gt; wrote a nice blog entry that summarizes &lt;a href="http://andigutmans.blogspot.com/2009/01/happy-new-year.html"&gt;Zend’s position for 2009&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;I couldn’t agree more with Andi.&lt;span style=""&gt;  &lt;/span&gt;And I think this plays well in the IBM i space as well as the LAMP/WAMP stack.&lt;span style=""&gt;  &lt;/span&gt;Companies need to continue to do more with less.&lt;span style=""&gt;  &lt;/span&gt;Open Source makes that a REAL possibility.&lt;span style=""&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p style="font-family: arial;" class="MsoNormal"&gt;A recent message on the &lt;a href="http://www.midrange.com/"&gt;midrange.com&lt;/a&gt; thread WEB400 discussed the merits of creating a &lt;a href="http://archive.midrange.com/web400/200901/msg00006.html"&gt;CRM on demand&lt;/a&gt; application vs. acquiring an open source solution and “tweaking” it.&lt;span style=""&gt;  &lt;/span&gt;It was a lively discussion, but one that tasks all of us.&lt;span style=""&gt;  &lt;/span&gt;To do more with less, we must be willing to think outside the box.&lt;span style=""&gt;  &lt;/span&gt;Open source is available to the &lt;a href="http://www.ibm.com/systems/i/"&gt;IBM i&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;Consider taking a look, even if you don’t look at &lt;a href="http://php.net/"&gt;PHP&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;There are many solutions worth noting!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-3763409509461340358?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/3763409509461340358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2009/01/happy-new-open-source.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3763409509461340358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/3763409509461340358'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2009/01/happy-new-open-source.html' title='Happy New Open Source!'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4577455583142648696.post-2436721253193522581</id><published>2008-12-20T23:25:00.000-08:00</published><updated>2008-12-20T23:39:48.747-08:00</updated><title type='text'>What's new with Mikey?</title><content type='html'>&lt;span style="font-family: arial;"&gt;Howdy folks!  Been a while since I said anything in a blog so I figured I'd try again.  Over the next few weeks I will be catching up on an entire summers worth of content.  Then you should see something on a weekly basis, at least.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;This is a much better blog solution.  The last one had a few issues and we should be able to communicate a lot better here.  To get things rolling, i'm going to reprint something I submitted to the WEB400 list over at midrange.com.  if you have never been to midrange.com you are truly missing a treat.  The ability to subscribe to a couple of lists where some very smart people (and a couple of crackpts like me) hang out and exchange ideas is extremely American.  And our host, David Gibbs, does a great job of provisioning the forum.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;This is a little lighter and it might help if you knew the context.  The WEB400 listers wer kicking around the merits of fat client applications vs. browser types of technology.  Specifically comparing technologies like MS Windows Word and GoogleDocs, and a whole lot more.  I saw the yin-yan of centralize / decentralize argument and was inspired by some recent observations at companies in the i5 space.  Enjoy!!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;"Greed is good", as Mr Gekko taught us in 1987.  Centralize then decentralize... centralize then decentralize...I think we will continue this for a while...why?  GREED!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;System admins and developers want everything right here so that when the boss comes in and asks for "this" then they can give him "this".  Accounting and financial groups want the data to themselves so they can give the boss what they think "this" is. But if the data is here, there and everywhere then getting "this" becomes difficult.  So they play around a bit, buy a new package, and  give the boss "that".  They are pretty proud of themselves since now they can build "that" faster than they ever could have built "this".  The CIO hands out bonus' and the world is great.  Then the boss says I didn't ask for "that" - I wanted "this"!  The system admins say you can't do "this".  The boss says you told me I could have "this" not "that"!  The developers blame the confusion on the lack of specs and poor documentation and insist that "this" is "that" and muse about how unreasonable the boss has been throughout the project.  The boss gets frustrated and orders in a new CIO who says you can't get "this" with "that" technology.  You need to get "those".  Because, with "those" you can get "this" and "that".  The boss is impressed with the young man and offers him twice the salary of the old CIO and promotes the old CIO to "special projects".  In the interim, the new CIO recommends bridges between "that" and "those" using "these".  Once "that" is replaced, we won't need "these" anymore and all you'll have left is "this" and "that" from "those".  After a 7-figure cash infusion the CIO doubles the staff and estimates how long to complete the implementation of "those".  He wisely identifies a couple of impressive projects from "those" and his new staff cleverly uses "this" and "that" to get there.  He kills about 3 years and while "this", "that", "those" and "these are all humming along nicely, he gets an offer to do "that" somewhere else.  Half the staff leaves with him and manager of Special Projects comes in to restart "this".  Fortunately, the old boss got canned for allowing IT to overspend the budget and the new boss says "this" really is "that".  Everyone stands around wondering why they needed to invest 7 figures when they had "this" all along.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;Can anyone guess what "this" is?  I'll give you 3 guesses and the first five names don't count!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Stay tuned!&lt;br /&gt;&lt;br /&gt;Mike&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4577455583142648696-2436721253193522581?l=mikepavlak.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikepavlak.blogspot.com/feeds/2436721253193522581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mikepavlak.blogspot.com/2008/12/whats-new-with-mikey.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2436721253193522581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4577455583142648696/posts/default/2436721253193522581'/><link rel='alternate' type='text/html' href='http://mikepavlak.blogspot.com/2008/12/whats-new-with-mikey.html' title='What&apos;s new with Mikey?'/><author><name>Mike Pavlak</name><uri>http://www.blogger.com/profile/06265665870415574144</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://4.bp.blogspot.com/_h4u4Pb99Lhc/TEOj7KQ2ayI/AAAAAAAAABY/vHDxXS06fxw/S220/MikePavlak-1973Rc.jpg'/></author><thr:total>1</thr:total></entry></feed>
