<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>tommy's scratchpad - technology, web</title><link href="https://kralidis.ca/blog/" rel="alternate"/><link href="https://kralidis.ca/blog/feeds/technology-web.atom.xml" rel="self"/><id>https://kralidis.ca/blog/</id><updated>2006-07-19T20:46:00+00:00</updated><entry><title>PHP implosion</title><link href="https://kralidis.ca/blog/blog/2006/07/19/php-implosion/" rel="alternate"/><published>2006-07-19T20:46:00+00:00</published><updated>2006-07-19T20:46:00+00:00</updated><author><name>tomkralidis</name></author><id>tag:kralidis.ca,2006-07-19:/blog/blog/2006/07/19/php-implosion/</id><summary type="html">&lt;p&gt;I've toyed with many different programming languages, development environments, application approaches and the like, and thus far I can be categorized as a &lt;a href="http://en.wikipedia.org/wiki/REST" title="REST"&gt;REST&lt;/a&gt; and &lt;a href="http://www.perl.com/" title="Perl"&gt;Perl&lt;/a&gt; hack. Perl is very dear to me. I used Perl for the &lt;a href="http://geodiscover.cgdi.ca/gdp/search?action=entrySummary&amp;amp;entryType=productCollection&amp;amp;entryId=28&amp;amp;entryLang=en" title="first major project in my career"&gt;first major project in my career&lt;/a&gt; and in a slew of other …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I've toyed with many different programming languages, development environments, application approaches and the like, and thus far I can be categorized as a &lt;a href="http://en.wikipedia.org/wiki/REST" title="REST"&gt;REST&lt;/a&gt; and &lt;a href="http://www.perl.com/" title="Perl"&gt;Perl&lt;/a&gt; hack. Perl is very dear to me. I used Perl for the &lt;a href="http://geodiscover.cgdi.ca/gdp/search?action=entrySummary&amp;amp;entryType=productCollection&amp;amp;entryId=28&amp;amp;entryLang=en" title="first major project in my career"&gt;first major project in my career&lt;/a&gt; and in a slew of other applications, including &lt;a href="http://cgdi-dev.geoconnections.org/prototypes/owsview/" title="owsview"&gt;owsview&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In the last couple of years, I've been moving to Java (servlets, JSP, etc.) for webapps, which has been successful for the most part, but haven't budged from a scripting point of view from Perl when I needed something really lightweight and quick and dirty.&lt;br&gt;
Until now. Enter &lt;a href="http://www.php.net/" title="PHP"&gt;PHP&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I took on a (non-geospatial; well almost, I used &lt;a href="http://www.geocoder.ca/" title="geocoder.ca"&gt;geocoder.ca&lt;/a&gt; to geocode addresses, and output the newsfeed as &lt;a href="http://www.georss.org/" title="GeoRSS"&gt;GeoRSS&lt;/a&gt; :) ) &lt;a href="http://www.paulfiorini.com/" title="web project"&gt;web project&lt;/a&gt; this year for a friend, which I initially developed as a bunch of webpages and Perl CGIs. Worked fine. As time went on, I wanted to abstract things much more, and get heavy into templating, and did I mention I needed to have this done yesterday? So I looked for Perl templating systems.&lt;/p&gt;
&lt;p&gt;I ran into &lt;a href="http://www.template-toolkit.org/" title="Template Toolkit"&gt;Template Toolkit&lt;/a&gt;, which looked like a viable solution at the time, but I found it a bit confusing as to which approach to take (tt has both offline and real-time template processing).&lt;/p&gt;
&lt;p&gt;I then checked out &lt;a href="http://www.masonhq.com/" title="Mason"&gt;Mason&lt;/a&gt;, which I have used sparingly in the past, and got a bit farther along. I have a slow machine, so the mod_perl include in my Apache config looked to be bogging down the server.&lt;/p&gt;
&lt;p&gt;Finally, I looked at PHP, which I was familiar enough with from when we initially developed cwc2 (thereafter &lt;a href="http://chameleon.maptools.org/index.phtml" title="chameleon"&gt;chameleon&lt;/a&gt;) in 2002. I already had a PHP install (to run this blog), and it seemed I needed a couple of more options built in, so a recompile/install did the trick.&lt;/p&gt;
&lt;p&gt;From there, things went ridiculously fast. All the Perl code was migrated to PHP in a matter of a day (if I didn't use Perl strict, most of it could have went untouched). And the templating. In a day, I had templates of templates. Very turnkey. And driven by one config file.&lt;/p&gt;
&lt;p&gt;If you're looking for a 'but', I'm afraid I don't have one. We now have an abstracted &lt;a href="http://www.kralidis.ca/software/teacherspet/" title="product"&gt;product&lt;/a&gt; which can be deployed with minimal configuration. All thanks to some PHP.&lt;/p&gt;
&lt;p&gt;I'm sure I haven't even scratched the surface of what can be done, but for a simple, easy to maintain webapp, PHP has done the job. It would be interesting to hear what others use when they really want to bang out a webapp. At any rate, three cheers for PHP!&lt;/p&gt;</content><category term="technology, web"/></entry><entry><title>Web Services and XML: Considerations</title><link href="https://kralidis.ca/blog/blog/2006/06/27/web-services-and-xml-considerations/" rel="alternate"/><published>2006-06-27T13:25:00+00:00</published><updated>2006-06-27T13:25:00+00:00</updated><author><name>tomkralidis</name></author><id>tag:kralidis.ca,2006-06-27:/blog/blog/2006/06/27/web-services-and-xml-considerations/</id><summary type="html">&lt;p&gt;As a follow up to one of my &lt;a href="http://www.kralidis.ca/blog/2006/05/23/when-to-use-xml/" title="earlier posts"&gt;earlier posts&lt;/a&gt;, I found a couple of relevant webpages. "&lt;a href="http://www.java.net/jag/Fallacies.html" title="The Eight Fallacies of Distributed Computing"&gt;The Eight Fallacies of Distributed Computing&lt;/a&gt;", which discuss issues around Web Services in terms of disparate resources across networks, and "&lt;a href="http://www.tbray.org/ongoing/When/200x/2006/01/08/No-New-XML-Languages" title="Don’t Invent XML Languages"&gt;Don't Invent XML Languages&lt;/a&gt;", which makes one think twice before declaring an XML …&lt;/p&gt;</summary><content type="html">&lt;p&gt;As a follow up to one of my &lt;a href="http://www.kralidis.ca/blog/2006/05/23/when-to-use-xml/" title="earlier posts"&gt;earlier posts&lt;/a&gt;, I found a couple of relevant webpages. "&lt;a href="http://www.java.net/jag/Fallacies.html" title="The Eight Fallacies of Distributed Computing"&gt;The Eight Fallacies of Distributed Computing&lt;/a&gt;", which discuss issues around Web Services in terms of disparate resources across networks, and "&lt;a href="http://www.tbray.org/ongoing/When/200x/2006/01/08/No-New-XML-Languages" title="Don’t Invent XML Languages"&gt;Don't Invent XML Languages&lt;/a&gt;", which makes one think twice before declaring an XML vocabulary.&lt;/p&gt;
&lt;p&gt;Happy reading!&lt;/p&gt;</content><category term="technology, web"/></entry><entry><title>When to use XML</title><link href="https://kralidis.ca/blog/blog/2006/05/23/when-to-use-xml/" rel="alternate"/><published>2006-05-23T12:27:00+00:00</published><updated>2006-05-23T12:27:00+00:00</updated><author><name>tomkralidis</name></author><id>tag:kralidis.ca,2006-05-23:/blog/blog/2006/05/23/when-to-use-xml/</id><summary type="html">&lt;p&gt;I remember, in &lt;a href="http://en.wikipedia.org/wiki/1998" title="1998"&gt;1998&lt;/a&gt;, an old boss of mine sending us a presentation on &lt;a href="http://www.w3.org/XML/" title="XML"&gt;XML&lt;/a&gt;, and how it was going to become the next big thing in information exchange. Well, things have certainly moved along since then, and XML is &lt;a href="http://www.google.ca/search?q=xml" title="all over the place"&gt;all over the place&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;XML is great. It's human readable …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I remember, in &lt;a href="http://en.wikipedia.org/wiki/1998" title="1998"&gt;1998&lt;/a&gt;, an old boss of mine sending us a presentation on &lt;a href="http://www.w3.org/XML/" title="XML"&gt;XML&lt;/a&gt;, and how it was going to become the next big thing in information exchange. Well, things have certainly moved along since then, and XML is &lt;a href="http://www.google.ca/search?q=xml" title="all over the place"&gt;all over the place&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;XML is great. It's human readable, application neutral and self-describing. It's also being used by everyone and their dog for anything possible. While I'm quite the XML zealot (it has done wonders for us in the &lt;a href="http://www.opengeospatial.org/" title="OGC"&gt;OGC&lt;/a&gt; and &lt;a href="http://www.osgeo.org/" title="OSGEO"&gt;OSGEO&lt;/a&gt; communities), my experiences have taught me to use XML judiciously. Sometimes a plain text config file is fine. Sometimes binary encoding is needed (especially for voluminous data).&lt;/p&gt;
&lt;p&gt;I recently reacquianted myself with a &lt;a href="http://www.w3.org/TR/webarch/" title="web architecture document"&gt;web architecture document&lt;/a&gt; from the &lt;a href="http://www.w3.org/" title="W3C"&gt;W3C&lt;/a&gt; folks. &lt;a href="http://www.w3.org/TR/webarch/#xml-when" title="Section 4.5.1"&gt;Section 4.5.1&lt;/a&gt; provides some sound suggestions of when to apply XML to your application(s). Happy reading!&lt;/p&gt;</content><category term="technology, web"/></entry></feed>