This feed does not validate.

In addition, interoperability with the widest range of feed readers could be improved by implementing the following recommendation.


  1. <br />
  2. <b>Warning</b>:  Parameter 1 to photopress_actions::pp_add_query_var() expected to be a reference, value given in <b>/home/jricketson/</b> on line <b>286</b><br />
  3. <br />
  4. <b>Warning</b>:  Invalid argument supplied for foreach() in <b>/home/jricketson/</b> on line <b>289</b><br />
  5. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
  6. <html xmlns="">
  7. <head profile="">
  8. <title>
  9. Totally Random </title>
  11. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  12. <meta name="generator" content="WordPress 4.9" /> <!-- leave this for stats please -->
  13. <meta name="author" content="Ajay D'Souza" />
  14. <style type="text/css" media="screen">
  15. @import url( );
  16. </style>
  17. <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="" />
  18. <link rel="alternate" type="text/xml" title="RSS .92" href="" />
  19. <link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="" />
  21. <link rel="pingback" href="" />
  22. <link rel='archives' title='May 2009' href='' />
  23. <link rel='archives' title='February 2008' href='' />
  24. <link rel='archives' title='January 2008' href='' />
  25. <link rel='archives' title='April 2006' href='' />
  26. <link rel='archives' title='March 2006' href='' />
  27. <link rel="shortcut icon" href="" />
  28. <link rel='dns-prefetch' href='//' />
  29. <script type="text/javascript">
  30. window._wpemojiSettings = {"baseUrl":"https:\/\/\/images\/core\/emoji\/2.3\/72x72\/","ext":".png","svgUrl":"https:\/\/\/images\/core\/emoji\/2.3\/svg\/","svgExt":".svg","source":{"concatemoji":"http:\/\/\/wp-includes\/js\/wp-emoji-release.min.js?ver=4.9"}};
  31. !function(a,b,c){function d(a,b){var c=String.fromCharCode;l.clearRect(0,0,k.width,k.height),l.fillText(c.apply(this,a),0,0);var d=k.toDataURL();l.clearRect(0,0,k.width,k.height),l.fillText(c.apply(this,b),0,0);var e=k.toDataURL();return d===e}function e(a){var b;if(!l||!l.fillText)return!1;switch(l.textBaseline="top",l.font="600 32px Arial",a){case"flag":return!(b=d([55356,56826,55356,56819],[55356,56826,8203,55356,56819]))&&(b=d([55356,57332,56128,56423,56128,56418,56128,56421,56128,56430,56128,56423,56128,56447],[55356,57332,8203,56128,56423,8203,56128,56418,8203,56128,56421,8203,56128,56430,8203,56128,56423,8203,56128,56447]),!b);case"emoji":return b=d([55358,56794,8205,9794,65039],[55358,56794,8203,9794,65039]),!b}return!1}function f(a){var c=b.createElement("script");c.src=a,c.defer=c.type="text/javascript",b.getElementsByTagName("head")[0].appendChild(c)}var g,h,i,j,k=b.createElement("canvas"),l=k.getContext&&k.getContext("2d");for(j=Array("flag","emoji"),c.supports={everything:!0,everythingExceptFlag:!0},i=0;i<j.length;i++)c.supports[j[i]]=e(j[i]),c.supports.everything=c.supports.everything&&c.supports[j[i]],"flag"!==j[i]&&(c.supports.everythingExceptFlag=c.supports.everythingExceptFlag&&c.supports[j[i]]);c.supports.everythingExceptFlag=c.supports.everythingExceptFlag&&!c.supports.flag,c.DOMReady=!1,c.readyCallback=function(){c.DOMReady=!0},c.supports.everything||(h=function(){c.readyCallback()},b.addEventListener?(b.addEventListener("DOMContentLoaded",h,!1),a.addEventListener("load",h,!1)):(a.attachEvent("onload",h),b.attachEvent("onreadystatechange",function(){"complete"===b.readyState&&c.readyCallback()})),g=c.source||{},g.concatemoji?f(g.concatemoji):g.wpemoji&&g.twemoji&&(f(g.twemoji),f(g.wpemoji)))}(window,document,window._wpemojiSettings);
  32. </script>
  33. <style type="text/css">
  34. img.wp-smiley,
  35. img.emoji {
  36. display: inline !important;
  37. border: none !important;
  38. box-shadow: none !important;
  39. height: 1em !important;
  40. width: 1em !important;
  41. margin: 0 .07em !important;
  42. vertical-align: -0.1em !important;
  43. background: none !important;
  44. padding: 0 !important;
  45. }
  46. </style>
  47. <link rel='' href='' />
  48. <link rel="EditURI" type="application/rsd+xml" title="RSD" href="" />
  49. <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="" />
  50. <meta name="generator" content="WordPress 4.9" />
  51. <script type="text/javascript" src="/lightbox2/js/prototype.js"></script>
  52. <script type="text/javascript" src="/lightbox2/js/scriptaculous.js?load=effects"></script>
  53. <script type="text/javascript" src="/lightbox2/js/lightbox.js"></script>
  54. <link rel="stylesheet" href="/lightbox2/css/lightbox.css" type="text/css" media="screen" />
  56. </head>
  58. <body>
  59. <div id="rap">
  60. <div id="header">
  61. <ul id="topnav">
  62. <li><a href="" id="navHome" title="Posted Recently" accesskey="h">Home</a> | </li>
  63. <li><a href="/about/" id="navAbout" title="About the Author" accesskey="a">About</a> | </li>
  64. <li><a href="/archives/" id="navArchives" title="Posted Previously" accesskey="r">Archives</a> | </li>
  65. <li><a href="/links/" id="navLinks" title="Recommended Links" accesskey="l">Links</a> | </li>
  66. <li><a href="/contact/" id="navContact" title="Contact the Author" accesskey="c">Contact</a></li>
  67. </ul>
  68. <h1><a href="" title="Totally Random">Totally Random</a></h1>
  69. <div id="desc">Random thoughts by a random guy</div>
  70. </div>
  71. <div id="main">
  72. <div id="content">
  73. <!--- middle (posts) column  content begin -->
  74. <div class="post">
  75. <p class="post-date">Sat 23 May 2009</p>
  76. <div class="post-info">
  77. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: Working on a couple of projects">Working on a couple of projects</a></h2>
  78. <p>Posted by jon under <a href="" rel="category tag">Uncategorized</a> <br/>
  79. <a href="">1 Comment</a></p>
  80. </div>
  81. <div class="post-content">
  82. <p>Well, it has been a long time since I have blogged here (a year?? really?), but I have been working on a couple of things. I have just quit my job to spend more time with my kids and family, and to spend some time on projects that I have been working on.</p>
  83. <p>The first thing is a <a href="">company</a> that I have formed with a couple of friends. We are all <a href="">web developers</a> and are interested in creating interesting things for the internet. One of those projects is a <a href="">budgeting tool</a> for individuals and business.</p>
  84. <p>So all further news about those two projects will be on the <a href="">redredred website</a>, and this will continue to be for personal things.</p>
  85. <div class="post-info">
  86. </div>
  87. <!--
  88. <rdf:RDF xmlns:rdf=""
  89. xmlns:dc=""
  90. xmlns:trackback="">
  91. <rdf:Description rdf:about=""
  92.    dc:identifier=""
  93.    dc:title="Working on a couple of projects"
  94.    trackback:ping="" />
  95. </rdf:RDF> -->
  96. <div class="post-footer">&nbsp;</div>
  97. </div> </div>
  98. <div class="post">
  99. <p class="post-date">Thu 28 Feb 2008</p>
  100. <div class="post-info">
  101. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: EvolveJs assembly code explained">EvolveJs assembly code explained</a></h2>
  102. <p>Posted by jon under <a href="" rel="category tag">code</a>, <a href="" rel="category tag">javascript</a>, <a href="" rel="category tag">Technical</a> <br/>
  103. <a href="">No Comments</a></p>
  104. </div>
  105. <div class="post-content">
  106. <p>Each animal in EvolveJs is written in a specialised assembly code. This assembly language was designed with some inspiration from <a href="">Tierra</a>. Each thread is essentially a stack machine and each operation operates on that stack.<br />
  107. An assembly operation is a pair of [operation, operand].</p>
  108. <p>One of the key concepts is in markers used for jumping. To make the animal&#8217;s code more robust to modification, all jump targets (such as for loops and branches) are marked as a series of <i>nop</i>s, and the jump command specifies the jump target as the number of <em>nop</em>s to search for.</p>
  109. <p>So as a concrete example I will show a simple process that can reproduce itself.</p>
  110. <p>This is the <i>5</i> label. The <i>nop</i> function does not require an argument, so is by convention set to 0.<br />
  111. <code><br />
  112. ["nop",0],["nop",0],["nop",0],["nop",0],["nop",0], //label 5<br />
  113. </code></p>
  114. <p>Now we initialise the read pointer to point to the start of the parent, and the write pointer to point to the end of the parent. The <i>jmp*PtrB</i> functions jump the pointer to the start of the <i>nop</i> template, and the <i>jmp*PtrF</i> functions jump to the end of the <i>nop</i> template. In this code all templates are unique, but it is not necessarily so. The<em> jmp*PtrF</em> functions search forward and wrap around, and the <em>jmp*PtrB</em> functions search backward and wrap around.<br />
  115. <code><br />
  116. ["jmpReadPtrB",5], //jmp to start of template 5<br />
  117. ["jmpWritePtrF",2], //jmp to end of template 2<br />
  118. </code></p>
  119. <p>Get the parents memory size, allocate memory at the end of the parent, and move the write pointer to the start of the new memory.<br />
  120. <code><br />
  121. ["pushMemSize",0],<br />
  122. ["alloc",0],<br />
  123. ["incWritePtr",0], //inc write pointer to start of new animal<br />
  124. </code></p>
  125. <p>The copy loop. Copy from the read pointer to the write pointer, and increment both pointers.<br />
  126. <code><br />
  127. ["nop",0], //start copy loop<br />
  128. ["copy",0],<br />
  129. ["incReadPtr",0],<br />
  130. ["incWritePtr",0],<br />
  131. </code></p>
  132. <p>Push the value for the write pointer and the animals total memory size (including the new child memory) to the stack and compare them using the <i>lt</i> operator.<br />
  133. <code><br />
  134. ["pushWritePtr",0],<br />
  135. ["pushMemSize",0], //if writeptr < memSize
  136. ["lt",0],
  137. </code><br />
  138. Then, if write pointer is less than memory size, jump back to start of template 1.<br />
  139. If write pointer is not  less than memory size, then the execution pointer gets incremented by 1 + operand (in this case 1), which means that the copying process has finished.<br />
  140. <code><br />
  141. ["ifdo",1],<br />
  142. ["jmpB",1], //if not finished copying<br />
  143. </code></p>
  144. <p>This is the division loop. When a parent divides, the parent attempts to put the child in the square immediately in front of them. If this position is already occupied, then division fails, and the parent gets to try again.<br />
  145. <code><br />
  146. ["nop",0],["nop",0],["nop",0],["nop",0],["nop",0],["nop",0], //template 6<br />
  147. </code><br />
  148. Divide attempts division and pushes a boolean result onto the stack indicating success. If division succeeds, then jump all the way back to template 5, and start making a new baby.<br />
  149. <code><br />
  150. ["divide",0],<br />
  151. ["ifdo",1],<br />
  152. ["jmpB",5], //if division successful<br />
  153. </code><br />
  154. Here, we are using one of those <i>nop</i> templates to store data.<br />
  155. The memory pointer jumps to the first memory address in the <em>6</em>template. The data that is stored in the operand is pushed onto the stack, incremented, stored back in the memory slot and compared to 4 (number of cardinal directions)<br />
  156. <code><br />
  157. ["jmpMemPtrB",6],// jump the mem pointer to a location to store some data<br />
  158. ["pushM",0],<br />
  159. ["add",1],<br />
  160. ["popM",0],<br />
  161. ["pushM",0],<br />
  162. ["push",4],<br />
  163. ["gte",0],<br />
  164. </code><br />
  165. If it has already tried this 4 times, then this animal is surrounded and can't reproduce at the moment. So it sleeps, and we reset the counter. Otherwise, the <em>ifdo,3</em> increments the execution pointer by an extra 3.<br />
  166. <code><br />
  167. ["ifdo",3],<br />
  168. ["sleep",450],<br />
  169. ["push",0],<br />
  170. ["popM",0],<br />
  171. </code><br />
  172. The divide didn't work, try again facing in a new direction.<br />
  173. <code><br />
  174. ["turnR",0], //turn around and try again<br />
  175. ["jmpB",6],<br />
  176. </code><br />
  177. The end tag<br />
  178. <code><br />
  179. ["nop",0],["nop",0]</p>
  180. <p></code></p>
  181. <div class="post-info">
  182. </div>
  183. <!--
  184. <rdf:RDF xmlns:rdf=""
  185. xmlns:dc=""
  186. xmlns:trackback="">
  187. <rdf:Description rdf:about=""
  188.    dc:identifier=""
  189.    dc:title="EvolveJs assembly code explained"
  190.    trackback:ping="" />
  191. </rdf:RDF> -->
  192. <div class="post-footer">&nbsp;</div>
  193. </div> </div>
  194. <div class="post">
  195. <p class="post-date">Tue 26 Feb 2008</p>
  196. <div class="post-info">
  197. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: About evolveJs">About evolveJs</a></h2>
  198. <p>Posted by jon under <a href="" rel="category tag">code</a>, <a href="" rel="category tag">javascript</a>, <a href="" rel="category tag">Technical</a> <br/>
  199. <a href="">No Comments</a></p>
  200. </div>
  201. <div class="post-content">
  202. <p>This application is a &#8220;proof of concept&#8221; evolution simulator. Each animal (process) has the following properties</p>
  203. <ul>
  204. <li>Memory: This is both readable and writable memory addresses starting from address 0 for each animal.</li>
  205. <li>Threads: Each animal can have multiple threads that communicate via it&#8217;s memory.</li>
  206. <li>CpuTime: Each animal is granted cputime by it&#8217;s parent when it is born, and after that is given cputime by the environment (like sunshine) each cycle.</li>
  207. <li>Position: Each animal has a current position in the grid</li>
  208. <li>Direction: Each animal is pointing in a certain direction (this is not currently shown in the display.</li>
  209. </ul>
  210. <p>               Each thread in each animal has the following properties:</p>
  211. <ul>
  212. <li>Stack: this is essentially current memory. Operations can put information on the stack, manipulate the top item on the stack, or pop information off the stack.</li>
  213. <li>Execution Pointer: Each thread is executing the same program, but potentially at a different address (different function) in memory.</li>
  214. <li>Read Pointer and Write Pointer: These are used for copying operations.</li>
  215. <li>Memory Pointer: This is used for writing operands only.</li>
  216. <li>Speed: An animal can choose to operate faster, multiple operations per second. This is expensive for the animal.</li>
  217. <li>SleepCycles: The thread can sleep for a set number of cycles. It will be woken when this counter reaches 0.</li>
  218. </ul>
  219. <p>               There have so far been two Ancestors created:</p>
  220. <ol>
  221. <li>A simple non-mobile vegetable. This has a single thread that is devoted to reproduction.<br />
  222.                  Once all 8 slots around the animal are full, it sleeps for a period and then checks again.
  223.                  </li>
  224. <li>A simple mobile vegetable. This has two threads: one is devoted to reproduction, the other moves in a straight line forever.<br />
  225.                  When it reproduces, it turns right.
  226.                  </li>
  227. </ol>
  228. <p>               Animals reproduce by allocating memory at the end of their memory, then copying their code into the new memory, and then dividing the new memory.<br />
  229.               This creates a new process.<br />
  230.               The copying process has a non-0 random chance of failing to accurately copy the data requested.<br />
  231.               This results in the child not always being the same as the parent, and the chance for evolution is created.<br />
  232.               Successful species (when a species has had enough animals with the same code, occurs at powers of 10) are sent to the server.<br />
  233.               When the application starts it requests the 10 best animals from the server.<br />
  234.               Things you can do:</p>
  235. <ul>
  236. <li>Click on an individual to see information about it on the &#8220;Process Details&#8221; tab</li>
  237. <li>View code of species on server to see what has evolved from the &#8220;Progenitors&#8221;</li>
  238. </ul>
  239. <p>               Future features:</p>
  240. <ul>
  241. <li>Ability to examine the code of any individual.</li>
  242. <li>Allow the user to insert new processes (with new code) into the environment.</li>
  243. </ul>
  244. <div class="post-info">
  245. </div>
  246. <!--
  247. <rdf:RDF xmlns:rdf=""
  248. xmlns:dc=""
  249. xmlns:trackback="">
  250. <rdf:Description rdf:about=""
  251.    dc:identifier=""
  252.    dc:title="About evolveJs"
  253.    trackback:ping="" />
  254. </rdf:RDF> -->
  255. <div class="post-footer">&nbsp;</div>
  256. </div> </div>
  257. <div class="post">
  258. <p class="post-date">Tue 22 Jan 2008</p>
  259. <div class="post-info">
  260. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: Liam turns two">Liam turns two</a></h2>
  261. <p>Posted by jon under <a href="" rel="category tag">Family</a>, <a href="" rel="category tag">Liam</a> <br/>
  262. <a href="">No Comments</a></p>
  263. </div>
  264. <div class="post-content">
  265. <p>Liam turned two recently and he had a birthday party. Some of his friends from childcare came and we all had lots of fun. I was a bit worried about what it would be like having 10-15 2 year olds at our house, but nothing major was broken and we had lots of time to play and to talk with the adults too!</p>
  266. <p>Liam is fully into sentences now. His first sentence (about August last year) was on one of my Fridays off, I was lying in bed and he came in and asked &quot;Chase pigeons in park today?&quot; (still one of his favourite hobbies). How could I say no? He has five very good friends that he has met at childcarre. His first girlfriend (Molly) moved away to Brighton, but she was able to come to his party and they instantly fell into their old play and trashed the back yard and their clothes. Isabella and Hamish are high-energy twins, Lola is Liams new girlfriend at childcare and Mac is his big friend (he weighs about 50% more than Liam&#8230;) </p>
  267. <p>It isn&#39;t long until we have a new baby and we have been trying to prepare Liam for it. He knows that &quot;mummy has a baby in there&quot;, but he doesn&#39;t really grasp that it is going to come out and wreck his life. I feel sorry for him, not realising the huge changes that are coming. It has been a great 2 years though.</p>
  268. <p>Here are some photos from when we were in japan recently and from his birthday party on the weekend. </p>
  269. <p>&nbsp;</p>
  270. <p><a href="" rel="lightbox[liam2]"> <img src="" border="0" /></a><a href="" rel="lightbox[liam2]"> <img src="" border="0" /></a><a href="" rel="lightbox[liam2]"> <img src="" border="0" /></a><a href='' title='IMG 6255'  rel="lightbox[liam2]"><img src='' alt='IMG 6255' class='pp_image' /></a><a href='' title='IMG 6254'  rel="lightbox[liam2]"><img src='' alt='IMG 6254' class='pp_image' /></a><a href='' title='IMG 6250'  rel="lightbox[liam2]"><img src='' alt='IMG 6250' class='pp_image' /></a><a href='' title='IMG 6249'  rel="lightbox[liam2]"><img src='' alt='IMG 6249' class='pp_image' /></a><a href='' title='IMG 6248'  rel="lightbox[liam2]"><img src='' alt='IMG 6248' class='pp_image' /></a><a href='' title='IMG 6247'  rel="lightbox[liam2]"><img src='' alt='IMG 6247' class='pp_image' /></a><a href='' title='IMG 6243 2'  rel="lightbox[liam2]"><img src='' alt='IMG 6243 2' class='pp_image' /></a></p>
  271. <div class="post-info">
  272. </div>
  273. <!--
  274. <rdf:RDF xmlns:rdf=""
  275. xmlns:dc=""
  276. xmlns:trackback="">
  277. <rdf:Description rdf:about=""
  278.    dc:identifier=""
  279.    dc:title="Liam turns two"
  280.    trackback:ping="" />
  281. </rdf:RDF> -->
  282. <div class="post-footer">&nbsp;</div>
  283. </div> </div>
  284. <div class="post">
  285. <p class="post-date">Sun 20 Jan 2008</p>
  286. <div class="post-info">
  287. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: Evolution in javascript">Evolution in javascript</a></h2>
  288. <p>Posted by jon under <a href="" rel="category tag">code</a>, <a href="" rel="category tag">javascript</a>, <a href="" rel="category tag">Technical</a> <br/>
  289. <a href="">No Comments</a></p>
  290. </div>
  291. <div class="post-content">
  292. <p>I have been playing with javascript a bit lately, testing out techniques that I might use for doing a full web 2.0 business application (if any clients would agree&#8230;). The application that I have written is a game along the same sort of lines as <a href="" target="_blank" title="RoboCode">RoboCode.&nbsp;</a></p>
  293. <p>It allows users to implement &quot;animals&quot; in custom written assembly code (&quot;genomes&quot;), which compete for resources and can move around and eat each other. I have currently written two simple genome, a vegetable (it doesn&#39;t move) and a predator (it does move). They are both using almost the simplest algorithms for each of these tasks as possible.</p>
  294. <p>The animals run virtual cpu&#39;s and also implement virtual threading. The predator animal has a reproductive thread and a movement thread. The vegetable has only a reproductive thread. And as the last real feature, the animals also have a non-zero chance of their mem-copy commands (part of the requirement of reproduction) failing to copy correctly. This introduces mutations and hopefully mutation. </p>
  295. <p>The javascript application is backed on the server by a ruby on rails application that stores successful animals (animals that survive to reproduce).</p>
  296. <p>I have a few problems with the current implementation that limits it&#39;s usefulness. </p>
  297. <ol>
  298. <li>First, the application is pretty slow. It runs at about 600hz on my computer in firefox 3b2. (This means that it executes 500 virtual cpu instructions per second.) Compare this to my actual machine running at 2 billion instructions per second, and there is a factor of 4 million difference. Some of this can be explained by the fact that each virtual instruction is implemented as a block of javascript code that does stuff to memory in the cpu. Some more is probably explained by me not using javascript to its full potential. The rest must be explained by javascript being s l o w. I have used firebug to do some profiling of the code to find hotspots and have been able to find some issues. To make the evolution part of the application do anything useful it would need to be 10x faster at least. But I think that to make it a factor of 10 faster i would need to radically change the architecture. </li>
  299. <li>Another issue is that the application occasionally just freezes. I imagine it is doing some sort of garbage collection in the background. I would love to be able to get more control over this, so that I could see what was happening, or at least predict when it might happen. </li>
  300. </ol>
  301. <p>These are the same issues that I would face implementing a large javascript client in a web 2.0 application, so I am glad to have found them now rather than later. </p>
  302. <p><a href="" title="Evolution">An early alpha version</a> (where it isn&#39;t possible to inject new animals into the application, except by editing the source directly, and the server communication isn&#39;t working properly) is available. The source is all on the page in easily read code, if anyone is interested. </p>
  303. <div class="post-info">
  304. </div>
  305. <!--
  306. <rdf:RDF xmlns:rdf=""
  307. xmlns:dc=""
  308. xmlns:trackback="">
  309. <rdf:Description rdf:about=""
  310.    dc:identifier=""
  311.    dc:title="Evolution in javascript"
  312.    trackback:ping="" />
  313. </rdf:RDF> -->
  314. <div class="post-footer">&nbsp;</div>
  315. </div> </div>
  316. <div class="post">
  317. <p class="post-date">Sat 29 Apr 2006</p>
  318. <div class="post-info">
  319. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: My Firefox extensions">My Firefox extensions</a></h2>
  320. <p>Posted by jon under <a href="" rel="category tag">Technical</a> <br/>
  321. <a href="">1 Comment</a></p>
  322. </div>
  323. <div class="post-content">
  324. <p>Firefox is a <strong>much</strong> better browser than MS Internet Explorer. It has lots of little benefits for me:</p>
  325. <ul>
  326. <li>Tabbed browsing</li>
  327. <li>More standards compliant</li>
  328. <li>Easier to develop in</li>
  329. <li>Better bookmark management</li>
  330. </ul>
  331. <p>and there are plenty more. But the main benefit is the extensions. The things that you can do with them are amazing. Literally changing your browser into whatever you want it to be. Optimising your web browsing experience for whatever you think is easiest.</p>
  332. <p>Here is a list of the extensions that I have installed:</p>
  333. <ul>
  334. <li><a href="" title="Filters ads from web-pages">Adblock</a></li>
  335. <li><a href="" title="Synchronizes Adblock with Filterset.G">Adblock Filterset.G Updater</a></li>
  336. <li><a href="" title="A simple, clean and streamlined theme.">BlackJapan</a> 1.15</li>
  337. <li><a href="" title="Bypass compulsory web registration with the context menu via">BugMeNot</a> 1.3</li>
  338. <li><a href="" title="Advanced Eyedropper, ColorPicker, Page Zoomer and other colorful goodies.">ColorZilla</a> 0.8.2</li>
  339. <li><a href="" title="View and manage downloads from a tidy statusbar">Download Statusbar</a> 0.9.4</li>
  340. <li><a href=";q=Enhanced%20History%20Manager" title="Search Google for Enhanced History Manager">Enhanced History Manager</a></li>
  341. <li><a href="" title="A Statusbar with Speed, Percentage, Time and loaded size (like Opera&#39;s one)">Extended Statusbar</a> 1.2.4</li>
  342. <li><a href="" title="Get international weather forecasts and display it in any toolbar or statusbar with this highly customizable extension.">Forecastfox</a></li>
  343. <li><a href="" title="The Googlebar for Firefox">googlebar</a></li>
  344. <li><a href="" title="A User Script Manager for Firefox">Greasemonkey</a> 0.6.4</li>
  345. <li><a href="" title="Translates the selected text via Google Translate.">gTranslate</a> 0.2.7</li>
  346. <li><a href="" title="Enables you to use the embedded IE engine within Mozilla/Firefox.">IE Tab</a> 1.0.9</li>
  347. <li><a href="" title="Adds zoom functionality for images">Image Zoom</a> 0.2.4</li>
  348. <li><a href="" title="Allows tab navigation in a most recently used manner.">LastTab</a> 1.5.1</li>
  349. <li><a href="" title="Outputs an alphabetical list of extensions to a text, vB code, or HTML file.">ListZilla</a> 0.7</li>
  350. <li><a href="" title="Displays your internet usage on a tool item.">Net Usage Item</a> 0.8.4</li>
  351. <li><a href="" title="Magically restores your last browsing session.">SessionSaver .2</a></li>
  352. <li><a href="" title="Sorts the lists of installed extensions and themes alphabetically.">Sort Extensions and Themes</a> 3.0.3</li>
  353. <li><a href="" title="StumbleUpon Toolbar">StumbleUpon</a> 2.61</li>
  354. <li><a href="" title="Provides visual cues for the destinations of hyperlinks.">TargetAlert</a></li>
  355. <li><a href="" title="Notifies you when updates are availabe for your extensions and themes.">Update Notifier</a> 0.1.2</li>
  356. <li><a href="" title="Creates a Colorful Chart of a Webpage&#39;s Rendered Source">View Source Chart</a> 2.0.02</li>
  357. <li><a href="" title="To manage proxy ezly.">xyzproxy</a> 1.12</li>
  358. </ul>
  359. <div class="post-info">
  360. </div>
  361. <!--
  362. <rdf:RDF xmlns:rdf=""
  363. xmlns:dc=""
  364. xmlns:trackback="">
  365. <rdf:Description rdf:about=""
  366.    dc:identifier=""
  367.    dc:title="My Firefox extensions"
  368.    trackback:ping="" />
  369. </rdf:RDF> -->
  370. <div class="post-footer">&nbsp;</div>
  371. </div> </div>
  372. <div class="post">
  373. <p class="post-date">Sat 29 Apr 2006</p>
  374. <div class="post-info">
  375. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: Word Press Challenge Manager Plugin">Word Press Challenge Manager Plugin</a></h2>
  376. <p>Posted by jon under <a href="" rel="category tag">Technical</a>, <a href="" rel="category tag">WordPress</a> <br/>
  377. <a href="">[9] Comments</a></p>
  378. </div>
  379. <div class="post-content">
  380. <p><a href="/wp-content/uploads/">Challenge Manager</a> is now ready for public use. It is currently being used on <a href="" target="_blank">selfPortraitChallenge</a> and <a href="" target="_blank">Whipup</a>. </p>
  381. <p>If you are happy with using this plugin, please link back to me on your blog, and put your address in the comments. I&#39;ll add a blog entry soon listing all the people that are using it.</p>
  382. <p>Please put all feedback into the comments. I will try to be prompt with replies. </p>
  383. <p>Thanks&nbsp;</p>
  384. <div class="post-info">
  385. </div>
  386. <!--
  387. <rdf:RDF xmlns:rdf=""
  388. xmlns:dc=""
  389. xmlns:trackback="">
  390. <rdf:Description rdf:about=""
  391.    dc:identifier=""
  392.    dc:title="Word Press Challenge Manager Plugin"
  393.    trackback:ping="" />
  394. </rdf:RDF> -->
  395. <div class="post-footer">&nbsp;</div>
  396. </div> </div>
  397. <div class="post">
  398. <p class="post-date">Thu 27 Apr 2006</p>
  399. <div class="post-info">
  400. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: Switching my parents to Ubuntu">Switching my parents to Ubuntu</a></h2>
  401. <p>Posted by jon under <a href="" rel="category tag">Family</a>, <a href="" rel="category tag">Technical</a> <br/>
  402. <a href="">1 Comment</a></p>
  403. </div>
  404. <div class="post-content">
  405. <p>Well, it turned out to be remarkably simple to switch my not very technically adept parents from Windows XP to Ubuntu (Breezy Badger). We did this on the basis that it was getting increasingly difficult to manage their computer difficulties from Melbourne, and their Windows XP installation was incredibly <a href="" target="_blank">spamware</a> and <a href="" target="_blank">adware</a> ridden. </p>
  406. <p>So at the moment I have put Ubuntu on as a second boot option, just in case they ABSOLUTELY NEED TO use windows. But they tell me that they are only using Ubuntu.&nbsp; In Linux, I have given their user accounts the standard (low) level of access, and I have made sure that I can get ssh access externally. Now I just need to set up VNC and dynamic domain registration so that I don&#39;t have to keep getting dad to lookup his modems external IP address.</p>
  407. <p>Mark that one up as another successful switch to Linux. It was a lot easier than I thought. Their main applications that they used are Firefox, Outlook and some Microsoft Word.&nbsp; </p>
  408. <div class="post-info">
  409. </div>
  410. <!--
  411. <rdf:RDF xmlns:rdf=""
  412. xmlns:dc=""
  413. xmlns:trackback="">
  414. <rdf:Description rdf:about=""
  415.    dc:identifier=""
  416.    dc:title="Switching my parents to Ubuntu"
  417.    trackback:ping="" />
  418. </rdf:RDF> -->
  419. <div class="post-footer">&nbsp;</div>
  420. </div> </div>
  421. <div class="post">
  422. <p class="post-date">Sun 23 Apr 2006</p>
  423. <div class="post-info">
  424. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: Grandma at Easter">Grandma at Easter</a></h2>
  425. <p>Posted by jon under <a href="" rel="category tag">Family</a>, <a href="" rel="category tag">Liam</a> <br/>
  426. <a href="">No Comments</a></p>
  427. </div>
  428. <div class="post-content">
  429. <p>Liam spent some time with Grandma in Canberra at Easter</p>
  430. <p> <a href=""><img src="" border="0" alt="none" title="none" width="250" height="187" /></a><a href=""><img src="" border="0" width="250" height="187" /></a><a href=""><img src="" border="0" width="250" height="187" /></a><a href=""><img src="" border="0" width="250" height="187" /></a><a href=""><img src="" border="0" width="250" height="187" /></a><a href=""><img src="" border="0" width="250" height="187" /></a></p>
  431. <div class="post-info">
  432. </div>
  433. <!--
  434. <rdf:RDF xmlns:rdf=""
  435. xmlns:dc=""
  436. xmlns:trackback="">
  437. <rdf:Description rdf:about=""
  438.    dc:identifier=""
  439.    dc:title="Grandma at Easter"
  440.    trackback:ping="" />
  441. </rdf:RDF> -->
  442. <div class="post-footer">&nbsp;</div>
  443. </div> </div>
  444. <div class="post">
  445. <p class="post-date">Tue 4 Apr 2006</p>
  446. <div class="post-info">
  447. <h2 class="post-title"><a href="" rel="bookmark" title="Permanent Link: A Tricky family update &#8211; 13 weeks into parenthood">A Tricky family update &#8211; 13 weeks into parenthood</a></h2>
  448. <p>Posted by Tam under <a href="" rel="category tag">Family</a>, <a href="" rel="category tag">Liam</a> <br/>
  449. <a href="">No Comments</a></p>
  450. </div>
  451. <div class="post-content">
  452. <p>We love being parents to Liam more and more each day.  He continues to surprise and delight us with his ever emerging personality.  Gone is the redness of his newborn skin; his skin is now a pale chickeny colour, so I have started to call him chicken chop.Overall, I still think he&#39;s pretty laid back, and is happy most of the time.  In the past couple of weeks, his development seems to have surged:  all of a sudden he has become quite a talker, starting out cooing, and now actively gurgling with me every day.  In the evening he talks earnestly of his big day, his back resting on Jon&#39;s legs and looking into Jon&#39;s face.  I have attached a toy, which contains a mirror, among other things, to one side of his cot. Encouraged by the smiling face staring back at him, he sometimes wakes me in the mornings by talking to himself in the cot until I get up.  And another recent observation is during &#39;tummy time&#39; on the rug (to build his neck and back muscles).  He now manages easily to hold his head up in the prone position, and can, just, commando crawl toward my voice and a toy.  By the end of 5 minutes, though, he&#39;s pretty exhausted and a frustrated grizzle tells me that he&#39;s had enough.  Recently, Liam&#39;s helped us to realise just how much he enjoys his evening bath.  Observing him beforehand as we undress him on the change table, he gives us wide, eager eyes; sticks his tongue out, and waves his arms and legs madly as if splashing in the bath.  And he has also discovered the thrill of new textures in his mouth.  His fist is frequently in his mouth, making loud sucking noises, and he&#39;ll try to suck on my hand when I hold him upright to burp after a feed.  But he hasn&#39;t quite got the hang of holding on to toys and bringing them up to his mouth.  The saga of managing his food intolerances continues.  I&#39;ve been keeping a food diary with the aim of identifying &#8211; and then avoiding &#8211; foods to which he is sensitive.  I&#39;m pretty sure one of the culprits is one or more of the additives in chocolate, so regrettably have had to eliminate chocolate from my diet for the foreseeable future.  At its worst, he&#39;s had a couple of bouts of bright red blood specks in his poo, which we suspect may be caused by anal fissures (tears) as he strains, due to a severely irritated gut.  Poor love &#8211; I have planned to return to the paediatrician, who I think might refer me to a paediatric allergist.  At 6 months of age, if it hasn&#39;t resolved, it may require some skin prick tests to identify the food/s he is allergic to. <a href="[email protected]/123178630/" onclick="return silas_showOptions(123178630);"><img src="" border="0" alt="IMG_2860 (Large)" width="75" height="75" /> </a><a href="[email protected]/123183422/" onclick="return silas_showOptions(123183422);"><img src="" border="0" alt="IMG_2451" width="75" height="75" /></a><a href="[email protected]/123183380/" onclick="return silas_showOptions(123183380);"> </a><a href="[email protected]/123183380/" onclick="return silas_showOptions(123183380);"><img src="" border="0" alt="IMG_2518" width="75" height="75" /></a><a href="[email protected]/123183380/" onclick="return silas_showOptions(123183380);"> </a><a href="[email protected]/123183304/" onclick="return silas_showOptions(123183304);"><img src="" border="0" alt="IMG_2535" width="75" height="75" /> </a><a href="[email protected]/123183270/" onclick="return silas_showOptions(123183270);"><img src="" border="0" alt="IMG_2543" width="75" height="75" /></a><a href="[email protected]/123183304/" onclick="return silas_showOptions(123183304);"> </a><a href="[email protected]/123183232/" onclick="return silas_showOptions(123183232);"><img src="" border="0" alt="IMG_2563" width="75" height="75" /></a><a href="[email protected]/123183304/" onclick="return silas_showOptions(123183304);"> </a><a href="[email protected]/123183193/" onclick="return silas_showOptions(123183193);"><img src="" border="0" alt="IMG_2577" width="75" height="75" /></a><a href="[email protected]/123183304/" onclick="return silas_showOptions(123183304);"> </a><a href="[email protected]/123183162/" onclick="return silas_showOptions(123183162);"><img src="" border="0" alt="IMG_2583" width="75" height="75" /></a><a href="[email protected]/123183304/" onclick="return silas_showOptions(123183304);"> </a><a href="[email protected]/123183118/" onclick="return silas_showOptions(123183118);"><img src="" border="0" alt="IMG_2707" width="75" height="75" /></a><a href="[email protected]/123183304/" onclick="return silas_showOptions(123183304);"> </a><a href="[email protected]/123183087/" onclick="return silas_showOptions(123183087);"><img src="" border="0" alt="IMG_2732" width="75" height="75" /> </a><a href="[email protected]/123183027/" onclick="return silas_showOptions(123183027);"><img src="" border="0" alt="IMG_2735" width="75" height="75" /></a><a href="[email protected]/123183087/" onclick="return silas_showOptions(123183087);">  </a><a href="[email protected]/123182977/" onclick="return silas_showOptions(123182977);"><img src="" border="0" alt="IMG_2762" width="75" height="75" /></a><a href="[email protected]/123183087/" onclick="return silas_showOptions(123183087);"> </a><a href="[email protected]/123182931/" onclick="return silas_showOptions(123182931);"><img src="" border="0" alt="IMG_2781" width="75" height="75" /></a><a href="[email protected]/123183087/" onclick="return silas_showOptions(123183087);"> </a><a href="[email protected]/123182899/" onclick="return silas_showOptions(123182899);"><img src="" border="0" alt="IMG_2786" width="75" height="75" /></a><a href="[email protected]/123183087/" onclick="return silas_showOptions(123183087);"> </a><a href="[email protected]/123182867/" onclick="return silas_showOptions(123182867);"><img src="" border="0" alt="IMG_2801" width="75" height="75" /></a><a href="[email protected]/123183087/" onclick="return silas_showOptions(123183087);"> </a><a href="[email protected]/123182829/" onclick="return silas_showOptions(123182829);"><img src="" border="0" alt="IMG_2808" width="75" height="75" /></a><a href="[email protected]/123183422/" onclick="return silas_showOptions(123183422);"> </a>  We are all very well.  At this stage, we plan to drive to Canberra for Easter; not quite sure where we&#39;ll stay yet, but will let you know.  Finally, here are some photos.  There are so many I want to include &#8211; I might do it over two emails.  Lots of love Jon, Tam and Liam xxx</p>
  453. <div class="post-info">
  454. </div>
  455. <!--
  456. <rdf:RDF xmlns:rdf=""
  457. xmlns:dc=""
  458. xmlns:trackback="">
  459. <rdf:Description rdf:about=""
  460.    dc:identifier=""
  461.    dc:title="A Tricky family update &#8211; 13 weeks into parenthood"
  462.    trackback:ping="" />
  463. </rdf:RDF> -->
  464. <div class="post-footer">&nbsp;</div>
  465. </div> </div>
  466. <p class="center"><a href="" >Next Page &raquo;</a></p>
  467. </div>
  468. <div id="sidebar">
  469. <ul>
  470. <li>
  471. </li>
  472. <li id="calendar">
  473. <table id="wp-calendar">
  474. <caption>November 2017</caption>
  475. <thead>
  476. <tr>
  477. <th scope="col" title="Monday">M</th>
  478. <th scope="col" title="Tuesday">T</th>
  479. <th scope="col" title="Wednesday">W</th>
  480. <th scope="col" title="Thursday">T</th>
  481. <th scope="col" title="Friday">F</th>
  482. <th scope="col" title="Saturday">S</th>
  483. <th scope="col" title="Sunday">S</th>
  484. </tr>
  485. </thead>
  487. <tfoot>
  488. <tr>
  489. <td colspan="3" id="prev"><a href="">&laquo; May</a></td>
  490. <td class="pad">&nbsp;</td>
  491. <td colspan="3" id="next" class="pad">&nbsp;</td>
  492. </tr>
  493. </tfoot>
  495. <tbody>
  496. <tr>
  497. <td colspan="2" class="pad">&nbsp;</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td>
  498. </tr>
  499. <tr>
  500. <td>6</td><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td>
  501. </tr>
  502. <tr>
  503. <td>13</td><td>14</td><td>15</td><td>16</td><td>17</td><td>18</td><td>19</td>
  504. </tr>
  505. <tr>
  506. <td>20</td><td>21</td><td id="today">22</td><td>23</td><td>24</td><td>25</td><td>26</td>
  507. </tr>
  508. <tr>
  509. <td>27</td><td>28</td><td>29</td><td>30</td>
  510. <td class="pad" colspan="3">&nbsp;</td>
  511. </tr>
  512. </tbody>
  513. </table> </li>
  515. <li id="about">
  516. <h2>About the Site:</h2>
  517. <ul>
  518. <li>Random thoughts by a random guy</li>
  519. </ul>
  520. </li>
  521. <li id="pages">
  522. <h2>Pages:</h2>
  523. <ul>
  524. <li class="page_item page-item-2"><a href="">About</a></li>
  525. </ul>
  526. </li>
  527. <li id="categories">
  528. <h2>Categories:</h2>
  529. <ul>
  530. <li class="cat-item cat-item-9"><a href="" >code</a> (3)
  531. </li>
  532. <li class="cat-item cat-item-2"><a href="" >Family</a> (5)
  533. </li>
  534. <li class="cat-item cat-item-7"><a href="" >Interesting</a> (2)
  535. </li>
  536. <li class="cat-item cat-item-10"><a href="" >javascript</a> (3)
  537. </li>
  538. <li class="cat-item cat-item-3"><a href="" >Liam</a> (4)
  539. </li>
  540. <li class="cat-item cat-item-6"><a href="" >Python</a> (1)
  541. </li>
  542. <li class="cat-item cat-item-4"><a href="" >Technical</a> (10)
  543. </li>
  544. <li class="cat-item cat-item-1"><a href="" >Uncategorized</a> (1)
  545. </li>
  546. <li class="cat-item cat-item-5"><a href="" >WordPress</a> (2)
  547. </li>
  548. </ul>
  549. </li>
  550. <li>
  551. <script type="text/javascript"><!--
  552. google_ad_client = "pub-7238105427277163";
  553. //160x600, created 22/01/08
  554. google_ad_slot = "3590985023";
  555. google_ad_width = 160;
  556. google_ad_height = 600;
  557. //--></script>
  558. <script type="text/javascript"
  559. src="">
  560. </script>    
  561.        </li>
  562. <li id="search">
  563. <h2><label for="s">Search:</label></h2>
  564. <ul>
  565. <li>
  566. <form id="searchform" method="get" action="/index.php">
  567. <div style="text-align:center">
  568. <p><input type="text" name="s" id="s" size="15" /></p>
  569. <p><input type="submit" name="submit" value="Search" /></p>
  570. </div>
  571. </form>
  572. </li>
  573. </ul>
  574. </li>
  575. <li id="links">
  576. <h2>Links:</h2>
  577. <ul>
  578. <li id="linkcat-8"><h3>Blogroll</h3>
  579. <ul>
  580. <li><a href="" rel="sibling" title="Handy projects around the home">Handy Projects</a></li>
  581. <li><a href="" rel="sibling" title="Documentary of their lives">Otilija and Orlando</a></li>
  582. <li><a href="" title="Self Portraits to challenge you">Self Portrait Challenge</a></li>
  584. </ul>
  585. </li>
  586. </ul>
  587. </li>
  588. <li id="subscriptions">
  589. <h2>Subscriptions:</h2>
  590. <ul>
  591. <li><a href="" title="Syndicate this site using RSS"><img src="" alt="Syndicate this site using RSS" width="80" height="15" /></a></li>
  592.    <li><a href="" title="The latest comments to all posts in RSS"><img src="" alt="The latest comments to all posts in RSS" width="80" height="15" /></a></li>
  593.    <li><a href="" title="Add to My Yahoo!"><img src="" alt="Add to My Yahoo!" /></a></li>
  594.    <li><a href=";ut=;tt=CENTRALDIRECTORY&amp;ru='"><img src="" alt="Add to My MSN" /></a></li>
  595.    <li><a href="" title="Subscribe in NewsGator Online"><img src="" alt="Subscribe in NewsGator Online" width="91" /></a></li>
  596.    <li><a href=""><img src="" alt="Add your feed to Newsburst from CNET" width="96" height="20" /></a></li>
  597.    <li><a href=""><img src="" alt="Subscribe in Rojo" width="52" height="17" /></a></li>
  598. <li><a href="" title="Subscribe in Google Reader"><img src="" alt="Subscribe in Google Reader" width="104" height="17" /></a></li>
  599.    <li><a href=";a=;t=Totally Random"><img src="" alt="Subscribe with Pluck RSS reader" width="91" height="17" /></a></li>
  600.    <li><a href=""><img src="" alt="Subscribe with Bloglines" width="94" height="20" /></a></li>
  601. <li><a href=";rssurl="><img src="" alt="Subscribe with Bloglines" width="68" height="13" /></a></li>
  602. <li><a href=" Random&amp;u=" title="Furl It!"><img src="" alt="Furl It!" width="80" height="15" /></a></li>
  603. </ul>
  604. </li>
  605. <li id="meta">
  606. <h2>Meta</h2>
  607. <ul>
  608. <li><a href="">Register</a></li> <li><a href="">Log in</a></li>
  609. <li><a href="" title="Valid W3C XHTML 1.0 Transitional"><img src="" alt="Valid W3C XHTML 1.0 Transitional" width="80" height="15" /></a></li>
  610. <li><a href="" title="Valid W3C CSS"> <img src="" alt="Valid W3C CSS" /></a></li>
  611. <li><a href="" title="Valid RSS 2.0"><img src="" alt="Valid RSS 2.0" width="80" height="15" /></a></li>
  612. <li><a href="" title="Valid Atom 0.3"><img src="" alt="Valid Atom 0.3" width="80" height="15" /></a></li>
  613. <li><a href=";pp_cat=default&amp;pp_image=IMG_3089__Large_.jpg" title="IMG 3089 (Large)"><img class="pp_image" src=""  alt="IMG 3089 (Large)" title="IMG 3089 (Large)" /></a></li>
  614. </ul>
  615. </li>
  617. </ul>
  618. </div>
  619. <div id="footer">
  621. <p><small>
  622. <a href="" title="Totally Random">Totally Random</a>
  623. is powered by <a href="" title="Powered by WordPress 4.9, state-of-the-art semantic personal publishing platform">WordPress 4.9</a>
  624. and delivered to you in 0.367 seconds using 26 queries. <br />
  625. Theme: <a href="" title="Powered by Connections Reloaded">Connections Reloaded v1.5</a>  by  <a href="" title="Visit Ajay's Blog">Ajay D'Souza</a>. Derived from  <a href="" title="Connections Theme">Connections</a>.
  626. </small></p>
  627. <script type='text/javascript' src=''></script>
  628. </div> <!-- End id="footer" -->
  629. </div> <!-- End id="main" -->
  630. </div> <!-- End id="rap" -->
  631. </body>
  632. </html>
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda