<?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-604531558151037478</id><updated>2011-11-10T15:11:52.505+11:00</updated><category term='barcamp'/><category term='voip sip'/><category term='workrave'/><category term='sysadmin'/><category term='netspeed'/><category term='fgs'/><category term='web'/><category term='gadgets'/><category term='books'/><category term='development'/><category term='wedding'/><category term='shopping'/><category term='community'/><category term='selenium'/><category term='geocaching'/><category term='open source'/><category term='cpt'/><category term='honeymoon'/><category term='openstreetmap'/><category term='quality assurance'/><category term='firefox'/><category term='evernote'/><category term='mountain bike riding'/><category term='dslr'/><category term='iphone'/><category term='mapserver'/><category term='ruxcon'/><category term='wms'/><category term='family'/><category term='clonezilla linux backup sysadmin'/><category term='Kuala Lumpur'/><category term='video'/><category term='pam'/><category term='performance'/><category term='cool wall'/><category term='tuross head'/><category term='cacti'/><category term='review'/><category term='work'/><category term='cars'/><category term='canberra'/><category term='jax-ws'/><category term='splunk'/><category term='barcampcanberra'/><category term='sport'/><category term='business'/><category term='ps3'/><category term='java'/><category term='mysql'/><category term='google maps'/><category term='slr'/><category term='floriade'/><category term='vmware'/><category term='security'/><category term='dogs'/><category term='customer service'/><category term='dirvish'/><category term='lca'/><category term='subaru'/><category term='climate change'/><category term='UK'/><category term='spacewalk'/><category term='squid'/><category term='isp'/><category term='asterisk'/><category term='squash'/><category term='winbind'/><category term='baby'/><category term='flickr'/><category term='software'/><category term='holidays'/><category term='mac'/><category term='power'/><category term='performance testing'/><category term='fun'/><category term='version control'/><category term='testing'/><category term='stuckincustoms'/><category term='ipod touch'/><category term='plugins'/><category term='conferences'/><category term='crypto'/><category term='Bangkok'/><category term='England'/><category term='openlayers'/><category term='defence'/><category term='javascript'/><category term='apple'/><category term='passwords'/><category term='omnifind'/><category term='tomcat'/><category term='minolta'/><category term='bazaar-ng'/><category term='pennytel'/><category term='Scotland'/><category term='leadership'/><category term='ebook'/><category term='hobart'/><category term='top gear'/><category term='rsi'/><category term='zimbra'/><category term='python'/><category term='lca2009'/><category term='autoit'/><category term='livescribe'/><category term='tasmania'/><category term='parkour'/><category term='opennms'/><category term='windows'/><category term='gwc'/><category term='code'/><category term='productivity'/><category term='palmer'/><category term='navy'/><category term='hardware'/><category term='science'/><category term='linux'/><category term='apache'/><category term='kinesis'/><category term='deliciouslibrary'/><category term='team building'/><category term='tech'/><category term='soap'/><category term='cygwin'/><category term='photography'/><category term='photoshop'/><category term='programming'/><category term='openfiler'/><category term='gis'/><category term='monitoring'/><category term='Edinburgh'/><category term='mapping'/><category term='james'/><category term='hdr'/><category term='freeware'/><category term='blog'/><category term='nas'/><category term='vb'/><category term='jmeter'/><category term='gps'/><category term='databases'/><category term='geospatial'/><category term='geoserver'/><category term='ntlm'/><category term='kobo'/><category term='ipod'/><category term='unix'/><category term='entertainment'/><category term='search'/><category term='fishing'/><category term='samba'/><category term='longreach'/><category term='film'/><category term='US'/><category term='virtualisation'/><category term='health'/><category term='Thailand'/><category term='morale'/><category term='management'/><title type='text'>gavinj.net</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.gavinj.net/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>96</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-847201480873709805</id><published>2011-07-04T17:31:00.009+10:00</published><updated>2011-07-08T14:53:27.597+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='gwc'/><category scheme='http://www.blogger.com/atom/ns#' term='geoserver'/><category scheme='http://www.blogger.com/atom/ns#' term='gis'/><category scheme='http://www.blogger.com/atom/ns#' term='geospatial'/><title type='text'>Geoserver GWC preseed scripts</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;img src="data:image/png;base64,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" alt="" /&gt;&lt;br /&gt;&lt;/div&gt;GIS servers can pre-generate tiles to vastly improve WMS performance. Geoserver provides a handy web interface for interacting with the geoserver web cache (GWC), but sometimes it is handy to script this process (particularly when you are working with hundreds of layers).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Geoserver 2.1&lt;/span&gt; provides a REST API that allows you to trigger tile preseed jobs. Here are a couple of python scripts that I wrote that use this API to perform a purge and seed operation.&lt;br /&gt;&lt;br /&gt;Change the following config file to include your desired geoserver layers and zoom levels (I assume that you want 900913 png tiles, and two threads per layer - the scripts can easily be modified to change this however).&lt;br /&gt;&lt;br /&gt;Listing 1 &lt;span style="font-style: italic;"&gt;seed_config.py&lt;/span&gt;:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;#This config file contains options for the gwc preseeding scripts&lt;br /&gt;geoserver_userpass = "admin:XXXXX"&lt;br /&gt;geoserver_url = "http://GEOSERVER_URL"&lt;br /&gt;&lt;br /&gt;#Zoom levels to create tiles for&lt;br /&gt;zoom_start = "0"&lt;br /&gt;zoom_stop = "10"&lt;br /&gt;&lt;br /&gt;#Geoserver layers to perform preseeding operation on&lt;br /&gt;&lt;br /&gt;layers = ["ALA:Rees_CAAB37009001Polygon","ALA:Rees_CAAB37007002Polygon","ALA:Rees_CAAB37007001Polygon","ALA:Rees_CAAB37006001Polygon","ALA:Rees_CAAB37010004Polygon","ALA:Rees_CAAB37005005Polygon","ALA:Rees_CAAB37008003Polygon","ALA:Rees_CAAB37005002Polygon","ALA:Rees_CAAB37011001Polygon","ALA:Rees_CAAB37008001Polygon","ALA:Rees_CAAB37005004Polygon","ALA:Rees_CAAB37005001Polygon","ALA:Rees_CAAB37012002Polygon","ALA:Rees_CAAB37007003Polygon","ALA:Rees_CAAB37010002Polygon","ALA:Rees_CAAB37010003Polygon"]&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Listing 2 &lt;span style="font-style: italic;"&gt;purge.py&lt;/span&gt;:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;#!/usr/bin/python&lt;br /&gt;&lt;br /&gt;#This script removes tiles from the GWC cache&lt;br /&gt;#Ensure that seed_config.py has been configured before use&lt;br /&gt;&lt;br /&gt;import os&lt;br /&gt;import seed_config&lt;br /&gt;&lt;br /&gt;for layer in seed_config.layers:&lt;br /&gt; curlstring="curl -u " + seed_config.geoserver_userpass + " -XPOST -H 'Content-type: text/xml' -d '&lt;!--?xml version=\"1.0\" encoding=\"UTF-8\"?--&gt;&lt;seedrequest&gt;&lt;name&gt;" + layer + "&lt;/name&gt;&lt;srs&gt;&lt;number&gt;900913&lt;/number&gt;&lt;/srs&gt;&lt;zoomstart&gt;" + seed_config.zoom_start + "&lt;/zoomstart&gt;&lt;zoomstop&gt;" + seed_config.zoom_stop + "&lt;/zoomstop&gt;&lt;format&gt;image/png&lt;/format&gt;&lt;type&gt;truncate&lt;/type&gt;&lt;threadcount&gt;2&lt;/threadcount&gt;&lt;/seedrequest&gt;' " + seed_config.geoserver_url + "/geoserver/gwc/rest/seed/" + layer + ".xml"&lt;br /&gt; os.system(curlstring)&lt;br /&gt; print "truncated " + layer&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Listing 3 &lt;span style="font-style: italic;"&gt;seed.py&lt;/span&gt;:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;#!/usr/bin/python&lt;br /&gt;&lt;br /&gt;#This script is used to preseed gwc layers&lt;br /&gt;#Ensure that seed_config.py has been configured before use&lt;br /&gt;&lt;br /&gt;import os&lt;br /&gt;import seed_config&lt;br /&gt;&lt;br /&gt;for layer in seed_config.layers:&lt;br /&gt; curlstring="curl -u " + seed_config.geoserver_userpass + " -XPOST -H 'Content-type: text/xml' -d '&lt;!--?xml version=\"1.0\" encoding=\"UTF-8\"?--&gt;&lt;seedrequest&gt;&lt;name&gt;" + layer + "&lt;/name&gt;&lt;srs&gt;&lt;number&gt;900913&lt;/number&gt;&lt;/srs&gt;&lt;zoomstart&gt;" + seed_config.zoom_start+ "&lt;/zoomstart&gt;&lt;zoomstop&gt;" + seed_config.zoom_stop + "&lt;/zoomstop&gt;&lt;format&gt;image/png&lt;/format&gt;&lt;type&gt;seed&lt;/type&gt;&lt;threadcount&gt;2&lt;/threadcount&gt;&lt;/seedrequest&gt;' " + seed_config.geoserver_url + "/geoserver/gwc/rest/seed/" + layer + ".xml"&lt;br /&gt; os.system(curlstring)&lt;br /&gt; print "seeded " + layer&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;After you initiate the preseed jobs, you can jump back into the GWC tile creation page to get an idea of the status.&lt;br /&gt;&lt;img src="data:image/png;base64,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AIeVVkZmQV0rpbYsPv9d9zfDnOfGrG1ljQAAIABJREFUeAHsvXecXdV5/f3cNnd6b5qRNOpCoC5UQKKJDsY2Bmxi44J7d+IkdhI7seMkfuMSpzixU1wSF8DGYAzYponehBCg3ttIM5JmNL3Pbe9a+9wzc0eMpBFI8DOsDXPvKfvss/f3HP1x12c9zxNIoZmaCIiACIiACIiACIiACIiACIiACIiACIiACIiAIxAUBxEQAREQAREQAREQAREQAREQAREQAREQAREQgWECEsyGWWhLBERABERABERABERABERABERABERABERABCycySBlicxdbYuACLxBCAQs9AZZiZYhAiIgAiIgAiIgAiIgAiIgAiIgAqefwAjB7PTfbvQ7MI1aIBAw/mfuz0+rxn2zlCXdp3fOHdKHCIiACIiACIiACIiACIiACIiACIiACIiACJwWAq+bYOaLZFwVt/sGEra9/rA1d3TbuMICJ5s1dnZZcW7Upk4YZ0V5EQsigJTCWua1p4WKBhUBERABERABERABERABERABERABERABEXjTEnidBLOUBQNBiyeStmZLvT2xfo9t2tVovYNxK8jOskvmT7YQ1LFV63ZbU3u/FUIsmzmp0pafOcnOWzDNnUul4DqDeKYmAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAqeSQABuLT/+EaGPpz+HGe9Gl9iehiP2vTufsN0NhxlzaTk5PVaU32mlpTl29pQL0Cdo6/Y8Zs2dbdbZVWw9vYUWj4esprTQPn3DSps1pRJOs6Qb61QC0Vgi8EYkoBxmb8SnqjWJgAiIgAiIgAiIgAiIgAiIgAicLgKvmWDmh1EmYQx7cXujffe2VdYz0GnFRX2Wm9th2dG4c44V5OTbkpkXWxjhly/sfsS6+o5YPJmyeCxl7d2l1tJSCIEt1z729vNt5eIZ4JJSiObpejs07huGgASzN8yj1EJEQAREQAREQAREQAREQAREQAReAwKvWUiml3vMbOPOg/bdW1fZoLVZdUWbhbIGLRKMWSiSsrzsASsrzkf4ZTUEs5jtaU1aItBvgxDL4uEsKw61WkFurzW1FNsP7nrC8rOzbcmciYrMfA1eFN1CBERABERABERABERABERABERABERABN4sBE67YOaFYJol4RLbtq/Vfnb/c9aXaLby8k6LZCUsGk5Yfm7CUsEE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lmSuM2psyFGWjCOnGUQxJvq3RJVdfPaZds5COMwgltGZJmdZJkFti4AIiIAIiIAIiIAIiIAIiIAIiIAIiIAInCyB0+cwS8/EF7DoNFu+cKq9e+UCC1s28o9lGStjDibCloBbzDnD0mGZDM6kQY1/MST9p46WHIhYfDDsxLPOvjzr7iqyy5bNg3ttphPLPGeZH9Z5shjUXwREQAREQAREQAREQAREQAREQAREQAREQAQ8AqfdYeaDptMsGgnY1efNsZbuQfvp759Cwn6zSDSORGUJi8fDLp1ZX3/KDhzud86yvkEcZ6EA5CpjVc04xLXe3lwb6MuytyyfYzdfvdiys7gEOct8zvoWAREQAREQAREQAREQAREQAREQAREQARF4dQReM8GMTjOmFwui6uX7r1wEjStuv3xknQ329lkoHLdAdBDnEtbXl7ADzc2usmZfb8CSsQhymCHJfyzH+vqjOB62ay6YYx9/+/kQy/zFy1nmk9C3CIiACIiACIiACIiACIiACIiACIiACIjAqyPwmglm/jQpnAVCAfvgNSvsgkUz7e5nNtrqDXusrb0LlS/jFglmowgA8pEhWLSjO8da2pADLRK13OyoLV9aZ1efO8fmTanFcAljAU2GbaqJgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIwKkiEECo5FBdyRREqNei8Y5M5o9P5CRL2WA8bk+u2227D7VaV1/M5k8a59xoa3fut/zssNVUV9qKM+usvCgb11EhQ2VN5DuTWPZaPC3d441AIGChN8IytAYREAEREAEREAEREAEREAEREAEReE0IvC6C2WgrC9BSBgGNMloMAhpbKBh0fxTIWFIzCaXNLyLgOuhDBERgTAQkmI0JkzqJgAiIgAiIgAiIgAiIgAiIgAiIgCPw/4xgxtl4zrORT4YGOIlkI5loTwROloAEs5Mlpv4iIAIiIAIiIAIiIAIiIAIiIAJvZgIjBLM3MwitXQREQAREQAREQAREQAREQAREQAREQAREQARIgHGQaiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAmkCEsz0KoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABgEJZhkwtCkCIiACIiACIiACIiACIiACIiACIiACIiACEsz0DoiACIiACIiACIiACIiACIiACIiACIiACIhABoFwxvaYNg8fPmyPP/6463vhhRdaRUXFmK47HZ2OHDliDz30kCWTSbv00ktf17mcjvWNZczf/e531tPTY7NmzbLZs2eP5ZI3fJ/f/OY3Njg4aNOmTbMFCxb8wa9Xz/gP/hFqASIgAiIgAiIgAiIgAiIgAiIgAn9gBF7mMPujP/ojmzBhgl1xxRWjLmX9+vX2zne+0/1t2rRp1D5HH3zyySftk5/8pH3qU586+tQr3v/oRz9q1dXVxvm+5z3vseeee+4Vj/X/+oV9fX2OHxm++OKLI6b76U9/2j2L2267bcTxN8POv/3bvzkuP/zhD0cs9wMf+IBj8oMf/GDE8dO1c7zncyru+WZ+xqeCn8YQAREQAREQAREQAREQAREQAREQgZMl8DKHWXNzsx04cMDKy8tHHYuunX/4h39w5yZPnjxqn6MPbtmyxb7//e9bIBCw//iP/zj69Env01n24x//2BKJhH3ta1+z+fPnv6HdVQMDA44fQV188cVvCNfUST/0US645557nMPwXe96l33oQx8a6vHl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REAEREAEREAEREAEROAEBCSYnQCQTouACIiACIiACIiACIiACIiACIiACIiACLy5CEgwe3M9b61WBERABERABERABERABERABETg/2fvPOClJ6o+PK+AiJVmxfJir9i76CuKCvaGXREbiIBiwwKCYsPeuyJ2UcGCqFiwg13EXgAFFaUpKEp5853nyMk3m5tsstly7939n99vd7PJZDJ5ZjJz5syZiQiIgAiIQAsBGcxaAOmwCIiACIiACIiACIiACIiACIiACIiACIjAYhGQwWyx8lt3KwIiIAIiIAIiIAIiIAIiIAIiIAIiIAIi0EJABrMWQDosAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiKwWARkMFus/NbdioAIiIAIiIAIiIAIiIAIiIAIiIAIiIAItBCQwawFkA6LgAiIgAiIgAiIgAiIgAiIgAiIgAiIhfuhjwAAIABJREFUgAgsFgEZzBYrv3W3IiACIiACIiACIiACIiACIiACIiACIiACLQRkMGsBpMMiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAKLRUAGs8XKb92tCIiACIiACIiACIiACIiACIiACIiACIhACwEZzFoA6bAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiMBiEZDBbLHyW3crAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiLQQkAGsxZAOiwCIiACIiACIiACIiACIiACIiACIiACIrBYBGQwW6z81t2KgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAi0EJDBrAWQDouACIiACIiACIiACIiACIiACIiACIiACCwWARnMFiu/dbciIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAItBGQwawGkwyIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAotFQAazxcpv3a0IiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEALARnMWgDpsAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIwGIRkMFssfJbdysCIiACIiACIiACIiACIiACIiACIiACItBCQAazFkA6LAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIisFgEZDBbrPzW3YqACIiACIiACIiACIiACIiACIiACIiACLQQ2LDluA6LgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAhkBIqiSHwuvPBC/2SHtNmTwAYbbJD4rFmzxj89o5nYaTKYTQylIhIBERABERABERABERABERABERABEZhnAuvXr09nnXVWOuqoo9Jxxx2XTjvttHTuueeuCAPPauaO8XGTTTZJW265Zdpmm23S9ttvnzbddNN0sYst38TINZaoYjVDVdpFQAREQAREQAREQAREQAREQAREQAREYNoEzj///PTlL385feELX0g3v/nN0y1vecu01VZbpUtf+tLuGTXt689z/HjqnXPOOenkk09OP/zhD9OPfvSjtOOOO6a73/3uaaONNlqWW5fBbFmw66IiIAIiIAIiIAIiIAIiIAIiIAIiIAKrgQB+Ruedd176+Mc/nk466aT0mMc8Jl35yldeDUlflWmE95///Of0gQ98IF3jGtdID3/4w9PFL37xmXvxzdRg9t3vftethRSsO93pTqsy45RoERABEViJBBiF+cMf/pA23njjdL/73W8lJnFomv70pz+lY445xsM88IEPTBtuuPwrBjCCePTRR6dTTjkl3fSmN/VRxKE3kR389Kc/7UrVta99bT/vzDPP9NFIgtzjHvdIl7vc5bLQK2vz1FNPTd/4xjc8UevWrUuXv/zl089+9rP0q1/9Kl3mMpdJ97rXvVZWgpchNZ///OfTv/71r3SDG9wg3fjGN16GFPzvkoceeqhv3PrWt05r166dSjrqysNULjRmpKvpGctvdRZ5mF9v2PZqyeth9zDNY+PwqbYJ00znpOJeKfVc3f2sRJ2hLp3aN18EMJZ96UtfSj//+c/T4x73uHTZy1525sab+SLacjc2D9JWiEu07+9///t9iiY6NEazWUpvg9kvf/lLV/qriX3EIx6RDjrooOpu///gBz84fepTn0o77LBDohKehjCX+CY3uYlH/dznPjc97WlPm8ZlFKcIiMCMCJx99tnphje84dCr3ec+90lve9vbhoZZ7oN53VSXlp/+9Kdp8803rzs0sO+Nb3yjGy5w/37CE55QHnvyk5+c3vWud/mc/7///e/l/mltfOtb30of/vCHXVF4y1veMvZlPvaxj/nIERGR57i1t8n973//9M9//jN97WtfSx/60IfSPvvsk+iU3OIWt2g7tfX4YYcdlh7/+Menf/zjHx72sY99rDfW1ROb8mOzzTbztS2e+tSnJvj84Ac/SBg1kJ/85CdugKvGNe3/XZ+lBz3oQWX7DluMZrSntO3Xuc510m9+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Qgj897//XSEpSYkRkn/+859jp2dYuYzI28KQFj7DpC0Ozu0SZtg1+h4jXw899NB09tln941ixZ23ksrqtOBMq87sUp6ndU+Kd/UTaGvvuUNGdttkuerDtnQt8vEu+bbIfHTvi0NgkfotRx99dPra177WOXN/+9vf+lS/zidMOSD6LVMOl0NoD7/yla+kD33oQ+kf//hHYxKGlafPfOYz7gXVeHLHA+h2TMHEOPTEJz4xXf7yly/XLos1zBbxd/2F69MVr3jF9IQnPCGdcsopzqitT9cRuYItEIGxDGZUDrvssku6zGUu466euH5+5zvfKfH95Cc/Sdtuu63PIyYM269//et9AcIy0BQ3Hv3oR6erXe1q6fDDD19ylV133TXtueeeS/ZXdwyLoxo2/hM31+VznetcJ61bty69973vjcMr6ve73/1u2m677dLmm2+eLnGJS6QrXOEK6XGPe9ySyvujH/2o3w+VcJOceeaZaeutt07Xvva107/+9a+BYDQWwYRfwtzudrdLr3vd6wbCcZ0b3ehGXmYud7nLpStd6UrprW99axnmS1/60kA8eZzveMc7ynDf/OY30w1ucIN0qUtdyivKAw88sDwWGy95yUv8fglzwxveMH3729+OQ/6LGy8jNIxIXPWqV/VRibx8E2gS14mLPv7xj0+veMUr4m/5m5cn0nnf+943ffGLXyyPt22wjsFOO+3kDUVb2JV8/He/+116wQtekG5605t6WaV83P72t0/vfve7y2TnrPKycde73tXDVMthHuY1r3mNh/nc5z5XlrHrXve6Xm+RN1//+tfL64y7cdhhh3na6+I5+OCD/Zm8+tWv7vXHM57xjHT66afXBS33XfOa1yzTnN8TZSWkS3mOsE1lMY7rd/US6FqHVu+wrb2n4/DIRz4ybbHFFq4TXOta10qUXRTUXLrUmXl4bU+XQNd8IxUY1KiXfvGLX0wlUb/85S9dl0QvmZSgizzrWc9Kp5566qSibI3nxBNPdJ3ioIMOGgi722671dbTGCxmLeT7Ix7xiHTnO995Kpe+1a1ulZ797GdPNO63v/3tifprmrLc/ZZp3ltd3D/96U/TAx7wANeVOZ7rD3XbeC8dccQR6TnPeU5ddMuyD/22a500Sd2G6X70D3iu0UNPOOGEJfffpTzhFXbPe94z/f3vf19yftcdPM9//etfve/G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2eHrrrGQP2t/8cIdPKvqZtKMe82VeD5eiHjasSYeLFjbjbWAYYHHsPTnlZhrKztNMpit7PxR6kRABERABERABERABERABERABERgKAE8zTAQ2dq3/nIrvM5Y5gNPK7yuFkHwpsOzjmn2eJMx9ZjlJTAgyrNsEUrA5O9RBrPJM1WMIiACIiACIiACIiACIiACIiACIjBTAngOsnYfawzzYV1A1v7F82oRBE863gDMsjKsdciHteG0Ztki5P507lEGs+lwVawiIAIiIAIiIAIiIAIiIAIiIAIiMHMC4VGGoQwjWvyfeUJmfEE8zDCOxRTURVu/bca4F+JyMpgtRDbrJkVABERABERABERABERABERABERABERABLoSGHzfbNezFE4EREAEREAEREAEREAEREAEREAEREAEREAE5pSADGZzmrG6LREQAREQAREQAREQAREQAREQAREQAREQgX4EZDDrx01niYAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIzCkBGczmNGN1WyIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAv0IyGDWj5vOEgEREAEREAEREAEREAEREAEREAEREAERmFMCMpjNacbqtkRABERABERABERABERABERABERABERABPoRkMGsHzedJQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiMKcEZDCb04zVbYmACIiACIiACIiACIiACIiACIiACIiACPQjIINZP246SwREQAREQAREQAREQAREQAREQAREQAREYE4JyGA2pxmr2xIBERABERABERABERABERABERABERABEehHQAazftx0lgiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIwJwSkMFsTjNWtyUCIiACIiACIiACIiACIiACIiACIiACItCPgAxm/bjpLBEQAREQAREQAREQAREQAREQAREQAREQgTklIIPZnGasbksEREAEREAEREAEREAEREAEREAEREAERKAfARnM+nHTWSIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAnNKQAazOc1Y3ZYIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEA/AjKY9eOms0RABERABERABERABERABERABERABERABOaUgAxmc5qxui0REAEREAEREAEREAEREAEREAEREAEREIF+BGQw68dNZ4mACIiACIiACIiACIiACIiACIiACIiACMwpARnM5jRjdVsiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAL9CMhg1o+bzhIBERABERABERABERABERABERABERABEZhTAhvO6X3ptkRABERABERABERABERABERABERg4QgURZH4XHjhhf5ZJAAbbLBB4rNmzRr/LNK9614nT0AGs8kzVYwiIAIiIAIiIAIiIAIiIAIiIAIiMFMC69evT2eddVY66qij0nHHHZdOO+20dO655y6M4Qgj4SabbJK23HLLtM0226Ttt98+bbrppuliF9PEupkWxDm62BorVMUc3Y9uRQREQAREQAREQAREQAREQAREQAQWisD555+fvvzlL6cvfOEL6eY3v3m65S1vmbbaaqt06Utf2j2uFgEGHnXnnHNOOvnkk9MPf/jD9KMf/SjtuOOO6e53v3vaaKONFgGB7nHCBGQwmzBQRScCIiACIiACIiACIiACIiACIiACsyCA/8t5552XPv7xj6eTTjopPeYxj0lXvvKVZ3HpFX0NuPz5z39OH/jAB9I1rnGN9PCHPzxd/OIXXxhvuxWdOasocRPxTcT1E1fPYYJrKOEkK5fAf//73xWTOEZI/vnPf46dnrZyyQXawpAWPsOkLY4u1xkW/zjHyNdDDz00nX322eNEs6LOXUlldVpg/v3vf08l6i7leSoXVqRzQaBLe8/IbpdnlLgIK1kZBJQXKyMfZpEK6eTjU+5SF45/lenHcPTRR6evfe1rnS/029/+1qf6dT5hygHRb5ly2CYYTiatV1EGvvKVr6QPfehD6R//+EdjEoZd+zOf+Yx7QTWe3PEAuh1TMDEOPfGJT0yXv/zly7XLYg2zRfxdf+H6dMUrXjE94QlPSKeccoozauvTdUSuYAtEYCyDGZXDLrvski5zmcu4qyeun9/5zndKfL///e993vAlL3nJtNlmm/l84kc/+tHpX//6Vxlmmhtc62pXu1o6/PDDl1xm1113TXvuueeS/dUdw+Koho3/xM11+VznOtdJ69atS+9973vj8Ir6/e53v5u22267tPnmm6dLXOIS6QpXuEJ63OMet6Ty/uhHP+r3QyXcJGeeeWbaeuut07Wvfe0leUxjEUz4Jcztbne79LrXvW4gOq5zoxvdyMvK5S53uXSlK10pvfWtby3DfOlLXxqIJ4/zHe94Rxnum9/8ZrrBDW6Q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iyB40+FZxzR7vMmYesz0agyI8ixbhBIw+XuUwWzyTBWjCIiACIiACIiACIiACIiACIiACMyUAJ6DrJnHGsN8WBeQtX/xvFoEwZOOtxuzrAxrHfJhbTitWbYIuT+de5TBbDpcFasIiIAIiIAIiIAIiIAIiIAIiIAIzJxAeJRhKMOIFv9nnpAZXxAPM4xjMQV10dZvmzHuhbicDGYLkc26SREQAREQAREQAREQAREQAREQAREQAREQga4EBt832/UshRMBERABERABERABERABERABERABERABERCBOSUgg9mcZqxuSwREQAREQAREQAREQAREQAREQAREQAREoB8BGcz6cdNZIiACIiACIiACIiACIiACIiACIiACIiACc0pABrM5zVjdlgiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIQD8CMpj146azREAEREAEREAEREAEREAEREAEREAEREAE5pSADGZzmrG6LREQAREQAREQAREQAREQAREQAREQAREQgX4EZDDrx01niYAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIzCkBGczmNGN1WyIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAv0IyGDWj5vOEgEREAEREAEREAEREAEREAEREAEREAERmFMCMpjNacbqtkRABERABERABERABERABERABERABERABPoRkMGsHzedJQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiMKcEZDCb04zVbYmACIiACIiACIiACIiACIiACIiACIiACPQjIINZP246SwREQAREQAREQAREQAREQAREQAREQAREYE4JyGA2pxmr2xIBERABERABERABERABERABERABERABEehHQAazftx0lgiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIwJwSkMFsTjNWtyUCIiACIiACIiACIiACIiACIiACIiACItCPgAxm/bjpLBEQAREQAREQAREQAREQAREQAREQAREQgTklIIPZnGasbksEREAEREAEREAEREAEREAEREAEREAERKAfARnM+nHTWSIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAnNKQAazOc1Y3ZYIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEA/AjKY9eOms0RABERABERABERABERABERABERABERABOaUgAxmc5qxui0REAEREAEREAEREAEREAEREAEREAEREIF+BDbsd5rOEgEREAEREAEREAEREAEREAEREAERWGkEiqJIfC688EL/rLT0TTM9G2ywQeKzZs0a/0zzWop7/gnIYDb/eaw7FAEREAEREAEREAEREAEREAERmHMC69evT2eddVY66qij0nHHHZdOO+20dO655y6M4Qgj4SabbJK23HLLtM0226Ttt98+bbrppv/H3lnAW1cVf389gp2EifHYjd2FLZigYis2qIAtNohgd2CLHdiJ/djd3aCgogIq6F8f4FnvfAdmv+vsu+vse8699zn3N5/PObtW7d+qWTOzZqcznUkb6xa86c/t9TZYo8pzS10JCwEhIASEgBAQAkJACAgBISAEhIAQEAJzReCUU05Jn/3sZ9ORRx6ZrnGNa6RrXetaaaeddkrnOte53OJqrpmvkcSxqDv55JPTMccck7773e+m733ve2m33XZLt7rVrdKZz3zmNVJKFWNrQkACs62ptlRWISAEhIAQEAJCQAgIASEgBISAEBACZyCA/cvmzZvTe9/73nT00Uen+93vfunCF77wuscHXP70pz+lt73tbekSl7hEuuc975nOcpazrBtru3XfAGYEwExsEzH9xNSzjwiHxFe0NhH43//+t2YKhobkX//617LLM6RdDgnTV5AhaQwJ05fPmOfU6xFHHJFOOumkMdHXZJy11FbHADSvcRBmib6zXMKUn/FaJATqCMxqbK6nq2shsF4QOPXUUxM/0daNwKzm29VGYdOmTekLX/jC4GL8+te/9q1+gyPMOSD8LVsOV4Pgkz73uc+ld7zjHemf//xnaxEQ2vznP/9pfP6Rj3zEraAaH05xk7mZLZgIhx7ykIek85///JXvsvBhth6PW07bki54wQumBz/4wenYY491jGbBJ09RNQq6AAgsS2DG4PCgBz0onfvc53ZTT0w/v/a1ry2B5YMf/GC6yU1uks573vN6WExFV4Lue9/7potd7GLpQx/60JLs9t5777TffvstuV+/0ZVGPWxckzb58rvsZS+bdtlll/SmN70pHq+p49e//vV0i1vcIm2//fbpbGc7W7rABS6QHvCABywZvN/97nf7+zAIt9GJJ56YLnnJS6bLXOYy6d///vdEMCaLwIQjYa5//eunl7zkJRPhyOfKV76y7z2nvVzoQhdKr371q6swn/70pyfSKdN87Wtf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IASEgBAQAkJACAgBISAEhIAQEAJCQAgIgXEISGA2DjfFEgJCQAgIASEgBISAEBACQkAICAEhIASEgBBYUAQkMFvQitVrCQEhIASEgBAQAkJACAgBISAEhIAQEAJCQAiMQ0ACs3G4KZYQEAJCQAgIASEgBISAEBACQkAICAEhIASEwIIiIIHZglasXksICAEhIASEgBAQAkJACAgBISAEhIAQEAJCYBwCEpiNw02xhIAQEAJCQAgIASEgBISAEBACQkAICAEhIAQWFAEJzBa0YvVaQkAICAEhIASEgBAQAkJACAgBISAEhIAQEALjEJDAbBxuiiUEhIAQEAJCQAgIASEgBISAEBACQkAICAEhsKAISGC2oBWr1xICQkAICAEhIASEgBAQAkJACAgBISAEhIAQGIeABGbjcFMsISAEhIAQEAJCQAgIASEgBISAEBACQkAICIEFRUACswWtWL2WEBACQkAICAEhIASEgBAQAkJACAgBISAEhMA4BCQwG4ebYgkBISAEhIAQEAJCQAgIASEgBISAEBACQkAILCgCEpgtaMXqtYSAEBACQkAICAEhIASEgBAQAkJACAgBISAExiEggdk43BRLCAgBISAEhIAQEAJCQAgIASEgBISAEBACQmBBEZDAbEErVq8lBISAEBACQkAICAEhIASEgBAQAkJACAgBITAOAQnMxuGmWEJACAgBISAEhIAQEAJCQAgIASEgBISAEBACC4qABGYLWrF6LSEgBISAEBACQkAICAEhIASEgBAQAkJACAiBcQhIYDYON8USAkJACAgBISAEhIAQEAJCQAgIASEgBISAEFhQBCQwW9CK1WsJASEgBISAEBACQkAICAEhIASEgBAQAkJACIxDQAKzcbgplhAQAkJACAgBISAEhIAQEAJCQAgIASEgBITAgiIggdmCVqxeSwgIASEgBISAEBACQkAICAEhIASEgBAQAkJgHALbjoumWEJACAgBISAEhIAQEAJCQAgIASEgBITAWkMg55z4nXbaaf5ba+WbZ3m22WabxG/Dhg3+m2deSnvxEZDAbPHrWG8oBISAEBACQkAICAEhIASEgBAQAguOwJYtW9I//vGP9JnPfCb96Ec/Sn//+9/T//3f/60bwQxauJgAACAASURBVBFCwrOf/expxx13TDvvvHO69a1vnc53vvOlM51JG+sWvOnP7fU2WKPKc0tdCQsBISAEhIAQEAJCQAgIASEgBISAEBACc0XglFNOSZ/97GfTkUcema5xjWuka13rWmmnnXZK5zrXudziaq6Zr5HEsag7+eST0zHHHJO++93vpu9973tpt912S7e61a3Smc985jVSShVja0JAArOtqbZUViEgBISAEBACQkAICAEhIASEgBAQAmcggP3L5s2b03vf+9509NFHp/vd737pwhe+8LrHB1z+9Kc/pbe97W3pEpe4RLrnPe+ZznKWs6wba7t13wBmBMBMbBMx/cTUU7R1I/C///1vzbwAGpJ//etfyy7PkHY5JExfQYakMSRMXz5jnlOvRxxxRDrppJPGRF+TcdZSWx0DEJqveRDMEn1nuYQpP+O6SAjUERjSxv773/8Oaj+0sXn1hXq5dS0EhIAQWGkEtoa5dNOmTekLX/jCYGh+/etf+1a/wRHmHBD+li2HfYTg5D//+U9fsKmeM4d97nOfS+94xzvSP//5z9a4XXl/5CMfcSuo1sgDH8D7sQUT4dBDHvKQdP7zn7/yXRY+zNbjcctpW9IFL3jB9OAHPzgde+yxjtEs+OSB1aJgC4LAsgRmDA4PetCD0rnPfW439cT082tf+1oFzX777ZcudrGLNf5otPOm+973vp73hz70oSVZ7b333ony9VFXGm1xSTve+7KXvWzaZZdd0pve9Ka24Kt6/+tf/3q6xS1ukbbffvt0trOdLV3gAhdID3jAA5YM3u9+97v9nRiE2+jEE09Ml7zkJdNlLnOZ9O9//3siGJNFYMKRMNe//vXTS17ykolw5HPlK1/Z956f97znTRe60IXSq1/96irMpz/96Yl0yjRf+9rXVuG+/OUvpyte8YrpnOc8pw+Uz372s6tncXLwwQf7+xLmSle6UvrqV78aj/y4zz77NOYFcxE0i3wirQc+8IHpuc99blxWx7I9Uc473vGO6VOf+lT1vO8Ehm3PPff0iaIv7Fp+/pvf/CY99alPTVe72tW8rdI+bnCDG6Q3vOENVbFLrMq2cfOb39zD1NthGeZFL3qRh/nYxz5W1fvlLne5dJOb3CRRN1/84herfMacwFjd+973TjvssIOPmZe+9KXTYx7zmNZ6aWsPTXnT9hlr6MP4bLjHPe7RygB/8IMfdNzq6fz2t791Pw/nOMc50nbbbed9kPGv3pfr8XS99SEwZGyr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YQq+0jDGsJ0Ui/GieosVQUACsxWBWZkIgbWFABOHbXNMhx122JKCYTXGBzoQnDGh4McIPwdMNKLVRwBhBv7lmqxRV790KsEiIICQHEZ7jAPiRXh/vYMQEAJCYD0ggGUS/n2xMMOHsGjlEcBfMjtcUFQvl9ihg49ec9nhftdw5B8f3sGyqmknzXLzXIvxsULE0g6feGCBbzd8b4MFFsPin9dira3tMklgtrbrR6UTAkJACAgBISAEhIAQEAJCQAgIASHQiQCWZgiI+NAU7hWwOsPtDpZWWF2tB8KaDss6ttljTcbWY9xLIECUZdl6aAGzf0cJzGaPqVIUAkJACAgBISAEhIAQEAJCQAgIASGwoghgOYjvQ3wM8zMH9+77F8ur9UBY0uFHFbcy+OXmh284+SxbD7U/n3eUwGw+uCpVISAEhIAQEAJCQAgIASEgBISAEBACK45AWJQhKEOIFtcrXpAVzhALM4RjsQV1vflvW2G410V2Epiti2rWSwoBISAEhIAQEAJCQAgIASEgBISAEBACQkAIDEVg8nuzQ2MpnBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISAEFhQBCQwW9CK1WsJASEgBISAEBACQkAICAEhIASEgBAQAkJACIxDQAKzcbgplhAQAkJACAgBISAEhIAQEAJCQAgIASEgBITAgiIggdmCVqxeSwgIASEgBISAEBACQkAICAEhIASEgBAQAkJgHAISmI3DTbGEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBBYUAQnMFrRi9VpCQAgIASEgBISAEBACQkAICAEhIASEgBAQAuMQkMBsHG6KJQSEgBAQAkJACAgBISAEhIAQEAJCQAgIASGwoAhIYLagFavXEgJCQAgIASEgBISAEBACQkAICAEhIASEgBAYh4AEZuNwUywhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIgQVFQAKzBa1YvZYQEAJCQAgIASEgBISAEBACQkAICAEhIASEwDgEJDAbh5tiCQEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgsKAISmC1oxeq1hIAQEAJCQAgIASEgBISAEBACQkAICAEhIATGISCB2TjcFEsICAEhIASEgBAQAkJACAgBISAEhIAQEAJCYEERkMBsQStWryUEhIAQEAJCQAgIASEgBISAEBACQkAICAEhMA4BCczG4aZYQkAICAEhIASEgBAQAkJACAgBISAEhIAQEAILioAEZgtasXotISAEhIAQEAJCQAgIASEgBISAEBACQkAICIFxCEhgNg43xRICQkAICAEhIASEgBAQAkJACAgBISAEhIAQWFAEJDBb0IrVawkBISAEhIAQEAJCQAgIASEgBISAEBACQkAIjENAArNxuCmWEBACQkAICAEhIASEgBAQAkJACAgBISAEhMCCIiCB2YJWrF5LCAgBISAEhIAQEAJCQAgIASEgBISAEBACQmAcAhKYjcNNsYSAEBACQkAICAEhIASEgBAQAkJACAgBISAEFhSBbRf0vfRaQkAICAEhIASEgBAQAkJACAgBISAE1h0COefE77TTTvPfegJgm222Sfw2bNjgv/X07nrX2SMggdnsMVWKQkAICAEhIASEgBAQAkJACAgBISAEVhSBLVu2pH/84x/pM5/5TPrRj36U/v73v6f/+7//WzeCI4SEZz/72dOOO+6Ydt5553TrW986ne9850tnOpM21q1oQ1ygzDZYo8oL9D56FSEgBISAEBACQkAICAEhIASEgBAQAusKgVNOOSV99rOfTUceeWS6xjWuka51rWulnXbaKZ3rXOdyi6v1AAYWdSeffHI65phj0ne/+930ve99L+22227pVre6VTrzmc+8HiDQO84YAQnMZgyokhMCQkAICAEhIASEgBAQAkJACAgBIbASCGD/snnz5vTe9743HX300el+97tfuvCFL7wSWa/pPMDlT3/6U3rb296WLnGJS6R73vOe6SxnOcu6sbZb05WzFRVuJraJmH5i6tlF//nPf7oe69kaQOB///vfGijF6UVAQ/Kvf/1r2eXpa5dDMkBL0UdD8ukKw4A+rz5CvR5xxBHppJNO6nuNreb5Wmqrawk0mCX6ThcNac///ve/u5LQs3WMwJA2Rhvsa4fzGu/WcdXo1dcAAkP6B2Pwas9h6n+zaSxdfN1scph/Kps2bUpf+MIXBmf061//2rf6DY4w54Dwt2w5XA1i/fu5z30uveMd70j//Oc/W4vQxeN/5CMfcSuo1sgDHzDnsgUT4dBDHvKQdP7zn7/yXRY+zNbjcctpW9IFL3jB9OAHPzgde+yxjlEffzIQcgVbRwgsS2DG4PCgBz0onfvc53ZTT0w/v/a1r03Ad/jhh6db3OIW6eIXv3i67GUvmx7zmMek448/fiLMvC7ue9/7potd7GLpQx/60JIs9t5777TffvstuV+/0ZVGPWxckzb58uOdd9lll/SmN70pHq+p49e//nWvn+233z6d7WxnSxe4wAXSAx7wgCWD97vf/W5/HwbhNjrxxBPTJS95yXSZy1wm1RfcTBaBCUfCXP/6108veclLJpIjnytf+cq+9/y85z1vutCFLpRe/epXV2E+/elPT6RTpvna1762CvflL385XfGKV0znPOc5faB89rOfXT0rT2BcaZs/+9nPytuJSfDe97532mGHHbx9X/rSl/a2y2Bb0pB8Dj74YMeVslzpSldKX/3qV6skfvCDH6Sb3OQm/r70I85f+tKXupPOCFS2J+Lf8Y53TJ/61Kfice8RPwZ77rmnTxS9gddwgN/85jfpqU99arra1a7mbZX2cYMb3CC94Q1vqEpdYlW2jZvf/OYept4OyzAvetGLPMzHPvaxqo1d7nKX8zp54AMfmL74xS9W+Sz35IMf/KCXvSmdskxxTlvuIto+Yw19GJ8N97jHPSYY4KHtmXTCdJ+x4MUvfnFXtnq2AAi89a1v9fZeHwPrr9bXxgjP1ge02mhxL3rRi7omdy3xBPV30vUkAl3jEiHb5svJVMZf/fznP3deEr5kVgQv8vjHPz4dd9xxs0qyMZ0h/WOfffZxfoS5nrH6Ote5zhJeqzHxGd5cKZ782te+dnrCE54ww5Kn9JrXvCbBA86bYt4tj/U5uIuvm3f5Zpn+D3/4w3SXu9zFeWXSLd+56RzrpY9//OPpiU984iyLsay04G/75q/IAF7uuc99blwu68h2P+Y6+jV86O9///sl6Q3h8RGy3/a2t01/+9vflsQfegMe7y9/+YuPJ2w9ZNsh/G7OW844nu78//R7w84RvLFGI055Pk0azP+swaeJMzZsWxm3GAbgg1XZrrvtmr797W87VtwTCYHBCFjDHE13vvOdswnJsknXsy3K8+Me97hsAoZskn5P06Tm2RzsZdtLna1hZjMRzVe4whWymUOOznNoRGOO8rbbbpuvec1rZhMwLIl2t7vdLd/nPvdZcr+80ZdGGbY8J21zMJi/9KUvZZP252c961nZvtSRX/WqV5XBVv387W9/u2NkzGQ2p5BePyYs8LLf//73nyif7ft2LI3J87qeeHjGhTGM2QRm2RwrZluETQSh/q1R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xfJqPRCWdHzdGLcy+Drkh284+SxbD7U/n3eUwGw+uCpVISAEhIAQEAJCQAgIASEgBISAEBACK45AWJQhKEOIFtcrXpAVzhALM4RjsQV1vflvW2G410V2Epiti2rWSwoBISAEhIAQEAJCQAgIASEgBISAEBACQkAIDEVg8nuzQ2MpnBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISAEFhQBCQwW9CK1WsJASEgBISAEBACQkAICAEhIASEgBAQAkJACIxDQAKzcbgplhAQAkJACAgBISAEhIAQEAJCQAgIASEgBITAgiIggdmCVqxeSwgIASEgBISAEBACQkAICAEhIASEgBAQAkJgHAISmI3DTbGEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBBYUAQnMFrRi9VpCQAgIASEgBISAEBACQkAICAEhIASEgBAQAuMQkMBsHG6KJQSEgBAQAkJACAgBISAEhIAQEAJCQAgIASGwoAhIYLagFavXEgJCQAgIASEgBISAEBACQkAICAEhIASEgBAYh4AEZuNw+3/snQXYdVXx9tf7FwObsOu1G7tRsAUDE1uwQQVbsV/sbsUGbMXuFru7E1BQUQEVLJB3ffMbmP2ts59dZz/nPHGee67rnF2r9r1q1sys2YolBISAEBACQkAICAEhIASEgBAQAkJACAgBIbCgCEhgtqAVq9cSAkJACAgBISAEhIAQEAJCQAgIASEgBISAEBiHgARm43BTLCEgBISAEBACQkAICAEhIASEgBAQAkJACAiBBUVAArMFrVi9lhAQAkJACAgBISAEhIAQEAJCQAgIASEgBITAOAQkMBuHm2IJASEgBISAEBACQkAICAEhIASEgBAQAkJACCwoAhKYLWjF6rWEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBMYhIIHZONwUSwgIASEgBISAEBACQkAICAEhIASEgBAQAkJgQRGQwGxBK1avJQSEgBAQAkJACAgBISAEhIAQEAJCQAgIASEwDgEJzMbhplhCQAgIASEgBISAEBACQkAICAEhIASEgBAQAguKgARmC1qxei0hIASEgBAQAkJACAgBISAEhIAQEAJCQAgIgXEISGA2DjfFEgJCQAgIASEgBISAEBACQkAICAEhIASEgBBYUAQkMFvQitVrCQEhIASEgBAQAkJACAgBISAEhIAQEAJCQAiMQ0ACs3G4KZYQEAJCQAgIASEgBISAEBACQkAICAEhIASEwIIiIIHZglasXksICAEhIASEgBAQAkJACAgBISAEhIAQEAJCYBwC24yLplhCQAgIASEgBISAEBACQkAICAEhIASEwFpDIOec+J166qn+W2vlm2d5znCGMyR+mzZt8t8881Lai4+ABGaLX8d6QyEgBISAEBACQkAICAEhIASEgBBYcAS2bt2a/va3v6VPf/rT6Yc//GH661//mv79739vGMERQsJtt9027bjjjmmnnXZKN7/5zdO5z33u9H//p411C9705/Z6m6xR5bmlroSFgBAQAkJACAgBISAEhIAQEAJCQAgIgbkicMopp6TPfOYz6ROf+ES62tWulq5xjWukC13oQunsZz+7W1zNNfM1kjgWdSeddFI6+uij03e+85303e9+N+2+++7pZje7WTrjGc+4RkqpYqwnBCQwW0+1pbIKASEgBISAEBACQkAICAEhIASEgBA4HQHsX04++eT07ne/Ox111FHp3ve+d7rABS6w4fEBlz/84Q/pLW95S7rYxS6W7na3u6UznelMG8babsM3gBkBMBPbREw/MfXson/+859dj/VsDSDw3//+dw2U4rQioCH5xz/+sezy9LXLIRmgpeijIfl0hWFA/9e//tWXzajn1Othhx2WTjzxxFHx12KktdRW1xI+MEv0nS4a0p41XnchuLGfDWljQxGCdxjSHoemp3BCYLURGNI/aPOrPYfNi99YbfxXMv8ha5+VLM/YvA4//PD0+c9/fnD0X/3qV77Vb3CEOQeEv2XLYR/Ng8+mDXz2s59Nb3vb29Lf//731iJ05f2hD33IraBaIw98AO/HFkyEQw94wAPSec5znsp3Wfgw24jHraduTec73/nS/e9//3TMMcc4Rn188kDIFWwDIbAsgRmDw/3ud790jnOcw009Mf386le/OgHfa1/72soU9LznPW968YtfPPF8nhf3ute90kUucpH0gQ98YEk2++yzT9p///2X3K/f6EqjHjauSZt8+V360pdOu+66a3rTm94Uj9fU8Wtf+1q6yU1ukrbffvt0lrOcJVFHe+2115LB+53vfKe/D4NwG51wwgnp4he/eLrUpS6V6gtuJovAhCNhrnvd66aXvOQlE8mRzxWveEXfe36uc50rnf/850+vfvWrqzCf+tSn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rTDcGyI7Ccw2RDXrJYWAEBACQkAICAEhIASEgBAQAkJACAgBISAEhiIw+b3ZobEUTggIASEgBISAEBACQkAICAEhIASEgBAQAkJACCwoAhKYLWjF6rWEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBMYhIIHZONwUSwgIASEgBISAEBACQkAICAEhIASEgBAQAkJgQRGQwGxBK1avJQSEgBAQAkJACAgBISAEhIAQEAJCQAgIASEwDgEJzMbhplhCQAgIASEgBISAEBACQkAICAEhIASEgBAQAguKgARmC1qxei0hIASEgBAQAkJACAgBISAEhIAQEAJCQAgIgXEISGA2DjfFEgJCQAgIASEgBISAEBACQkAICAEhIASEgBBYUAQkMFvQitVrCQEhIASEgBAQAkJACAgBISAEhIAQEAJCQAiMQ0ACs3G4KZYQEAJCQAgIASEgBISAEBACQkAICAEhIASEwIIiIIHZglasXksICAEhIASEgBAQAkJACAgBISAEhIAQEAJCYBwCEpiNw02xhIAQEAJCQAgIASEgBISAEBACQkAICAEhIAQWFAEJzBa0YvVaQkAICAEhIASEgBAQAkJACAgBISAEhIAQEALjEJDAbBxuiiUEhIAQEAJCQAgIASEgBISAEBACQkAICAEhsKAISGC2oBWr1xICQkAICAEhIASEgBAQAkJACAgBISAEhIAQGIeABGbjcFMsISAEhIAQEAJCQAgIASEgBISAEBACQkAICIEFRUACswWtWL2WEBACQkAICAEhIASEgBAQAkJACAgBISAEhMA4BCQwG4ebYgkBISAEhIAQEAJCQAgIASEgBISAEBACQkAILCgCEpgtaMXqtYSAEBACQkAICAEhIASEgBAQAkJACAgBISAExiEggdk43BRLCAgBISAEhIAQEAJCQAgIASEgBISAEBACQmBBEZDAbEErVq8lBISAEBACQkAICAEhIASEgBAQAkJACAgBITAOAQnMxuGmWEJACAgBISAEhIAQEAJCQAgIASEgBISAEBACC4rANgv6XnotISAEhIAQEAJCQAgIASEgBISAEBACGw6BnHPid+qpp/pvIwFwhjOcIfHbtGmT/zbSu+tdZ4+ABGazx1QpCgEhIASEgBAQAkJACAgBISAEhIAQWFEEtm7dmv72t7+lT3/60+mHP/xh+utf/5r+/e9/bxjBEULCbbfdNu24445pp512Sje/+c3Tuc997vR//6eNdSvaEBcos03WqPICvY9eRQgIASEgBISAEBACQkAICAEhIASEwIZC4JRTTkmf+cxn0ic+8Yl0tatdLV3jGtdIF7rQhdLZz352t7jaCGBgUXfSSSelo48+On3nO99J3/3ud9Puu++ebnazm6UznvGMGwECveOMEZDAbMaAKjkhIASEgBAQAkJACAgBISAEhIAQEAIrgQD2LyeffHJ697vfnY466qh073vfO13gAhdYiazXdB7g8oc//CG95S1vSRe72MXS3e52t3SmM51pw1jbrenKWUeFWzHbRExBu4hOjlRctHoI/Pe//129zGs50xb+8Y9/1O5Of9nX7oak+L///S/x66Ih+XSFYUD/17/+1ZXF6GfU62GHHZZOPPHE0WmstYhrqa3OExvM6tGSDaUh/Yb0+vDDlJ+8RYuNwJC20ITAcseqeY53TeXVvdkh0DWPzS6X9ZvSrMbg9YuASh4IrJdx7vDDD0+f//zno9i9x1/96le+1a834AoFgL9ly+FqEHzSZz/72fS2t70t/f3vf28tQldb+NCHPuRWUK2RBz5g7GELJsKhBzzgAek85zlP5bssfJhtxOPWU7em853vfOn+979/OuaYYxwjsBIJgWkQmInADKb7ohe9aPrpT3+6JO8vfelL6fKXv3w629nO5g32mc985kSY1772tenSl750OstZzuJ7je9617tONXBPJFa7uNe97pUucpGLpA984AO1Jynts88+af/9919yv36jK4162LgmbfLlx7vtuuuu6U1velM8XlPHr33ta+kmN7lJ2n777b0Oznve86a99tpryeD9zne+09+HQbiNTjjhhHTxi188XepSl0r//Oc/J4IxWQQmHAlz3eteN73kJS+ZCEc+V7ziFX3v+bnOda50/vOfP7361a+uwnzqU5+aSKdMk7YU1NfuIlxX2z3++OPTbW5zm3SOc5wjnfOc50y3ve1tE+9Y0pB8nvGMZyRwpQ9c4QpXSF/5yleqJL7//e+nG97whv6+5MP5S1/6UnfSGYHK9kR8yvHJT34yHvceEX7sueeePlH0Bl7DAX7961+nJz3pSekqV7mKt1Xax/Wud730hje8oSp1iVXZNm584xt7mHo7LMO86EUv8jAf+chHqjZ2mctcxuvkvve9b/rCF75Q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vbdc2zmjBMbFDC4xwj3NmBKz/sPlDe50UIwiNEOoiIIAwVEpSBqT/nqLE4IyhK8I2RGWYZiCrzSMMWy3xXp7JZV3FRGQwGwVwVfWQmC1EGDisG2O6aCDDlpSBKzGzMzdtWpMKPgxws8BE41o9RFAmIF/uSZr1NUvnUqwCAggJIfRHuOAeBHeX+8gBISAENgICGCZhF9pLMzwwydaeQT4Gi87T1BUL5ewcsVHr7nscL9rOPLH9xcfKcOyal47XJZb7lnHxwoRSzt84oEFvt3wvQ0WWAyLf5414oufngRmi1/HekMhIASEgBAQAkJACAgBISAEhIAQWGAEsDRDQGQ+l/3jVlid4YIBSyusrjYCYU2HZR3b7LEmY+sx7iUQIMqybCO0gNm/owRms8dUKQoBISAEhIAQEAJCQAgIASEgBISAEFhRBLAcxPchPob5mYN79/2L5dVGICzp+LoxbmXwtcoP33DyWbYRan8+7yiB2XxwVapCQAgIASEgBISAEBACQkAICAEhIARWHIGwKENQhhAtrle8ICucIRZmCMdiC+pG89+2wnBviOwkMNsQ1ayXFAJCQAgIASEgBISAEBACQkAICAEhIASEgBAYisDk92aHxlI4ISAEhIB82AFpAAAgAElEQVQQEAJCQAgIASEgBISAEBACQkAICAEhsKAISGC2oBWr1xICQkAICAEhIASEgBAQAkJACAgBISAEhIAQGIeABGbjcFMsISAEhIAQEAJCQAgIASEgBISAEBACQkAICIEFRUACswWtWL2WEBACQkAICAEhIASEgBAQAkJACAgBISAEhMA4BCQwG4ebYgkBISAEhIAQEAJCQAgIASEgBISAEBACQkAILCgCEpgtaMXqtYSAEBACQkAICAEhIASEgBAQAkJACAgBISAExiEggdk43BRLCAgBISAEhIAQEAJCQAgIASEgBISAEBACQmBBEZDAbEErVq8lBISAEBACQkAICAEhIASEgBAQAkJACAgBITAOAQnMxuGmWEJACAgBISAEhIAQEAJCQAgIASEgBISAEBACC4qABGYLWrF6LSEgBISAEBACQkAICAEhIASEgBAQAkJACAiBcQhIYDYON8USAkJACAgBISAEhIAQEAJCQAgIASEgBISAEFhQBCQwW9CK1WsJASEgBISAEBACQkAICAEhIASEgBAQAkJACIxDQAKzcbgplhAQAkJACAgBISAEhIAQEAJCQAgIASEgBITAgiIggdmCVqxeSwgIASEgBISAEBACQkAICAEhIASEgBAQAkJgHAISmI3DTbGEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBBYUAQnMFrRi9VpCQAgIASEgBISAEBACQkAICAEhIASEgBAQAuMQkMBsHG6KJQSEgBAQAkJACAgBISAEhIAQEAJCQAgIASGwoAhIYLagFavXEgJCQAgIASEgBISAEBACQkAICAEhIASEgBAYh4AEZuNwUywhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIgQVFQAKzBa1YvZYQEAJCQAgIASEgBISAEBACQkAICAEhIASEwDgEJDAbh5tiCQEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgsKAISmC1oxeq1hIAQEAJCQAgIASEgBISAEBACQkAICAEhIATGIbDNuGiKJQSEgBAQAkJACAgBISAEhIAQEAJCQAisNQRyzonfqaee6r+1Vr55lucMZzhD4rdp0yb/zTMvpb34CEhgtvh1rDcUAkJACAgBISAEhIAQEAJCQAgIgQVHYOvWrelvf/tb+vSnP51++MMfpr/+9a/p3//+94YRHCEk3HbbbdOOO+6Ydtppp3Tzm988nfvc507/93/aWLfgTX9ur7fJGlWeW+pKWAgIASEgBISAEBACQkAICAEhIASEgBCYKwKnnHJK+sxnPpM+8YlPpKtd7WrpGte4RrrQhS6Uzn72s7vF1VwzXyOJY1F30kknpaOPPjp95zvfSd/97nfT7rvvnm52s5ulM57xjGuklCrGekJAArP1VFsqqxAQAkJACAgBISAEhIAQEAJCQAgIgdMRwP7l5JNPTu9+97vTUUcdle5973unC1zgAhseH3D5wx/+kN7ylreki13sYulud7tbOtOZzrRhrO02fAOYEQArZpuIKWgXIRH/xz/+0RVEz+aMwH//+9855zA8+Vm1h752N6RE//vf/xK/LhqST1cYBvR//etfXVmMfka9HnbYYenEE08cncZai7iW2uo8scGsHi3ZUBrSb0ivDz9M+clbtNgIDGkLTQjMYqzqGg+b8tS9tYGA6q27HmY1BnfnoqfrBYH1MJcefvjh6fOf//xgSH/1q1/5Vr/BEeYcEP6WLYd9NA8+Gz7ps5/9bHrb296W/v73v7cW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QAREQAREQATWlACeg8x9yBzDLDbBvc/9i+fVKgiedHzdmGllmGuVhbnhNGfZKjz9xdyjDGaL4apYRUAEREAEREAEREAEREAEREAERGDNCYRHGYYyjGjxf80TssYXxMMM41gMQV21+dvWGPdKXE4Gs5V4zLpJERABERABERABERABERABERABERABERCBWgLD30GuPUvhREAEREAEREAEREAEREAEREAEREAEREAERGBJCchgtqQPVrclAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIwHQEZzKbjprNEQAREQAREQAREQAREQAREQAREQAREQASWlIAMZkv6YHVbIiACIiACIiACIiACIiACIiACIiACIiAC0xGQwWw6bjpLBERABERABERABERABERABERABERABERgSQnIYLakD1a3JQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiMB0BGcym46azREAEREAEREAEREAEREAEREAEREAEREAElpSADGZL+mB1WyIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAtMRkMFsOm46SwREQAREQAREQAREQAREQAREQAREQAREYEkJyGC2pA9WtyUCIiACIiACIiACIiACIiACIiACIiACIjAdARnMpuOms0RABERABERABERABERABERABERABERABJaUgAxmS/pgdVsiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIALTEZDBbDpuOksEREAEREAEREAEREAEREAEREAEREAERGBJCchgtqQPVrclAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIwHQEZzKbjprNEQAREQAREQAREQAREQAREQAREQAREQASWlIAMZkv6YHVbIiACIiACIiACIiACIiACIiACIiACIiAC0xGQwWw6bjpLBERABERABERABERABERABERABERABERgSQnIYLakD1a3JQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiMB0BGcym46azREAEREAEREAEREAEREAEREAEREAEREAElpSADGZL+mB1WyIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAtMRkMFsOm46SwREQAREQAREQAREQAREQAREQAREQAREYEkJyGC2pA9WtyUCIiACIiACIiACIiACIiACIiACIiACIjAdgR2mO01niYAIiIAIiIAIiIAIiIAIiIAIiIAIbDQCOefEctJJJ/my0dK3yPSc8pSnTCybNm3yZZHXUtzLT0AGs+V/xrpDERABERABERABERABERABERCBJSewbdu29Ne//jV96lOfSj/4wQ/SX/7yl/Svf/1rZQxHGAlPd7rTpXOe85xp5513Tje5yU3SWc961nSKU2hg3ZJn/YXd3ibLVHlhsStiERABERABERABERABERABERABERCBhRI48cQT06c//en08Y9/PF3pSldKV7nKVdJOO+2UznjGM7rH1UIvvkEix6Pu+OOPT0cccUT69re/nb7zne+k3XbbLd34xjdOpzrVqTZIKpWM7YmADGbb09NSWkVABERABERABERABERABERABETgZAL4v5xwwgnpXe96Vzr88MPTPe95z7TjjjuuPB+4/P73v09vfvOb04UudKF0l7vcJZ361KdeGW+7lc8AcwKwZr6JuIJKNjaB//znPxsmgfSQ/P3vf585PfPId//9738TyzipuU5fGNyncaOet/BcDznkkHTcccfNO+p1i28j5dV1g9By4Zr3hjAs4+Qf//jHuMM6tiQE6IGdVCij+sqy2jiJa5o01MavcJMRqCkbJotx+ULX1NPzej82Aj3qWhrhklECcOmrS7eHvLB169b0uc99bvQGO/b88pe/9KF+HYfXfDf6LUMO10Oowz7zmc+kt771relvf/tbZxIw2vzzn/9sPf7BD37QvaBaD06wk7zIEEyMQ/e73/3Suc51rsHcZTGH2Squt520LZ3nPOdJ973vfdORRx7pjPre2wmwK+iKEJiLwQyF94IXvGD6yU9+MoLti1/8Yrr0pS+dznCGM3iGfdrTnjYSJnYcdthh6TKXuUx6znOeE7tmWt/jHvdIF7jABdL73//+kXj22muvtO+++47sb+4YF0czbPwnbq7LcvGLXzxt2bIlvf71r4/DG2r91a9+Nd3whjdMZz/72dNpT3vadO5znzvtscceI4X3O97xDr8fCuEuOfbYY9OFL3zhdLGLXSw1G9xUFsGENWGuec1rphe+8IVD0XGdy172sj72/CxnOUs673nPm17xilcMwnzyk58ciqeM81WvetUgXG2+G5d3jznmmHTLW94ynelMZ0pnPvOZ061udavEPZZSc52nPvWpzpV3gPz95S9/eRDFr3/9ax9bf/rTnz6d7Wxn8/smz5X8yvzE+aTjE5/4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A9Gh9oEfplfA64xpd/C0wutqFQRvOjzrGHqNNxlDjxnSjwFRnmWrkAPmf48ymM2fqWIUAREQAREQAREQAREQAREQAREQgTUlgOcgX7RmjmEWm+De5/7F82oVBE86+5ieTyvDvJYszA2nOctW4ekv5h5lMFsMV8UqAiIgAiIgAiIgAiIgAiIgAiIgAmtOIDzKMJRhRIv/a56QNb4gHmYYx2II6qrN37bGuFficjKYrcRj1k2KgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAjUEmj/Pnft2QonAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAktGQAazJXuguh0REAEREAEREAEREAEREAEREAEREAEREIHZCMhgNhs/nS0CIiACIiACIiACIiACIiACIiACIiACIrBkBGQwW7IHqtsRAREQAREQAREQAREQAREQAREQAREQARGYjYAMZrPx09kiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAJLRkAGsyV7oLodERABERABERABERABERABERABERABERCB2QjIYDYbP50tAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiKwZARkMFuyB6rbEQEREAEREAEREAEREAEREAEREAEREAERmI2ADGaz8dPZIiACIiACIiACIiACIiACIiACIiACIiACS0ZABrMle6C6HREQAREQAREQAREQAREQAREQAREQAREQgdkIyGA2Gz+dLQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIisGQEZDBbsgeq2xEBERABERABERABERABERABERABERABEZiNgAxms/HT2SIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAktGQAazJXuguh0REAEREAEREAEREAEREAEREAEREAEREIHZCMhgNhs/nS0CIiACIiACIiACIiACIiACIiACIiACIrBkBGQwW7IHqtsRAREQAREQAREQAREQAREQAREQAREQARGYjYAMZrPx09kiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAJLRkAGsyV7oLodERABERABERABERABERABERABERABERCB2QjIYDYbP50tAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiKwZARkMFuyB6rbEQEREAEREAEREAEREAEREAEREAEREAERmI2ADGaz8dPZIiACIiACIiACIiACIiACIiACIiACIiACS0ZghyW7H92OCIiACIiACIiACIiACIiACIiACKwsgZxzYjnppJN8WSUQpzzlKRPLpk2bfFmle9e9zp+ADGbzZ6oYRUAEREAEREAEREAEREAEREAERGBNCWzbti399a9/TZ/61KfSD37wg/SXv/wl/etf/1oZwxFGwtOd7nTpnOc8Z9p5553TTW5yk3TWs541neIUGli3phlxiS62yTJVXqL70a2IgAiIgAiIgAiIgAiIgAiIgAiIwEoROPHEE9OnP/3p9PGPfzxd6UpXSle5ylXSTjvtlM54xjO6x9UqwMCj7vjjj09HHHFE+va3v52+853vpN122y3d+MY3Tqc61alWAYHucc4EZDCbM1BFJwIiIAIiIAIiIAIiIAIiIAIiIAJrQQD/lxNOOCG9613vSocffni65z3vmXbccce1uPSGvgZcfv/736c3v/nN6UIXulC6y13ukk596lOvjLfdhn4421Hi1sw3EVdQycYm8J///GfDJJAekr///e8zp2ce+e6///1vYhknNdfpC4P7NG7U8xae6yGHHJKOO+64eUe9bvFtpLy6bhBaLlzz3hCGZZz84x//GHdYx5aEAD2w07xLfWVZTZn5z3/+c0koLs9t1JQNy3O3091JTT3d935Md+X1OYvygUa4ZHkJbN26NX3uc5+rvsFf/vKXPtSv+oQFB0S/Zchhn2A4mXe9g87+mc98Jr31rW9Nf/vb3zqTMO7aH/zgB90LqvPkygOU3wzBxDh0v/vdL53rXOcazF0Wc5it4nrbSdvSec5znnTf+943HXnkkc6oTweuRK5gK0RgLgYzlO4LXvCC6Sc/+ckIui9+8Yvp0pe+dDrDGc7gGfZpT3vaUJiPfOQj6QIXuMDI8ohHPGIo3DR/7nGPe3i873//+0dO32uvvdK+++47sr+5Y1wczbDxn7jjni5+8YunLVu2pNe//vVxeEOtv/rVr6Yb3vCG6exnP3s67WlPm8597nOnPfbYY6Twfsc73uH3RCHcJccee2y68IUvnC52sYulZoObyiKYsCbMNa95zfTCF75wKDquc9nLXtbHnp/lLGdJ5z3vedMrXvGKQZhPfvKTQ/GUcb7qVa8ahOvLdxFwXN495phj0i1vect0pjOdKZ35zGdOt7rVrRL3WErNdZ761Kc6V96By1zmMunLX/7yIIpf//rXPrb+9Kc/fTrb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0wwDkc0N6h+3wuuMaRDwtMLrahUEbzo86xh6jTcZQ48Z0o8BUZ5lq5AD5n+PMpjNn6liFAEREAEREAEREAEREAEREAEREIE1JYDnIHPmMccwi01w73P/4nm1CoInHV+jZVoZ5rVkYW44zVm2Ck9/Mfcog9liuCpWERABERABERABERABERABERABEVhzAuFRhqEMI1r8X/OErPEF8TDDOBZDUFdt/rY1xr0Sl5PBbCUes25SBERABERABERABERABERABERABERABESglsApagMqnAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAisAgEZzFbhKeseRUAEREAEREAEREAEREAEREAEREAEREAEqgnIYFaNSgFFQAREQAREQAREQAREQAREQAREQAREQARWgYAMZqvwlHWPIiACIiACIiACIiACIiACIiACIiACIiAC1QRkMKtGpYAiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAKrQEAGs1V4yrpHERABERABERABERABERABERABERABERCBagIymFWjUkAREAEREAEREAEREAEREAEREAEREAEREIFVICCD2So8Zd2jCIiACIiACIiACIiACIiACIiACIiACIhANQEZzKpRKaAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiMAqEJDBbBWesu5RBERABERABERABERABERABERABERABESgmoAMZtWoFFAEREAEREAEREAEREAEREAEREAEREAERGAVCMhgtgpPWfcoAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiJQTUAGs2pUCigCIiACIiACIiACIiACIiACIiACIiACIrAKBGQwW4WnrHsUAREQAREQAREQAREQAREQAREQAREQARGoJiCDWTUqBRQBERABERABERABERABERABERABERABEVgFAjKYrcJT1j2KgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAhUE5DBrBqVAoqACIiACIiACIiACIiACIiACIiACIiACKwCARnMVuEp6x5FQAREQAREQAREQAREQAREQAREQAREQASqCchgVo1KAUVABERABERABERABERABERABERABERABFaBgAxmq/CUdY8iIAIiIAIiIAIiIAIiIAIiIAIiIAIiIALVBGQwq0algCIgAiIgAiIgAiIgAiIgAiIgAr0+7xgAAAEWSURBVCIgAiIgAqtAQAazVXjKukcREAEREAEREAEREAEREAEREAEREAEREIFqAjKYVaNSQBEQAREQAREQAREQAREQAREQAREQAREQgVUgIIPZKjxl3aMIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEA1ARnMqlEpoAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIwCoQkMFsFZ6y7lEEREAEREAEREAEREAEREAEREAEREAERKCagAxm1agUUAREQAREQAREQAREQAREQAREQAREQAREYBUIyGC2Ck9Z9ygCIiACIiACIiACIiACIiACIiACIiACIlBNQAazalQKKAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIisAoE/g9ouSdEgrBhQgAAAABJRU5ErkJggg==" alt="" /&gt;&lt;br /&gt;All generated tiles end up in your &lt;span style="font-weight: bold;"&gt;{geoserver_data_dir}/gwc/&lt;/span&gt; folder.&lt;br /&gt;&lt;br /&gt;Update: The following solution for .net developers running an older version of Geoserver has been provided by Arnaud Buisson-Delandre below:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;I finally managed to achieve some kind of preseed on 2.03 with a webservice in c#.&lt;br /&gt;&lt;br /&gt;The tricks are : don’t use xml but plain html webrequest and encode the post data. Here are the “harsh” hard coded code ;) just in case….&lt;br /&gt;&lt;br /&gt;[WebMethod]&lt;br /&gt;&lt;br /&gt;        public void reseed_Postgis_tbv_p2000_cad2010()&lt;br /&gt;        {&lt;br /&gt;&lt;br /&gt;             ASCIIEncoding encoding = new ASCIIEncoding();&lt;br /&gt;&lt;br /&gt;            string postData = "threadCount=12&amp;type=reseed&amp;gridSetId=EPSG%3A900913&amp;format=image%2Fpng&amp;zoomStart=00&amp;zoomStop=16&amp;minX=&amp;minY&amp;maxX=&amp;maxY=";&lt;br /&gt;&lt;br /&gt;            byte[] data = encoding.GetBytes(postData);&lt;br /&gt;&lt;br /&gt;            // Prepare web request...&lt;br /&gt;            HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://SERVER:8081/geoserver/gwc/rest/seed/Postgis:tbv_p2000_cad2010");&lt;br /&gt;&lt;br /&gt;            myRequest.Method = "POST";&lt;br /&gt;&lt;br /&gt;            myRequest.ContentType = "Content-Type=application/x-www-form-urlencoded";&lt;br /&gt;&lt;br /&gt;            myRequest.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes("admin:PASSWORD")));&lt;br /&gt;&lt;br /&gt;            myRequest.ContentLength = data.Length;&lt;br /&gt;&lt;br /&gt;            Stream newStream = myRequest.GetRequestStream();&lt;br /&gt;&lt;br /&gt;            // Send the data.&lt;br /&gt;&lt;br /&gt;            newStream.Write(data, 0, data.Length);&lt;br /&gt;&lt;br /&gt;            HttpWebResponse WebResp = (HttpWebResponse)myRequest.GetResponse();&lt;br /&gt;            newStream.Close();&lt;br /&gt;        }&lt;br /&gt; &lt;br /&gt;I just had to put my asmx file on a IIS server and automatically call it from a blank asp.net page&lt;br /&gt;&lt;br /&gt;After that I put some “explorer http://server/myasp.asp” on a task scheduler to execute daily&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Arnaud&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-847201480873709805?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/847201480873709805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=847201480873709805' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/847201480873709805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/847201480873709805'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2011/07/geoserver-gwc-preseed-scripts.html' title='Geoserver GWC preseed scripts'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-7912549092709319051</id><published>2011-06-04T18:23:00.006+10:00</published><updated>2011-11-10T15:09:14.638+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='stuckincustoms'/><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='hdr'/><category scheme='http://www.blogger.com/atom/ns#' term='review'/><title type='text'>Stuck in Customs Webinar #1 Review</title><content type='html'>&lt;div style="font-size: 0.8em; line-height: 1.6em; margin: 0 0 10px 0; padding: 0;"&gt;&lt;div style="text-align: center;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-hB1huqgSM5w/TrtOUKSuGrI/AAAAAAAABA8/wv0q65g0e7E/s1600/nation_library_hdr.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="263" src="http://1.bp.blogspot.com/-hB1huqgSM5w/TrtOUKSuGrI/AAAAAAAABA8/wv0q65g0e7E/s400/nation_library_hdr.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="margin-bottom: 0pt; margin-left: 0pt; margin-right: 0pt; margin-top: 0pt;"&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-size: 100%;"&gt;This photo is the result of techniques picked up whilst attending Trey Ratcliffe's Stuck in Customs Webinar. It uses a post production method called High Dynamic Range (HDR), that uses software to merge and blend several exposures into the image you see above.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: arial; font-size: 100%;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;The webinar consisted of 9 classes spread over three weeks, with lots of homework assignments and a very active online forum. It cost $199 US to attend.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;Trey is an excellent teacher - I've bought and read a number of his publications, but the learning impact is nowhere near as good as having someone showing you in realtime.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;I have been dabbling with HDR for a few years now, but have always felt that something was missing from my images. After attending this webinar I now feel that I know the tools and techniques (and have the confidence) to really produce a polished HDR image.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;But the webinar went way beyond a simple HDR tutorial, it spent time talking about composition, business and the philosophy of photography.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;Trey and his team have set the bar very high with the preparation of the material, answering questions live during the webinar, and production of high def screencasts for download within 24 hours of the event.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;This was one of the best courses I have done and would highly recommend the next webinar and/or the DVDs produced as a result of this one.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;My only criticism is the lack of interaction between attendees during the live webinar, but I can understand why Trey wanted to reduce the "noise" so that attendees could focus on his (excellent) presentation.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial; font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: arial;"&gt;&lt;span style="font-size: 100%;"&gt;&lt;span style="border-collapse: separate; color: black; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;span style="font-family: arial; font-size: 100%; font-weight: bold;"&gt;Rating:&lt;/span&gt;&lt;span style="font-family: arial; font-size: 100%;"&gt; 5/5 stars&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: arial; font-size: 100%; font-weight: bold;"&gt;External Links:&lt;/span&gt;&lt;span style="font-family: arial; font-size: 100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/gavz/tags/hdr"&gt;http://www.flickr.com/gavz/tags/hdr&lt;/a&gt;&lt;a href="http://www.stuckincustoms.com/"&gt;http://www.stuckincustoms.com&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="margin-bottom: 0pt; margin-left: 0pt; margin-right: 0pt; margin-top: 0pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="margin-bottom: 0pt; margin-left: 0pt; margin-right: 0pt; margin-top: 0pt;"&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/gavz/5775351559/" title="Windsor Castle by gavin.jackson, on Flickr"&gt;&lt;img alt="Windsor Castle" height="709" src="http://farm6.static.flickr.com/5143/5775351559_c869fa3e2f_b.jpg" width="1024" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-7912549092709319051?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/7912549092709319051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=7912549092709319051' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7912549092709319051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7912549092709319051'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2011/06/national-library.html' title='Stuck in Customs Webinar #1 Review'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-hB1huqgSM5w/TrtOUKSuGrI/AAAAAAAABA8/wv0q65g0e7E/s72-c/nation_library_hdr.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-6924467823429679546</id><published>2011-05-02T17:14:00.008+10:00</published><updated>2011-09-20T08:28:38.486+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team building'/><category scheme='http://www.blogger.com/atom/ns#' term='fun'/><category scheme='http://www.blogger.com/atom/ns#' term='morale'/><category scheme='http://www.blogger.com/atom/ns#' term='cool wall'/><category scheme='http://www.blogger.com/atom/ns#' term='leadership'/><category scheme='http://www.blogger.com/atom/ns#' term='top gear'/><title type='text'>Seriously Uncool, Uncool, Cool, Sub-Zero</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/-bsdHzOc8PJU/Tb5jvhn6x0I/AAAAAAAAA0g/2lzWCNu5zxc/s1600/coolwall-2.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5602024654626277186" src="http://1.bp.blogspot.com/-bsdHzOc8PJU/Tb5jvhn6x0I/AAAAAAAAA0g/2lzWCNu5zxc/s400/coolwall-2.jpg" style="cursor: hand; cursor: pointer; display: block; height: 236px; margin: 0px auto 10px; text-align: center; width: 400px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I've just set up a new &lt;span style="font-style: italic;"&gt;cool wall&lt;/span&gt; at work. It's a complete copy of the famous &lt;span style="font-style: italic;"&gt;"Top Gear"&lt;/span&gt; cool wall. Back when I worked for Les Mills Asia Pacific this provided a great outlet for geeky debate - it also facilitated cross-branch interaction.&lt;br /&gt;&lt;br /&gt;More often than not, many work topics find their way onto the cool wall - such as good (or bad) software products, languages and IT companies.&lt;br /&gt;&lt;br /&gt;Here are some guidelines:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 nomination per person, per day&lt;/li&gt;&lt;li&gt;1 reclassification per item per day&lt;/li&gt;&lt;li&gt;2 or more people must vote on an item for cool wall inclusion&lt;/li&gt;&lt;li&gt;Have fun!&lt;/li&gt;&lt;/ul&gt;I'll post again in a few months time with some of the more interesting items that find their way onto the wall. Let me know how you go with your cool walls!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-6924467823429679546?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/6924467823429679546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=6924467823429679546' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6924467823429679546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6924467823429679546'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2011/05/seriously-uncool-uncool-cool-sub-zero.html' title='Seriously Uncool, Uncool, Cool, Sub-Zero'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-bsdHzOc8PJU/Tb5jvhn6x0I/AAAAAAAAA0g/2lzWCNu5zxc/s72-c/coolwall-2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-964761992734986794</id><published>2011-02-17T15:44:00.007+11:00</published><updated>2011-02-17T21:15:21.359+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wms'/><category scheme='http://www.blogger.com/atom/ns#' term='geoserver'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='geospatial'/><category scheme='http://www.blogger.com/atom/ns#' term='google maps'/><title type='text'>Overlaying wms data using google maps v3 api</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-w_Z-kwZRBuc/TVyv-ky-PHI/AAAAAAAAAzQ/cC-ThMSSEno/s1600/screen-capture-3.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/-w_Z-kwZRBuc/TVyv-ky-PHI/AAAAAAAAAzQ/cC-ThMSSEno/s400/screen-capture-3.png" alt="" id="BLOGGER_PHOTO_ID_5574523928342051954" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;WMS is a standard protocol used to request mapping data from an OGC compliant map server - two common open source implementations include mapserver and geoserver.&lt;br /&gt;&lt;br /&gt;WMS renders the tiles server side and simply sends back an image that meets the specification of the client request (eg. bounding box, styling etc). The image can comprise of point and vector data (which may be stored in a postgis database, or raster data (imagery) such as geotiff.&lt;br /&gt;&lt;br /&gt;The Google maps API does not support WMS directly, however it does support various ways of overlaying images on top of the map.&lt;br /&gt;&lt;br /&gt;I came across the following extension that allows you to overlay custom WMS layers and basemap tiles on top of a standard google map.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lyceum.massgis.state.ma.us/wiki/doku.php?id=googlemapsv3:home"&gt;http://lyceum.massgis.state.ma.us/wiki/doku.php?id=googlemapsv3:home&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here is a sample page (I refactored the code a little bit):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.jacksondogphotography.com/googlewms/"&gt;http://www.jacksondogphotography.com/googlewms/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Note that the guts of the code is in:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.jacksondogphotography.com/googlewms/map.js"&gt;http://www.jacksondogphotography.com/googlewms/map.js&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.jacksondogphotography.com/googlewms/wms.js"&gt;http://www.jacksondogphotography.com/googlewms/wms.js&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can easily add a WMS overlay by calling the loadWMS(map, baseURL, customParams) function, where:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;map&lt;/span&gt; - is an instance of Google.maps.Map&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;baseURL&lt;/span&gt; - is the base URL of your WMS server (eg geoserver)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;customParams&lt;/span&gt; - Additional WMS parameters&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;var myLatlng = new google.maps.LatLng(-27, 133);&lt;br /&gt;var myOptions = {&lt;br /&gt;zoom: 4,&lt;br /&gt;center: myLatlng,&lt;br /&gt;mapTypeId: google.maps.MapTypeId.ROADMAP&lt;br /&gt;}&lt;br /&gt;var map = new google.maps.Map(document.getElementById("map-canvas"), myOptions);&lt;br /&gt;&lt;br /&gt;var customParams = [&lt;br /&gt;"FORMAT=image/png8",&lt;br /&gt;"LAYERS=ALA:ibra_reg_shape"&lt;br /&gt;];&lt;br /&gt;&lt;br /&gt;loadWMS(map, "http://spatial.ala.org.au/geoserver/wms?", customParams);&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;The WMS overlay is the Interim Biogeographic Regionalisation of Australia (IBRA) data set, hosted on my work geoserver instance. More information about this data set can be found &lt;a href="http://www.environment.gov.au/parks/nrs/science/bioregion-framework/ibra/index.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-964761992734986794?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/964761992734986794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=964761992734986794' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/964761992734986794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/964761992734986794'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2011/02/overlaying-wms-data-using-google-maps.html' title='Overlaying wms data using google maps v3 api'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-w_Z-kwZRBuc/TVyv-ky-PHI/AAAAAAAAAzQ/cC-ThMSSEno/s72-c/screen-capture-3.png' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-3650607716826519754</id><published>2011-01-04T16:21:00.004+11:00</published><updated>2011-01-04T16:37:40.989+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='squid'/><category scheme='http://www.blogger.com/atom/ns#' term='tomcat'/><title type='text'>HTTP 500 - squid vs java.net.URL</title><content type='html'>Ran into an interesting bug today that I thought I should share with the interwebs.&lt;br /&gt;&lt;br /&gt;We have a web application that supports RESTful http requests to interact with the system.&lt;br /&gt;&lt;br /&gt;Seems to work fine using browsers/wget etc. But when trying to use java.net.URL (as used by several JUnit tests), I kept getting an http 500 (internal server) error message.&lt;br /&gt;&lt;br /&gt;Tomcat logs showed no interaction with the web server, indicating that it must be something wrong with the Squid reverse proxy server (which we have set up to cache outbound web traffic).&lt;br /&gt;&lt;br /&gt;&lt;font style="font-weight: bold;"&gt;SQUID LOGS&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;From java test harness (java.net.URL)&lt;br /&gt;1294109122.110   1175 127.0.0.1 TCP_MISS/500 280 GET http://localhost:3128/geoserver/rest/gazetteer/latlon/-35.0,145.3 - FIRST_UP_PARENT/myAccel -&lt;br /&gt;1294109146.216      0 127.0.0.1 TCP_NEGATIVE_HIT/500 306 GET http://localhost:3128/geoserver/rest/gazetteer/latlon/-35.0,145.3 - NONE/- -&lt;br /&gt;1294109191.214      0 127.0.0.1 TCP_NEGATIVE_HIT/500 306 GET http://localhost:3128/geoserver/rest/gazetteer/latlon/-35.0,145.3 - NONE/- -&lt;br /&gt;...&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Always comes back with 500 error code.&lt;br /&gt;&lt;br /&gt;From browser:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;1294109466.962   1226 127.0.0.1 TCP_MISS/200 698 GET http://localhost:3128/geoserver/rest/gazetteer/latlon/-35.0,145.3 - FIRST_UP_PARENT/myAccel application/xml&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Note that the error code is 200 (not 500).&lt;br /&gt;&lt;br /&gt;200 == HTTP OK&lt;br /&gt;500 == HTTP Internal Server Error&lt;br /&gt;&lt;br /&gt;Subsequent harness requests come back ok (once it is in the cache).&lt;br /&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;WHAT IS GOING OVER THE WIRE?&lt;/span&gt;&lt;br /&gt;So the question is, how do the http GET requests differ?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Wireshark dump (from harness):&lt;/span&gt;&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;GET /gazetteer/latlon/-35.0,145.4 HTTP/1.1&lt;br /&gt;User-Agent: Java/1.6.0_22&lt;br /&gt;Host: spatial-dev.ala.org.auAccept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2&lt;br /&gt;Connection: keep-alive&lt;br /&gt;HTTP/1.1 500 Internal Server Error&lt;br /&gt;Date: Tue, 04 Jan 2011 02:58:29 GMT&lt;br /&gt;Server: Apache-Coyote/1.1&lt;br /&gt;Age: 129&lt;br /&gt;Content-Length: 0&lt;br /&gt;X-Cache: HIT from ala-devmaps.vm.csiro.auX-Cache-Lookup: HIT from ala-devmaps.vm.csiro.au:3128Via: 1.1 ala-devmaps.vm.csiro.au:3128 (squid/2.7.STABLE5)&lt;br /&gt;Connection: close&lt;br /&gt;Content-Type: text/plain&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Wireshark dump (from browser):&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;GET /gazetteer/latlon/-35.0,145.5 HTTP/1.1&lt;br /&gt;Host: spatial-dev.ala.org.auUser-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.6) Gecko/20100625 Firefox/3.6.6&lt;br /&gt;Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8&lt;br /&gt;Accept-Language: en-us,en;q=0.5&lt;br /&gt;Accept-Encoding: gzip,deflate&lt;br /&gt;Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7&lt;br /&gt;Keep-Alive: 115&lt;br /&gt;Connection: keep-alive&lt;br /&gt;Cookie: __utma=100819395.1000872318.1288999346.1292997025.1293056871.6; __utmz=100819395.1288999346.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)&lt;br /&gt;HTTP/1.1 200 OK&lt;br /&gt;Date: Tue, 04 Jan 2011 03:04:26 GMT&lt;br /&gt;Server: Noelios-Restlet-Engine/1.0..8&lt;br /&gt;Expires: Mon, 04 Jan 2021 03:04:26 GMT&lt;br /&gt;Content-Encoding: gzip&lt;br /&gt;Content-Type: application/xml;charset=ISO-8859-1&lt;br /&gt;Content-Length: 286&lt;br /&gt;X-Cache: MISS from ala-devmaps.vm.csiro.auX-Cache-Lookup: MISS from ala-devmaps.vm.csiro.au:3128Via: 1.1 ala-devmaps.vm.csiro.au:3128 (squid/2.7.STABLE5)&lt;br /&gt;Keep-Alive: timeout=15, max=100&lt;br /&gt;Connection: Keep-Alive&lt;br /&gt;.............N.0.E.~E....W...q?.].$....N;y-2..B....,..k..mr.f...Kv:(m....}....S......4T@.$..4.7.e..R....b&gt;OK..M...B...De#.b.?.....Ph.7kt..o&lt;br /&gt;...).).....g.8 ..~.G..D..;m[..z...9...a4/...........&lt;br /&gt;!..........K-..`...\dkB/[...l.....uKKb.U...........(?...s_g...19.j..j..MW{\...........xnt....&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Note that there are additional fields set in the GET request, after a bit more investigation, this is the GET request header that you need to set for this to work properly:&lt;br /&gt;&lt;br /&gt; Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8&lt;br /&gt;&lt;br /&gt;So the following code works (note that if you drop the gzip,deflate option, you don't need the GZIPInputStream stuff):&lt;br /&gt;&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;...&lt;br /&gt;           URL url = new URL("http://spatial.ala.org.au/gazetteer/search?lon=148.866&amp;amp;lat=-36.195");&lt;br /&gt;           URLConnection connection = url.openConnection();&lt;br /&gt;           connection.setRequestProperty("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");&lt;br /&gt;           connection.setRequestProperty("Accept-Encoding", "gzip,deflate");&lt;br /&gt;           connection.setDoInput(true);&lt;br /&gt;           InputStream inStream = connection.getInputStream();&lt;br /&gt;           GZIPInputStream gis = new GZIPInputStream(inStream);&lt;br /&gt;           BufferedReader input =&lt;br /&gt;           new BufferedReader(new InputStreamReader(gis));&lt;br /&gt;           String line = "";&lt;br /&gt;           while ((line = input.readLine()) != null)&lt;br /&gt;           System.out.println(line);&lt;br /&gt;...&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-3650607716826519754?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/3650607716826519754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=3650607716826519754' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/3650607716826519754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/3650607716826519754'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2011/01/http-500-squid-vs-javaneturl.html' title='HTTP 500 - squid vs java.net.URL'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-2357367385229812098</id><published>2010-11-26T17:10:00.003+11:00</published><updated>2010-11-26T17:26:59.852+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='livescribe'/><category scheme='http://www.blogger.com/atom/ns#' term='evernote'/><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><title type='text'>Livescribe SmartPen + Evernote = awesome</title><content type='html'>For the last couple of months I have been using a Livescribe smart pen - in a nutshell, it records what you write, and can (optionally) record audio.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Using the Livescribe software, you can download your notes (and audio) to the computer. The software performs OCR on the handwriting, allowing you to search your notes. You also have the ability to play back the audio at a specific point in the notes.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The pen also has a documented API and app store (which is cute).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Evernote is a cloud based storage application that allows you to synchronise data between all of your windows, mac and ios/android devices. It also suppors search and image OCR. It has cute little browser plugins to "clip data" into Evernote and a really good client application (which runs on both Mac and Windows - unfortunately no Linux client at present).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The most recent Livescribe software update allows you to sync your Livescribe notes (both written and audio) with Evernote. I think this is a match made in heaven. Evernote really is the missing link with the smart pen - it allows you to easily add typed notes to your hand written ones (which I find handy for meeting minutes).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Anyway - amazing technology that I'm finding very useful on a day-to-day basis.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.blogger.com/www.livescribe.com"&gt;www.livescribe.com&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.blogger.com/www.evernote.com"&gt;www.evernote.com&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;object style="height: 390px; width: 640px"&gt;&lt;param name="movie" value="http://www.youtube.com/v/-Kh4Tpc9jfk?version=3"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/-Kh4Tpc9jfk?version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="640" height="390"&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-2357367385229812098?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/2357367385229812098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=2357367385229812098' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2357367385229812098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2357367385229812098'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/11/livescribe-smartpen-evernote-awesome.html' title='Livescribe SmartPen + Evernote = awesome'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-8173074897264647846</id><published>2010-10-23T20:28:00.009+11:00</published><updated>2010-10-23T21:14:46.872+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='quality assurance'/><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><category scheme='http://www.blogger.com/atom/ns#' term='selenium'/><category scheme='http://www.blogger.com/atom/ns#' term='performance testing'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Browsermob - cloud based performance testing and monitoring</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_CRJtjTE5UxI/TMK1L5OxJwI/AAAAAAAAAwQ/2tz9S8qsjzE/s1600/bugatti.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 250px;" src="http://1.bp.blogspot.com/_CRJtjTE5UxI/TMK1L5OxJwI/AAAAAAAAAwQ/2tz9S8qsjzE/s400/bugatti.jpg" alt="" id="BLOGGER_PHOTO_ID_5531182508310341378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I've recently started a new job (Java web development) - watch this space, I'll be blogging about it &lt;span style="font-weight: bold;"&gt;very &lt;/span&gt;soon - and have needed to set up some external monitoring and performance testing quickly.&lt;br /&gt;&lt;br /&gt;I've been using Selenium for functional testing for a few years now - and was excited when I came across browsermob - which allows you to use selenium scripts to perform external system monitoring and performance testing at load.&lt;br /&gt;&lt;br /&gt;It does so by spawning real firefox instances across virtual machines running inside Amazons EC2 cloud infrastructure. This allows you to use test servers located in seven countries:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Washington DC&lt;/li&gt;&lt;li&gt;SF Bay Area, CA&lt;/li&gt;&lt;li&gt;Dublin, Ireland&lt;/li&gt;&lt;li&gt;New York&lt;/li&gt;&lt;li&gt;Amsterdam&lt;/li&gt;&lt;li&gt;Singapore&lt;/li&gt;&lt;li&gt;Dallas TX&lt;/li&gt;&lt;/ul&gt;With the monitoring component, you can choose several countries to ping your site.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_CRJtjTE5UxI/TMKynTexdpI/AAAAAAAAAvo/3x89sCuIPm8/s1600/monitoring.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 202px;" src="http://3.bp.blogspot.com/_CRJtjTE5UxI/TMKynTexdpI/AAAAAAAAAvo/3x89sCuIPm8/s320/monitoring.png" alt="" id="BLOGGER_PHOTO_ID_5531179680678377106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;With the performance testing component, you choose a single country to run your tests from.&lt;br /&gt;&lt;br /&gt;There are two variety of users - Real Browser Users (RBU) and Virtual Users (VU). RBU allows you to run selenium scripts out of a real browser, VU allows you play back raw http request/response. VU has a much cheaper infrastructure cost.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRJtjTE5UxI/TMKy5H8t4mI/AAAAAAAAAvw/Hw2EKmArvJk/s1600/scheduling.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 282px;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/TMKy5H8t4mI/AAAAAAAAAvw/Hw2EKmArvJk/s320/scheduling.png" alt="" id="BLOGGER_PHOTO_ID_5531179986820391522" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Both monitoring scripts and performance scripts use the browsermob javascript api - this also provides access to the selenium api (for RBUs). The documentation, FAQs and blog articles are all very well written and extremely helpful. There is a local script verfication harness you can download to develop your scripts and test (it's pretty cool - you actually see firefox being remote controlled locally via Selenium RC). There is a mechanism to upload csv files (containing user login creds and test data), and also convert your existing selenium functional test scripts.&lt;br /&gt;&lt;br /&gt;Performance tests can be scheduled - you can pick the number of users you want, you can choose to ramp up (or down) users, or run at a constant rate. You can choose to run several test scripts during a test session (you give each script a percentage to determine how many times it gets executed).&lt;br /&gt;&lt;br /&gt;There is no facility (at present) to create predefined test scenarios for later scheduling.&lt;br /&gt;&lt;br /&gt;Test results are pretty stunning, they provide an amazing amount of data to drill down on (they also allow you to download a mysql database containing all of your test results for later analysis). If a test fails, it records the actual browser session and produces a screenshot for later viewing.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_CRJtjTE5UxI/TMKz6N9t0DI/AAAAAAAAAv4/zO1XFgCaXIA/s1600/test_results_1.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 298px; height: 320px;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/TMKz6N9t0DI/AAAAAAAAAv4/zO1XFgCaXIA/s320/test_results_1.png" alt="" id="BLOGGER_PHOTO_ID_5531181105126690866" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;All graphs have very good explanations on how to interpret the results. Although keep in mind, server side monitoring provides the other half of the picture (so make sure you have nmon/xymon/perfmon running on your servers).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_CRJtjTE5UxI/TMK0GxW8nDI/AAAAAAAAAwA/KyabbHY2sNQ/s1600/test_results_2.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 248px;" src="http://4.bp.blogspot.com/_CRJtjTE5UxI/TMK0GxW8nDI/AAAAAAAAAwA/KyabbHY2sNQ/s320/test_results_2.png" alt="" id="BLOGGER_PHOTO_ID_5531181320786189362" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_CRJtjTE5UxI/TMK0R9-msLI/AAAAAAAAAwI/FskGBQfOfDI/s1600/test_results_3.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 296px; height: 320px;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/TMK0R9-msLI/AAAAAAAAAwI/FskGBQfOfDI/s320/test_results_3.png" alt="" id="BLOGGER_PHOTO_ID_5531181513152311474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Pricing seems pretty good for what you get - a fraction of  competing commercial load testing products (and you get the infrastructure to boot). I still need to verify a few things about the amount of included cloud dollars with the company before I comment further - the marketing material simply states "ample included" :-/&lt;br /&gt;&lt;br /&gt;I don't think there is a competing technology in this league - the features are staggering, it's easy to use and the documentation is great. If you are building an externally facing website and have a requirement for stress and volume testing I would highly recommend this product.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-8173074897264647846?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/8173074897264647846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=8173074897264647846' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8173074897264647846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8173074897264647846'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/10/browsermob-cloud-based-performance.html' title='Browsermob - cloud based performance testing and monitoring'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_CRJtjTE5UxI/TMK1L5OxJwI/AAAAAAAAAwQ/2tz9S8qsjzE/s72-c/bugatti.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-9144062027289761194</id><published>2010-10-01T13:15:00.004+10:00</published><updated>2010-10-01T13:30:52.246+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='plugins'/><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Firefox plugins revisited</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_CRJtjTE5UxI/TKVUF36A-FI/AAAAAAAAAvE/sAYjSg0Nevs/s1600/firefox.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 278px; height: 320px;" src="http://3.bp.blogspot.com/_CRJtjTE5UxI/TKVUF36A-FI/AAAAAAAAAvE/sAYjSg0Nevs/s320/firefox.png" alt="" id="BLOGGER_PHOTO_ID_5522912977923143762" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;That time of year again - a new job and new computers to set up. Here is my definitive list of plugins that I can not live without!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Bookmarks/Password management:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;lastpass &lt;/span&gt;- great way of managing my online passwords! &lt;a href="https://lastpass.com/"&gt;(link)&lt;br /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;delicious bookmarks&lt;/span&gt; - hosts all of my bookmarks - this particular implementation is fantastic - it allows me to arrange my favourite tags across the top of my browser (like folders) &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/3615/"&gt;(link&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Web development:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Firebug &lt;/span&gt;- best javascript/html/web debugger - great DOM/CSS/JS inspection tools &lt;a href="http://getfirebug.com/"&gt;(link)&lt;br /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Web developer toolbar &lt;/span&gt;- heaps of useful utilities &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/60/"&gt;(link)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Misc:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;screengrab &lt;/span&gt;- grabs images of pages to use in doco &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/1146/"&gt;(link)&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;scrapbook &lt;/span&gt;- mirrors pages locally (and helps you organise them), can also perform recursive site grabs &lt;a href="http://amb.vis.ne.jp/mozilla/scrapbook/"&gt;(link)&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ad block plus &lt;/span&gt;- remove all ads! &lt;a href="http://adblockplus.org/en/"&gt;(link)&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Search:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;yubnub search plugin &lt;/span&gt;- this will save you a lot of time! &lt;a href="http://yubnub.org/documentation/describe_installation"&gt;(link)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Let me know what your favourites are!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-9144062027289761194?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/9144062027289761194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=9144062027289761194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/9144062027289761194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/9144062027289761194'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/10/firefox-plugins-revisited.html' title='Firefox plugins revisited'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_CRJtjTE5UxI/TKVUF36A-FI/AAAAAAAAAvE/sAYjSg0Nevs/s72-c/firefox.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-8078029465921079119</id><published>2010-07-02T14:42:00.008+10:00</published><updated>2010-07-02T15:00:54.170+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='winbind'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='samba'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='pam'/><title type='text'>mod_pam/winbind apache authentication</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRJtjTE5UxI/TC1vkju8eZI/AAAAAAAAAsw/l4WsK5npTmw/s1600/escher-ascending-and-descending-medium.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 162px; height: 200px;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/TC1vkju8eZI/AAAAAAAAAsw/l4WsK5npTmw/s200/escher-ascending-and-descending-medium.jpg" alt="" id="BLOGGER_PHOTO_ID_5489166194692618642" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Introduction/Pre-requisites&lt;/span&gt;&lt;br /&gt;&lt;span class="mw-headline"&gt;&lt;/span&gt; &lt;p&gt;The &lt;a href="http://gavinjnet.blogspot.com/2010/07/winbind-ntlm-authentication.html" title="Winbind NTLM Authentication configuration for squid and apache"&gt;Winbind NTLM Authentication configuration for squid and apache&lt;/a&gt; approach to AD authentication is good and all, but it does not work in IE8 over https. &lt;/p&gt;&lt;p&gt;An alternate method is to use apache mod_pam to authenticate against pam (which has been configured to authenticate against the AD controller using winbind). &lt;/p&gt;&lt;p&gt;On SLES 11 it is not installed by default, so you are going to have to build from source. &lt;/p&gt;&lt;p&gt;Ensure that samba and winbind have been installed and configured (see this &lt;a href="http://gavinjnet.blogspot.com/2010/07/winbind-ntlm-authentication.html"&gt;guide&lt;/a&gt;). &lt;/p&gt; &lt;span style="font-weight: bold;font-size:130%;" &gt;Building mod_pam from source&lt;/span&gt;&lt;br /&gt;&lt;p&gt;Download the source code from: &lt;a href="http://pam.sourceforge.net/mod_auth_pam/" class="external free" title="http://pam.sourceforge.net/mod_auth_pam/" rel="nofollow"&gt;http://pam.sourceforge.net/mod_auth_pam/&lt;/a&gt; &lt;/p&gt; &lt;pre&gt;zypper install apache2-devel&lt;br /&gt;tar -zxvf mod_auth_pam-2.0-1.1.1.tar.gz&lt;br /&gt;cd mod_auth_pam&lt;br /&gt;make&lt;br /&gt;make install&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;Now, on 64 bit SLES you need to modify the &lt;b&gt;/etc/pam.d/httpd&lt;/b&gt; file (which was created during the install process) &lt;/p&gt; &lt;pre&gt;#%PAM-1.0&lt;br /&gt;auth       required /lib64/security/pam_winbind.so try_first_pass debug&lt;br /&gt;account    required /lib64/security/pam_permit.so&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt; &lt;span style="font-weight: bold;font-size:130%;" &gt;Configuring Apache&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The build process should have added the mod_pam module to your apache installation (you can verifiy this by checking /etc/sysconfig/apache2). &lt;p&gt;You can now add the following entry to your site root configuration:&lt;br /&gt;&lt;/p&gt; &lt;pre&gt;&lt;directory srv="" www="" htdocs="" pam=""&gt; authType Basic&lt;br /&gt;AuthPAM_Enabled on&lt;br /&gt;AuthBasicAuthoritative Off&lt;br /&gt;AuthName "secure area"&lt;br /&gt;require valid-user&lt;br /&gt;AuthUserFile /dev/null&lt;/directory&gt;&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;Restart apache /etc/init.d/apache2 restart &lt;/p&gt;&lt;p&gt;Now when trying to view the &lt;b&gt;&lt;span class="external free"&gt;http://webserver/pam&lt;/span&gt;&lt;/b&gt; directory, it will prompt for a username and password that is authenticated using winbind (via pam). Pretty cool eh? &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-8078029465921079119?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/8078029465921079119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=8078029465921079119' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8078029465921079119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8078029465921079119'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/07/modpamwinbind-apache-authentication.html' title='mod_pam/winbind apache authentication'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_CRJtjTE5UxI/TC1vkju8eZI/AAAAAAAAAsw/l4WsK5npTmw/s72-c/escher-ascending-and-descending-medium.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-4872296831753952012</id><published>2010-07-02T13:10:00.008+10:00</published><updated>2010-07-02T17:13:26.617+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='winbind'/><category scheme='http://www.blogger.com/atom/ns#' term='ntlm'/><category scheme='http://www.blogger.com/atom/ns#' term='samba'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='squid'/><category scheme='http://www.blogger.com/atom/ns#' term='apache'/><title type='text'>Winbind NTLM Authentication configuration for squid and apache</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRJtjTE5UxI/TC1cgJM66iI/AAAAAAAAAso/STMYmlGjQ9g/s1600/SquarePegRoundHole.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 349px; height: 261px;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/TC1cgJM66iI/AAAAAAAAAso/STMYmlGjQ9g/s400/SquarePegRoundHole.jpg" alt="" id="BLOGGER_PHOTO_ID_5489145228130183714" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;&lt;br /&gt;Introduction&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We want squid and apache (running on SLES 11) to use Microsoft Active Directory NTLM authentication. This means that users who have logged into our windows domain will not have to enter their user credentials to use these services.&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;&lt;br /&gt;Package installation&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Install the following packages:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;samba&lt;br /&gt;samba-winbind&lt;br /&gt;apache2-mod_auth_ntlm_winbind (for apache)&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Samba Configuration&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Samba configuration (/etc/samba/smb.conf):&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;[global]&lt;br /&gt;&lt;code&gt;workgroup = LESMILLS&lt;br /&gt;passdb backend = tdbsam&lt;br /&gt;security = ADS&lt;br /&gt;realm = lesmills.net.au&lt;br /&gt;password server = fs.lesmills.net.au&lt;br /&gt;encrypt passwords = yes&lt;br /&gt;winbind separator = \\&lt;br /&gt;idmap uid = 10000-20000&lt;br /&gt;idmap gid = 10000-20000&lt;br /&gt;winbind enum users = yes&lt;br /&gt;winbind enum groups = yes&lt;br /&gt;winbind use default domain = yes&lt;br /&gt;template shell = /bin/false&lt;br /&gt;template homedir = /home/winnt/%U&lt;br /&gt;allow trusted domains = no&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Next, you need to bind the Linux host to the windows domain:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;root#  net ads join -U Administrator%password&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Modify&lt;span style="font-weight: bold;"&gt; /etc/nsswitch&lt;/span&gt; add the following line:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;passwd: files winbind&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Restart winbind and samba and you should be able to run getent passwd (you should see the AD users come back).&lt;br /&gt;&lt;br /&gt;Before modifying squid and/or apache you can test that ntlm_auth is working by typing:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;/usr/bin/ntlm_auth --username gavinj --domain=lesmills.net.au&lt;br /&gt;password:&lt;br /&gt;NT_STATUS_OK: Success (0x0)&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;This is a good sign that the system can talk to your AD server.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Squid&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Add the following lines to your /etc/squid/squid.conf:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --domain=lesmills.net.au&lt;br /&gt;auth_param ntlm children 5&lt;br /&gt;auth_param ntlm keep_alive on&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Apache&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;zypper install pam_smb&lt;br /&gt;setfacl -m u:wwwrun:rx /var/lib/samba/winbindd_privileged&lt;br /&gt;a2enmod auth_ntlm_winbind&lt;br /&gt;rcapache2 restart&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Add the following directives to your Directory entry:&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(153, 153, 153); padding: 5px; overflow: auto; font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; line-height: 14px; width: 100%;"&gt;&lt;code&gt;&amp;lt;Directory "/srv/www/htdocs/ntlm"&amp;gt;&lt;br /&gt;AuthName "NTLM Authentication thingy"&lt;br /&gt;NTLMAuth on&lt;br /&gt;NTLMAuthHelper "/usr/bin/ntlm_auth --domain=lesmills.net.au --helper-protocol=squid-2.5-ntlmssp"&lt;br /&gt;NTLMBasicAuthoritative on&lt;br /&gt;AuthType NTLM&lt;br /&gt;require valid-user&lt;br /&gt;&amp;lt;/Directory&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;Note, to check that a user belongs to a specific AD group, you can use the following entry (it took me an hour to figure out the correct DOMAIN\\\GROUP syntax).&lt;br /&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: auto; width: 100%"&gt;&lt;code&gt;AuthName &amp;quot;NTLM Authentication thingy&amp;quot;&lt;br /&gt;NTLMAuth on&lt;br /&gt;NTLMAuthHelper &amp;quot;/usr/bin/ntlm_auth --domain=lesmills.net.au --require-membership-of=LESMILLS\\\IT --helper-protocol=squid-2.5-ntlmssp&amp;quot;&lt;br /&gt;NTLMBasicAuthoritative on&lt;br /&gt;AuthType NTLM&lt;br /&gt;require valid-user&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Browser Testing&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This technique works over http under IE8 and Firefox 3.6.3 on Windows 2008 (Terminal Server).&lt;br /&gt;&lt;br /&gt;This technique does not work over https under IE 8 (get a 500 server error). It does however seem to work fine in Firefox 3.6.3.&lt;br /&gt;&lt;br /&gt;To white list ntlm servers in recent versions of Firefox (so that it doesn't ask for a username and password), you need to use &lt;span style="font-weight: bold;"&gt;about:config&lt;/span&gt; and edit the &lt;span style="font-weight: bold;"&gt;network.automatic-ntlm-auth.trusted-uris&lt;/span&gt; option (enter your webserver name).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;References&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/NTLM"&gt;http://en.wikipedia.org/wiki/NTLM&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.netnerds.net/2009/10/enable-windows-ntlm-pass-through-authentication-in-linux-based-apache/"&gt;http://blog.netnerds.net/2009/10/enable-windows-ntlm-pass-through-authentication-in-linux-based-apache/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/domain-member.html#ads-member"&gt;    http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/domain-member.html#ads-member &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-4872296831753952012?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/4872296831753952012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=4872296831753952012' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4872296831753952012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4872296831753952012'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/07/winbind-ntlm-authentication.html' title='Winbind NTLM Authentication configuration for squid and apache'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_CRJtjTE5UxI/TC1cgJM66iI/AAAAAAAAAso/STMYmlGjQ9g/s72-c/SquarePegRoundHole.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-1820936924187895419</id><published>2010-05-29T16:51:00.007+10:00</published><updated>2010-05-29T17:21:15.478+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='ebook'/><category scheme='http://www.blogger.com/atom/ns#' term='kobo'/><category scheme='http://www.blogger.com/atom/ns#' term='gadgets'/><title type='text'>Kobo - helper scripts</title><content type='html'>Here are a couple of scripts that might help you out if you are a Kobo user trying to load third party eBooks.&lt;br /&gt;&lt;br /&gt;Script 1: strip out all style data (this fixes up the margins and any font issues that you may be experiencing). Simply put the epub files you want to convert in the same directory as the script (tested on Mac OS 10.5 - but should work on all Unix variants).&lt;br /&gt;&lt;br /&gt;&lt;pre style="font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; border: 1px dashed rgb(153, 153, 153); line-height: 14px; padding: 5px; overflow: auto; width: 100%;"&gt;&lt;code&gt;#!/bin/bash&lt;br /&gt;mkdir _unpack&lt;br /&gt;#iterate over each epub in this folder&lt;br /&gt;find . -name '*.epub' -depth 1|while read epub&lt;br /&gt;do&lt;br /&gt;unzip "${epub}" -d ./_unpack&lt;br /&gt;cd ./_unpack/OEBPS&lt;br /&gt;for xhtml_file in `ls|grep xhtml`&lt;br /&gt;do&lt;br /&gt;awk '{gsub("&lt;style.*&gt;", "");print}' "${xhtml_file}" &gt; "${xhtml_file}.new"&lt;br /&gt;mv "${xhtml_file}.new" "${xhtml_file}"&lt;br /&gt;done&lt;br /&gt;cd ../&lt;br /&gt;echo `pwd`&lt;br /&gt;mv "../${epub}" "../${epub}.old"&lt;br /&gt;zip -r "../${epub}" *&lt;br /&gt;cd ../&lt;br /&gt;rm -rf _unpack&lt;br /&gt;done&lt;br /&gt;&lt;/style.*&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Script 2: strip out all style data and load a jpg image for the book cover (note that both book and jpeg must be in a sub directory for this to work).&lt;br /&gt;&lt;br /&gt;&lt;pre style="font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; border: 1px dashed rgb(153, 153, 153); line-height: 14px; padding: 5px; overflow: auto; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;find . -type d -depth 1|while read dir&lt;br /&gt;do&lt;br /&gt;cd "${dir}"&lt;br /&gt;mkdir _unpack&lt;br /&gt;#iterate over each epub in this folder&lt;br /&gt;find . -name '*.epub' -depth 1|while read epub&lt;br /&gt;do&lt;br /&gt;unzip "${epub}" -d ./_unpack&lt;br /&gt;&lt;br /&gt;cd ./_unpack/OEBPS&lt;br /&gt;for xhtml_file in `ls|grep xhtml`&lt;br /&gt;do&lt;br /&gt;awk '{gsub("&lt;style.*&gt;", "");print}' "${xhtml_file}" &gt; "${xhtml_file}.new"&lt;br /&gt;mv "${xhtml_file}.new" "${xhtml_file}"&lt;br /&gt;done&lt;br /&gt;cp ../../../title.xhtml ./&lt;br /&gt;cp ../../*.jpg ./cover.jpg&lt;br /&gt;cd ../&lt;br /&gt;echo `pwd`&lt;br /&gt;mv "../${epub}" "../${epub}.old"&lt;br /&gt;zip -r "../${epub}" *&lt;br /&gt;cd ../&lt;br /&gt;rm -rf _unpack&lt;br /&gt;done&lt;br /&gt;cd ..&lt;br /&gt;done&lt;br /&gt;&lt;/style.*&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;The working directory must have the following title.xhtml file in it:&lt;br /&gt;&lt;br /&gt;&lt;pre style="font-family: Andale Mono,Lucida Console,Monaco,fixed,monospace; color: rgb(0, 0, 0); background-color: rgb(238, 238, 238); font-size: 12px; border: 1px dashed rgb(153, 153, 153); line-height: 14px; padding: 5px; overflow: auto; width: 100%;"&gt;&lt;code&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt; &amp;lt;body&amp;gt;&lt;br /&gt;   &amp;lt;div&amp;gt;&lt;br /&gt;     &amp;lt;img class="coverimg" src="cover.jpg" style="height:100%;"/&amp;gt;&lt;br /&gt;   &amp;lt;/div&amp;gt;&lt;br /&gt; &amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-1820936924187895419?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/1820936924187895419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=1820936924187895419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1820936924187895419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1820936924187895419'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/05/kobo-helper-scripts.html' title='Kobo - helper scripts'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-8330744730703464878</id><published>2010-05-21T12:57:00.006+10:00</published><updated>2010-05-21T14:54:19.975+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ebook'/><category scheme='http://www.blogger.com/atom/ns#' term='kobo'/><category scheme='http://www.blogger.com/atom/ns#' term='gadgets'/><category scheme='http://www.blogger.com/atom/ns#' term='review'/><title type='text'>Kobo ebook reader - a love/hate relationship</title><content type='html'>Two days ago I purchased a Kobo eBook reader from Borders (Canberra, Australia).&lt;br /&gt;&lt;br /&gt;It cost AU$199.&lt;br /&gt;&lt;br /&gt;It is crazy cheap, the eInk diaply is amazing, it has a lot of technical flaws and I love it.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRJtjTE5UxI/S_X_3IVGhtI/AAAAAAAAArY/B8grWjNYnJM/s1600/kobo-ereader.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 344px;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/S_X_3IVGhtI/AAAAAAAAArY/B8grWjNYnJM/s400/kobo-ereader.jpg" alt="" id="BLOGGER_PHOTO_ID_5473562244732585682" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The reader comes with a USB cable and a quick start guide - that's about it really. The device is about the same size as a standard paperback novel (maybe a bit larger), and less than 1cm thick. It has an SD card slot (non-HC) for loading additional books (beyond the 1GB internal storage).&lt;br /&gt;&lt;br /&gt;The unit has a nice, solid feel to it - buttons are rock solid and it has a comfortable rubber back. Navigation is done using the blue button on the lower right of the unit (it is not a touch screen).&lt;br /&gt;&lt;br /&gt;It comes with 100 eBooks pre-loaded (so you can start playing with it as soon as you buy it), these are classic eBooks from the Gutenbourg project - titles that are outside of copyright. I still can't find a way to remove them from my device, however.&lt;br /&gt;&lt;br /&gt;The online store is optional - you can load ePub files and PDF files directly onto the internal storage and optional SD card. A nice touch is that the device mounts both of these for you when connected by the provided USB cable.&lt;br /&gt;&lt;br /&gt;Having said that the borders application (that comes in Windows and Mac OSX flavours), provides an ITMS-like interface that allows you to browse and purchase books online (and sync with the Kobo reader). It does not provide a facility for managing non-borders purchased books (which I think is limiting).&lt;br /&gt;&lt;br /&gt;The software also allows you to read your purchased books on your computer screen. There is also an iPhone application that allows you to purchase and read titles on your iPhone (search for "borders" in the app store, it is a free download). What makes this really cool is that it will sync your purchased books onto each platform - so in a way this is like Steam for eBooks.&lt;br /&gt;&lt;br /&gt;eBook prices seem (on average) quite reasonable - I purchased a number of novels and business books and only paid between $7-$12 for the privilege. Popular new releases appear to cost a bit more however (about $20-$26), and technical computing eBooks start looking quite expensive ($50-$60).&lt;br /&gt;&lt;br /&gt;I was unable to load technical eBooks that I purchased from Manning and O'Reilly - I'm not sure if this is a defect with the device, or a problem with the way that these publishers have created their ePub documents. The Kobo technical support was less than helpful (they seemed to think that the only way you can load books is via their software - which is wrong).&lt;br /&gt;&lt;br /&gt;PDF documents load and render well, however if you are going to read these documents for a sustained period of time you will want to zoom in and rotate the document into a landscape mode. The software allows you to do this, however the panning function should be smarter in how it paginates the document - page refreshes take 2-3 seconds and the pan operation moves the document a few lines. This is a deal-breaker for me, making pdf viewing on the device too painful.&lt;br /&gt;&lt;br /&gt;That's a lot of negative stuff, however it is very cheap, you can access your purchased books on a number of devices (including the iPad) and the eInk display is beautiful. I find the display perfect for reading novels before I go to bed, and battery life is nothing short of stunning (7000 page turns or two weeks before a recharge).&lt;br /&gt;&lt;br /&gt;I was disappointed to find that there was a lack of search and you are limited to one bookmark per book.&lt;br /&gt;&lt;br /&gt;Hopefully many of the software related problems will be fixed in firmware updates to the device - it feels that it has been rushed to market.&lt;br /&gt;&lt;br /&gt;Due to the technical flaws in the device I was tempted to sell it and purchase something else - however, I don't think there is much on the eBook market to beat it - particularly at this price range. The general lack of features I feel is good - it allows me to focus on one thing - reading. The quality of the eInk dispay and the awesome battery life means that this gadget is a keeper.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The good:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Beautiful e-ink screen&lt;/li&gt;&lt;li&gt;SD card slot&lt;/li&gt;&lt;li&gt;Price&lt;/li&gt;&lt;li&gt;Lack of features to distract you&lt;/li&gt;&lt;li&gt;Good online store, range of authors (including Australian)&lt;/li&gt;&lt;li&gt;Battery Life&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;The bad:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Bluetooth sync only works with Blackberry (you would think it would work with the iPhone).&lt;/li&gt;&lt;li&gt;Slow ...&lt;/li&gt;&lt;li&gt;Limited file support&lt;/li&gt;&lt;li&gt;Does not seem to support ePub documents produced by Manning and O'Reilly&lt;/li&gt;&lt;li&gt;Lack of features to distract you&lt;/li&gt;&lt;li&gt;Hard to navigate when reading A4 PDF files (this is where the iPad touch screen interface would come in handy).&lt;/li&gt;&lt;li&gt;No search&lt;/li&gt;&lt;li&gt;One bookmark per book&lt;/li&gt;&lt;li&gt;Customer support (or lack of)&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-8330744730703464878?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/8330744730703464878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=8330744730703464878' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8330744730703464878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8330744730703464878'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/05/kobo-ebook-reader-lovehate-relationship.html' title='Kobo ebook reader - a love/hate relationship'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_CRJtjTE5UxI/S_X_3IVGhtI/AAAAAAAAArY/B8grWjNYnJM/s72-c/kobo-ereader.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-2077916539716774597</id><published>2010-03-15T10:44:00.015+11:00</published><updated>2010-03-15T11:51:10.887+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fgs'/><category scheme='http://www.blogger.com/atom/ns#' term='openstreetmap'/><category scheme='http://www.blogger.com/atom/ns#' term='mapserver'/><title type='text'>Setting Up An OpenStreetmap Server</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRJtjTE5UxI/S52C70NTNwI/AAAAAAAAAoA/MjhsEhVZ3tc/s1600-h/state_circle.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 266px;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/S52C70NTNwI/AAAAAAAAAoA/MjhsEhVZ3tc/s400/state_circle.png" alt="" id="BLOGGER_PHOTO_ID_5448655088326489858" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:180%;"&gt;Introduction&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Recently I had a project at work to build a standalone Openstreetmap server (think of this as a locally hosted google maps server). Here are my notes on how I got it up and running (with postgis, mapserver, openlayers, Tilecache and FGS). These steps should work on most Linux distros (I got this working on Ubuntu Karmic and Centos 5.4). Note that this renders tiles for Australia only (it is of course possible to generate tiles for the complete world).&lt;br /&gt;&lt;br /&gt;Ironically, we didn't end up using this as the final mapping solution (we ended up using Openlayers against Yahoo! maps - generating georss xml for the data we wanted to overlay).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;Thanks&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Special thanks goes to Scott Penrose (&lt;a href="http://linux.dd.com.au/wiki/"&gt;home page&lt;/a&gt;) for pointing me in the right direction, and Thomas Bonfort (&lt;a href="http://trac.osgeo.org/mapserver/wiki/RenderingOsmData"&gt;toms tutorial&lt;/a&gt;) for answering my stupid questions.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;Links&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;FGS &lt;a href="http://www.maptools.org/fgs/"&gt;http://www.maptools.org/fgs/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tutorial &lt;a href="http://trac.osgeo.org/mapserver/wiki/RenderingOsmData"&gt;http://trac.osgeo.org/mapserver/wiki/RenderingOsmData&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;OpenLayers &lt;a href="http://www.openlayers.org/"&gt;http://www.openlayers.org/&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;OpenStreetMap &lt;a href="http://www.openstreetmap.org/"&gt;http://www.openstreetmap.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MapServer &lt;a href="http://mapserver.org/"&gt;http://mapserver.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tilecache &lt;a href="http://tilecache.org/"&gt;http://tilecache.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;FGS (standalone mapserver installation)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.maptools.org/fgs/"&gt;http://www.maptools.org/fgs/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Install in the default location (/opt/fgs).&lt;br /&gt;&lt;br /&gt;FGS ships with postgis (I didn't use this version)&lt;br /&gt;&lt;br /&gt;You need to initialise the database first:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;initdb -D /opt/fgs/apps/pgsql/data -L /opt/fgs/apps/pgsql/share&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;POSTGIS ETC&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Follow the installation guide here:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://trac.osgeo.org/mapserver/wiki/RenderingOsmData"&gt;http://trac.osgeo.org/mapserver/wiki/RenderingOsmData&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Note that the australia.osm.gz linked from the article does not want to load (primary key violation)&lt;br /&gt;&lt;br /&gt;I had better luck using the osm file located at &lt;a href="http://www.osmaustralia.org/"&gt;http://www.osmaustralia.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;Creating your map file&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I placed the contents of svn checkout http://mapserver-utils.googlecode.com/svn/trunk/ mapserver-utils-read-only&lt;br /&gt;into /osm/&lt;br /&gt;&lt;br /&gt;Modify the osmtemplate.map&lt;br /&gt;&lt;br /&gt;Change the extent line to be your bounding box (I removed the other extents in the file):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;EXTENT 12569721 -5410502 17711538 -1030958.0625&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Also modify the CONFIG "PROJ_LIB" _proj_lib line to point to the location of the epsg file.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;"/opt/fgs/share/proj/"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Uncomment the following line (by removing the ##&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;"+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Change the following line from (they appear twice in the template):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  PROJECTION&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;        "init=epsg:4326"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;to:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  PROJECTION&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;        "init=epsg:900913"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Coastline data should changed to (this is downloaded during the make process):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  DATA "/osm/coastlines/processed_p.shp"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Update the dbconnection file (to connect to the postresql database)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;define _db_connection "host=localhost dbname=osm user=www-data password=www-data port=5432"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;run the makefile&lt;br /&gt;&lt;br /&gt;this generates the osm-mapserver.map file&lt;br /&gt;&lt;br /&gt;Finally perform a find replace (on osm-mapserver.map) of 4326 and replace with 900913 otherwise it will not project the data correctly.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;SETTING UP AN OPENLAYERS TEST FILE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(This is very similar to the main tutorial).&lt;br /&gt;&lt;br /&gt;Create a file in /opt/fgs/www/htdocs (I called mine test.html)&lt;br /&gt;With the following content:&lt;br /&gt;&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(204, 204, 204); padding: 0px; background: rgb(240, 240, 240) url(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif) repeat scroll 0% 0%; overflow: auto; font-family: arial; font-size: 12px; width: 99%; height: auto; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; color: rgb(0, 0, 0); text-align: left; line-height: 20px;"&gt;&lt;code style="color: rgb(0, 0, 0); word-wrap: normal;"&gt; &amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;style type="text/css"&amp;gt;&lt;br /&gt; body {&lt;br /&gt;   width:100%;&lt;br /&gt;   height:100%;&lt;br /&gt;border: 0px;&lt;br /&gt;margin: 0px;&lt;br /&gt;padding: 0px;&lt;br /&gt;font:sans-serif;&lt;br /&gt;font-size:small;&lt;br /&gt;}&lt;br /&gt;#map {&lt;br /&gt;width: 800px;&lt;br /&gt;height: 600px;&lt;br /&gt;border: 1px solid black;&lt;br /&gt;padding: 0px;&lt;br /&gt;margin:0px auto;&lt;br /&gt;margin-top:30px;&lt;br /&gt;position:relative;&lt;br /&gt;}&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&amp;lt;script src="http://www.openlayers.org/api/OpenLayers.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;var lon = 16831422;&lt;br /&gt;var lat=-4012608;&lt;br /&gt;var zoom = 3;&lt;br /&gt;var map, layer;&lt;br /&gt; function init(){&lt;br /&gt;   map = new OpenLayers.Map( 'map' );&lt;br /&gt; var wms = new OpenLayers.Layer.WMS( "WMS",&lt;br /&gt;     "http://localhost/cgi-bin/mapserv?",&lt;br /&gt;     {map: '/osm/osm-mapserver.map',&lt;br /&gt; layers: 'default',&lt;br /&gt; format: 'aggpng24',&lt;br /&gt; transparent: 'off'},&lt;br /&gt;     {maxExtent: new OpenLayers.Bounds(11548635,-5889094,18604187,-597430),&lt;br /&gt;     scales: [5000,10000,25000,50000,100000,250000,500000,&lt;br /&gt;          1000000,2500000,5000000,10000000,25000000,50000000,100000000],&lt;br /&gt;     units: 'm',&lt;br /&gt;     projection:new OpenLayers.Projection("EPSG:900913"),&lt;br /&gt;     gutter:0,&lt;br /&gt;     ratio:1,&lt;br /&gt;     wrapDateLine: true,&lt;br /&gt;     isBaselayer:true,&lt;br /&gt;     singleTile:true,&lt;br /&gt;     transitionEffect:'resize'} );&lt;br /&gt;   map.addLayers([wms]);&lt;br /&gt;   if(!map.getCenter())&lt;br /&gt;     map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);&lt;br /&gt;   map.addControl(new OpenLayers.Control.Scale('scale'));&lt;br /&gt;   map.addControl(new OpenLayers.Control.Permalink('permalink'));&lt;br /&gt;   map.addControl(new OpenLayers.Control.MousePosition());&lt;br /&gt; }&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body onload="init()"&amp;gt;&lt;br /&gt;&amp;lt;div id="map"&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;div id="controls"&amp;gt;&lt;br /&gt;&amp;lt;span id="scale" style="float:left"&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;&amp;lt;a href="#" id="permalink" style="float:right"&amp;gt;lien direct&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Note the path to the mapserv cgi executable (this ships with fgs).&lt;br /&gt;Note the path to the osm.map file (/osm/osm-mapserver.map)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;Setting Up Tilecache&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This took a while to figure out, the following post helped me make sense of this process:&lt;br /&gt;&lt;br /&gt;http://n2.nabble.com/Configuration-of-MapServer-Tilecache-and-Openlayers-Together-SOLVED-td4438807.html&lt;br /&gt;&lt;br /&gt;Modify /opt/fgs/apps/tilecache-2.10/tilecache.cfg&lt;br /&gt;&lt;pre&gt;# Configuration for MC TileCache&lt;br /&gt;[cache]&lt;br /&gt;type=Disk&lt;br /&gt;base=/opt/fgs/tmp/tilecache/cache&lt;br /&gt;&lt;br /&gt;[vmap0]&lt;br /&gt;type=WMSLayer&lt;br /&gt;layers=default&lt;br /&gt;maxresolution=13780.375&lt;br /&gt;bbox=11548635,-5889094,18604187,-597430&lt;br /&gt;url=http://localhost/cgi-bin/mapserv?MAP=/osm/osm-mapserver.map&lt;br /&gt;mapfile=/osm/osm-mapserver.map&lt;br /&gt;extent_type=loose&lt;br /&gt;srs=EPSG:900913&lt;br /&gt;&lt;/pre&gt;Note that the maxresolution is a magical number it is derived from the bounding box&lt;br /&gt;max(X) - min(x) /512&lt;br /&gt;&lt;br /&gt;This number is used to help calulate the zoom levels.&lt;br /&gt;&lt;br /&gt;Next step is to create an openlayers html file that uses tilecache (this one is a gav special)&lt;br /&gt;&lt;br /&gt;&lt;pre style="border: 1px dashed rgb(204, 204, 204); padding: 0px; background: rgb(240, 240, 240) url(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif) repeat scroll 0% 0%; overflow: auto; font-family: arial; font-size: 12px; width: 99%; height: auto; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; color: rgb(0, 0, 0); text-align: left; line-height: 20px;"&gt;&lt;code style="color: rgb(0, 0, 0); word-wrap: normal;"&gt; &amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;style type="text/css"&amp;gt;&lt;br /&gt; #map {&lt;br /&gt;   width: 100%;&lt;br /&gt;   height: 99%;&lt;br /&gt;   border: 1px solid black;&lt;br /&gt; }&lt;br /&gt; body {&lt;br /&gt;  padding:0px;&lt;br /&gt;  margin:2px&lt;br /&gt; }&lt;br /&gt; #labs {&lt;br /&gt;  position:absolute;&lt;br /&gt;  bottom:15px;&lt;br /&gt;  left:7px;&lt;br /&gt;  font-size:smaller;&lt;br /&gt;  z-index: 5000;&lt;br /&gt; }&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&amp;lt;script src="http://openlayers.org/api/OpenLayers.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt; &amp;lt;!--&lt;br /&gt; var map, layer;&lt;br /&gt; function init(){&lt;br /&gt;   map = new OpenLayers.Map( $('map'), {projection: new OpenLayers.Projection("EPSG:900913"), units: 'm'});&lt;br /&gt;   layer = new OpenLayers.Layer.WMS( "VMap0",&lt;br /&gt;       "tilecache.cgi?", {layers: 'vmap0', format: 'image/png' },{isBaseLayer: true, projection: 'EPSG:900913',units: 'm', maxExtent: new OpenLayers.Bounds(11548635,-5889094,18604187,-597430), maxResolution: 13780.375} );&lt;br /&gt;   map.addLayer(layer);&lt;br /&gt;   map.addControl(new OpenLayers.Control.Permalink());&lt;br /&gt;   if (!map.getCenter()) map.zoomToMaxExtent();&lt;br /&gt; }&lt;br /&gt; // --&amp;gt;&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body onload="init()"&amp;gt;&lt;br /&gt;&amp;lt;div id="map"&amp;gt;&lt;br /&gt;&amp;lt;div id="labs"&amp;gt;From &amp;lt;a href="http://labs.metacarta.com/"&amp;gt;MetaCarta Labs&amp;lt;/a&amp;gt;.&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Note the projection, resolution and bounding box are all defined.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;Pre generating tiles using tilecache&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Once the tilecache config has been set up, you can pre-generate tiles using the tilecache_seed.py command:&lt;br /&gt;&lt;br /&gt;Note that this generates tiles for 30 zoom levels (which may take some time)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;./tilecache_seed.py vmap0 1 30 -b 11548635,-5889094,18604187,-597430&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-2077916539716774597?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/2077916539716774597/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=2077916539716774597' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2077916539716774597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2077916539716774597'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/03/setting-up-openstreetmap-server.html' title='Setting Up An OpenStreetmap Server'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_CRJtjTE5UxI/S52C70NTNwI/AAAAAAAAAoA/MjhsEhVZ3tc/s72-c/state_circle.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-8651774963932185801</id><published>2010-02-02T11:37:00.002+11:00</published><updated>2011-11-10T15:10:29.499+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><category scheme='http://www.blogger.com/atom/ns#' term='james'/><category scheme='http://www.blogger.com/atom/ns#' term='baby'/><title type='text'>Home, James</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-AmEDuoGHC4Y/TrtOpSCdRtI/AAAAAAAABBE/tj07r8FQayc/s1600/james.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="425" src="http://4.bp.blogspot.com/-AmEDuoGHC4Y/TrtOpSCdRtI/AAAAAAAABBE/tj07r8FQayc/s640/james.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Jo and I now have a baby boy - James Hugh Jackson&lt;br /&gt;&lt;br /&gt;These photos were taken at the maternity ward of Queanbeyan Hospital. James arrived at 2am on 24/1/10 weighing 3.795kg at 51 cm long.&lt;br /&gt;&lt;br /&gt;More photos are up on flickr (http://www.flickr.com/photos/gavz).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-8651774963932185801?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/8651774963932185801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=8651774963932185801' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8651774963932185801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8651774963932185801'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/02/home-james.html' title='Home, James'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-AmEDuoGHC4Y/TrtOpSCdRtI/AAAAAAAABBE/tj07r8FQayc/s72-c/james.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-795532477400315578</id><published>2010-01-12T22:04:00.005+11:00</published><updated>2010-01-12T22:14:58.297+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gis'/><category scheme='http://www.blogger.com/atom/ns#' term='openstreetmap'/><category scheme='http://www.blogger.com/atom/ns#' term='nas'/><category scheme='http://www.blogger.com/atom/ns#' term='mapping'/><category scheme='http://www.blogger.com/atom/ns#' term='openlayers'/><category scheme='http://www.blogger.com/atom/ns#' term='asterisk'/><category scheme='http://www.blogger.com/atom/ns#' term='openfiler'/><category scheme='http://www.blogger.com/atom/ns#' term='voip sip'/><title type='text'>Asterisk, GIS and NAS</title><content type='html'>Happy new year everyone! 2010 is going to be a huge year for the Jackson clan, Joanne and I are expecting a new arrival any day now, and we will both be turning the big 30!&lt;br /&gt;&lt;br /&gt;Anyways this is a technical post, so I thought I might blog about three cool technologies that I was playing around with during the Christmas period.&lt;br /&gt;&lt;br /&gt;The first is trixbox, a standalone distribution of the asterisk open source telephony software, it's a complete linux distribution (based on centos 5.4) all of the zaptel drivers come bundled (allowing us to use our existing digium isdn card right out of the box). I was really impressed, in four days I managed to migrate our entire PBX. Unlike our previous system, everything is configured via the web interface (no more manually hacking around with extensions.conf). This includes sip extensions, music on hold, digital receptionist, call queues, call transfer, call parking etc. Well worth checking out if you are considering a voip rollout.&lt;br /&gt;&lt;a href="http://www.trixbox.com/"&gt;http://www.trixbox.com&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.asterisk.org/"&gt;http://www.asterisk.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Lately I've been doing a bit of work with gis - essentially writing spatial reports for use by our business development consultants. I'm currently using an extension to postgresql called postgis to store spatial data against our customer records. This data is derived using http://nominatim.openstreetmap.org and other open sources (including freely available postcode/suburb to lat long data).&lt;br /&gt;&lt;br /&gt;Postgis allows you to write spatial queries ie give me all customers within 20km of this point matching some specific search criteria, and it's very fast to do so.&lt;br /&gt;&lt;br /&gt;I'm currently producing reports using the georss markup and overlaying these results onto openlayers (with openstreetmap). Yahoo! Maps also supports georss but it needs to be served off a public facing website (which is not ideal).&lt;br /&gt;&lt;br /&gt;Both google maps and Microsoft bing maps charge money for commercial use of their mapping services - unfortunately our budget did not stretch far enough to use these Apis. The yahoo! community guidelines are much more friendly regarding commercial use of their mapping api (allowing 5000 transactions per day from behind your firewall). Last month yahoo! also released Australian street map tiles (which is sweet).&lt;br /&gt;&lt;a href="http://www.postgis.org/"&gt;http://www.postgis.org&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.openstreetmap.org/"&gt;http://www.openstreetmap.org&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.openlayers.org/"&gt;http://www.openlayers.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Lastly I had a play around with freenas - a cut down version of freebsd that you can use to build a cheap nas. It's cool because you can run it off a USB key, it supports raid 5, allows you to run all of the popular file sharing protocols, has good event notification and is free. I built one using four old 500gb IDE hard drives (raid 5) running a upnp server that my ps3 can access my digital media off. Dead simple to set up, comes recommended.&lt;br /&gt;&lt;a href="http://www.freenas.org"&gt;http://www.freenas.org&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-795532477400315578?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/795532477400315578/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=795532477400315578' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/795532477400315578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/795532477400315578'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2010/01/asterisk-gis-and-nas.html' title='Asterisk, GIS and NAS'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-2734881221307883855</id><published>2009-11-03T16:31:00.006+11:00</published><updated>2009-11-03T16:54:50.391+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clonezilla linux backup sysadmin'/><title type='text'>Clonezilla Live USB - a really handy imaging/recovery tool</title><content type='html'>Recently we have been deploying a lot of laptops to business development managers across Australia and Asia.&lt;br /&gt;&lt;br /&gt;We have also found that we often need to rebuild these laptops - and it's starting to become a bit of a chore.&lt;br /&gt;&lt;br /&gt;We decided to have a go at using the Open Source Clonezilla imaging program.&lt;br /&gt;&lt;br /&gt;It is very similar to Norton Ghost - it allows us to boot up the computer to be imaged off a bootable CD (or USB key) and perform the backup onto a network connected Samba share (or connected USB drive).&lt;br /&gt;&lt;br /&gt;I wanted to build a restore system that our users can use in the field - by using a 32GB Sandisk thumb drive with a boot partition and a storage partition (for the restore image), I used the following howto to create an (almost) unattended install that a normal user could perform.&lt;br /&gt;&lt;br /&gt;I used the following instructions to build the Clonezilla Live image that I placed on the bootable USB partition:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://clonezilla.org/clonezilla-live/customized-clonezilla-live.php"&gt;http://clonezilla.org/clonezilla-live/customized-clonezilla-live.php&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I modified the sample custom-ocs file to mount the second partition and only provide the restore option (code below):&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;# When this script is ready, you can run&lt;br /&gt;# /opt/drbl/sbin/ocs-iso -g en_US.UTF-8 -k NONE -s -m ./custom-ocs&lt;br /&gt;# to create the iso file for CD/DVD. or&lt;br /&gt;# /opt/drbl/sbin/ocs-live-dev -g en_US.UTF-8 -k NONE -s -c -m ./custom-ocs&lt;br /&gt;# to create the zip file for USB flash drive.&lt;br /&gt;&lt;br /&gt;# Begin of the scripts:&lt;br /&gt;# Load DRBL setting and functions&lt;br /&gt;DRBL_SCRIPT_PATH="${DRBL_SCRIPT_PATH:-/opt/drbl/}"&lt;br /&gt;&lt;br /&gt;. $DRBL_SCRIPT_PATH/sbin/drbl-conf-functions&lt;br /&gt;. $DRBL_SCRIPT_PATH/conf/drbl-ocs.conf&lt;br /&gt;. $DRBL_SCRIPT_PATH/sbin/ocs-functions&lt;br /&gt;&lt;br /&gt;# load the setting for clonezilla live.&lt;br /&gt;[ -e /etc/ocs/ocs-live.conf ] &amp;amp;&amp;amp; . /etc/ocs/ocs-live.conf&lt;br /&gt;# Load language files. For English, use "en_US.UTF-8".&lt;br /&gt;ask_and_load_lang_set en_US.UTF-8&lt;br /&gt;&lt;br /&gt;### CHANGE THESE AS NEEDED ###&lt;br /&gt;img_name="2009-10-29-17-delld620"&lt;br /&gt;tgt_part=sda&lt;br /&gt;src_part=sdb2&lt;br /&gt;menu_title="Dell d620 Restore Disk"&lt;br /&gt;##############################&lt;br /&gt;&lt;br /&gt;action_restore() {&lt;br /&gt;mkdir -p $ocsroot&lt;br /&gt;if ! mountpoint $ocsroot &amp;amp;&gt;/dev/null; then&lt;br /&gt;  part_fs="$(LANG=C ocs-get-part-info /dev/$src_part filesystem)"&lt;br /&gt;  case "$part_fs" in&lt;br /&gt;    ntfs) ntfs-3g /dev/$src_part $ocsroot ;;&lt;br /&gt;    *) mount /dev/$src_part $ocsroot ;;&lt;br /&gt;  esac&lt;br /&gt;fi&lt;br /&gt;if mountpoint $ocsroot &amp;amp;&gt;/dev/null; then&lt;br /&gt;  # If you want to run it in batch mode, add option "-b" in the ocs-sr command&lt;br /&gt;  # For more options about ocs-sr, run "ocs-sr -h"&lt;br /&gt;  ocs-sr -e1 auto -e2 -c -r -j2 -p true restoredisk "$img_name" "$tgt_part"&lt;br /&gt;else&lt;br /&gt;  [ "$BOOTUP" = "color" ] &amp;amp;&amp;amp; $SETCOLOR_FAILURE&lt;br /&gt;  echo "Fail to mount /dev/$tgt_part as $ocsroot!"&lt;br /&gt;  echo "Program terminated!"&lt;br /&gt;  [ "$BOOTUP" = "color" ] &amp;amp;&amp;amp; $SETCOLOR_NORMAL&lt;br /&gt;fi&lt;br /&gt;umount $ocsroot &amp;amp;&gt;/dev/null&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;##################&lt;br /&gt;###### MAIN ######&lt;br /&gt;##################&lt;br /&gt;# Find the device and partition&lt;br /&gt;&lt;br /&gt;TMP="$(mktemp /tmp/menu.XXXXXX)"&lt;br /&gt;trap "[ -f "$TMP" ] &amp;amp;&amp;amp; rm -f $TMP" HUP INT QUIT TERM EXIT&lt;br /&gt;$DIA --backtitle "$menu_title" --title  \&lt;br /&gt;"$menu_title" --menu "$msg_choose_mode:" \&lt;br /&gt;0 0 0 \&lt;br /&gt;"Restore" "Restore the image in $src_part to $tgt_part" \&lt;br /&gt;2&gt; $TMP&lt;br /&gt;mode="$(cat $TMP)"&lt;br /&gt;[ -f "$TMP" ] &amp;amp;&amp;amp; rm -f $TMP&lt;br /&gt;&lt;br /&gt;case "$mode" in&lt;br /&gt;Restore)&lt;br /&gt;  action_restore;;&lt;br /&gt;*)&lt;br /&gt;  [ "$BOOTUP" = "color" ] &amp;amp;&amp;amp; $SETCOLOR_FAILURE&lt;br /&gt;  echo "Program terminated!"&lt;br /&gt;  [ "$BOOTUP" = "color" ] &amp;amp;&amp;amp; $SETCOLOR_NORMAL&lt;br /&gt;  exit 1&lt;br /&gt;esac&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;So now when the user boots off the USB key, they only see a single option to perform a restore off the USB key:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRJtjTE5UxI/Su_EvVp_wPI/AAAAAAAAAdM/Kbl0qjd-xxc/s1600-h/IMG_0119.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/Su_EvVp_wPI/AAAAAAAAAdM/Kbl0qjd-xxc/s320/IMG_0119.JPG" alt="" id="BLOGGER_PHOTO_ID_5399750795786698994" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-2734881221307883855?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/2734881221307883855/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=2734881221307883855' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2734881221307883855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2734881221307883855'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/11/clonezilla-live-usb-really-handy.html' title='Clonezilla Live USB - a really handy imaging/recovery tool'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_CRJtjTE5UxI/Su_EvVp_wPI/AAAAAAAAAdM/Kbl0qjd-xxc/s72-c/IMG_0119.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-6907597965797257105</id><published>2009-09-30T12:47:00.012+10:00</published><updated>2009-09-30T15:10:03.422+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jax-ws'/><category scheme='http://www.blogger.com/atom/ns#' term='soap'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Java SOAP Web Services</title><content type='html'>Recently I was required to call some remote services (written in Microsoft .net) using SOAP from Java.&lt;br /&gt;&lt;br /&gt;There is a fair amount going on in the Java Web Services space (and an amazing number of acronyms).&lt;br /&gt;&lt;br /&gt;The three primary web service implementations for the Java platform consist of:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Apache Axis&lt;/li&gt;&lt;li&gt;Sun JAX-WS and&lt;/li&gt;&lt;li&gt;Codehaus CXF (previously known as Crossfire)&lt;/li&gt;&lt;/ul&gt;I decided to use JAX-WS, which is the Sun reference implementation (which now ships standard with JDK6. For this example I'm only interested in talking to an existing web service (not creating my own), the web service in question has a published WSDL file (an xml interface specification).&lt;br /&gt;&lt;br /&gt;The first step was to generate the java stubs from the external WSDL file.&lt;br /&gt;&lt;br /&gt;This is done using the "wsimport" command.&lt;br /&gt;&lt;br /&gt;The generated files are then used by your (client) code to marshal, transmit, receive and unmarshal the SOAP calls.&lt;br /&gt;&lt;br /&gt;I was having a lot of trouble figuring out how to add data to the SOAP headers (in this case authentication details).&lt;br /&gt;&lt;br /&gt;After a day of banging my head against a brick wall I stumbled across the "&lt;span style="font-weight: bold;"&gt;-XadditionalHeaders&lt;/span&gt;" option. This really saved me - and I sincerely hope that this helps others out there!&lt;br /&gt;&lt;br /&gt;So this was the command I used to generate the web service client java code:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;wsimport -p au.net.lesmills.zenkai.education.generated -s ~/work/zenkai/trunk/zenkai/BizEducation/src/ https://servicestest.lesmills.com:444/programkitcodes.asmx?WSDL -httpproxy:proxy:8080 -extension -XadditionalHeaders&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;I then wrote the following test client to call the validate method via SOAP:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;package au.net.lesmills.zenkai.education.test;&lt;br /&gt;&lt;br /&gt;import javax.xml.bind.JAXBException;&lt;br /&gt;import javax.xml.ws.Holder;&lt;br /&gt;import au.net.lesmills.zenkai.education.generated.*;&lt;br /&gt;import com.sun.xml.internal.bind.api.JAXBRIContext;&lt;br /&gt;&lt;br /&gt;public class ProgramKitCodesTest{&lt;br /&gt;&lt;br /&gt; public static void main(String args[]) throws JAXBException{&lt;br /&gt;  &lt;br /&gt;  System.setProperty("https.proxyHost", "proxy.lesmills.net.au");&lt;br /&gt;  System.setProperty("https.proxyPort", "8080");&lt;br /&gt;  &lt;br /&gt;  System.out.println("Started");&lt;br /&gt;  &lt;br /&gt;  ProgramKitCodes pkc = new ProgramKitCodes();&lt;br /&gt;  ProgramKitCodesSoap pkcs = pkc.getProgramKitCodesSoap();&lt;br /&gt;&lt;br /&gt;  String username = "USERNAME";&lt;br /&gt;  String password = "PASSWORD"; &lt;br /&gt;  &lt;br /&gt;  ObjectFactory of = new ObjectFactory();  &lt;br /&gt;&lt;br /&gt;  AuthenticationHeader ah = of.createAuthenticationHeader();&lt;br /&gt;  JAXBRIContext jbc = (JAXBRIContext) JAXBRIContext.newInstance("au.net.lesmills.zenkai.education.generated");&lt;br /&gt;  ah.setUsername(username);&lt;br /&gt;  ah.setPassword(password);&lt;br /&gt;    &lt;br /&gt;  Holder&lt;AuthenticationHeader&gt; h = new Holder&lt;AuthenticationHeader&gt;(ah); &lt;br /&gt;&lt;br /&gt;  String kitCode = "KA35-LN0V-KG8B-0109-RPM42";&lt;br /&gt;  ValidateResult result = pkcs.validate(kitCode, h);&lt;br /&gt;  System.out.println("Completed - result is :" + &lt;br /&gt;  result.getProgram() + " " +&lt;br /&gt;  result.getQuarter() + " " +&lt;br /&gt;  result.getReleaseNo());&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Note how ProgramKitCodes is generated from the wsdl file - this provides an interface to all of the remote methods. The AuthenticationHeader JAXB object is part of the SOAP header specification (defined in the WSDL).&lt;br /&gt;&lt;br /&gt;Also, note how the above code uses a proxy server to talk to the external web services server (via ssl). No real magic here, you can use this technique in any java application.&lt;br /&gt;&lt;br /&gt;Although you won't be able to compile and test against the above SOAP implementation, I hope that this helps you get the ball rolling.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-6907597965797257105?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/6907597965797257105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=6907597965797257105' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6907597965797257105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6907597965797257105'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/09/java-soap-web-services.html' title='Java SOAP Web Services'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-9134274080057789673</id><published>2009-09-25T15:13:00.002+10:00</published><updated>2011-11-10T15:11:52.562+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='hdr'/><category scheme='http://www.blogger.com/atom/ns#' term='photoshop'/><title type='text'>HDR - another go</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-_qBwV7JpjyY/TrtO_JAKP3I/AAAAAAAABBM/PtDDCt86X7M/s1600/intrepid.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-_qBwV7JpjyY/TrtO_JAKP3I/AAAAAAAABBM/PtDDCt86X7M/s1600/intrepid.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Had another crack at HDR, three blended shots of the USS Intrepid aircraft carrier in New York (-2, 0, +2). I'll be trying out the following tutorial on the weekend: &lt;a href="http://www.stuckincustoms.com/hdr-tutorial/"&gt;http://www.stuckincustoms.com/hdr-tutorial/&lt;/a&gt; it discusses how you can blend in a nicely exposed shot after the initial tone mapping so that it doesn't look too artificial.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-9134274080057789673?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/9134274080057789673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=9134274080057789673' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/9134274080057789673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/9134274080057789673'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/09/hdr-another-go.html' title='HDR - another go'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-_qBwV7JpjyY/TrtO_JAKP3I/AAAAAAAABBM/PtDDCt86X7M/s72-c/intrepid.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-775283796759954703</id><published>2009-08-27T11:29:00.003+10:00</published><updated>2009-08-27T11:50:55.535+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='US'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><title type='text'>New York - last post before going home</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;b&gt;Day 21 (Wednesday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;At breakfast today Gav decided to have smoked kippers for breakfast. Thanks to my super pregnancy smelling senses I was put off my breakfast almost immediately. I almost considered taking my breakfast in our room.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After breakfast we walked up to the castle and had a look around. Pretty standard castle stuff; towers, dungeons, etc. Gav was happy as this castle had been attacked several times in its life.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After a day of walking around the castle we headed back to the hotel, had some dinner and went to bed and waited to be woken by the canons again.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Tomorrow we keep heading south, back to Manchester.  Lets hope Gav doesn’t fall down the stairs again!!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;Day 22 (Thursday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Drove to Manchester today via Hadrians Wall. Weather was a little aweful though, if it was not raining it was blowing a gale. It took me forever to brush all the knots out of my hair, lucky I cut it short before we left.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;The rest of the drive was pretty good, no real traffic issues (very unlike Britain!!)&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;That night we had dinner with Gav’s Aunty Ann, Uncle John, Cousin Chris and his 2 children Charlotte and Emily.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;Day 23 (Friday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;We leave Manchester and head back to Wadhurst today to catch up with my cousin Robert before flying to NYC.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;The drive was a nightmare, it should have taken 3 ½ hours, having experienced UK traffic we thought it would probably be more like 4 hours.  We left Manchester at 11am after meeting Chris’ partner Sarah.  &lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;45 minutes into the drive we hit traffic, there was a music festival in Wales. It took us 3 hours to get what should have taken about an hour. Luckily we stops off at a Marks &amp;amp; Spencers and picked up sandwiches, so we had lunch whilst in traffic. &lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Once we got past the turn off to North Wales the traffic was clear.  Our new ETA in Wadhurst was 6:00 and not 3:30.  However, I was now a little concerned as the plan would be we would be on the London motorways before people would be finished work.  &lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Once we hit the M25, one of the only roads to Wadhurst we were again stuck in traffic, due to road works North of London, which hade also been complicated with a few accidents. Once we got past that it was smooth sailing for about 30 minutes we hit traffic again which was another 1 ½ hour wait!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;We finally made it to Wadhurst 3 hours later than our anticipated arrival time…bloody UK traffic. Gav was lucky I did all 7 ½ hours of driving, as he gets so frustrated in the stop start traffic.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;Day 24 (Saturday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Leaving UK to go to NYC today. After the traffic yesterday I was keen to make sure we got to the airport in time; as we had to take the M25 again!! We made with heaps of time to spare, however traffic was staring to build!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;We got to the airport after dropping the car off with 1 ½ hour before check in opened. So we got some coffee and cake and relaxed for a little while. We checked in to the flight and dropped the luggage, the assistant had personality plus.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;We headed around to lounge to grab some lunch and a shower, Sue’s house was packed and I thought it would be easier to wait!! At the lounge reception I was told that we have been upgraded to Premium Economy, yippee extra leg room.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After a bit of waiting we headed to the gate not realizing it was so far away. After a short run, we made it to the gate with 2 minutes to spare!! We were then told at the gate that we had been upgraded again. When we got on the plane we realized that it was Business Class. We rule!!!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;However after a lovely salmon starter and a confit duck for mains the baby was not too happy. I ended up sick for the rest of the trip and only felt better about 1 hour before landing.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;As I was so sleepy, we had a late night the day before and we now had a new time difference I had to make a deal with Gav that I would just smile and nod and not talk when coming through immigration and customs.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;We safely made it to our hotel and went straight to bed.  Looking forward to having a look around and getting home!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;Day 25 (Sunday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Today was our first full day in New York; the weather was hot and humid. So we decided to go for a walk around, but first breakfast. We headed into the city to find something to eat and came across a small diner where we had French toast and pancakes.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;We then headed into Times Square, as it was still early it was nowhere near as busy as it was later on. After a bit of a wonder around we headed down to Central Park and had a walk around. After raining on and off for a little the humidity went through the roof so we decided to go and grab some lunch.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After lunch we had a snooze as I was exhausted!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;By the time I was awake it was almost dinner time, so we decided to head out to find some dinner. We walked back down to Time Square and had dinner at Planet Hollywood before heading in for the night.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;Day 26 (Monday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;The weather fined up today, in fact we got sun burnt!! We got a 3 day bus tour ticket today which will take us around to all the main sights.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Today we opted to go over to the Statue of Liberty and Ellis Island. We headed down early to hopefully miss all the lines! We did, we were through security on the ferry in 20 minutes.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After about an hour around the Statue of Liberty we headed over to Ellis Island. They only let a certain number of people up each day and we were not quick enough!! Oh well, the lift was out so you would have had to climb all the stairs. I am a little averse to stairs these days.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Ellis Island was where all US immigrants were process prior to being allowed entry. They were a little nicer than the Australians, when they can to the Quarantine Station in Manly.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After a very big day we headed back to the hotel for the evening. We picked up a pizza from a deli we ate at the day before. Gav went for one that had 7 toppings, including broccoli.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;Day 27 (Tuesday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;We jumped back on the bus this morning and decided to head up the Empire State Building. Again I insisted on going up early and we managed to get straight up. After a spin around the viewing platform we headed to ground zero.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;We then headed to Pier 17 for lunch and picked up some discount theatre tickets. We had lunch in a nice restaurant that overlooked the Brooklyn Bridge. &lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After a slow bus ride back to the hotel we had a rest and had a quick shower before heading off to see Phantom of the Opera. We had a fancy meal at McDonalds before heading to the theatre.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Our seats were not the best but at 40% off they were OK. After the theatre we headed back to the hotel however stopped at the dinner next door to the hotel. It is know for the best cheesecake in New York, so we had too. It was good!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;Day 28 (Wednesday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Today we headed to the American Museum of Natural History, it was good to be in air conditioning. My goodness they have so much stuff on all 5 floors.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After seeing the Dinasours we had a quick 2 hour spin through the rest of the exhibits. We jumped back on the bus after lunch and headed down through Harlem. On the way back downtown and got off a Central Park; Gav wanted to go to the Apple Centre. After refusing to give me his wallet I had to chaperone the visit!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;That evening we headed up 30 Rock (the GE building) and watched the sun set over NYC. After having a bit of a wander around we headed to the entrance on 50&lt;sup&gt;th&lt;/sup&gt;. As we came around the corner there were 2 guys telling us to cross the road as they we filming a movie, however, as we were going up we were able to keep going down. When we got down to the entrance we could see they were filming a scene for ’30 Rock’ the TV series (Gav and I are fans). We are now looking forward to catching the new series and pointing out to everyone the scene that we saw being made!!! Hopefully it is not cut out…&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;On the way back we got more cheesecake, we are going to make the most of our gym memberships when we get back!!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Tomorrow is the last day of our trip, I am feeling both sad but glad to be going home!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;Day 29 (Thursday)&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Today we will walk to the Intrepid Sea, Air and Space Meuseum.  &lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;As our flight does not leave until 7:30, and we have been told it will take about an hour to get to the airport and then 2 more to clear security!! We need to be leaving the city at about 2ish to be sure, plus to give Qantas plenty of time to upgrade us!! We are thinking we will take a town car, cost only slightly more than a cab but is a million time cleaner.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-775283796759954703?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/775283796759954703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=775283796759954703' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/775283796759954703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/775283796759954703'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/08/new-york-last-post-before-going-home.html' title='New York - last post before going home'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-6750102610120889211</id><published>2009-08-20T05:25:00.002+10:00</published><updated>2009-08-20T05:37:08.566+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scotland'/><category scheme='http://www.blogger.com/atom/ns#' term='UK'/><category scheme='http://www.blogger.com/atom/ns#' term='Edinburgh'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><title type='text'>Edinburgh</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;b&gt;Day 20 (Tuesday)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;We start heading south now as this is our last week in the UK, my how the time has flown!!&lt;span style=""&gt;  &lt;/span&gt;We are off to Edinburgh today, about 3 hours away from Loch Ness.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;We decided to go Inverness on the way through, which is North of where we were.&lt;span style=""&gt;  &lt;/span&gt;Gav needed a doggy magnet of Loch Ness.&lt;span style=""&gt;  &lt;/span&gt;After tracking down the visitor centre we went in and got a magnet along with our first purchase for the baby, a Heilan’ coo t-shirt (you need you Scottish accent to get it).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;We then headed down to Edinburgh.&lt;span style=""&gt;  &lt;/span&gt;About an hour into our trip we heard on the radio that there was an accident that had closed the motorway in the direction we were heading just north of Perth.&lt;span style=""&gt;  &lt;/span&gt;So our options were to head back up to Aberdeen (about an hour back in the other direction then head south again) or inland to Fort Williams and then South.&lt;span style=""&gt;  &lt;/span&gt;We opted to head inland and then south, this was now a 4 hour trip from where we were.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;On the bright side as we were driving we passed through Lochaber.&lt;span style=""&gt;  &lt;/span&gt;A few Christmas’ ago Gav and I got Gav’s parents a block of land in the Lochaber Highland Estates, &lt;a href="http://www.lochaberhighlandestates.com/"&gt;http://www.lochaberhighlandestates.com/&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;We then drove right pass the area where the block is, we were unable to stop due the traffic, a lot of people had been diverted and we were on single carriage way.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;We eventually made it through to Edinburgh although upset the GPS several times as we were unable to make most of the turns due to road works.&lt;span style=""&gt;  &lt;/span&gt;After dinner we walked up to the castle, the lines were massive for the Tattoo.&lt;span style=""&gt;  &lt;/span&gt;There were some scalpers there, Gav was talking to them about tickets, as usual I spoiled all the fun.&lt;span style=""&gt;  &lt;/span&gt;I was not willing to pay double for tickets.&lt;span style=""&gt;  &lt;/span&gt;Plus we were exhausted from our 6 hour drive.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;As I was about to doze of listening to sounds of the bag pipes in the back ground they fired the canons.&lt;span style=""&gt;  &lt;/span&gt;We both almost leapt out of bed and Gav almost broke my hand when he squeezed it!!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;b&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;b&gt;Day 21 (Wednesday)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;At breakfast today Gav decided to have smoked kippers for breakfast.&lt;span style=""&gt;  &lt;/span&gt;Thanks to my super pregnancy smelling senses I was put off my breakfast almost immediately.&lt;span style=""&gt;  &lt;/span&gt;I almost considered taking my breakfast in our room.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;After breakfast we walked up to the castle and had a look around.&lt;span style=""&gt;  &lt;/span&gt;Pretty standard castle stuff; towers, dungeons, etc.&lt;span style=""&gt;  &lt;/span&gt;Gav was happy as this castle had been attacked several times in its life.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;After a day of walking around the castle we headed back to the hotel, had some dinner and went to bed and waited to be woken by the canons again.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span lang="EN-US"&gt;Tomorrow we keep heading south, back to Manchester.&lt;span style=""&gt;  &lt;/span&gt;Lets hope Gav doesn’t fall down the stairs again!!!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-6750102610120889211?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/6750102610120889211/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=6750102610120889211' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6750102610120889211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6750102610120889211'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/08/edinburgh.html' title='Edinburgh'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-5566926693010009487</id><published>2009-08-18T03:36:00.004+10:00</published><updated>2009-08-18T03:42:08.194+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scotland'/><category scheme='http://www.blogger.com/atom/ns#' term='UK'/><category scheme='http://www.blogger.com/atom/ns#' term='England'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><title type='text'>UK Trip - the next 10 days</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Day 11 (Sunday)&lt;/span&gt;&lt;br /&gt;We left Karen today and started heading North.  First stop was in Wales at Tintern Abbey.  It is ruined however is still in good condition.  Gav took so many photo’s it will be months by the time any make it online.  I had to drag him kicking and screaming back to the car!!&lt;br /&gt;&lt;br /&gt;We then drove to Bourton on the Water in the Cotswolds, http://www.bourtoninfo.com/.  Looks nothing like the pictures on the website, it was packed with tourists and there was a million kids in the water, which is only about 20cm deep and bloody cold!!!&lt;br /&gt;&lt;br /&gt;We walked past this lovely B&amp;amp;B, The Dial (http://www.dialhousehotel.com).  As we did not have anywhere to stay the night we thought we would see if they had a room.  They did!!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 12 (Monday)&lt;/span&gt;&lt;br /&gt;Today we headed off to Gav’s aunt and uncles in Sale, Manchester.&lt;br /&gt;&lt;br /&gt;On the way we went to the Cotswold Falconry centre and was lucky enough to see their flying show.  I was told Gav needs a faster lens!!  We saw on of their owls, I have forgotten which one it was. Two Kites, but not native, American I think, and a vulture that was adverse to flying, gee I should take notes!!! &lt;br /&gt;&lt;br /&gt;However, I do remember the Turkey Vultures and the American red Eagle ,… I think.  You all can just look at the photos when Gav puts them up and figure it out yourself.&lt;br /&gt;&lt;br /&gt;We then drove up to Manchester.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 13 (Tuesday)&lt;/span&gt;&lt;br /&gt;We went for a day trip to Liverpool, what a hole!!!&lt;br /&gt;&lt;br /&gt;The drive through was just boarded up house and business after another! We jumped on the tour bus when we got in and did the circuit of the sites in 40 minutes.  We got off at x Wharf and had some lunch&lt;br /&gt;&lt;br /&gt;We then jumped back on the bus and went to the Liverpool Cathedral.  It is a stunning building.  We paid to go up the tower which involved, catching a lift up to the 4th floor, climbing a flight of stairs to the 5th floor, catch the second lift to the 10th floor and finally climbing 4 flights of stairs in the bell tower to the viewing platform at the top of the tallest spire.&lt;br /&gt;&lt;br /&gt;We then headed back to the car after being Beatles out and headed home.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 14 (Wednesday)&lt;/span&gt;&lt;br /&gt;After a frantic past 2 weeks we decided to have a partial day off,  So we slept in and took it easy for the morning.&lt;br /&gt;&lt;br /&gt;Gav’s  Uncle John took us into Manchester, we had a brief visit to the Manchester Museum of Industry, the Air and Space Museum, along with a brief walk around the area. &lt;br /&gt;&lt;br /&gt;We then headed back to Sale for lunch in a pub by the canal.  I had a great yorshire pudding wrap with roast lamb inside, yummy!!!  We then had a nice relaxing afternoon.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 15 (Thursday)&lt;/span&gt;&lt;br /&gt;Today we went with Ann and John to visit Gav’s Great Aunty Bea in North Wales.  We had a lovely lunch before heading over to Conwy town for a walk around and a bit of shopping.  Did not go up in the castle or walk the town wall, as we had a 96 year old and a pregnant woman!!&lt;br /&gt;&lt;br /&gt;On the way back home we visited the city of Chester, which is an old Roman settlement.  The fort wall is mainly still intact and you can walk along most of it.  The town also has a large number of old Tudor buildings.&lt;br /&gt;&lt;br /&gt;We headed back to the pub for dinner before getting a good nights sleep for our big drive to Glasgow.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 16 (Friday)&lt;/span&gt;&lt;br /&gt;Today we headed off to Glasgow after Gav fell down the stairs and sprained his ankle!!  Lucky Ann is a nurse.  This meant that I had to drive; he could have just asked nicely if he was sick of driving!!&lt;br /&gt;&lt;br /&gt;As it was a big day of driving we planned to drive straight through. We hit a bit of rain on the way thought, which is kind of mandatory for Scotland I think.  As we drove through the Lakes District the scenery definitely changed to rolling mountains.  We were keeping an eye out for the welcome to Scotland sign, but next thing we knew we were in Glasgow, must have been small!!&lt;br /&gt;&lt;br /&gt;On the way Gav decided to try an application on the iPhone where you speak the query and it googles the answer to find the hotel, the Glasgow Pond Hotel.  After several goes the iPhone application misheard him several times and gave him pages of black gay porn.&lt;br /&gt;&lt;br /&gt;It was bucketing down in Glasgow so we decided to head straight to the hotel, plus it was a long drive for a pregnant woman!!    So we decided to catch up on some of the travel diary and Gav is only adding to the photo’s.  So we had a nice snooze before heading to the bar for a drink and to contemplate dinner.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 17 (Saturday)&lt;/span&gt;&lt;br /&gt;We left Glasgow to continue our trip North, we were booked in to stay at a hotel in Kilmelford (just south of Oban) – food:  average, accommodation: below average -  keep driving. We spent the rest of the day going for a walk in the (very small) village and enjoying a few drinks at the pub (fortunately they had free wifi – I am amazed at how many open wirelesss networks there are in the UK …). Cut the trip in half but in hindsight, we probably should have pushed on.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 18 (Sunday)&lt;/span&gt;&lt;br /&gt;We continued north today to the Isle of Skye, I am amazed we even made it after all the stops to take photos (more photo’s for the album).  We did not book any accommodation before hand so plodded along with our fingers crossed.&lt;br /&gt;&lt;br /&gt;The drive was beautiful, although death defying at times.  Most of the roads on the idle are single lane with passing places, complicated by sheep grazing on or by the road!!&lt;br /&gt;&lt;br /&gt;On the way into Portree, the main town of the isle, we stopped at a few places to see if they had rooms available.  The only room we could find was one with the shower right next to the bed.  At the Information Centre I picked a leaflet for a lovely B&amp;amp;B just outside of town.  We tried calling but no answer. &lt;br /&gt;&lt;br /&gt;We decided to keep going north to see what we could find.  After driving for about 20 minutes and all we saw were huge mountains and lots of sheep, although the signs said cows!!  We tried the B&amp;amp;B one more time and just as luck would have it they had just received a cancellation.  So we headed back to Portree.&lt;br /&gt;&lt;br /&gt;The B&amp;amp;B is in an old farm house with our room overlooking the sea back to Portree, http://www.peinmorehouse.co.uk/b_and_b.htm. Our room in the bottom on the right, with a picture of the bathroom just to the left of that, we did not want to leave and considered living there!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 19 (Monday)&lt;/span&gt;&lt;br /&gt;We both shed a little tear as we left Peinmore House and headed south to the otter sanctuary.  The drive was 7 miles on single lane road with a cliff off to one side!! &lt;br /&gt;&lt;br /&gt;We almost got bogged as Gav pulled to far over to let another car pass.  All that was going through my mind was gee Gav is going to have to push.  All that was going through Gav’s mind was gee Jo is going to have to push.  There is equal opportunity for you!!!&lt;br /&gt;&lt;br /&gt;At the sanctuary we saw a lot of seals swimming and sunning, well trying on the beach.&lt;br /&gt;&lt;br /&gt;We then headed down and caught the ferry over to the mainland; all of a stones throw away!!  We then headed inland to Loch Ness and stayed in Foyers at a B&amp;amp;B with a room that overlooks the loch.&lt;br /&gt;&lt;br /&gt;We spent the afternoon in the sitting room overlooking the loch enjoying a beverage.  I also got to see a fight jet flying past, keeping Nessy under control I think.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 20 (Tuesday)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Pre-emptive post - we leave for Ediburgh tomorrow.&lt;/span&gt;&lt;br /&gt;We start heading south now as this is our last week in the UK, my how the time has flown!!  We are off to Edinburgh today, about 3 hours away from Loch Ness.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-5566926693010009487?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/5566926693010009487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=5566926693010009487' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/5566926693010009487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/5566926693010009487'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/08/uk-trip-next-10-days.html' title='UK Trip - the next 10 days'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-7369326688297198508</id><published>2009-08-12T00:48:00.003+10:00</published><updated>2009-08-12T00:59:43.208+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UK'/><category scheme='http://www.blogger.com/atom/ns#' term='England'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><title type='text'>UK Trip - the first 10 days</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Day 1&lt;/span&gt;&lt;br /&gt;Trip started well, we were packed and at the airport with plenty of time to spare!!  Luckily as our flight was cancelled, we managed to get an earlier flight.&lt;br /&gt;&lt;br /&gt;We were not as lucky as our Thailand trip, the plane was packed, and we were at the very end of the plane!!  Managed to get a bit of sleep before we got to Bangkok, and a lot more before London.&lt;br /&gt;&lt;br /&gt;Customs let us through, pheww, although from what I have heard they will just let anyone in.  Case in point!!!&lt;br /&gt;&lt;br /&gt;From here on in there is what really happened in italics, and the censored version!!!&lt;br /&gt;&lt;br /&gt;We caught the underground to Paddington and managed to find our hotel.  We were not able to check-in as it was only 9 am so we decided to go and find some caffeine.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;We went for coffee scowling at each other due to lack of sleep.  Argued about whether it was important to get coffee or look for a sim card first.  The pregnant woman won and got coffee.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We then headed to Hyde Park and walked around a very small portion.  We visited the Princess Diana Memorial Fountain.  On our way back to the hotel it started to rain and we got very wet, even though we had an umbrella!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;We decided to go and walk around Hyde Park, however after a juice and coffee I needed a bathroom.  Managed to find some toilets next to some lovely fountains that would distract Gav so I could sit on a park bench.  Lasted only about 20 minutes before we moved on.  Gav wanted to go the long way; I wanted to go the short way!!  I won!!  Saw fountains and deck chairs and a water ponds and green grass, oh my.  Started to get our second wind and we were being a little nicer, but now I was hungry must have lunch!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Gav: lunch was good, they definitely know their bacon and egg rolls in the UK!&lt;br /&gt;&lt;br /&gt;We were able to check into the hotel after lunch and got some sleep before we headed out in evening to met up with Gene and Ana. &lt;br /&gt;&lt;br /&gt;That evening we went to Notting Hill with Gene and Ana.  Gene told Gav about the squirrels in Hyde Park. We headed back to the hotel via Hyde Park and saw about 3 squirrels.  Picked up fish and Chips for dinner and went back to the hotel to eat.  Ate dinner and then went to bed for some well deserved sleep.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Bloody squirrels how many photo’s does he need.  Doesn’t he know I am hungry now!!!  Ah food and sleep, my most favorite things!!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 2&lt;/span&gt;&lt;br /&gt;We had a full day around London today, so we decided to hop on one of the tourist buses. We hopped off at the Tower of London and decided to have a look around there.  We spent almost 3 hours going around.  We got to see the crown jewels and a really good display on Henry the VIII armor, you could see him getting fatter through out the years.  One of the perks of being king I suppose!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;For a man that loves his sleep what the hell was he doing up at 5am!!!  He is also not very quiet when he is moving around.  Had to wait 2 hours for breakfast to start, which gave me plenty of time to sit and scowl at him.  Hopefully soon we get used to the time difference!!  Convinced him that the bus was going to be easier than walking, so we buy our bus ticket however as the bus is 20 minutes away Gav decides we are going to walk!!  I do not want to walk too much it wears me out.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We get to Hyde park, about 2 blocks from the hotel and find the bus about to leave from there, so we jump on at that stop instead!!  I enjoy sitting and seeing the sights.  We get off at the Tower and have a look around, why do castles have so many stairs??&lt;br /&gt;&lt;br /&gt;As we leave the Tower, there are so many tourist starting to come through, lucky we got in early!!  We jump back on the bus and head back to Hyde Park as I am starting to get very worn out, and it is almost time to go and collect the car.&lt;br /&gt;&lt;br /&gt;One of the few perks of Gav getting up early is we manage to miss the crowds at the tower, not sure how much of a perk that is though at the moment!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;The tour bus is packed and is getting so stuffy!!   We argue about getting off to look at Buckingham Palace, however I just want food now!!  We catch the bus through to a stop where on the map is a Hard Rock Café; Gav can get a shirt he must be up for that!!  Bugger cannot find it; both of us are getting crankier by the moment.  Gav yells and I cry finally find sandwiches and I get to eat.  We have ice cream to make it all better.  I think I am going to have a lot of ice cream on this trip!!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After a late lunch we head back to get our luggages (must be a new European word!!)  and head off to Heathrow to pick up the car.  Being pregnant gets us a free upgrade to a Peugeot 308 and free Sat Nav. Considering how I can work it to upgrade our seats on the flight now.  We head off to find Sue and Steve with our trusty sat nav in German, Bugger have to change the language.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Lets just say there was a lot more arguing, I am trying to change the Sat Nav to English and reading the signs to tell Gav where to go.  Gav finally gets the shits pulls over changes the sat nav and heads off, at least I did have us going in the right direction.  Pull over at a rest stop and have dinner before heading off again.  Takes us about 2 hours to get to Sue and Steve’s, mainly due to traffic.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We made it through and played nice until bedtime!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 3&lt;/span&gt;&lt;br /&gt;Following Steve’s expert advice we headed off to Bodiam Castle.  The castle was built in 1385; it was both a castle and a manor house for Sir Edward Dalyngrigge and his wife.  As they were use to the Manor House style of living they extensively landscaped the grounds to make it more visually appealing!!&lt;br /&gt;&lt;br /&gt;A lot of time and money has been spent preserving the castle and you are able to walk up to the top of 2 of its corner towers and the 2 centre towers in the front and back wall.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Feeling a little more refreshed, although Gav was up early again this morning, at least this time I could send him into another room.   We set off to Bodiam castle, which was very pretty, however after climbing 2 of the towers I was thirsty, hungry and sleepy.  Let Gav go around and take more photos while I sat and watched.  We then headed down to the café for lunch and scones.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We then drove through to Hastings and walked along the beach and around the amusement parks.  We then drove up to the castle, of which most has been lost due to erosion and town planning.&lt;br /&gt;&lt;br /&gt;We were hoping to come back home via Battle however as it was raining and I was getting tired we went straight home.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;After arguing about where to park and how Gav was driving, we sat on the beach sulking.  We agreed to be nicer to each other and went and got ice cream.  Gav then wanted to walk up the MOUNTAIN to the castle.  As I was already sleep walking I declined.  We headed back to the car to drive back to Sue and Steve’s.  In the route back we ended up at the castle, so we decided to get out and have a look, in the rain!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;When we got back to Sue and Steve’s we walked up the shop and picked up some dinner, and the Sue and Steve were away camping with their girls.  Got back after being told I was walking too slow and went to bed for a snooze.  Got up at 11 and warmed up some soup made up with Gav and went back to bed.  We will get used to this time difference I am sure!!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 4&lt;/span&gt;&lt;br /&gt;We caught up with Frena and Andrew for lunch today!!  We caught the train into the London and managed to get the underground to Canary Wharf where they live.&lt;br /&gt;&lt;br /&gt;We had a fantastic lunch at a pub called The Gun on the river Thames.  The weather was so good I got sun burnt.&lt;br /&gt;&lt;br /&gt;We were then going to catch the train to Westminster and have an up close look at Westminster Abbey and Buckingham Palace, however the line was closed due to signal works. Instead we go off at London Bridge and walked around there, before heading back to Sue and Steve’s.&lt;br /&gt;&lt;br /&gt;I was keen to go through to Westminster, however, not up for much more walking.  This upset Gav.  After a brief walk around London Bridge and some ice cream we headed back to Sue and Steve’s.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 5&lt;/span&gt;&lt;br /&gt;We are finally running on UK time!!  So hopefully no more Italic events…&lt;br /&gt;&lt;br /&gt;Today we head into Windsor and visit Windsor castle.  Windsor Castle is a beautiful castle at the top of a hill, not a pregnant woman friendly location.  The walk around the castle takes you through the State Apartments, where the Queen holds most of her functions when she is in town.  It is such a show of the wealth and power that the Monarchy has and had at one point in time.  Many of the responsibilities and power has now been taken away by the parliament.&lt;br /&gt;&lt;br /&gt;They had a fantastic display of fine bone china.  Of course my expensive taste, I liked the oldest china there.  We also were able to look around St George’s Chapel, where Charles and Camellia were blessed following their civil ceremony.&lt;br /&gt;&lt;br /&gt;We had lunch at a pub just outside the gates, as I was getting very hungry.  We then went to find a place where we could recharge our sim card.  We then got lost heading back to the car.  We eventually found our way back only to find 2 men clamping the car as we had over stayed by 15 minutes.  125 pounds later we were able to head off to Hever Castle.&lt;br /&gt;&lt;br /&gt;There was yelling and sulking followed by scones and ice cream!!&lt;br /&gt;&lt;br /&gt;We visited Hever Castle on the way back home, which was the birthplace and home of Anne Boleyn, Henry the VIII third wife.  She was beheaded because she was suspected of cheating on Henry.&lt;br /&gt;&lt;br /&gt;As the castle has been a home up until fairly recently it has been kept in very good condition.  We even got to stand in the room that Henry the VIII once slept in.&lt;br /&gt;&lt;br /&gt;Sue cooked us a roast chicken for dinner that night with Yorkshire puddings.  Gav had one too many beers .&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 6&lt;/span&gt;&lt;br /&gt;As Gav had a little too much to drink the night before it was my turn to drive today.  We left Sue and Steve and headed over to Karen in Swindon, going via Portsmouth on the way.&lt;br /&gt;&lt;br /&gt;Portsmouth is one of the main ports for the Royal Navy and houses the Royal Navy Museum.  The museum has a number of ships in dock.  As it was school holidays the town was packed, we had to queue and wait 30 minutes for a parking space to become available, we took this time to eat lunch in the car.&lt;br /&gt;&lt;br /&gt;Gav and I were able to go onto HMS Victory an old steam and sail powered war ship.  Gav was a little disappointed as the ship had never fired a shot in anger, the size and power of the ship at the time was enough.&lt;br /&gt;&lt;br /&gt;We also walked around d HMS Warrior, an 1860 ship on which Nelson was shot whilst fighting the French.  The ship was very stuffy inside!!  There was also not much room between the floor and the ceiling, they were so short back then!!!&lt;br /&gt;&lt;br /&gt;The Mary Rose was also in the dock, currently being treated so it can go on display.  The Mary Rose was King Henry VIII’s favorite ship and was sunk by they think the French.  As the ship was under water, obviously, you get the opposite to what happens on land.  The wood and most natural fibers survive and the metals erode. In the museum you are able to touch some of the relics from the ship.  Gav and I were able to smell 500 year old tar and handle part of the anchor rope and arrow.&lt;br /&gt;&lt;br /&gt; We then headed off to Swindon.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 7&lt;/span&gt;&lt;br /&gt;We headed off into Bath today and visited to the Roman Baths and Bath Abbey. &lt;br /&gt;&lt;br /&gt;It took us about 2 hours to get around the baths, and we did not stop and listen to every thing on the audio tour.  We also looked at Bath Abbey after lunch.&lt;br /&gt;&lt;br /&gt;We then headed to Averbey, which has a stone circle similar to Stonehenge.  You are able to go right up to the stones.  We arrived at about 2:45, however parking after 3:00 was only 3 pounds, so we slowly had an ice-cream before paying to park!!&lt;br /&gt;&lt;br /&gt;The circle is just massive and you are walking through paddocks that have sheep and cows grazing, luck we wore our walking boots!!  As it had been raining it was also very muddy!!  We had to wash our boots off when we got back as they were filthy!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 8&lt;/span&gt;&lt;br /&gt;We went into Oxford today after spending the morning relaxing at Karen’s in the sun.  By the time we got to Oxford it was pouring!!  We picked up a map and planned out what we wanted to see, all of which was either closed or not taking any more people on their tours!!&lt;br /&gt;&lt;br /&gt;We sulked in a pub with a beer/lemonade and hot chips.&lt;br /&gt;&lt;br /&gt;We then decided to go and check out the castle quickly before we left.  We paid our 1 pound to walk on to the mound that was thrown up for the castle.  Gav was a little disappointed, it has a view of the tree that was growing half way up.&lt;br /&gt;&lt;br /&gt;We then headed to Cheltenham and had dinner with Amelia and Alistair.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 9&lt;/span&gt;&lt;br /&gt;After spending the night in Cheltenham we headed home via Wales.&lt;br /&gt;&lt;br /&gt;We headed off to Cardiff and stopped in Monmouth and Caerleon on the way.  Monmouth has the only surviving example of a fortified gate bridge in Britain, or so the guidebook says.&lt;br /&gt;&lt;br /&gt;We then headed to Caerleon, which has a fully excavated 2nd century Roman Amphitheatre, baths and part of the fort wall remaining.  After having lunch at the amphitheatre in the sun we headed off to Cardiff.&lt;br /&gt;&lt;br /&gt;We hit the most horrific traffic on the way to Cardiff, 2 sets of road works taking the motorway from 3 lanes down to 1, with a breakdown to complicate things!!  By the time we got into Cardiff we were buggered.  Found carparking very close to the castle though so decided to head in.  We spent about an hour and a half looking around the castle.&lt;br /&gt;&lt;br /&gt;There was a falconer in the castle that was displaying an European Eagle Owl, a massive bird!!!&lt;br /&gt;&lt;br /&gt;We then headed back through all the road works back to Swindon. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Day 10&lt;/span&gt;&lt;br /&gt;We went to Cheddar Gorge today, it is where cheddar cheese is made (well the English Cheddar at least).  Gav made me pack my walking boots, I had no idea why!  I was picturing cheese making, ice cream, cream teas, etc.  I later find out Gav was picturing what we actually attempted to do, walking!!!&lt;br /&gt;&lt;br /&gt;After walking up 276 stairs to get to the top of the Gorge and then climbing another 3 stories to get up into the observation tower to see over the trees someone was too tired to walk the 3 miles around the gorge.  We headed back down the 276 stairs and had ice cream instead!&lt;br /&gt;&lt;br /&gt;We then drove up through the gorge and headed off to Stonehenge.&lt;br /&gt;&lt;br /&gt;There was so much traffic on the way to Stonehenge.  We eventually made it there.  Although it is one of those things you have to go and see to say you have, it is and awesome sight.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-7369326688297198508?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/7369326688297198508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=7369326688297198508' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7369326688297198508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7369326688297198508'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/08/uk-trip-first-10-days.html' title='UK Trip - the first 10 days'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-6888925970092777957</id><published>2009-07-07T08:40:00.009+10:00</published><updated>2009-07-07T17:21:24.777+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='health'/><category scheme='http://www.blogger.com/atom/ns#' term='rsi'/><category scheme='http://www.blogger.com/atom/ns#' term='kinesis'/><category scheme='http://www.blogger.com/atom/ns#' term='workrave'/><title type='text'>Repetitive strain injury - a very real problem for IT professionals</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_CRJtjTE5UxI/SlKFvve2g-I/AAAAAAAAAaE/aWPV7ysTIyA/s1600-h/workrave.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_CRJtjTE5UxI/SlKFvve2g-I/AAAAAAAAAaE/aWPV7ysTIyA/s320/workrave.png" alt="" id="BLOGGER_PHOTO_ID_5355489962143155170" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Working in IT, I spend many hours in front of a computer. Lately I have been getting severe pain in my right shoulder, neck and shoulders. Most experts I have spoken to has attributed the pain to using the mouse with my right hand, which I find surprising. It is apparent that repetitive strain injury (RSI) is a very real occupational health and safety issue in our profession.&lt;br /&gt;&lt;br /&gt;Unfortunately whenever I try using a mouse with my left hand it seems to take me twice as long to get things done - it feels totally awkward.&lt;br /&gt;&lt;br /&gt;I decided to try something a bit different, I had heard about special timers you can get that force you to take regular breaks from using the keyboard and mouse. I ended up installing an application called &lt;a href="http://www.workrave.org/"&gt;workrave&lt;/a&gt; (which is an open source utility available for Linux and Windows).&lt;br /&gt;&lt;br /&gt;I have configured it to force me to take a micro-break every 10 minutes (of continual typing), and take a ten minute break every 1 hour. You can also set it up to enforce a daily limit (which I disabled).&lt;br /&gt;&lt;br /&gt;When a break is scheduled to start, it pops up a window letting you know that a break is about to start (at which point you can choose to postpone the break, or skip it entirely - which can be optionally disabled).&lt;br /&gt;&lt;br /&gt;When a 10 minute break starts it pops up a series of exercises that you can do to stretch your wrists, arms, neck and shoulders (it also provides exercises for your eyes).&lt;br /&gt;&lt;br /&gt;You can tell that a real geek wrote it - it provides statistics detailing the number (and types) of breaks you take during the day, how many times you skip (or postpone) your breaks.&lt;br /&gt;&lt;br /&gt;In addition to this it also has a network enabled mode that keeps track of keyboard time on multiple computers.&lt;br /&gt;&lt;br /&gt;I found the timers to be quite bright too, it actively monitors the keyboard and mouse usage and backs out the timers during natural breaks (so it doesn't keep bugging you to take breaks when you don't need to.&lt;br /&gt;&lt;br /&gt;Finally a friend of mine has insisted that I try using a &lt;a href="http://www.kinesis-ergo.com/"&gt;Kinesis Ergo keyboard&lt;/a&gt;, my tying rate is probably down to about half speed at the moment but I'll give it a week and see if I see any improvement.&lt;br /&gt;&lt;br /&gt;Let me know what you are using/doing to combat RSI.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_CRJtjTE5UxI/SlKGT-g1MAI/AAAAAAAAAaM/CrJK76K7GcI/s1600-h/kinesis.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 197px;" src="http://1.bp.blogspot.com/_CRJtjTE5UxI/SlKGT-g1MAI/AAAAAAAAAaM/CrJK76K7GcI/s320/kinesis.jpg" alt="" id="BLOGGER_PHOTO_ID_5355490584653279234" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-6888925970092777957?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/6888925970092777957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=6888925970092777957' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6888925970092777957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6888925970092777957'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/07/repetitive-strain-injury-very-real.html' title='Repetitive strain injury - a very real problem for IT professionals'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_CRJtjTE5UxI/SlKFvve2g-I/AAAAAAAAAaE/aWPV7ysTIyA/s72-c/workrave.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-1485349837067577097</id><published>2009-05-21T16:02:00.004+10:00</published><updated>2009-05-21T16:25:05.010+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='monitoring'/><title type='text'>Commands of the day: Terminator, tail and awstats</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_CRJtjTE5UxI/ShTwSFgln0I/AAAAAAAAAXM/Elks0fbth5Q/s1600-h/terminator.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 400px; height: 245px;" src="http://4.bp.blogspot.com/_CRJtjTE5UxI/ShTwSFgln0I/AAAAAAAAAXM/Elks0fbth5Q/s400/terminator.jpg" alt="" id="BLOGGER_PHOTO_ID_5338155651848052546" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;apt-get install terminator&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It's a wrapper around gnome terminal that allows you to split your terminal both horizontally and vertically. What makes this supercool is that you can have multiple tabs with different terminal layouts.&lt;br /&gt;&lt;br /&gt;This is particularly handy when you are performing code debugging and monitoring of multiple log files.&lt;br /&gt;&lt;br /&gt;Also, another tip that I recently learned was that you can use the unix command &lt;span style="font-weight: bold;"&gt;tail -f&lt;/span&gt; with multiple log files - as logs are generated, the source filename is clearly displayed in the tail output.&lt;br /&gt;&lt;br /&gt;Finally, I've been playing around with generating web server statistics for our apache tomcat webserver - the two that I like are &lt;a href="http://www.mrunix.net/webalizer/"&gt;&lt;span style="font-weight: bold;"&gt;webalizer&lt;/span&gt;&lt;/a&gt; and &lt;a href="http://awstats.sourceforge.net/"&gt;&lt;span style="font-weight: bold;"&gt;awstats&lt;/span&gt;&lt;/a&gt;. Webalizer is pretty easy to set up and use, I came across a good howto on setting up awstats on Ubuntu &lt;a href="http://www.debuntu.org/2006/04/21/33-how-to-setting-up-awstats-with-apache-2-on-debianubuntu/"&gt;here&lt;/a&gt;. Both have their pros and cons, however I feel that awstats looks more polished and provides some really in-depth details covering things like average visitor duration and site entry and exit points.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-1485349837067577097?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/1485349837067577097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=1485349837067577097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1485349837067577097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1485349837067577097'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/05/commands-of-day-terminator-tail-and.html' title='Commands of the day: Terminator, tail and awstats'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_CRJtjTE5UxI/ShTwSFgln0I/AAAAAAAAAXM/Elks0fbth5Q/s72-c/terminator.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-6481327886302595134</id><published>2009-05-20T18:43:00.003+10:00</published><updated>2009-05-21T16:02:29.120+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dslr'/><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='dogs'/><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>Jackson Dog Photography</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt;&lt;a href="http://www.flickr.com/photos/gavz/2137332350/" title="photo sharing"&gt;&lt;img src="http://farm3.static.flickr.com/2397/2137332350_ed2e96f9d6_m.jpg" alt="" style="border: 2px solid rgb(0, 0, 0);" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="margin-top: 0px;font-size:0;" &gt;&lt;a href="http://www.flickr.com/photos/gavz/2137332350/"&gt;My Dog&lt;/a&gt;&lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/gavz/"&gt;gavin.jackson&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;I've decided to start up a small business (in my spare time), specializing in dog photography. The website is &lt;a href="http://www.jacksondogphotography.com/"&gt;http://www.jacksondogphotography.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The rationale goes like this: I would like to indulge my passion as an amateur photographer, but I don't want to do it full time, I'm not overly interested in shooting weddings, don't have the confidence for stock photography or human portraits.&lt;br /&gt;&lt;br /&gt;I do like dogs however, and I think my target market likes dogs too - I think it would be interesting to meet other dog lovers and provide them with some good quality photos of their best friend. I also want my customers to own the digital images (both the RAW digital negatives, and the post produced JPEG images). This allows people to get as many prints as they want (eg by developing them at Domain or Harvey Norman) with no strings attached.&lt;br /&gt;&lt;br /&gt;With low start up costs, it also struck me as a low-risk way of finding out how to effectively run a small business. From what I can tell all I need to do is register my business with the NSW Department of Commerce, purchase public liability insurance, start up a website, come up with a marketing strategy, keep good records of sales (for tax time), and create&lt;span style="font-weight: bold;"&gt; raving&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;fans&lt;/span&gt; of my product ...&lt;br /&gt;&lt;br /&gt;I'm not actively marketing the company at present. I am however taking bookings, so let me know if you would like me to &lt;span style="font-style: italic;"&gt;shoot your dog&lt;/span&gt; (or feel free to pass my details on to friends). My upcoming availability and rates are available via the web site.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-6481327886302595134?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/6481327886302595134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=6481327886302595134' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6481327886302595134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6481327886302595134'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/05/jackson-dog-photography.html' title='Jackson Dog Photography'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2397/2137332350_ed2e96f9d6_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-4653158334377679551</id><published>2009-04-05T10:30:00.006+10:00</published><updated>2009-04-05T11:05:46.315+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spacewalk'/><category scheme='http://www.blogger.com/atom/ns#' term='splunk'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='omnifind'/><title type='text'>Cool free stuff: Splunk, Spacewalk, Citrix Xen Server, Omnifind Yahoo Edition</title><content type='html'>It never ceases to amaze me how much good free tech there is out there (admittedly many of the products I'll be discussing here have expensive paid-for versions, however for a small business, most of these products meet our needs perfectly - and I'm sure you will find them worth adding to your toolbox.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.splunk.com"&gt;Splunk&lt;/a&gt; - google for log analysis (free version allows you to throw 500mb of data at it on a daily basis). I'm still trying to get my head around this product - looks pretty amazing from my limited use of the tool - allows you to index logs (and other data) from multiple sources, and allows you to easily search, create reports and build alerts. Unfortunately I think the price tag is a bit out of our price range (I think it starts from $8000 US), however I'm sure that this is a bargain compared to CA Unicenter or Tivoli for larger enterprises. For basic web server log analysis (specifically for Apache Tomcat) I have been happily using &lt;a href="http://www.webalizer.org"&gt;Webalizer&lt;/a&gt; for the last week. Nice and basic, comes recommended.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.citrix.com/English/ps2/products/feature.asp?contentID=1686939"&gt;Citrix Xen Server&lt;/a&gt; - Enterprise grade virtualisation solution - make sure you evaluate this one, supports iSCSI targets, has a centralised admin console for your citrix xen servers, has support for dynamic instance migration (with shared fibre channel or iSCSI storage). The free version represents exceptional value for money, the nice thing about this product is that it works on commodity "beige" hardware - whereas ESX has a limited range of supported hardware platforms (and drivers).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.redhat.com/spacewalk/"&gt;Spacewalk&lt;/a&gt; - this is the open source version of RHN Satellite server - we have it running with Centos 5.2, all our servers register with this service and patches are pulled down from the web into spacewalk "channels" and pushed out to our registered servers. I believe it also supports the Solaris package management system (and Fedora of course). Centos contains the same packages (and more importantly, security updates) as Redhat Enterprise Linux (minus the $300US price tag). The packages are build directly from the RHEL source RPMs. We have also registered an EPEL "Extra Packages for Enterprise Linux" channel for unsupported packages (think "Universe" for Redhat based distros).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://omnifind.ibm.yahoo.net/"&gt;Omnifind Yahoo Edition &lt;/a&gt;- free search utility - functionally this is very similar to the Google Mini Search appliance (which I purchased and used in a previous job) - it supports mounted SMB partitions and performs web crawling of local intranet sites - supports adding keywords (so that specific search results bubble to the top and synonyms). The search syntax does not appear to be as sophisticated as the Google appliance, however it supports indexing the same content types and the free version allows you to index 500,000 documents (from memory we paid google $15k AU for this privilege). The more money you pay, the more documents you can index and security controls are introduced.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-4653158334377679551?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/4653158334377679551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=4653158334377679551' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4653158334377679551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4653158334377679551'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/04/cool-free-stuff-splunk-spacewalk-citrix.html' title='Cool free stuff: Splunk, Spacewalk, Citrix Xen Server, Omnifind Yahoo Edition'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-4806113498923324833</id><published>2009-03-13T11:58:00.009+11:00</published><updated>2009-03-13T12:18:32.033+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='performance testing'/><title type='text'>Command(s) of the day</title><content type='html'>We were busy yesterday looking into some performance issues with our mail server - I was lucky enough to learn some new Linux commands (these all work on Ubuntu Intrepid, however iotop does not work on RHEL 5.2).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;iotop&lt;/span&gt; - allows you to see which processes are performing the most reads and writes to disk.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_CRJtjTE5UxI/Sbmzb0TMvkI/AAAAAAAAAWY/lzStp9XbvV4/s1600-h/iotop.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 282px;" src="http://3.bp.blogspot.com/_CRJtjTE5UxI/Sbmzb0TMvkI/AAAAAAAAAWY/lzStp9XbvV4/s400/iotop.png" alt="" id="BLOGGER_PHOTO_ID_5312474525937221186" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;iptraf&lt;/span&gt; - allows you to see (in real time) who is talking to your box (sort of a lightweight ncurses version of ethereal).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_CRJtjTE5UxI/Sbmzlk37hlI/AAAAAAAAAWg/ZcGzcP0_PT8/s1600-h/iptraf.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 290px;" src="http://1.bp.blogspot.com/_CRJtjTE5UxI/Sbmzlk37hlI/AAAAAAAAAWg/ZcGzcP0_PT8/s400/iptraf.png" alt="" id="BLOGGER_PHOTO_ID_5312474693595006546" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;dstat&lt;/span&gt; - combines iostat, vmstat and ifstat into a sweet package that gives you a good idea of cpu, disk io and network traffic volumes on your hosts (colour coded so you can pick up trends).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_CRJtjTE5UxI/SbmzxF2Q8jI/AAAAAAAAAWo/U1pQfZhlHJk/s1600-h/dstat.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 290px;" src="http://4.bp.blogspot.com/_CRJtjTE5UxI/SbmzxF2Q8jI/AAAAAAAAAWo/U1pQfZhlHJk/s400/dstat.png" alt="" id="BLOGGER_PHOTO_ID_5312474891424952882" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-4806113498923324833?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/4806113498923324833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=4806113498923324833' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4806113498923324833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4806113498923324833'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/03/commands-of-day.html' title='Command(s) of the day'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_CRJtjTE5UxI/Sbmzb0TMvkI/AAAAAAAAAWY/lzStp9XbvV4/s72-c/iotop.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-7393080785541376793</id><published>2009-02-26T20:21:00.002+11:00</published><updated>2009-02-26T20:23:44.074+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tuross head'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><category scheme='http://www.blogger.com/atom/ns#' term='fishing'/><title type='text'>Gone Fishing</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt;&lt;a href="http://www.flickr.com/photos/gavz/3303477636/" title="photo sharing"&gt;&lt;img src="http://farm4.static.flickr.com/3400/3303477636_0befdca6c2_m.jpg" alt="" style="border: 2px solid rgb(0, 0, 0);" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="margin-top: 0px;font-size:0;" &gt;&lt;a href="http://www.flickr.com/photos/gavz/3303477636/"&gt;Golden sky&lt;/a&gt;&lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/gavz/"&gt;gavin.jackson&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;Spent the last weekend fishing with my father in law Rik at Tuross Head, South Coast NSW. Had a great time - I now know how to connect a hook to a line, bait the hook, cast the line and reel a fish in. Caught Brim, Snapper, Flathead, King George Whiting and a Leather Jacket.&lt;br /&gt;&lt;br /&gt;See more photos &lt;a href="http://www.flickr.com/photos/gavz/sets/72157614458176010/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-7393080785541376793?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/7393080785541376793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=7393080785541376793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7393080785541376793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7393080785541376793'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/02/gone-fishing.html' title='Gone Fishing'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm4.static.flickr.com/3400/3303477636_0befdca6c2_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-2684549866490023337</id><published>2009-01-25T21:03:00.002+11:00</published><updated>2009-01-25T21:10:06.884+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lca'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='tasmania'/><category scheme='http://www.blogger.com/atom/ns#' term='lca2009'/><category scheme='http://www.blogger.com/atom/ns#' term='hobart'/><title type='text'>LCA Hobart 2009</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt;&lt;a href="http://www.flickr.com/photos/gavz/3223780246/" title="photo sharing"&gt;&lt;img src="http://farm4.static.flickr.com/3313/3223780246_bb37de8329_m.jpg" alt="" style="border: 2px solid rgb(0, 0, 0);" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="margin-top: 0px;font-size:0;" &gt;&lt;a href="http://www.flickr.com/photos/gavz/3223780246/"&gt;Franklin Wharf&lt;/a&gt;&lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/gavz/"&gt;gavin.jackson&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;Just returned from LCA 2009, held at the University of Tasmania in Hobart. Conference was great as usual, was a good opportunity to try out my brand new Sony Alpha 700 DSLR.&lt;br /&gt;&lt;br /&gt;Was also a great opportunity to catch up with Luke Manhood at one of the best steak places I have ever eaten at (the Ball and Chain on Salamanca place).&lt;br /&gt;&lt;br /&gt;The next conference venue has also been announced, it will be held in Wellington, NZ - might be time to drop in and see Tim and Smgt!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/gavz/sets/72157612919779229/"&gt;http://www.flickr.com/photos/gavz/sets/72157612919779229/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.ballandchain.com.au/"&gt;&lt;br /&gt;http://www.ballandchain.com.au/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.penguinsvisiting.org.nz/"&gt;&lt;br /&gt;http://www.penguinsvisiting.org.nz/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-2684549866490023337?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/2684549866490023337/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=2684549866490023337' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2684549866490023337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2684549866490023337'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2009/01/lca-hobart-2009.html' title='LCA Hobart 2009'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm4.static.flickr.com/3313/3223780246_bb37de8329_t.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-8581282532573623212</id><published>2008-12-21T18:33:00.002+11:00</published><updated>2008-12-21T19:30:31.295+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='zimbra'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='opennms'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='dirvish'/><category scheme='http://www.blogger.com/atom/ns#' term='asterisk'/><category scheme='http://www.blogger.com/atom/ns#' term='cacti'/><category scheme='http://www.blogger.com/atom/ns#' term='voip sip'/><title type='text'>Latest projects</title><content type='html'>Well, the last few months has been pretty interesting at work - started my new job at Les Mills Asia Pacific (&lt;a href="http://www.lesmills.com.au"&gt;http://www.lesmills.com.au&lt;/a&gt;), don't panic - I'm still in IT!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Asterisk&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;First project involced setting up an Asterisk server for a call center (using a Digium &lt;a href="http://www.digium.com/en/products/digital/te120p.php"&gt;TE-120P&lt;/a&gt; card to interface with an ISDN PRI connection). We used some pretty nifty features, including setting up a primary menu system that routes calls into incoming call queues (that agents are subsribed to), most of the configuration was done using the AsteriskGUI web interface (the remainder performed by hacking the individual config files. I found the freely available &lt;a href="http://www.asteriskdocs.org/"&gt;Asterisk: The Future of Telephony&lt;/a&gt; book very useful. We use a combination of &lt;a href="http://www.snom.com/sv/products/snom-300-voip-phone/"&gt;Snom300&lt;/a&gt; and &lt;a href="http://www.snom.com/sv/products/snom-360-voip-phone/"&gt;Snom360&lt;/a&gt; VOIP handsets throughout the organisation (in conjunction with switches that support power over ethernet)&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;Dirvish, Backup Exec and Lacie Big4&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Second project involved ensuring that all of the corporate servers are backed up properly - ended up using dirvish for the Unix servers and Symantec Backup Exec for our primary domain controller. Offsite backup is performed using rsync to a Lacie Bigger Disk Extreme (at least until our Lacie Big 4s arrive - these are cool becuase they support RAID 5, and user replaceable drive modules).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Cacti and Opennms&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;While setting up the backup system, I thought I had better set up some monitoring software - I first ran with cacti (which supports snmLatsp monitoring), unfortunately cati does not support alerting (out of the box), so I ended up setting up Opennms which does provide alerting facilities (and some pretty sweet network autodiscovery facilities). Fry riends of mine have had a lot of success with Nagios - I didn't get a chance to fully evaluate it, but it did look very promising.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Zimbra&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Most recent project was setting up a groupware server (supporting email, calendar, contacts - among other things) - we selected Zimbra with the Outlook connector and Mobile options. Zimbra has one of the best Ajax webmail interfaces I have used (which rivals gmail), it also ships with the Lucene serach engine and Verity html conversion tool (that allowews you to view common attachments as html).&lt;br /&gt;&lt;br /&gt;If our business requirements did not include Microsoft Outlook and mobile device integration, I'm sure we could have happily used the open source zimbra offering. I must admit, being able to sync my iPhone's calendar and email (via ssl) to work is pretty neat (and keeps the CEO happy).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Links:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Asterisk: &lt;a href="http://www.asterisk.org"&gt;http://www.asterisk.org&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Dirvish: &lt;a href="http://www.dirvish.org"&gt;http://www.dirvish.org&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Lacie Big4 Quadra: &lt;a href="http://www.lacie.com/au/products/product.htm?pid=11113"&gt;http://www.lacie.com/au/products/product.htm?pid=11113&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Cacti: &lt;a href="http://www.cacti.net"&gt;http://www.cacti.net&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Opennms: &lt;a href="http://www.opennms.org"&gt;http://www.opennms.org&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Zimbra: &lt;a href="http://www.zimbra.com/"&gt;http://www.zimbra.com/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-8581282532573623212?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/8581282532573623212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=8581282532573623212' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8581282532573623212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8581282532573623212'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/12/latest-projects.html' title='Latest projects'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-4349811281558000092</id><published>2008-10-11T08:17:00.003+11:00</published><updated>2008-10-11T08:40:35.624+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='gps'/><category scheme='http://www.blogger.com/atom/ns#' term='gadgets'/><category scheme='http://www.blogger.com/atom/ns#' term='geocaching'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><title type='text'>Geocaching on the iPhone</title><content type='html'>Well, the current state of geocaching apps for the iPhone is a bit thin on the ground at the moment. From what I can tell there are two contenders (both offering very different feature sets):&lt;br /&gt;&lt;br /&gt;Geopher Lite ($2.49AU the first geocaching application) - this was the first geocaching application released for the iPhone, it allows you to search for nearby caches based on your current gps co-ordinates.&lt;br /&gt;&lt;a href="http://geopherlite.blogspot.com/"&gt;&lt;br /&gt;http://geopherlite.blogspot.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;iGeocacher ($17.99AU the one I ended up buying) - allows you to upload gpx files to perform paperless caching, does not seem to support dynamic (online) searches for nearby caches from geocaching.com - this means you need to set up your quick queries and perform a data load in advance, however it also means that you do not need 3G or wireless Internet access when you are out on the road.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ayefon.com/geo/index.cfm"&gt;http://www.ayefon.com/geo/index.cfm&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;Geofinder ($1.19AU) - simply lists the nearby caches in safari.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.whatsoniphone.com/node/2551"&gt;http://www.whatsoniphone.com/node/2551&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Looks like geocaching.com are ramping up to release an official geocaching app for the iPhone (at a price of $9.95US). However, it will not support the load of gpx files (which for me is the most important feature of a geocaching application).&lt;br /&gt;&lt;a href="http://forums.groundspeak.com/GC/index.php?s=465d64e0a32c3583d6d1674a5cb54a22&amp;amp;showtopic=204713&amp;amp;st=0&amp;amp;p=3654012&amp;amp;#entry3654012"&gt;&lt;br /&gt;http://forums.groundspeak.com/GC/index.php?s=465d64e0a32c3583d6d1674a5cb54a22&amp;amp;showtopic=204713&amp;amp;st=0&amp;amp;p=3654012&amp;amp;#entry3654012&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I'm sure that we will see more over the next few months!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-4349811281558000092?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/4349811281558000092/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=4349811281558000092' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4349811281558000092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4349811281558000092'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/10/geocaching-on-iphone.html' title='Geocaching on the iPhone'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-8215403812764021273</id><published>2008-09-04T13:05:00.006+10:00</published><updated>2008-09-11T10:28:58.879+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='freeware'/><title type='text'>Top 10 Windows Applications (free)</title><content type='html'>Well, I've spent the last 12 months working on a Windows box (doing Unix development). In the last 12 months I have found a few freeware apps I could not live without - they are now part of my standard deployment toolkit.&lt;br /&gt;&lt;br /&gt;I'm a bit of a windows &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;gumby&lt;/span&gt;, but I've found that with the right tools you can start making yourself feel more at home ...&lt;br /&gt;&lt;br /&gt;1. &lt;span style="font-weight: bold;"&gt;Putty&lt;/span&gt; (including pageant) - ssh client software for Windows (pageant is great for caching your private keys).&lt;br /&gt;2. &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Winscp&lt;/span&gt;&lt;/span&gt; - secure copy tool for windows (uses the aforementioned cached keys in pageant).&lt;br /&gt;3. &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;gnuWin32&lt;/span&gt;&lt;/span&gt; - give you heaps of standard &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;unix&lt;/span&gt; utilities for use in the windows shell (no more cursing when you type ls, or try using tab completion!).&lt;br /&gt;4. &lt;span style="font-weight: bold;"&gt;Password Safe&lt;/span&gt; - Application written by Bruce &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Schneir&lt;/span&gt; for managing your passwords/&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;passphrases&lt;/span&gt;&lt;br /&gt;5. &lt;span style="font-weight: bold;"&gt;Virtual Dimension&lt;/span&gt; - Virtual desktops for windows!&lt;br /&gt;6. &lt;span style="font-weight: bold;"&gt;7Zip&lt;/span&gt; - Open Source &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;winzip&lt;/span&gt; replacement&lt;br /&gt;7. &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Rocketdock&lt;/span&gt;&lt;/span&gt; - Mac &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;OSX&lt;/span&gt;-like Application launcher for windows!&lt;br /&gt;8. &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;Firefox&lt;/span&gt;&lt;/span&gt; + my favourite extensions (of course)&lt;br /&gt;9. &lt;span style="font-weight: bold;"&gt;Lookout&lt;/span&gt; - &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;google&lt;/span&gt; for your outlook (you may need to scour the web to find an executable, Microsoft bought the company and crushed the product).&lt;br /&gt;10. &lt;span style="font-weight: bold;"&gt;Notepad++&lt;/span&gt; - suitable replacement for the standard notepad application, open source, fast, tabs - love this little editor.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Runner Ups:&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;ActivePerl&lt;/span&gt;, Ruby, Eclipse, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;TortoiseSVN&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;JEdit&lt;/span&gt;, vim ...&lt;br /&gt;&lt;br /&gt;I've been using &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;cygwin&lt;/span&gt; for several years - it still has a number of annoyances (wacky path issues, crap &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;UI&lt;/span&gt; (bad font support), out of date packages ...). Don't get me wrong, it's bloody useful - but I don't like it.&lt;br /&gt;&lt;br /&gt;I recently trialled &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;andLinux&lt;/span&gt; as a potential replacement - it runs up the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;Linux&lt;/span&gt; kernel as a user-land process, provides integrated X support, nice fonts, good package management system (apt/synaptic) - still only in Beta, but it looks like a suitable alternative to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;cygwin&lt;/span&gt; (keeping in mind that it does not use native Windows &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_19"&gt;executables&lt;/span&gt; like &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;Cygwin&lt;/span&gt; does). Still not ready for prime time, but it's pretty damn impressive.&lt;br /&gt;&lt;br /&gt;Installed chrome at home the other day - interesting &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;UI&lt;/span&gt;, good speed (I believe they wrote their own javascript engine to enhance the performance of their complex web apps) and solid security architecture, I didn't see any of the "killer" features I was expecting to see from Google. Looks like they are starting to promote the technologies we will see in their Android mobile computing/phone operating system. As a heavy &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;Firefox&lt;/span&gt; extensions user I'm going to find it very hard to migrate.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-8215403812764021273?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/8215403812764021273/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=8215403812764021273' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8215403812764021273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8215403812764021273'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/09/top-10-windows-applications-free.html' title='Top 10 Windows Applications (free)'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-4368793678654855943</id><published>2008-08-28T18:46:00.002+10:00</published><updated>2008-08-28T18:47:55.030+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cars'/><title type='text'>Trip to Wakefield park</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt;&lt;a href="http://www.flickr.com/photos/gavz/2796225424/" title="photo sharing"&gt;&lt;img src="http://farm4.static.flickr.com/3071/2796225424_e044c4ddf1_m.jpg" alt="" style="border: 2px solid rgb(0, 0, 0);" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="margin-top: 0px;font-size:0;" &gt;&lt;a href="http://www.flickr.com/photos/gavz/2796225424/"&gt;Welcome&lt;/a&gt;&lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/gavz/"&gt;gavin.jackson&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;On Monday Nathan and I drove down to Wakefield Park to blast around in his Subaru STi.&lt;br /&gt;&lt;br /&gt;Had a great time - here are some photos from the day.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/gavz/sets/72157606953908208/"&gt;http://www.flickr.com/photos/gavz/sets/72157606953908208/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-4368793678654855943?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/4368793678654855943/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=4368793678654855943' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4368793678654855943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4368793678654855943'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/08/trip-to-wakefield-park.html' title='Trip to Wakefield park'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm4.static.flickr.com/3071/2796225424_e044c4ddf1_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-232453627523286765</id><published>2008-08-28T18:31:00.005+10:00</published><updated>2008-08-28T18:47:12.521+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='longreach'/><category scheme='http://www.blogger.com/atom/ns#' term='netspeed'/><category scheme='http://www.blogger.com/atom/ns#' term='customer service'/><category scheme='http://www.blogger.com/atom/ns#' term='pennytel'/><category scheme='http://www.blogger.com/atom/ns#' term='isp'/><title type='text'>Netspeed Longreach - Fail</title><content type='html'>Well, after a month of pain I decided to throw in the towel with Netspeed Longreach. I had simply had enough of poor customer service (including technicians not turning up for their appointments, no replies to emails). I would urge anyone considering using Netspeed to look hard at going with any of their competitors (I'm now back with TPG (on ADSL1) who in my experience provide good service).&lt;br /&gt;&lt;br /&gt;FYI, the service kept dropping out on me - and even when it was connected I was lucky to see more than 3mbit down (which is a bit less than the marketed "up to" 14mbit.&lt;br /&gt;&lt;br /&gt;On another note, my Linksys ATA adapter arrived from Pennytel (which is now connected to our new Oricom cordless phones (got three of them scattered throughout the house)) - working well, getting crazy-cheap calls using VOIP while still receiving land line calls over our existing Telstra line.&lt;br /&gt;&lt;br /&gt;One downside to the device is that it is locked for the first 6 months of owning it - this wouldn't bother me too much, however the time is incorrect on the unit, and all of the handsets are syncing their time off it - and you need admin rights to reset it! I've logged a support call with Pennytel who are trying to come up with a work around.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-232453627523286765?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/232453627523286765/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=232453627523286765' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/232453627523286765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/232453627523286765'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/08/netspeed-longreach-fail.html' title='Netspeed Longreach - Fail'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-8108786398163187951</id><published>2008-08-07T15:33:00.003+10:00</published><updated>2008-08-07T15:42:54.221+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gps'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><category scheme='http://www.blogger.com/atom/ns#' term='google maps'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>iTrail - first proper use of iPhone gps</title><content type='html'>$4 Application that makes good use of the iPhones GPS.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Samples at user defined intervals (minimum delta is 10 seconds)&lt;/li&gt;&lt;li&gt;Allows you to record multiple "tracks"&lt;/li&gt;&lt;li&gt;Provides feedback on altitude, speed and distance travelled&lt;/li&gt;&lt;li&gt;integrates with google maps on the iphone to show where you have been&lt;/li&gt;&lt;li&gt;outputs tracks to google documents in either kml or gpx formats (that you can load up later using google maps or google earth)&lt;/li&gt;&lt;li&gt;records even when screen has been locked (and works while ipod music is playing)&lt;/li&gt;&lt;/ul&gt;This is not a navigation app per se - it does not allow you to specify co-ordinates, it's more of a static recording and analysis utility (that you would use to measure your running and cycling performance). Still waiting to see a decent geocaching app.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://itrailr.googlepages.com/map_screen.PNG/map_screen-full;init:.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://itrailr.googlepages.com/map_screen.PNG/map_screen-full;init:.PNG" alt="" border="0" /&gt;&lt;/a&gt;&lt;a href="http://itrailr.googlepages.com/home"&gt;&lt;br /&gt;http://itrailr.googlepages.com/home&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-8108786398163187951?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/8108786398163187951/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=8108786398163187951' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8108786398163187951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/8108786398163187951'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/08/itrail-first-proper-use-of-iphone-gps.html' title='iTrail - first proper use of iPhone gps'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-3109995286117903199</id><published>2008-08-04T20:16:00.006+10:00</published><updated>2008-08-04T20:50:50.012+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruxcon'/><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Adsense</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_CRJtjTE5UxI/SJbXmC9MGkI/AAAAAAAAAN4/3sVwTv6qyJQ/s1600-h/ruxcon.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_CRJtjTE5UxI/SJbXmC9MGkI/AAAAAAAAAN4/3sVwTv6qyJQ/s400/ruxcon.jpg" alt="" id="BLOGGER_PHOTO_ID_5230605065865927234" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Nice use of tax-payers money. Looking forward to Ruxcon this year (29-30 November 2008).&lt;br /&gt;&lt;a href="http://www.ruxcon.org.au/"&gt;http://www.ruxcon.org.au/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_CRJtjTE5UxI/SJbemC8tIRI/AAAAAAAAAOA/7uc1dHsvbbY/s1600-h/blackhat.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_CRJtjTE5UxI/SJbemC8tIRI/AAAAAAAAAOA/7uc1dHsvbbY/s400/blackhat.jpg" alt="" id="BLOGGER_PHOTO_ID_5230612762445291794" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-3109995286117903199?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/3109995286117903199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=3109995286117903199' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/3109995286117903199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/3109995286117903199'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/08/adsense.html' title='Adsense'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_CRJtjTE5UxI/SJbXmC9MGkI/AAAAAAAAAN4/3sVwTv6qyJQ/s72-c/ruxcon.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-3858897493480928675</id><published>2008-08-03T11:51:00.004+10:00</published><updated>2008-08-04T20:56:34.309+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><category scheme='http://www.blogger.com/atom/ns#' term='ipod'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>A weekend with the new iPhone 3G</title><content type='html'>Well, finally received my iPhone on Friday. At this point I should probably insert a rant about Optus customer service (or lack thereof), however the coolness of the device eclipses the terrible customer experience I encountered from Optus. It ranged from blatantly lying about unit lead times, not wanting to take my order (at the Woden store), and not being prepared to even look up my details to let me know how long I need to wait for the phone.&lt;br /&gt;&lt;br /&gt;Still, they ended up having a reasonable plan - 750mb data per month + $550 worth of calls for $81 per month (2 year contract, no upfront fees). So I'm guessing they don't pay their store staff much.&lt;br /&gt;&lt;br /&gt;Having owned an ipod touch for the last 12 months I sort of knew what to expect - solid web, email, maps, address book, calendar, ipod (audio, video, podcasts, Apple store etc). I was even fond of the weather app.&lt;br /&gt;&lt;br /&gt;The headphones have an integrated microphone so you don't even have to take your headphones off to take the call, it simply turns down the music volume when you take the call, and starts playing the music again when you hang up.&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Google&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Google integration is pretty sweet - you can sync your gmail, google calendar (via iCal), most of the google online services now support the iPhone safari browser (and render to support the iPhone screen size) - these include gmail, calendar, chat, reader, picassa.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;GPS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The built in gps integrates with Maps to provide you with location details, and allows you to look up road directions (Maps does perform caching so you don't always have to be in 3G service to get map details). It will be interesting to see what new apps come out that use the gps feature (hello geocaching?).&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;App Store&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The most important upgrade (for iPod touch, iPhone 1 and iPhone 3G users) is the Apple App Store. This allows you to browse and download new applications for your device (some of them you have to pay for). Here are some of the ones that I think are particularly groovy:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Remote&lt;/span&gt; - one of the few Apple created apps - allows you to remotely control your iTunes library or Apple TV. (Free)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Mobile Fotos &lt;/span&gt;(previously called iFlickr) - flickr for your iPhone - allows you to browse flickr.com (explore random photos, or view your contacts latest photos), it integrates with the iPhone camera, allowing you to upload photos directly to your flickr photo stream! Also embeds geolocation data into the photo and allows you to search for flickr photos that were taken near your location (brilliant example of technology convergance). ($6)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Twittervision&lt;/span&gt; - This one is pretty groovy, on a map of the world you can see twitter updates as they are happening (in real time). I think you need another twitter application to see your followed contacts - I think this is called &lt;span style="font-weight: bold;"&gt;Twitterific&lt;/span&gt;. (Free)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Shazam&lt;/span&gt; - this one is really amazing, you place your phone up to a tv or radio and it identifies the song that it is playing! You have to see this to believe it! (Free)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Monkey Ball&lt;/span&gt; - fun little game that uses the iPhone tilt sensors to control a monkey in a ball ($13).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;My Lists &lt;/span&gt;- simple list creation program - allows you to email lists back to yourself. This one appealing to me because you don't have to sogn up to an online service to use it (and share your lists). I also liked the icons and ability to easily delete lists. ($4)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;HFD Calculator&lt;/span&gt; - Picked up an application to help you calculate Hyperfocal distance (based on camera type, lens focal length and aperture) - unfortunately it is producing the wrong values - but the author was very responsive, indicating that Apple are currently reviewing the patch before it is released to the App store ($4) - in order to do this properly I also purchased a tape measure app that uses the gps to measures distances ($1.50). I'll submit another post to let you know how this goes ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-3858897493480928675?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/3858897493480928675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=3858897493480928675' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/3858897493480928675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/3858897493480928675'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/08/weekend-with-new-iphone-3g.html' title='A weekend with the new iPhone 3G'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-7902415578294711313</id><published>2008-08-02T17:54:00.001+10:00</published><updated>2008-08-02T17:54:52.661+10:00</updated><title type='text'>Test post from iPhone</title><content type='html'>I&amp;#39;m making this post via email. Blogger does not yet have an iPhone  &lt;br&gt;optimized interface.&lt;p&gt;Sent from my iPhone&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-7902415578294711313?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/7902415578294711313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=7902415578294711313' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7902415578294711313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7902415578294711313'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/08/test-post-from-iphone.html' title='Test post from iPhone'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-2767493995457641685</id><published>2008-07-25T19:50:00.004+10:00</published><updated>2008-07-25T20:57:11.759+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='voip sip'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>VOIP - All you need to know</title><content type='html'>I've just upgraded to a service called Netspeed Longreach. It's a wireless service offered in Canberra - it requires an antenna to be installed on your roof and provides bandwidth roughly equivalent to ADSL 2 (I'm currently getting about 3.5mbps down/1mbps up) - they claim it can do up to 12mbps. Things that I learned:&lt;br /&gt;&lt;br /&gt;1. Make sure that the installation time is in the afternoon (you need line of sight to the tower). The technician couldn't install it on the morning I took off initially due to heavy fog in Canberra.&lt;br /&gt;&lt;br /&gt;2. Ensure that callibration occurs on the netspeed end - initially I suffered from regular disconnects (and pathetic bandwidth).&lt;br /&gt;&lt;br /&gt;I signed up to the 20gb peak/40gb offpeak per month plan (which should be adequate for my level of data usage). The costs $69.95 per month.&lt;br /&gt;&lt;br /&gt;One advantage of getting this service is the ability to switch to using Voice Over IP (VOIP) and remove our current Telstra landline (and the $30 per month line rental that goes with it).&lt;br /&gt;&lt;br /&gt;Now, you can purchase a "POTS" (Plain Old Telephone Service) adapter that connects to your existing analog phones (even wireless ones) - this adapter is a SIP client that talks VOIP. It is configured to route calls through your VOIP provider (who provide you with conventional telephony services - such as local phone number and ability to call other land line numbers).&lt;br /&gt;&lt;br /&gt;I went with a company called Pennytel - their plans are really reasonable - you pay $5 per year to get a land line number (that your friends and family can call), 8c unlimited time calls within Australia, and 30c per minute calls to Australian mobile phones (with per second billing). They also offer all sorts of deals to get crazy-cheap international call rates. Phone calls to other pennytel customs are free (even if they are overseas!).&lt;br /&gt;&lt;br /&gt;Other cool things - you have the option of sending voice mail directly to your email address, for $5 per month you can get faxes sent to your email address, you can have multiple outgoing calls from your number, unlimited sms messages (with your mobile phone as the sender!), an API for integrating pennytel services (including address book management and sms services directly into your applications. You can schedule sms messages to be sent at specific times - oh and no monthly fees - only pay for what you use.&lt;br /&gt;&lt;br /&gt;I went with a POTS adapter deal they have - for $97 (including GST and shipping) they are sending me a Linksys adapter and giving $50 worth of call credits. The only downside is that the adapter is locked into pennytel for the first six months (which, given how solid and cheap their services are, seems like a pretty sweet deal to me).&lt;br /&gt;&lt;br /&gt;I the meantime I'm using a "softphone" called X-Lite (runs on linux, mac and windows) - it's the one that Pennytel recommends, and looks very well featured for a free softphone. I hit a bug in the OSX version where I couldn't hear the recipients voice - after going through the forums I found the following solution: &lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;Dial ***7469 (SEND)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;This will bring up the advanced settings window&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Filter for honor&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Double click on the honor entry and change the value to 1&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Links:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Longreach: &lt;a href="http://netspeed.com.au/netspeed.cfm?action=p_15"&gt;http://netspeed.com.au/netspeed.cfm?action=p_15&lt;/a&gt;&lt;br /&gt;Pennytel: &lt;a href="http://www.pennytel.com/"&gt;http://www.pennytel.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-2767493995457641685?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/2767493995457641685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=2767493995457641685' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2767493995457641685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2767493995457641685'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/07/voip-all-you-need-to-know.html' title='VOIP - All you need to know'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-2034709099357583439</id><published>2008-07-08T12:48:00.003+10:00</published><updated>2008-07-08T12:54:50.765+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='passwords'/><category scheme='http://www.blogger.com/atom/ns#' term='crypto'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Password Safe</title><content type='html'>I hate managing passwords - so I've started using a program called "password safe" to manage my passwords electronically.&lt;br /&gt;&lt;br /&gt;It essentially encrypts all of your passwords into a single database file (using the twofish encryption algorithm).&lt;br /&gt;&lt;br /&gt;Note that all of these implementations are compatible with the same password safe database file (which you can store on your usb key for example). Just pick a really strong passphrase to protect your database!&lt;br /&gt;&lt;br /&gt;Original implementation (written by Bruce Schnier):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.schneier.com/passsafe.html"&gt;http://www.schneier.com/passsafe.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Sourceforge project (windows implementation):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://passwordsafe.sourceforge.net/"&gt;http://passwordsafe.sourceforge.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Password Gorilla (OSX/cross platform implementation):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.fpx.de/fp/Software/Gorilla/"&gt;http://www.fpx.de/fp/Software/Gorilla/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Java implementation (another cross platform implementation - not tested):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bytecode.com.au/passwordsafeswt/"&gt;http://www.bytecode.com.au/passwordsafeswt/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-2034709099357583439?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/2034709099357583439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=2034709099357583439' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2034709099357583439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/2034709099357583439'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/07/password-safe.html' title='Password Safe'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-7781541219270689013</id><published>2008-06-28T11:59:00.003+10:00</published><updated>2008-06-28T12:03:00.864+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='deliciouslibrary'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Delicious Library 2</title><content type='html'>Well, I've been busy scanning all of my books, cds and movies into Delicious Library 2 - I found it a bit disappointing that it does not appear to support Aussie movie barcodes (so I had to resort to manual entry). Anyways, here is my library - friends and family are welcome to borrow anything on this list &lt;a href="http://www.gavinj.net/deliciouslibrary/"&gt;http://www.gavinj.net/deliciouslibrary/&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-7781541219270689013?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/7781541219270689013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=7781541219270689013' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7781541219270689013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7781541219270689013'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/06/delicious-library-2.html' title='Delicious Library 2'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-1910482201295766696</id><published>2008-06-07T18:13:00.002+10:00</published><updated>2008-06-07T18:30:09.059+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ps3'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='entertainment'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='gadgets'/><title type='text'>Gadget overload</title><content type='html'>Well, we're now back home after the honeymoon - Jo has let me indulge in some new gadgets -&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Samsung 46 inch LCD Tv (&lt;/span&gt;&lt;strong style="font-weight: bold;"&gt;LA46F81BDX&lt;/strong&gt;&lt;span style="font-weight: bold;"&gt;) &lt;/span&gt;25,000:1 contrast ratio, 100hz image correction, 1080p output, 3 HDMI ports - this has totally changed our lifestyle - I can actually be bothered watching TV now. This was probably the best bang for buck you can purchase at the moment.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Sony Playstation 3&lt;/span&gt; - I really wanted to see what hi-def movies looked like on the new TV so I picked up a PS3 for its Blue-Ray player. Absolutely stunning - haven't bought any games for it yet, but am contemplating: Devil May Cry 4, GTA4 or Call of Duty 4.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Polar AXN700 Heart Rate Monitor&lt;/span&gt; - built out of titanium in Finland, incorporates digital compass (which will be handy for geocaching), altimeter and barometer (for when I start doing multi-day hikes :).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Apple Time Capsule - 1 TB&lt;/span&gt; - this integrates with Time Machine on Mac OS 10.5 "Tiger". It means I can now stop stressing about not backing up my data.&lt;br /&gt;&lt;br /&gt;(On order) - &lt;span style="font-weight: bold;"&gt;Mediasonic RAID enclosure&lt;/span&gt; (including two 1 terabyte seagate barracuda drives), the intention is to connect this to the Time Capsule to provide additional (redundant) storage. Amazingly good value off ebay - the enclosure plus drives cost about $600US.&lt;br /&gt;&lt;br /&gt;Also bought a license for Delicious Library 2 (Mac OSX Application) based on Luke Manhoods review &lt;a href="http://homepage.mac.com/luke.manhood/blog/files/a311d8a87e4d369a3409d2ab2960873f-315.html"&gt;here&lt;/a&gt;. If you own a Mac I suggest you download a trial and see how cool it really is.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-1910482201295766696?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/1910482201295766696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=1910482201295766696' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1910482201295766696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1910482201295766696'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/06/gadget-overload.html' title='Gadget overload'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-7486786053011716585</id><published>2008-05-19T21:51:00.004+10:00</published><updated>2008-05-19T22:03:14.529+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='honeymoon'/><category scheme='http://www.blogger.com/atom/ns#' term='wedding'/><category scheme='http://www.blogger.com/atom/ns#' term='Thailand'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><category scheme='http://www.blogger.com/atom/ns#' term='Bangkok'/><title type='text'>Phuket/Bangkok Days 10-15 Sun, Temples and Shopping</title><content type='html'>Finally, we saw some sun in Phuket - I get it now. We went over to the resorts private island (Bon Bon), and hired a hut on stilts called a &lt;span style="font-style: italic;"&gt;Sala&lt;/span&gt;. The day after we took a speedboat/snorkelling tour of Phi Phi Island (and the surrounds). We are now in Bangkok, having just spent a rest day (shopping), yesterday we took a guided tour or the ruins of the ancient city of Ayutthaya (really quite amazing). Again, lots of photos up on flickr. Here's what Jo has to say:&lt;br /&gt;&lt;br /&gt;&lt;blockquote style="color: rgb(0, 0, 153);"&gt;With our trip to Phi Phi postponed to Friday we wake up on Thursday to find that it a lovely day, however just a tad windy.  We enjoy the sleep in and then head over to Bon Bon Island.  This is the resorts own island with a coral reef for snorkelling and day salas that you can hire out. &lt;br /&gt;&lt;br /&gt;So Gav and I hired a day sala (a sala is a hut with no sides and a big sun lounge, which comes with a full stocked mini bar and a private shower).  We caught the boat over to the island, which was interesting.  As we were still receiving the end of the cyclone in Burma the swell was quite big.  We all got very wet on the way over, but at least the water was warm.  We spent the day snorkelling, lazing in the sun and reading our books.&lt;br /&gt;&lt;br /&gt;We went to Phi Phi Island (which is actually two islands) on Friday by speedboat.  We did a lot of snorkelling and got to see a lot of different fish and coral. All very beautiful and really a place that you all need to see yourself!!  We get back to hotel to find that Gav’s suit has arrived, it is lovely!!&lt;br /&gt;&lt;br /&gt;Saturday we leave Phuket and head to Bangkok, we do not get picked up until 11:40 so we spend the morning hanging out in our room reading in the sun.  When we get to Bangkok we are taken back by the size of the city and the number of people.  Our hotel is lovely tho, we arrive to find out that they have upgraded our room, however, it is not ready yet so they gave us a free drink, a welcome cocktail.&lt;br /&gt;&lt;br /&gt;Sunday we head off on a tour of Ayutthaya, which is just north of Bangkok and is the ancient capital of Thailand.  The tour stars at the Royal Summer Palace.  It was built in a European style as the king of the time wanted to feel like he was in Europe, which it kinda does!! &lt;br /&gt;&lt;br /&gt;We then headed off to Ayutthaya and walked among the many ruined temples there, some dating back to the 14th century.  All of the temples were destroyed when he Burmese invaded Thailand, breaking into many of the chedis, the Thais version of a pyramid.  We also got to see the giant gold budda, which was giant and gold!!!  We then headed back towards Bangkok by boat cruising down the Chao Phraya River.&lt;br /&gt;&lt;br /&gt;Monday was a public holiday in Thailand.  It was the day that Budda was born, found enlightenment and died (yes it all happened on the same day).  However everything was still open, so Gav and I decided to go shopping.  We picked up a book on Ayutthaya, as Gav was too busy running around taking photos whilst I was trying to listen to what the tour leader was telling us on the tour.  We then checked out all the souvenir shops, our hotel is right next door to an arts and antique shopping centre.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-7486786053011716585?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/7486786053011716585/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=7486786053011716585' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7486786053011716585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7486786053011716585'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/05/phuketbangkok-days-10-15-sun-temples.html' title='Phuket/Bangkok Days 10-15 Sun, Temples and Shopping'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-1081990768676900904</id><published>2008-05-14T20:58:00.005+10:00</published><updated>2008-05-14T21:41:21.946+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Kuala Lumpur'/><category scheme='http://www.blogger.com/atom/ns#' term='honeymoon'/><category scheme='http://www.blogger.com/atom/ns#' term='wedding'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><title type='text'>Phuket - Days 5 to 9 - Where is phuck is the sun?</title><content type='html'>Phuket - it's raining, found out if you say ka at the end of the sentence instead of krup, you are officially a lady-boy. Anyways, Thai hospitality is very nice - resort prices are fair compared to what we pay at home - but bloody expensive when compared to what people pay outside of the resort gate - eg. beer (thai brewed Heinekin or Japanese Asahi - don't bother with Tiger or Singa - it's average) costs 160B at the hotel (about $5), you can pick one up from the local 7-11 for about 38B (which is very cheap). Anyways - didn't take my camera on the first real expedition - sea kayaking (in hindsight the risk of getting my camera wet was insignificant), took it on the elephant trek (where the risk of getting my camera wet was relatively quite high ... check the photos on flickr to see what I'm on about). Anyways here is Jo's take on the matter:&lt;br /&gt;&lt;blockquote style="color: rgb(0, 0, 153);"&gt;Well since arriving on the resort we have not had Internet to our room.  Instead we need to head up to the business centre to use their connection. Gav hates the idea, I think it is great!!!&lt;br /&gt;So better catch you up all on what we have been doing. Travel day on Sunday, which unfortunately meant an early morning (up at 5:30am).  We managed to scoff our breakfast down, not a fitting farewell to the marvellous breakfast they put on.&lt;br /&gt;&lt;br /&gt;Our driver met us in reception to take us to the airport.  We shared the ride with a lady from Perth.  I swear half of Australia is here in KL.  It took us about an hour again to get to the airport.&lt;br /&gt;&lt;br /&gt;The flight was fairly uneventful and at least gave me a chance to get a bit more sleep.  We flew over all the small Islands around Phuket which was lovely.  As our hotel is right on the bottom of the Island we got our own car to take us.  Unfortunately the drive spoke very little English.  He did manage to tell us that the ride would take an hour.&lt;br /&gt;&lt;br /&gt;The ride was an eye opener, and was more in line of what we were expecting for most of the trip.  There was a lot of traditional type housing right next to brand new European style villas.&lt;br /&gt;&lt;br /&gt;We arrived at our hotel and we were lucky enough to find our room was ready so we were able to check right in.   The room is not as big as the one in KL but it is nice.  The hotel is kinda eco, they use a lot of natural fibres and finishes.&lt;br /&gt;&lt;br /&gt;We since found out that the area is experience a high amount of wind and rain thanks to the hurricane north of Thailand which is causing many black outs.&lt;br /&gt;&lt;br /&gt;After lunch we headed down to the pool, there are 3 pools in the resort.  A family pool, a garden pool and an adults only pool.  We headed to the adults only pool, this one overlooks the sea and does not allow children, much to Gav’s delight!!!&lt;br /&gt;&lt;br /&gt;When we got back to our room we found that we had a bottle of champagne, a fruit basket and they had arranged petals into the shape of heart and spelt out ‘I love you’ on the bed.  We decided to try one of the numerous restaurants on the resort, which really is the only option as we would need to get past the guard at the front gate to get out.&lt;br /&gt;&lt;br /&gt;On Sunday we were meant to go to Phi Phi today however the tour company switch us to go sea canoeing instead.  We set off at 7:30am and headed to just north of the airport, so about an hour away from the hotel.  We were taken by boat to a few of the Islands off the east coast, Hong and another one who’s name escapes me.&lt;br /&gt;&lt;br /&gt;We were introduced to our paddler, Mario, who would be paddling us around for the day and tending to our every need.  The first stop was the longest of the caves and was full of fruit bats.  Once we got through the cave we were then taken into the centre of the island, which is open to the elements (I think it is called an atoll.)  On this first trip we got to see monkeys that live on this island and live off seafood, and the bananas we brought in from the boat.&lt;br /&gt;&lt;br /&gt;We visited a number of other caves, some that actually required us to lay down in the boat to fit through the cave.  We then got to enjoy lunch on the boat as we headed through to a spot where we could go swimming.  On the way the way hit some very bad wind and rain.  The rain was so bad it was actually sill coming in the boat even tho we have all the sides down on the awning!!!  The lady who was sitting next to me could not swim and started to panic quite a bit, she demanded a life jacket (the whole time she had not stopped eating though!!)&lt;br /&gt;The rain did stop and a few people, including Gav, did decide to go swimming. Swimming involved all the boys jumping off the top level of the boat into the water.  We made it back to land and back to the hotel.&lt;br /&gt;&lt;br /&gt;Monday was a relaxing day, we started it with a massage at the resorts spa.  The massage was great, we then headed down to the pool for lunch and a swim.  We even managed to get some sun during our time by the pool.  However the wind picked up so we headed back to our room to freshen up for dinner.  We got to bed early as we need once again to be up early the following morning.&lt;br /&gt;&lt;br /&gt;Tuesday was another big trip, we had to cross over onto the main land and go to Khao Sok National Park.  There are people actually living in the national park, however, they were there first so they get to stay.  We arrived at the tours resort in the park and jumped on our canoe to be taken down the river.&lt;br /&gt;&lt;br /&gt;This area has had quiet a bit of rain over the past few days and as it is all mountains and the river, obviously, in the valley it floods very easily.  The water was moving very quickly so an hour and twenty minutes ride became about an hour.  The spot where we would have had lunch was under approx 1.5 metres of water so we headed back to the resort for lunch.&lt;br /&gt;&lt;br /&gt;After lunch we headed to the elephant sanctuary, which as we found out was where we were going to have lunch.  We were taken by canoe, again, to the elephants, which was where we were meant to have lunch.  We were put in the hut that had all the banana’s which of course all the elephants were after.  If you check out the photos you will be able to see how hard it was raining.  Gav decided not to get a poncho, needless to say he was drenched just from the 2 minute canoe ride.&lt;br /&gt;&lt;br /&gt;We finally got to ride on the elephant up into the jungle.  Our elephant went first and was a little naughty, elephants apparently think about eating about 80% of the time, ours thought about food 100% of time.  Plus he had gas!!!  Our elephant was very vocal as well, he keep calling out.  The rain at least stop for a bit while we were in the jungle and the path we were following resembled more of a stream than a path.&lt;br /&gt;&lt;br /&gt;We then headed back to Phuket, approx 2 hour drive.  Lucky tomorrow is another rest day, we are going to need it.&lt;br /&gt;&lt;br /&gt;On Wednesday we decided to go and investigate the town centre.  We caught the shuttle into the city where we were then offered a driver to take us to the places that we wanted to go, it cost us 200 baht in a tip and that was it.&lt;br /&gt;&lt;br /&gt;The first place we went was Manhattan, a tailor.  We ordered a suit for Gav for approx $AU300 in a lovely English wool cashmere mix.  We then went to Expo which is a tin shed that appro 100 vendor come from Bangkok with their goods to sell.  Gav picked up 4 shirts for about $AU20 and I got wool blend top.&lt;br /&gt;&lt;br /&gt;We then headed down to the Marina for lunch, where we dined on prawns and a lobster in garlic and it was great!  We then headed to a souvenir shop to pick up a few gifts.  We then had to head back for Gav’s fitting; they had had most of the jacket finished, minus the lining. They are dropping the suit to the hotel on Friday for the final fitting.&lt;br /&gt;&lt;br /&gt;After all this shopping we needed a rest so back to the hotel for a beer.  When we got back we found out that our trip to Phi Phi for Thursday had been cancelled due to bad weather, so we may be going on Friday, if not then we will just have to come back again!!&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-1081990768676900904?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/1081990768676900904/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=1081990768676900904' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1081990768676900904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1081990768676900904'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/05/phuket-days-5-to-9-where-is-phuck-is.html' title='Phuket - Days 5 to 9 - Where is phuck is the sun?'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-1054079354778806950</id><published>2008-05-14T20:47:00.003+10:00</published><updated>2008-05-14T21:40:36.970+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Kuala Lumpur'/><category scheme='http://www.blogger.com/atom/ns#' term='honeymoon'/><category scheme='http://www.blogger.com/atom/ns#' term='wedding'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><title type='text'>KL - Days 3-4 - Views and Shopping</title><content type='html'>Last two days in KL. This was mostly made up of visiting the Menara communications tower and shopping - and lounging by the pool drinking beer, it was nice to experience a bit of down time. Here is what Joanne has to say:&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote style="color: rgb(0, 0, 153);"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Day 3&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Ahh sleep I need that, and I was looking forward to having breakfast.  I visited my pancake making man and had pancakes with fresh berries for breakfast.  Gav opted for the traditional Malaysian breakfast, chicken curry with coconut rice and fried whitebait.  These little fish come with everything!!!&lt;br /&gt;&lt;br /&gt;We decided after breakfast that we would walk to the Menara KL, the KL tower.  As it had rained the previous night the sky was fairly clear, well as clear as it gets. We slowly made our way back to the hotel after our 360 degree view of KL.&lt;br /&gt;&lt;br /&gt;After a quick lunch we came back to the hotel to spend the afternoon by the pool, ahh finally relaxation and beer.  This has been a fairly dry trip to date, drinking just isn’t done here when it is so expensive (about $15 per beer, hotel prices!).&lt;br /&gt;&lt;br /&gt;We had to then get ourselves ready for our KL by night tour.  We got to see the oldest Hindu temple in the city, not much really, and then was able to experience China Town.&lt;br /&gt;&lt;br /&gt;Now China town is the place you go when you want a genuine replica of almost anything.  Gav had already announced that he wanted a watch.  I then discover Gav sucked at bargaining; luckily I was there and could step in.  The retailer was trying their hardest to get me away from Gav but we managed to get his watch for MR120 (about AU$50).  We then headed to an ordinary buffet dinner and show of national dance.&lt;br /&gt;&lt;br /&gt;The highlight was on the trip back home we drove by the twin towers, which are completely illuminated during the night with all the steel and glass - sparkling like diamonds.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Day 4&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;We decided to take it easy today.  We walked down to the shopping mall that sells all the IT and camera gear.  I know, who would have thought we would make it there.  We spent the morning wandering the shops. Gav was pleased with his purchases, an 8gb compact flash card and a 77mm UV filter for his new lens (10-20mm sigma).  FYI Gav forced the last line into MY diary!!!&lt;br /&gt;&lt;br /&gt;We headed back to the pavilion for lunch and tried this wacky soup concoction and a soy noodle dish.  They were lovely.  When we got back to the hotel we spent the afternoon by the pool reading with a nice cold beer.  Now in my mind that is where a honeymoon should be spent!!&lt;br /&gt;&lt;br /&gt;We then decided to should head out for dinner.  We quickly decided we should head back to the Japanese restaurant we ate at a few nights ago.  We did not realise what a cultural experience this could be.  2 Australians sitting in a Japanese restaurant in Malaysia watching River Dance on the TV whilst listening to American Pop music, oh drinking Heinekin beer brewed in Thailand.&lt;br /&gt;&lt;br /&gt;We decided to get an early night and pack our bags as we head off early tomorrow morning.&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-1054079354778806950?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/1054079354778806950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=1054079354778806950' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1054079354778806950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/1054079354778806950'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/05/kl-days-3-4-views-and-shopping.html' title='KL - Days 3-4 - Views and Shopping'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-4049172291208391186</id><published>2008-05-08T19:09:00.005+10:00</published><updated>2008-05-14T20:47:18.311+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Kuala Lumpur'/><category scheme='http://www.blogger.com/atom/ns#' term='honeymoon'/><category scheme='http://www.blogger.com/atom/ns#' term='wedding'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><title type='text'>KL Day 2 "Caves, Planes, Flowers and Birds"</title><content type='html'>Wow - yesterday was absolututely amazing - my friend Halim (who lives and works just outside of KL) picked us up at 9am and drove us around this amazing city - we went to the Batu Caves, RMAF Museum, had a traditional Malaysian lunch of BBQ Fish, Sting Ray and Squid, Visited the Royal Palace, went to the Hybiscus and Orchid gardens and finally went to the KL Bird Park.&lt;br /&gt;&lt;br /&gt;Lots of photos are up on flickr (&lt;a href="http://www.flickr.com/photos/gavz/sets/72157604932306299/"&gt;http://www.flickr.com/photos/gavz/sets/72157604932306299/&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Again, here is Joannes travel journal:&lt;br /&gt;&lt;blockquote style="color: rgb(0, 0, 153);"&gt;&lt;br /&gt;Today we got to experience breakfast in the hotel.  When we first arrived I was a little disappointed with the range.  On one side was a traditional Malaysian breakfast, curry, and on the other was an American breakfast of bacon, sausage, egg, and chicken wings(? Don’t know where that one came from).  We played it safe with the American breakfast.&lt;br /&gt;&lt;br /&gt;After finishing breakfast we decided to explore that floor a little more where I later found a bakery with over 30 different breakfast treats, a chef who will make me pancakes, crepes, French toast or waffles.  Not to mention a cold case with 10 different flavoured yoghurts.  Oh yes there was cereal and toast, but who cares a man will make me pancakes!!!!  Oh and they will juice me what ever blend of fruit and vegies I want.  I wish it was breakfast all the time here!&lt;br /&gt;&lt;br /&gt;Any way breakfast had to end sooner or later as we were meeting up with Halim today.&lt;br /&gt;&lt;br /&gt;We headed out in the morning traffic to visit the Batu caves which are about 20 minutes out of KL, with traffic probably about 5 minutes drive.  The one thing you learn very quickly is there is never no traffic in KL.  To get into the caves you need to climb 272 stair, straight up!!  Some sick and twisted people take great joy in running up and down these stairs several times over for exercise!!!&lt;br /&gt;&lt;br /&gt;When we got to the top I was approached by a man, it was not until a few moment later I realised that he had this great big yellow python that he wanted to put around my neck!!!  Gav decided he would be up for it.  We headed into the cave which is full of Hindu temples.  Lets just say you are all lucky that photo’s do not capture the smell.&lt;br /&gt;&lt;br /&gt;When we got to the end of the cave there were all these monkeys that live in the trees, well obviously!!  Gav knew exactly what I was thinking and before I could say anything he turns around and say ‘ Jo for Christ sake do not try to pick one up’, but they are just so cute.  Trust me I was not going to anyway.  I like all my bits!!!&lt;br /&gt;&lt;br /&gt;We then had to ascend the 272 stairs to get back down.  At least at the bottom we enjoyed a nice cold coconut.&lt;br /&gt;&lt;br /&gt;Halim then wanted to take us out to a traditional Malaysian lunch.  Something we have been looking very forward too.  On the way we went into the Malaysian Airforce Museum.  The plane that Halim flew was on display and he explained all about the Airforce in Malaysia, only 50 years old this year!!&lt;br /&gt;&lt;br /&gt;We then headed of to lunch, which was a selection of stalls behind the Royal Palace.  These guys cook up almost every type of seafood you have ever seen!!.  We dinned on stingray, fish and calamari, along with a selection of curries and other dishes.  Luckily Halim was there to tell us what each one was.  Gav and I started to tuck in and the food was great.  We then found out why all the funny stares, traditionally Malaysians eat with their hands!  So no spoon and fork for us, hands in we go!  It was lots of fun, made eating some of the food much easier.&lt;br /&gt;&lt;br /&gt;After lunch we headed off to the Royal Palace.  Malaysia has 9 Royal families (I think), each one takes a turn in being King of the country for a period of 5 years.  The palace gates have 4 guards, 2 on horse back (which have chandeliers in the guard box) and 2 that are on foot.  There was a tour bus there when we arrive and after they had cleared out we took our places to have our photo taken only to have about a dozen Indian men run over and wanting their photo taken with me.  I learnt that Gav does not like to share!!!&lt;br /&gt;&lt;br /&gt;We then headed to the National Monument; this commemorates the dead from WW1 and 2 and also through the civil war that lasted about 15 years ending only in 1960’s.  We then headed down to the Park gardens and walked through the Orchid and Hibiscus gardens, there was this tiny little orchid no bigger than my finger nail.&lt;br /&gt;&lt;br /&gt;On the other side of the gardens is the KL bird park, so we decided to go on in.  We got to see Hornbill birds, on our way in.  These two were hitting their bills together, it was not until one mounted the other when we realised what was happening.  We watched the bird show, a real one not the Hornbills, and then thought we better make our way back to the car and we heard thunder.&lt;br /&gt;&lt;br /&gt;About ¼ of the way back to the car it started to rain.  This was no normal rain it was tropical rain, big drops of very wet water!  We made it back to the dripping from our mad dash!  Halim then had the job of getting us back to the hotel driving in the rain, which is normally slightly difficult, however, in KL it is a nightmare!  Halim got us back in one piece much to our delight.&lt;br /&gt;&lt;br /&gt;After a well deserved rest we decided to head back over to the Palace shopping mall for some dinner and to pick up a power adapter.  It differs to the Thailand power and we came un-prepared for that. After Tepanyaki for dinner and after much hounding I did get Baskin Robins for dessert.  For someone that did not want any dessert he did a good job of eating half of mine.&lt;br /&gt;&lt;br /&gt;After that day I was glad to see the pillow and slept very well.  Am looking forward to nice restful day tomorrow.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-4049172291208391186?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/4049172291208391186/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=4049172291208391186' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4049172291208391186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/4049172291208391186'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/05/kl-day-2.html' title='KL Day 2 &quot;Caves, Planes, Flowers and Birds&quot;'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-6397519234949062212</id><published>2008-05-07T10:36:00.008+10:00</published><updated>2008-05-08T19:22:46.865+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Kuala Lumpur'/><category scheme='http://www.blogger.com/atom/ns#' term='honeymoon'/><category scheme='http://www.blogger.com/atom/ns#' term='wedding'/><category scheme='http://www.blogger.com/atom/ns#' term='holidays'/><title type='text'>KL - Day 1 "Towers, Shops and Con-Artist Monks"</title><content type='html'>Well, we have made it over to Kuala Lumpur Malaysia - yesterday we did the Petronus Twin Tours Bridge Walk and today we'll be meeting up with a friend who I used to play squash with (he is posted in KL with the Malaysian Air Force).&lt;br /&gt;&lt;br /&gt;Food is great, everyone seems to speak English (with varying degrees of proficiency), and everything is kept well clean.&lt;br /&gt;&lt;br /&gt;As usual, I'm taking lots of photos - these can be viewed via my flickr profile (&lt;a href="http://www.flickr.com/photos/gavz"&gt;http://www.flickr.com/photos/gavz&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Joanne started writing a travel diary, so I'm just going to cut and paste that into this post:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;Arrived in KL after over 24hr of travelling!!  Gav and I did not get much sleep on the plane, however, did get to see the top of a thunder storm on our way in which was just magnificent!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;It took us no time to clear customs and did not even have our bags x-rayed on entering the country.  We had out ‘pilot’ drive us in a lovely Merc from the airport to the hotel, most people here drive locally made cars as imported cars have a 300% tax on them!! &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;Our ‘pilot’ was a lovely guy who spoke a bit of English and was looking forward to visiting Melbourne one day.  He pointed out all the interesting places and educated us in the difference between coconut trees and palm trees.  The trip took us almost an hour and that was without the traffic.  When we did hit town it was a bit of a scary drive.  We were passing within centimetres of each other, however not once did anyone beep or get upset with another driver.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;We did safely make it to our hotel, which is in the centre of the shopping district.  We have the ‘best’ mall right across the road, the Pavilion, which has 6 levels of shops.  Many of them are well known international brands.  Shops here open at 10am and do not close until 10pm every night.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;We were not able to check into our room straight away unless we wanted to change to a twin room with 2 single beds.  Lets just say the look on Gav’s face said it all!!  So although I would have sold my first born child for a shower and a bed we opted to explore for the morning and pop back at noon to check in.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;We decided to walk over to the Petronas Twin Towers, which was great fun in 30 something with humidity hovering around 90%.  The walk took us approximately 20 minutes, as we did not know exactly were we were going just kept looking up and walking.  On the way, we were accosted by a monk.  He wanted us to donate $200 to help him build their monastery, we got out of that one however probably have like 10 years bad luck!!!  We now run from any monk we see, and you all thought the hawkers in Civic were bad!!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;We got to the towers and joined the queue to get up, when we arrived they were giving out tickets for the 9:30 am tour by the time we got to the front of the queue it was the 12:45 tour.  However we were told to go over and queue immediately to go up and we managed to get on a 10:00 trip even though our final ticket said 6:30.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;The tour begins with a 3D presentation telling you how great the Petronas company is.  We then het to jump into a double decker lift to take us up to the 41 floor.  The lift was an express lift and gets you there in approx 40 seconds.  We got 10 minutes on the lower deck to take photos and ask questions.  The view was great however not what we expected.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;We got back to our hotel at about 12:30 and we were able to get into our room, complete with king bed!!  The long awaited shower was only moments away!!  Our room has a great view of the towers, although not for much longer.  They are building apartments on top of the Pailion shopping center which are now partially blocking the view. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;Enjoyed a nana nap before heding back out to collect groceries.  We went into this great herbal shop which had jars full of weird and wonderful dried remedies from shark fin to swallow nest. &lt;/span&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;So many different influences and definitely not what we were expecting almost everyone here speaks English, almost all of the signs are in English.  We were expecting a bit of a culture shock but it feels like we never left Australia.&lt;br /&gt;&lt;br /&gt;Oh well lets see what day 2 holds for us!!!&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-6397519234949062212?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/6397519234949062212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=6397519234949062212' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6397519234949062212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6397519234949062212'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/05/kl-day-1.html' title='KL - Day 1 &quot;Towers, Shops and Con-Artist Monks&quot;'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-7289752472015627677</id><published>2008-04-19T20:12:00.007+10:00</published><updated>2008-04-19T20:30:28.445+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='barcampcanberra'/><category scheme='http://www.blogger.com/atom/ns#' term='community'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='barcamp'/><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'>BarCamp Canberra</title><content type='html'>Just got back from attending BarCamp Canberra #1. BarCamp is an unconference, where the attendees provide all of the content, it's free  relying on sponsorship from some very generous companies. Everyone had a great time - it was essentially a day of lightning talks covering software design, web 2.0, software development and werewolf hunting.&lt;br /&gt;&lt;br /&gt;I presented a talk on the "three firefox extensions you can not live without" - del.icio.us bookmarks, GTDInbox and Yubnub firefox extension. The audience got involved and discussed their favourite extensions, a good time was had by all. Later in the day I co-presented on GTD - the David Allen "Getting Things Done" methodology.&lt;br /&gt;&lt;br /&gt;I really can't wait until the next barcamp, it was un-pretentious and fun - I can see why barcamps are gaining popularity globally.&lt;br /&gt;&lt;br /&gt;Links:&lt;br /&gt;&lt;a href="http://barcamp.org/BarCampCanberra"&gt;http://barcamp.org/BarCampCanberra&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;All photos from the conference are on Flickr, all presentations are on Slideshare, and all videos are hosted on YouTube; with the tag &lt;span style="font-weight: bold;"&gt;BarCampCanberra&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-7289752472015627677?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/7289752472015627677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=7289752472015627677' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7289752472015627677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/7289752472015627677'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/04/barcamp-canberra.html' title='BarCamp Canberra'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-6231044125336696845</id><published>2008-03-25T08:37:00.002+11:00</published><updated>2008-04-06T16:41:11.707+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cars'/><category scheme='http://www.blogger.com/atom/ns#' term='shopping'/><category scheme='http://www.blogger.com/atom/ns#' term='subaru'/><title type='text'>New Car - Subaru Outback</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Rh_Q8wrCkhY&amp;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/Rh_Q8wrCkhY&amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;p&gt;Jo and I recently bought a new car - MY05 Subaru Outback 3.0R Premium. Here is the Top Gear review.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-6231044125336696845?l=www.gavinj.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gavinj.net/feeds/6231044125336696845/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=604531558151037478&amp;postID=6231044125336696845' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6231044125336696845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/604531558151037478/posts/default/6231044125336696845'/><link rel='alternate' type='text/html' href='http://www.gavinj.net/2008/03/new-car-subaru-outback.html' title='New Car - Subaru Outback'/><author><name>gavz</name><uri>http://www.blogger.com/profile/11324240099575871121</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://2.bp.blogspot.com/-1pklrnr-HL4/Tne_uT3DlxI/AAAAAAAAA-I/a5yeZ0a2gbE/s220/gav_james_beach.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-604531558151037478.post-7386644637780348857</id><published>2008-03-12T17:20:00.004+11:00</published><updated>2008-03-12T17:32:08.401+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='performance testing'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>JMeter - Stress and Volume Testing on a budget</title><content type='html'>I've been interested in the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;JMeter&lt;/span&gt; project for quite some time. It's an open source framework that you can use to perform stress and volume testing of web applications (in fact, it's much more flexible than that - you can also point it at databases and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;JEE&lt;/span&gt; objects).&lt;br /&gt;&lt;br /&gt;It appears to offer some of the functionality provided by the Load Runner stress and volume testing suite (which costs big $$$), including coordinating a number of load generation servers to hit a web application, ramp up and ramp down load generation to simulate different usage patterns, attach timers to key events and (most importantly) collect and analyse the results.&lt;br /&gt;&lt;br /&gt;To build your test cases it has a proxy server that records the http traffic between your browser and the web application server. One downside to this proxy server is the lack of support for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;SSL&lt;/span&gt; (which is almost always used in many enterprise web applications).&lt;br /&gt;&lt;br /&gt;One thought I was having was to use Selenium to record https sessions (as it is embedded directly into &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;firefox&lt;/span&gt;), it would then be a simple translation process to convert the selenium scripts into &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;JMeter&lt;/span&gt; test cases.&lt;br /&gt;&lt;br /&gt;Another thought I was having was to use &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;stunnel&lt;/span&gt; to connect to the https server and use the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;jmeter&lt;/span&gt; proxy through an unencrypted local interface.&lt;br /&gt;&lt;br /&gt;Anyways, will let you know how I go with my testing ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/604531558151037478-73866446
