<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>silenceIT Inc.</title>
	<atom:link href="http://www.silenceit.ca/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.silenceit.ca</link>
	<description>silenceIT is Ottawa’s single-source provider of strategic web design and marketing, rich Internet application development, and e-business IT solutions.</description>
	<lastBuildDate>Wed, 14 Jul 2010 13:14:59 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Hylafax &#8211; The Worlds Most Advanced Open Source Fax Server</title>
		<link>http://www.silenceit.ca/2010/07/13/hylafax-the-worlds-most-advanced-open-source-fax-server/</link>
		<comments>http://www.silenceit.ca/2010/07/13/hylafax-the-worlds-most-advanced-open-source-fax-server/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 13:57:43 +0000</pubDate>
		<dc:creator>jascha</dc:creator>
				<category><![CDATA[IT Services]]></category>
		<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[HylaFax]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1469</guid>
		<description><![CDATA[HylaFax is a robust and reliable software package designed to send and receive facsimiles and alpha-numeric pages. HylaFax is designed around client-server architecture.]]></description>
			<content:encoded><![CDATA[<p> </p>
<p>HylaFax is a robust and reliable software package designed to send and receive facsimiles and alpha-numeric pages. HylaFax is designed around client-server architecture.  Fax hardware (modems, telephony cards) can reside on the physical server or on the network. Clients can submit Fax and Page jobs from any machine on the network.  HylaFax is designed to be fault-tolerant and will restart its services if there are any issues, guard against configuration errors and hardware failures by resetting devices or using alternate devices if needed.</p>
<p><strong>Benefits of Using HylaFax</strong></p>
<ul>
<li>Robustness</li>
<li>Reliability</li>
<li>Customizability</li>
<li>Compatibility</li>
<li>Community</li>
<li>Extendibility</li>
<li>Documentation</li>
<li>Savings</li>
<li>Fax to Email</li>
</ul>
<p>HylaFax is designed to run on Linux and Unix systems and has pre-built binary packages for Debian (including Ubuntu), Fedora, Mandrake, RedHat (including CentOS), Solaris, SUSE, FreeBSD, OpenBSD, and NetBSD.  HylaFax is also distributed in source, so it can be built on other Linux and Unix distributions easily.  HylaFax is compatible with many internal and external Data/Fax modems.  It is also able to use USB modems as well as Linmodems(Winmodems).  However, I recommend external serial modems since they do not require drivers and are the easiest to setup.</p>
<p>Many client programs have been developed for almost every operating system, allowing superb administration and user access to HylaFax.  WinPrintHylaFax is an excellent Windows client.  It installs a virtual printer driver that can be used to fax from ANY application that has the ability to print.</p>
<p>HylaFax&#8217;s architecture is designed to be easily customized and extended.  When a fax is received or sent, simple scripts are executed. These scripts can do anything from email the faxes to an individual, convert the fax to different formats, resize or crop the faxes, print the faxes to a local or network printer, move the faxes to another server or do just about anything a linux system can do with postscript files including optical character recognition.</p>
<p>HylaFax has a set of email templates that are sent to users when a fax is sent or received.  These templates are easily customizable and can be configured to contain a specific set of information regarding the incoming or outgoing fax. One interesting modification I created for these templates is to attach a PDF version of the fax, as well as create a preview of the fax in JPEG format (imagemagick was used to convert the original TIFF version of the fax and resize to properly fit in an email).</p>
<p><strong>Examples</strong></p>
<p><strong>Configuration Example</strong></p>
<p>/etc/hylafax/FaxDispatch</p>
<p>In /etc/hylafax/ a file can be created called FaxDispatch, whenever a fax is sent this file is read. The variables stored here are then used in the HylaFax scripts.</p>
<p>FILETYPE=pdf;</p>
<p>SENDTO=fax@faxer.com;</p>
<p>TEMPLATE=en;</p>
<p>The above configuration tells HylaFax to attach a PDF version of the fax to the email confirmation when a fax is sent. It also specifies the email address to send the notification to as well as the template to be used.  As you can see this configuration is straight-forward and simple.</p>
<p><strong>Conversion Example</strong></p>
<p>/var/spool/hylafax/bin/faxrcvd</p>
<p>This file is the main script that is run when a fax is received by the server. One of the functions that the client required was to have a copy of the first page of the fax displayed in the body of the email notification. This required the fax to be in a format readable by most email clients and web browsers. I chose Jpeg since it is widely used and all browsers and email clients display them properly. I used imagemagick to convert the original Tiff to Jpeg and remove all the pages but the first. A resize is also done at the same time.</p>
<p>Right after the script sets the FILENAME variable at line 120 I added:</p>
<p>/usr/bin/convert &#8220;/var/spool/hylafax/$FILE&#8221;[0-0] -scale &#8216;60%x100%!&#8217; &#8220;$FILE&#8221;.jpg</p>
<p>/bin/chmod a+r &#8220;/var/spool/hylafax/$FILE.jpg&#8221;</p>
<p><strong>Template Example</strong></p>
<p>/var/spool/hylafax/templates/en/faxrcvd-success.txt</p>
<p>All email templates are stored in standard text format. By default the encoding is set to standard text format, but in my client’s case, we needed the email to be in HTML format and to display the preview of the first page created in the last example.</p>
<pre>From: Fax Server &lt;$FROMADDR&gt;To: $SENDTOSubject: Fax received from "$SENDER"Content-type: text/html; charset=us-asciiContent-Transfer-Encoding: Quoted-Printable

&lt;table width="650" border=1 cellpadding=0 cellspacing=0 &gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Sender:&lt;/b&gt;&lt;/td&gt;&lt;td&gt; $SENDER&lt;/td&gt;&lt;td&gt;&lt;b&gt;Pages:&lt;/b&gt;&lt;/td&gt;&lt;td&gt; $PAGES&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Quality:&lt;/b&gt;&lt;/td&gt;&lt;td&gt; $QUALITY&lt;/td&gt;&lt;td&gt;&lt;b&gt;Size:&lt;/b&gt;&lt;/td&gt;&lt;td&gt; $PAGE&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Received:&lt;/b&gt;&lt;/td&gt;&lt;td&gt; $RECEIVED&lt;/td&gt;&lt;td&gt;&lt;b&gt;Time To Receive:&lt;/b&gt;&lt;/td&gt;&lt;td&gt; $TIMETORECV&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;CallID1:&lt;/b&gt;&lt;/td&gt;&lt;td&gt; $CALLID1&lt;/td&gt;&lt;td&gt;&lt;b&gt;CallID2:&lt;/b&gt;&lt;/td&gt;&lt;td&gt; $CALLID2&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;

&lt;b&gt;Preview:&lt;/b&gt;&lt;br&gt;&lt;img src="http://faxserver/$FILE.jpg"&gt;</pre>
<p> </p>
<p>In conclusion, HylaFax is an excellent piece of software, easy to configure and setup. Its fault tolerance and ease of use as well as compatibility make it an excellent choice for any business that sends more than a few faxes per day. There is no other opensource fax software that compares to HylaFax.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/07/13/hylafax-the-worlds-most-advanced-open-source-fax-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Going places?</title>
		<link>http://www.silenceit.ca/2010/06/11/going-places/</link>
		<comments>http://www.silenceit.ca/2010/06/11/going-places/#comments</comments>
		<pubDate>Fri, 11 Jun 2010 19:20:58 +0000</pubDate>
		<dc:creator>James</dc:creator>
				<category><![CDATA[Web Marketing]]></category>
		<category><![CDATA[Google Places]]></category>
		<category><![CDATA[search engine marketing]]></category>
		<category><![CDATA[SEM]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=2169</guid>
		<description><![CDATA[If you're in Yellow Pages, chances are your business already appears in Google Places. Make sure your listing is complete. If it isn't, create a Google account and fill in the missing information.]]></description>
			<content:encoded><![CDATA[<p>More people search for businesses online than anywhere else, so it&#8217;s important to make sure yours is easily found on Google. A search engine appearance is one thing; a Google Places local search result is an entirely different <a href="http://www.silenceit.ca/services/web-design-and-marketing/web-marketing/">SEM best practice</a> &#8211; and trust us, the conversion potential is worth your (minimal) effort.</p>
<p><object width="560" height="340"><param name="movie" value="http://www.youtube.com/v/vUzMu8GXNUM&#038;hl=en_US&#038;fs=1&#038;rel=0&#038;color1=0x3a3a3a&#038;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/vUzMu8GXNUM&#038;hl=en_US&#038;fs=1&#038;rel=0&#038;color1=0x3a3a3a&#038;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object></p>
<p>If you&#8217;re in Yellow Pages, chances are your business already appears in Google Places. Make sure your listing is complete. If it isn&#8217;t, create a Google account and fill in the missing information. That&#8217;ll get you in the rankings &#8230; and alongside your competitors</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/06/11/going-places/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP6, HTML5</title>
		<link>http://www.silenceit.ca/2010/06/02/php6-html5/</link>
		<comments>http://www.silenceit.ca/2010/06/02/php6-html5/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 13:25:16 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[web applications]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1477</guid>
		<description><![CDATA[What's new in PHP6 and HTML5? Let's have a look at the new features we can start using soon!]]></description>
			<content:encoded><![CDATA[<p>Please note: This post is not meant to have an exhaustive list of all new features, but rather highlight some of the more important and useful changes. Additionally, newer CSS and JavaScript features are not mentioned for a variety of reasons &#8211; we may do so in the future. This post expands on the <a href="http://www.slideshare.net/silenceit/presentation-3791566">PHP6 &amp; HTML5 slides</a>.</p>
<h2>PHP6</h2>
<h3>What&#8217;s new*?</h3>
<ul>
<li>Unicode support throughout is planned (UTF-8 or UTF-16? It&#8217;s not entirely clear anymore; Everyone is saying UTF-16 but I don&#8217;t see it in the notes)</li>
<li>Code clean-up
<ul>
<li>A lot of backwards compatibility removed, which should lighten PHP</li>
<li>register_globals, magic_quotes, and so on are removed</li>
</ul>
</li>
<li>Needless/broken features removed (e.g. safe_mode)</li>
<li>Changes in extensions
<ul>
<li>EReg being dropped (already in 5.3)</li>
<li>XMLReader/Writer (5.1), APC, Fileinfo will be in the core rather than being extensions</li>
</ul>
</li>
<li>Namespaces (already in PHP 5.3)</li>
<li>More neat features
<ul>
<li><a href="http://stackoverflow.com/questions/716703/what-is-coming-in-php-6">Features now in 5.3</a>: <a href="http://php.net/manual/en/functions.anonymous.php">Anonymous functions</a>, <a href="http://php.net/manual/en/language.oop5.late-static-bindings.php">late static binding</a>, <a href="http://php.net/manual/en/book.phar.php">PhAr</a>, etc.</li>
<li>64-bit integers</li>
</ul>
</li>
<li>Other small changes
<ul>
<li>E_STRICT included in E_ALL</li>
<li>[ ] used instead of { } for string indexes (Note: [ ] could always be used, { } was just another option)</li>
<li>ASP-style (&lt;% %&gt;) no longer supported</li>
</ul>
</li>
<li>64-bit integers</li>
</ul>
<p>You can also have a look at the <a href="http://cvs.php.net/viewvc.cgi/php-src/NEWS?view=markup">NEWS file</a> being created for the announcement.</p>
<h3>What&#8217;s to come?</h3>
<p>There is <a href="http://wiki.php.net/todo/php60">more to come</a> (<a href="http://wiki.pooteeweet.org/PhP60">old list</a>) from PHP6; However, PHP6 has been expected for a while, and therefore has drawn a <a href="http://lwn.net/Articles/379909/">fair amount of criticism</a>&hellip; including an <a href="http://giorgiosironi.blogspot.com/2010/04/php-6-finally-released.html">April Fool&#8217;s joke about its release</a>. Part of the reason for this delayed release is that developers do not want to rush it out the door but rather get it done well and enjoy making it.</p>
<h2>HTML5</h2>
<p>HTML5 makes several changes and adds new features to HTML that were previously accomplished in a variety of other ways. For example:</p>
<ul>
<li>&lt;video&gt; provides … video! Similarly for &lt;audio&gt; which provides audio playing capabilities.</li>
<li>&lt;canvas&gt; for drawing images on the fly</li>
<li>Storage for storing data (similar to cookies, but doesn&#8217;t get sent like cookies)</li>
</ul>
<p>Curious about the HTML5 doctype tag? It&#8217;s become really simple:</p>
<pre>&lt;!DOCTYPE html&gt;</pre>
<p>That&#8217;s it. There&#8217;s no &#8220;transitional&#8221; or &#8220;strict&#8221; or any other variants this time, either. That&#8217;s all you need.</p>
<h3>The &lt;canvas&gt; tag</h3>
<p>Canvas allows for on-the-fly drawing, such as graphs, images, even animations and maybe games; You&#8217;re limited by the speed of JavaScript, however, and if you think that&#8217;s fine for gaming purposes you may have been on your eight-core 2TB souped-up gaming/development system a wee bit too long (or perhaps you&#8217;re expecting everyone to run Chrome).<br />There are several canvas demo galleries; Here are a few:</p>
<ul>
<li><a href="http://www.canvasdemos.com/">Canvas Demos</a></li>
<li><a href="http://www.randomthink.net/labs/canvas/">Learning Canvas and Prototype</a></li>
<li><a href="http://www.phpguru.org/static/html5-canvas-examples">phpguru.org canvas examples</a></li>
</ul>
<p>There are many canvas samples/demos as well; A few of note:</p>
<ul>
<li>A few drawing apps:<br /> 
<ul>
<li><a href="http://mrdoob.com/projects/harmony/">Harmony</a> – Simple and functional, has some interesting brushes and has a save feature</li>
<li><a href="http://mugtug.com/sketchpad/">Sketchpad</a> – Very polished look, features history, several tools and also has a save feature</li>
<li><a href="http://canvaspaint.org/">CanvasPaint</a> – This one looks suspiciously familiar&hellip; <img src='http://www.silenceit.ca/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ul>
</li>
<li>A simple game: <a href="http://www.yvoschaap.com/chainrxn/">Chain Reaction</a></li>
<li><a href="http://www.rgraph.net/">RGraph</a>, a graphing library based on canvas and yet sporting some IE8 support.</li>
<li>Some <a href="http://www.kevs3d.co.uk/dev/canvask3d/k3d_test.html">3D demos</a> – watch your CPU usage!</li>
</ul>
<h3>&hellip; versus Flash?</h3>
<p>Canvas is not, was not, and will never mean to be a (full-on) competitor with Flash. Canvas is meant to be used where Flash was used as a stop-gap, where often the question asked was &#8220;Isn&#8217;t there another way?&#8221; &mdash; Now there is. Situations like the above demos &ndash; simple image editing/drawing, graphs, simple animations and games &ndash; are where canvas will shine.<br />Even with advancements in JavaScript engines, JavaScript will never perform faster than pre-compiled scripting (at least, I <em>think</em> ActionScript gets at least pre-compiled) and thus would never (properly) manage to beat Flash in performance.</p>
<h3>Audio &amp; Video</h3>
<p>Youtube (for ad-less videos), DailyMotion, Vimeo and other video sites offer an HTML5 option to bypass using Flash for video.</p>
<ul>
<li>Ogg/Theora was being pushed as the standard, but at least one company steadily refused to accept it as the standard.</li>
<li>No consensus could be reached, therefore there is no standard codec and H.264 or x264 tend to be used (e.g. Youtube) though Ogg/Theora is used as well.</li>
<li><del><a href="http://arstechnica.com/open-source/news/2010/04/google-planning-to-open-the-vp8-video-codec.ars">If Google open-sources the VP8 codec</a>, that codec</del><ins>Google has <a href="http://www.webmproject.org/">open-sourced VP8</a> and it</ins> is a likely candidate to be the standard &mdash; <a href="http://multimedia.cx/eggs/vp8-the-savior-codec/">or perhaps not</a>.</li>
</ul>
<h3>General new mark-up</h3>
<ul>
<li>&lt;header&gt; (not to be confused with &lt;head&gt; of course) is used to contain groups of intro/nav items</li>
<li>&lt;nav&gt;, meant to desginate portion(s) of document used for navigation</li>
<li>&lt;section&gt; is similar to &lt;div&gt; and usually begins with a header; &lt;h1&hellip;6&gt; can be re-used in a document using sections</li>
<li>&lt;article&gt; while similar to &lt;section&gt;, is meant to be &#8220;independently usable&#8221;, e.g. a blog entry, comment, or newspaper article</li>
<li>&lt;aside&gt; are sidebars related to the content but separate from it</li>
<li>&lt;footer&gt; is used for bottom of a section of content, e.g. copyright notices</li>
<li>&lt;figure&gt; (think &#8220;See figure 1&#8243;)</li>
<li>&lt;mark&gt; for marking (highlighting) relevance, e.g. search results</li>
<li>Linguistic helpers such as <a href="http://www.w3.org/TR/html5/text-level-semantics.html#the-ruby-element">&lt;ruby&gt;</a></li>
</ul>
<p>And of course, if you care to read the <a href="http://www.w3.org/TR/html5/">proposed standard</a>, there&#8217;s plenty more. For example the changes to forms, outlined below.</p>
<h3>Forms</h3>
<p>Once again, these are improvements which developers have had to find some way to code in via JavaScript or some other solutions. Once supported, they should shorten development time (when backwards compatibility is not necessary, at least):</p>
<ul>
<li>Many new input types (mostly refinements):
<ul>
<li>Text variants: Search (the differences are mostly stylistic), telephone, URL, e-mail</li>
<li>Time: Time, date, datetime, month, week, datetime-local (no time zone)</li>
<li>Number, range (with step, min/max attributes)</li>
<li>Colour</li>
</ul>
</li>
<li>New attributes:
<ul>
<li>autocomplete (on/off), list (to provide a different set of autocomplete suggestions)</li>
<li>required</li>
<li>multiple (when multiple inputs are expected, e.g. a To field in an e-mail)</li>
<li>pattern (basically, regular expression validation)</li>
<li>placeholder (that usually-grey text that hints at what to enter or what a field is for)</li>
</ul>
</li>
<li>New elements:
<ul>
<li>datalist (for list attribute, among other things)</li>
<li>keygen (Yes, cryptographic keys)</li>
<li>output (for calculations; I&#8217;m not quite sure what the reasoning for this one is, honestly)</li>
<li>progress**</li>
<li>meter**</li>
</ul>
</li>
</ul>
<h3>And more</h3>
<p>These aren&#8217;t directly related to forms, but may still be useful (For example, rich text editor toolbars):</p>
<ul>
<li>details**</li>
<li>summary</li>
<li>command</li>
<li>menu</li>
</ul>
<h3>Browser support</h3>
<p>It is important to note that HTML5 is not final just yet, but there is <a href="http://a.deveria.com/caniuse/">a lot of support from browsers so far</a>. Sadly, the form changes above seem to be hardly supported at all (but try Opera on this <a href="http://24ways.org/examples/have-a-field-day-with-html5-forms/24ways-form.html">example HTML5 form</a> thanks to <a href="http://24ways.org/2009/have-a-field-day-with-html5-forms">24ways</a>)!</p>
<p>Partial to full support is available in these browsers:</p>
<ul>
<li>Internet Explorer:
<ul>
<li>8, 7, 6, 5 and previous: No, but <a href="http://remysharp.com/2009/01/07/html5-enabling-script/">a work-around exists to enable styling of unsupported HTML5 tags</a></li>
<li>9: <a href="http://ie.microsoft.com/testdrive/">So far, yes</a></li>
</ul>
</li>
<li>Firefox ~3.5-3.6</li>
<li>Opera</li>
<li>Chrome/Chromium</li>
<li>Safari</li>
<li>And others</li>
</ul>
<p style="font-size: smaller">* New in the sense &#8220;Not out in current stable version&#8221;</p>
<p style="font-size: smaller">** Have some issues to be resolved; See respective portion of standards document for more information</p>
<h2>Sources not linked above</h2>
<ul>
<li>PHP6
<ul>
<li><a href="http://passingcuriosity.com/2010/oplm2010-3-php6/">Passing Curiosity</a></li>
<li><a href="http://davidwalsh.name/php6">David Walsh</a></li>
</ul>
</li>
<li>HTML5
<ul>
<li><a href="http://www.alistapart.com/articles/previewofhtml5">A List Apart</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/06/02/php6-html5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Big Reveal</title>
		<link>http://www.silenceit.ca/2010/05/30/the-big-reveal/</link>
		<comments>http://www.silenceit.ca/2010/05/30/the-big-reveal/#comments</comments>
		<pubDate>Sun, 30 May 2010 13:26:56 +0000</pubDate>
		<dc:creator>James</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Branding]]></category>
		<category><![CDATA[Corporate Identity]]></category>
		<category><![CDATA[website launch]]></category>

		<guid isPermaLink="false">http://staging.silenceit.ca/Silenceit/trunk/?p=1952</guid>
		<description><![CDATA[silenceIT has a new website – and a new look! A months-long makeover that today culminates in the Big Reveal. We urge you to explore the results of our work. If you like what you see, we also urge you to call.]]></description>
			<content:encoded><![CDATA[<p>silenceIT has a new website – and a new look! A months-long makeover that today culminates in the Big Reveal.</p>
<p>The idea was to revamp our web presence and in the process learn more about our customers’ needs. We started with a thoroughly researched marketing plan. A full rebranding and identity program followed, run concurrently with SEO copywriting based on the latest optimization techniques. Finally, the website redesign – an all-company collaborative effort that pooled our most creative UI, graphic arts, and technical ideas.</p>
<p>We urge you to explore the results of our work. If you like what you see, we also urge you to call. It’s a no-obligation chat about your e-business objectives, and how we can put to work for you the same expertise that brought us to this important milestone.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/05/30/the-big-reveal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introduction to UX Design</title>
		<link>http://www.silenceit.ca/2010/05/13/introduction-to-ux-design/</link>
		<comments>http://www.silenceit.ca/2010/05/13/introduction-to-ux-design/#comments</comments>
		<pubDate>Thu, 13 May 2010 15:38:04 +0000</pubDate>
		<dc:creator>JT</dc:creator>
				<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[User Experience]]></category>
		<category><![CDATA[UX Design]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1492</guid>
		<description><![CDATA[With all of the websites on the internet, how do we attract attention and make a user remember us out of all the rest? User experience. User experience design (UX design) focuses on making that experience the best possible in order to create that memory.]]></description>
			<content:encoded><![CDATA[<p>With all of the websites on the internet, how do we attract attention and make a user remember us out of all the rest? User experience. What a user perceives and how they interact is the experience they are having with your website. User experience design (UX design) focuses on making that experience the best possible in order to create that memory.</p>
<p>Some of the focuses of UX design are usability, information architecture, user interface and product design. Usability denotes the ease of use in which it takes for people to accomplish a particular goal. For example, if it takes users hours to find your search on your website, then you have a case of poor usability. There are <a title="Simple Usability Tips" href="http://www.smashingmagazine.com/2009/06/23/10-ui-design-patterns-you-should-be-paying-attention-to/" target="_blank">some simple</a> as well as more complex tips to minimize these problems.</p>
<p>When starting a UX project, the first step would be to understand the goals and define guidelines at an early stage to avoid problems later. From this, you can begin thinking about the structure and user flow. By having the goals set up, you can avoid <a title="Wikipedia Scope Creep" href="http://en.wikipedia.org/wiki/Scope_creep" target="_blank">scope creep</a> and the guidelines will help you decide what to do when problems arise. For example, two people have differing opinions about the best route to a solution: one follows the guidelines, one does not.</p>
<p>So when you&#8217;re going into UX design, make sure to focus on what your user interacts with because to them it&#8217;s what makes the difference.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/05/13/introduction-to-ux-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>It&#8217;s Easy Being Green</title>
		<link>http://www.silenceit.ca/2010/05/05/its-easy-being-green/</link>
		<comments>http://www.silenceit.ca/2010/05/05/its-easy-being-green/#comments</comments>
		<pubDate>Wed, 05 May 2010 18:35:37 +0000</pubDate>
		<dc:creator>James</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Branding]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Corporate Identity]]></category>
		<category><![CDATA[website launch]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=2087</guid>
		<description><![CDATA[silenceIT launches the new amgreen Residential Program website.]]></description>
			<content:encoded><![CDATA[<p>silenceIT launched the <a href="http://www.amgreen.ca" target="_blank">amgreen.ca </a>website on May 5, 2010. amgreen installs solar panels on residential and commercial rooftops, and pays their owners to generate renewable electricity for the provincial power grid. The service makes it easier for homeowners and small business owners to participate in the Ontario Power Authority microFIT Program.</p>
<p>silenceIT created the amgreen identity; wrote, designed, and developed the amgreen.ca CMS-driven website; and hosts it on an in-house silenceIT web server. The new site offers everything you need to join the amgreen Residential Program.</p>
<p>If you support renewable energy sources and green jobs, amgreen.ca is the simple choice to a healthier environment and a greener future.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/05/05/its-easy-being-green/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AM Framework</title>
		<link>http://www.silenceit.ca/2010/04/28/am-framework/</link>
		<comments>http://www.silenceit.ca/2010/04/28/am-framework/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 15:36:22 +0000</pubDate>
		<dc:creator>JT</dc:creator>
				<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[ActiveRecord]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[AM Framework]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SilenceIT]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1487</guid>
		<description><![CDATA[The AM Framework started with a list of requirements:  MVC, easy to use AJAX, and ActiveRecord based models, all of which were to be built using PHP.]]></description>
			<content:encoded><![CDATA[<p>At the beginning of one of our client projects, we were faced with the question of which framework to use. While we had looked at a few in the past (CodeIgniter, Kohana, etc&#8230;), we still weren&#8217;t quite set on a particular one and since the project didn&#8217;t seem overly complex at the time, we thought why not build our own? Well this is its story.</p>
<p>The AM Framework started with a list of requirements:  MVC, easy to use AJAX, and ActiveRecord based models, all of which were to be built using PHP. To create the MVC structure, we made some basic load functions for each particular aspect. Some (i.e. the controllers) were automatically called, while others (the views and models) were called where needed inside of the controllers. This method worked well allowing us to reuse pieces throughout while keeping them separate.</p>
<p>When it came to AJAX, we had to pick a library. We chose jQuery because of some experience with it plus the plugins available made some of the more interactive features easier to attain. We built a simplifier function to wrap jQuery&#8217;s AJAX call, which would automatically parse the basics of the response from our system, then hand it off. This turned out to work well for some, but not all, cases. As for the response itself, the application was set up with a special class that would take the system response and output it in a specific view. The communication worked well with a lot of the success/failure responses being automatically handled.</p>
<p>The ActiveRecord implementation we used was basic and we only added what we needed. We set up the models to be autoloaded when called and all of them had a find function which took in some parameters and returned a single or set of objects. From that object, we could read or manipulate the data (and its relationships) and save it back into the database.</p>
<p>These main pieces worked well together and the development was much easier by having many of the little things taken care of for us. From the experience, you realize a lot about the variety of frameworks and their importance; although, I think with the opensource frameworks already available, it&#8217;s tough to come up with a good reason to build your own.</p>
<p> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/04/28/am-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introduction to iPhone Applications</title>
		<link>http://www.silenceit.ca/2010/04/27/introduction-to-iphone-applications/</link>
		<comments>http://www.silenceit.ca/2010/04/27/introduction-to-iphone-applications/#comments</comments>
		<pubDate>Tue, 27 Apr 2010 17:57:20 +0000</pubDate>
		<dc:creator>JT</dc:creator>
				<category><![CDATA[Product Reviews]]></category>
		<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[applications]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1367</guid>
		<description><![CDATA[With the growing iPhone market, no time has been better to get into mobile application development. ]]></description>
			<content:encoded><![CDATA[<p>With the growing iPhone market, no time has been better to get into mobile application development. The app store provides a place to get these applications seen, while the relatively new environment provides a place for new app developers and professionals alike to develop, play and experiment.</p>
<p>When starting out with iPhone apps your first stop should be to get the<a title="iPhone Developer Center" href="http://developer.apple.com/iphone/index.action" target="_blank"> iPhone SDK</a> from Apple. This kit provides an entire working environment to develop and test your iPhone app right from your computer. Though to test on your phone itself, you&#8217;ll have to have an Apple Developer Connection membership.</p>
<p>If you&#8217;ve never developed using Xcode before it can seem overwhelming since there is a lot available. Personally, as a web developer, I prefer a leaner coding environment; but I quickly realized that a lot of the tools given are indispensable. A lot of great fundamentals can be at the <a title="Apple Developer Center - iPhone Introduction" href="http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhone101/Articles/00_Introduction.html" target="_blank">Apple Developer Center</a>, but if you&#8217;re like me and just want to jump into something to play around, there are simple tutorials available online. I chose to <a title="iPhone game  Programming Tutorial" href="http://icodeblog.com/2009/01/15/iphone-game-programming-tutorial-part-1/" target="_blank">build a game</a>.</p>
<p>All-in-all, I was pleased with the iPhone development experience.  Although limited, I think there is still a large market available to companies if they can find an idea.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/04/27/introduction-to-iphone-applications/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JMeter The Powerful Testing Tool</title>
		<link>http://www.silenceit.ca/2010/04/01/jmeter-the-powerful-testing-tool/</link>
		<comments>http://www.silenceit.ca/2010/04/01/jmeter-the-powerful-testing-tool/#comments</comments>
		<pubDate>Thu, 01 Apr 2010 17:25:30 +0000</pubDate>
		<dc:creator>nader</dc:creator>
				<category><![CDATA[IT Services]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[functional testing]]></category>
		<category><![CDATA[load testing]]></category>
		<category><![CDATA[performance testing]]></category>
		<category><![CDATA[server monitor]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1437</guid>
		<description><![CDATA[JMeter is a powerful testing software that is used for load/performance testing and functional testing. This blog will cover the history, features and tools of JMeter.]]></description>
			<content:encoded><![CDATA[<p><img src="/Windows/TEMP/moz-screenshot.png" alt="" /></p>
<h2>What is JMeter ?</h2>
<p style="font-size: 14px">JMeter is a powerful testing software that is used for load/performance testing and functional testing.  It was originally made for web applications but now it can be used for testing desktop applications as well.  JMeter is an opensource <a title="Apache Software Foundation" href="http://en.wikipedia.org/wiki/Apache_Software_Foundation" target="_blank">Apache</a> <a title="Jakarta Project" href="http://en.wikipedia.org/wiki/Jakarta_Project" target="_blank">Jakarta</a> project.  JMeter is also used as a unit test tool for JDBC database connections, FTP, Webservice, etc.  JMeter can be used for monitoring server performance and load (web, database, etc).</p>
<h2>JMeter history <strong><br /></strong></h2>
<p style="font-size: 14px"><strong>JMeter</strong> was first developed by Stefano Mazzocchi of the Apache Software Foundation. He wrote it primarily to test the performance of Apache JServ, which was later replaced by the Apache Tomcat Project. JMeter has since been developed and has expanded to load-test FTP servers, database servers, and Java Servlets and objects. Today, it has been widely accepted as a performance testing tool for web applications. Various companies, including AOL, have used JMeter to load-test their websites and SharpMind of Germany has used JMeter for functional and regression testing its applications and its clients.</p>
<p> </p>
<h2>JMeter features</h2>
<p style="font-size: 14px">JMeter may be used to test performance on static and dynamic resources such as static files, Servlets, FTP servers, Java Objects, Databases, Perl/CGI scripts, Queries, and more. In order to test and measure the robustness of an HTTP or FTP server/network, testers need to provide simulation of multiple and different types of loads on these system objects. JMeter can help them do exactly that, and on a greater scale too. Besides that, its graphical tools allow you to make better analysis of performance under heavy loads.</p>
<p style="font-size: 14px">If you need to further test the functional behavior of your applications, there are tools in JMeter that can help you perform regression tests on your applications. Simply, its assertion tools, in addition to the test scripts, help to ensure whether your application is returning the expected results or not. Scalability and flexibility are also inherent in this aspect, as you can extend the assertions using regular expressions.</p>
<h2>JMeter tools<strong> </strong></h2>
<ol style="font-size: 14px">
<li>
<p style="font-size: 14px">User simulation tool:  When testing an application, you need to simulate a number of users to perform load/performance testing or functional testing.  JMeter has an element called &#8216;thread group,&#8217; from which you can set the number of users and you can set a schedule for the testing.</p>
</li>
<li>
<p style="font-size: 14px">Samplers: a JMeter sampler is the element that defines the type of application that your testing.  For example, if you are testing a web application, you would use the http sampler, from which you can set the targeted http address.  Another example would be if you are testing a webservice/soap then you use the soap sampler.</p>
</li>
<li>
<p style="font-size: 14px">Controllers: In automated functional testing, you need some kind of flow control elements that will give you the ability to simulate how your application is expected to work, and for that JMeter has logical controllers.</p>
</li>
<li>
<p style="font-size: 14px">For setting up test/application configuration and global data, JMeter provides you with configuration elements that help you set http and ftp defaults.  You can also load test data to be used in your test using the CSV Data Set Config element.</p>
</li>
<li>
<p style="font-size: 14px">Timers: When testing your application, your main goal is to simulate real life users.  For example, the time that a user takes to use a function within your application varies among users, therefore JMeter provides the timer element, allowing you to set fixed or random delays to make your test close to reality as possible.</p>
</li>
<li>
<p style="font-size: 14px">Pre-processor elements: For example, when JMeter performs testing, if the response was html you can use the html pre-processor element to parse and view the html response.</p>
</li>
<li>
<p style="font-size: 14px">Assertion tools: When performing functional testing, you would like to know if your application is returning the right response to the user.  For example, if the user enters an invalid email then you will expect a message telling the user that the email address entered is invalid.  JMeter provides assertion elements that read the response and compare it with the pre-setup expectations and inform you if the response matches what is expected or not.  This is a very powerful tool for functional testing.</p>
</li>
<li>
<p style="font-size: 14px">Reporting tools: Analyzing test results determines the quality of your application.  JMeter provides listeners to store, analyze and report data in different ways.  For example, you can use the graph result listener to store results in a statistical graph and use other listeners to store test results within a table.</p>
</li>
</ol>
<h2>JMeter home page</h2>
<p><a href="http://jakarta.apache.org/jmeter/" target="_blank">http://jakarta.apache.org/jmeter/</a></p>
<h2>JMeter tutorials</h2>
<p><a href="http://jakarta.apache.org/jmeter/usermanual/index.html" target="_blank">http://jakarta.apache.org/jmeter/usermanual/index.html</a></p>
<p> </p>
<p><strong>References</strong><a href="http://www.joomla.org/"><strong> </strong></a></p>
<p>Apache JMeter &#8220;A practical beginner&#8217;s guide to automated testing and performance measurement for your websites&#8221;.</p>
<p><strong><br /></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/04/01/jmeter-the-powerful-testing-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vyatta &#8211; Opensource Networking</title>
		<link>http://www.silenceit.ca/2010/03/17/vyatta-opensource-networking/</link>
		<comments>http://www.silenceit.ca/2010/03/17/vyatta-opensource-networking/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 18:23:05 +0000</pubDate>
		<dc:creator>terrance</dc:creator>
				<category><![CDATA[IT Services]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[VPN]]></category>
		<category><![CDATA[Vyatta]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1422</guid>
		<description><![CDATA[Vyatta is an opensource router platform based on linux kernel and the leader in open networking and network virtualixation.]]></description>
			<content:encoded><![CDATA[<p><strong>Opensource Router</strong></p>
<p>Vyatta is an opensource router platform based on linux  kernel  and the leader in open networking and network virtualixation. Vyatta  offers hardware and opensource software for enterprise-level network infrastructure. One of the best things about Vyatta is that it can provide enterprise class  routing, firewall, intrusion prevention and VPN tasks with no additional cost.</p>
<p>Vyatta can be used on any computer with an X86 architecture; in other words, a computer with a Intel or Intel-like processor such as a AMD processor. It can be also used in virtual environment as a virtual machine . There are a ready built-in appliance available for Xenserver and Vmware hypervisor.</p>
<p>The Vyatta system is intended as a replacement for Cisco devices   with a strong emphasis on the cost and flexibility.  First, let’s look at Vyatta’s claims based on a new Intel benchmark: Vyatta software running on a Nehalem Quad-Core Xeon “can readily process 20 Gbps traffic and still have CPU capacity.” Vyatta also claims the unique blend of hardware and opensource software allows simple scalability just by adding cores and a network adapter which  details all the goodies it has to offer:</p>
<ul>
<li> Enterprise and Service Provider WAN Routing</li>
<li> High Security / Performance Firewall</li>
<li> VPN</li>
<li> Intrusion Protection</li>
<li> Redundant Hot Swap Power Supplies</li>
</ul>
<p>The Vyatta router supports a large number of network related protocols and services: Routing protocol  (RIPv2, OSPF, BGP), Stateful Firewall  ( IPtables) , Intrusion Preventions  system,(Snort),  IPSec for VPN,  Proxy service,  Encapsulation( Frame relay or PPP) , Network  Address translation (NAT),  QoS,  Redundancy protocol (VRRP) , DHCP server or relay agent WAN Load Balancing and many more.</p>
<p>Vyatta  can be used in small- to medium-business environments with confidence, but  before implementing Vyatta in your production network, we strongly recommend you to test   it in a lab to see if it matches what you need.</p>
<p>The configuration of  Vyatta settings and additional information can be obtained from following sites:<br /> <a title="Vyatta Website" href="http://www.vyatta.org" target="_blank">www.vyatta.org</a><br /> <a title="Carbon Wind" href="http://www.carbonwind.net" target="_blank">www.carbonwind.net</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/03/17/vyatta-opensource-networking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook &#8211; 7 tips to increase your online visibility</title>
		<link>http://www.silenceit.ca/2010/03/17/facebook-7-tips-to-increase-your-online-visibility/</link>
		<comments>http://www.silenceit.ca/2010/03/17/facebook-7-tips-to-increase-your-online-visibility/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 13:05:32 +0000</pubDate>
		<dc:creator>Lynn</dc:creator>
				<category><![CDATA[Social Media]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[online visibility]]></category>
		<category><![CDATA[Social Media Marketing]]></category>
		<category><![CDATA[Target]]></category>
		<category><![CDATA[Wal-Mart]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1397</guid>
		<description><![CDATA[Although social media marketing appears to be easy enough to do, certain actions can cause more harm than good. By reading through numerous blog posts and articles, here are 7 tips that will help increase your online visibility using Facebook.]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1403" style="margin: 10px;" title="FaceBook-Logo" src="http://www.silenceit.ca/wordpress/wp-content/uploads/2010/03/FaceBook-Logo.png" alt="FaceBook-Logo" width="97" height="97" />Facebook is one of the largest social media channels out there today. Facebook was created in 2006 and anyone over the age of 13 with an email address can join the social network. Many businesses have started using social media as part of their marketing campaigns to increase their online visibility and most importantly their profits.</p>
<p>Although social media marketing appears to be easy enough to do, certain actions can cause more harm than good. By reading through numerous blog posts and articles, here are 7 tips that will help increase your online visibility using Facebook.</p>
<p><br class="spacer_" /></p>
<ol>
<li>
<p><strong>Listen First.</strong> Spend some time understanding the lingo and how people interact with one another. If you want to be successful on Facebook, don’t try and change the way they interact.</p>
</li>
<p><br class="spacer_" /></p>
<li>
<p><strong>Create the appropriate page.</strong> Facebook currently offers three choices: Personal Page, Group or Fan Page. Fan Pages are the best choice for a company.  As opposed to groups, fan pages get indexed on search engines. Do not try and turn a personal page into a business page by using the first and last name as your company name.</p>
</li>
<p><br class="spacer_" /></p>
<li>
<p><strong>Allow comments and discussions.</strong> There is a reason why Facebook is a social network – people like to be social. If you limit their activity on your company’s fan page, they will lose interest and will forget why they became fans in the first place. If you are worried about negative comments being left on the company fan page, address them as if they were contacting your customer support department.</p>
</li>
<p><br class="spacer_" /></p>
<li>
<p><strong>Don’t separate company and fan wall posts. </strong>It looks really great if the company is interacting with their fans. It puts the company more on a personal level, making it easier for people to relate to the company, thus creating a sense of trust.</p>
</li>
<p><br class="spacer_" /></p>
<li>
<p><strong>Upload photos or videos.</strong> If your company hosted an event, don&#8217;t hesitate to upload the photos or videos onto Facebook (as long as they are appropriate). People like to see themselves in photos &#8211; whether they admit to it or not.</p>
</li>
<p><br class="spacer_" /></p>
<li>
<p><strong>Stay in touch. </strong>People like to hear news. Adding fresh content to the company fan page will keep the fans engaged. Updating the fan page 2-3 times a week is a great balance between updating and pestering.</p>
</li>
<p><br class="spacer_" /></p>
<li>
<p><strong>Have a mixture of content. </strong>The main purpose of having a Facebook fan is to promote your company and if you are using Facebook, then there is a good chance that your company has a website. By having a mixture of content that keeps people on your fan page, but directs them to your website is a good mix.</p>
</li>
</ol>
<p><br class="spacer_" /></p>
<p>A popular example of a successful campaign and an unsuccessful campaign is Target vs Wal-Mart back in 2007. Follow the links below to learn more about what makes one campaign a success and one a failure.</p>
<p><br class="spacer_" /></p>
<table style="width: 566px; height: 40px;" border="0">
<tbody>
<tr>
<td><img class="aligncenter size-full wp-image-1413" title="target_logo" src="http://www.silenceit.ca/wordpress/wp-content/uploads/2010/03/target_logo1.jpg" alt="target_logo" width="50" height="61" /></td>
<td><img class="aligncenter size-full wp-image-1415" title="walmart-2" src="http://www.silenceit.ca/wordpress/wp-content/uploads/2010/03/walmart-2.jpg" alt="walmart-2" width="75" height="56" /></td>
</tr>
<tr>
<td style="text-align: center;"><a title="Target - A Successful campaign" href="http://social-media-optimization.com/2007/10/a-successful-facebook-marketing-campaign/" target="_blank">Target: A successful campaign</a></td>
<td style="text-align: center;"><a title="Wal-Mart: A failed campaign" href="http://social-media-optimization.com/2007/10/a-failed-facebook-marketing-campaign/" target="_blank">Wal-Mart: A failed campaign</a></td>
</tr>
</tbody>
</table>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/03/17/facebook-7-tips-to-increase-your-online-visibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BIND &#8211; The De Facto Standard Domain Name Server</title>
		<link>http://www.silenceit.ca/2010/03/09/bind-the-de-facto-standard-domain-name-server/</link>
		<comments>http://www.silenceit.ca/2010/03/09/bind-the-de-facto-standard-domain-name-server/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 17:48:20 +0000</pubDate>
		<dc:creator>jascha</dc:creator>
				<category><![CDATA[IT Services]]></category>
		<category><![CDATA[BIND]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[Nameserver]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1324</guid>
		<description><![CDATA[BIND is a very prominent DNS Server (Domain Name System) that translates domain names (e.g. Google.ca) into their respective IP addresses.]]></description>
			<content:encoded><![CDATA[<h3>What is BIND?</h3>
<p>BIND is a very prominent DNS Server (Domain Name System) that translates domain names (e.g. Google.ca) into their respective IP addresses. This allows your computer to locate a website or remote service on the internet. BIND is by far the most widely used DNS server and has become the standard for almost all ISPs in the world. BIND is currently maintained and developed by the Internet Systems Consortium (ISC), an open-source software developer and distributor. ISC operates and maintains one of the thirteen “Root” DNS servers for the entire internet. ISC is a non-profit, public benefit corporation.</p>
<h3>Brief History of BIND</h3>
<p>BIND was originally created by four graduate students at the University of California, Berkeley. BIND was originally released with the BSD 4.3 Unix operating system in the early 1980’s. BSD actually stands for Berkeley Software Distribution. BIND was originally written under a DARPA (Defense Advanced Research Projects Agency) grant. In the mid 1980’s, BIND development was taken over by DEC (Digital Equipment Corporation), most notably Paul Vixie, who continued developing BIND after leaving DEC and eventually helped start ISC. BIND 9 was developed with a combination of commercial and military contracts. Most of BIND 9’s features were directly funded by Unix vendors who wanted to ensure BIND stayed competitive with Microsoft&#8217;s DNS offerings.</p>
<h3>Benefits of using BIND</h3>
<p>BIND uses a distributed architecture allowing many DNS servers to communicate with one another to share data. Using BIND locally on a network allows you to assign simple names to servers for quick and easy access (e.g. MyServer = 192.168.0.100). BIND allows you to specify internal IP addresses for systems that are available both internally and externally, restricting traffic to the local network only, therefore increasing security and limiting external network bandwidth. BIND is well documented and simple, yet extremely robust. BIND caches DNS requests, allowing for faster name resolution for commonly used sites or systems.</p>
<h3>Zones</h3>
<p>BIND servers use “Zones” to describe servers of systems. Zones are defined in a file called named &#8216;.conf.&#8217;  These definitions point to specific zone files stored in the BIND folder.  These zone files store details about the specific domain like:<br />A records: Specifies an IP address for a name, also used for subdomians<br />CNAME records: maps one name to another, like an alias<br />MX records: These define where the main servers for a specific domain are located<br />NS records: Define what DNS server is the authority for this domain, updates to the Zone will be pulled from this server<br />SOA (Start of Authority) Record: Proclaims important authoritative information regarding the zone (e.g. the primary name server, the zone revision number, the refresh time, the expiry time for the record and the amount of time to cache the record)</p>
<h3>Example Zone File:</h3>
<pre>$ORIGIN example.com</pre>
<pre>$TTL 86400</pre>
<pre>@     IN     SOA    dns1.example.com.     hostmaster.example.com. (</pre>
<pre>2001062501 ; serial</pre>
<pre>21600      ; refresh after 6 hours</pre>
<pre>3600       ; retry after 1 hour</pre>
<pre>604800     ; expire after 1 week</pre>
<pre>86400 )    ; minimum TTL of 1 day</pre>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<pre>IN     NS     dns1.example.com.</pre>
<pre>IN     NS     dns2.example.com.</pre>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<pre>IN     MX     10     mail.example.com.</pre>
<pre>IN     MX     20     mail2.example.com.</pre>
<p><br class="spacer_" /></p>
<pre>IN     A       10.0.1.5</pre>
<p><br class="spacer_" /></p>
<pre>server1      IN     A       10.0.1.5</pre>
<pre>server2      IN     A       10.0.1.7</pre>
<pre>dns1         IN     A       10.0.1.2</pre>
<pre>dns2         IN     A       10.0.1.3</pre>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<pre>ftp          IN     CNAME   server1</pre>
<pre>mail         IN     CNAME   server1</pre>
<pre>mail2        IN     CNAME   server2</pre>
<pre>www          IN     CNAME   server2</pre>
<p> </p>
<h3>Load Balancing Through DNS</h3>
<p>BIND allows you to specify multiple IP addresses to a single domain name.  Whenever the domain name is looked up, it will randomly return one of the IP’s. This allows you to have a cluster of servers with the same job sharing the load. An example would be an enterprise class mail cluster, with ten different mail servers sharing the same set of storage. These servers would share all of the SMTP, POP and IMAP requests, splitting the load between them.</p>
<p>Google uses this technique:</p>
<pre>~$ nslookup mail.google.com</pre>
<pre>Server:	localhost</pre>
<pre>Address:	localhost#53</pre>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<pre>Non-authoritative answer:</pre>
<pre>mail.google.com	canonical name = googlemail.l.google.com.</pre>
<pre>Name:	googlemail.l.google.com</pre>
<pre>Address: 72.14.204.83</pre>
<pre>Name:	googlemail.l.google.com</pre>
<pre>Address: 72.14.204.17</pre>
<pre>Name:	googlemail.l.google.com</pre>
<pre>Address: 72.14.204.18</pre>
<pre>Name:	googlemail.l.google.com</pre>
<pre>Address: 72.14.204.19</pre>
<p> </p>
<h3>Other BIND Features</h3>
<h3>Multiple Views</h3>
<p>Define restrictions of what IP addresses see what information<br />External network requests will see the outside IP, internal will see the internal IP</p>
<h3>Security</h3>
<p>DNSSEC (DNS SECurity) allows zones file to be cryptographically signed with a zone “key”</p>
<p>TSIG (Transaction Signatures) allows verification of transactions between master and slave servers</p>
<h3>IPv6</h3>
<p>BIND 9 fully supports IPv6 environments</p>
<h3>BIND 10?</h3>
<p>BIND 9 was released in 1998<br />ISC is currently working on BIND 10 development, creating a new code-base.  BIND 9’s original architecture has withstood the test of time for over a decade but ISC feels in order to meet the demands of the next decade, they need a major overhaul. The major focus areas of BIND 10 are modularity, customizability, clusterization, integration, resilience and runtime control.</p>
<p>All of these are defined on the BIND 10 project page: <a title="https://www.isc.org/bind10/project" href="https://www.isc.org/bind10/project" target="_blank">https://www.isc.org/bind10/project</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/03/09/bind-the-de-facto-standard-domain-name-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Friends with Benefits &#8211; A Social Media Handbook</title>
		<link>http://www.silenceit.ca/2010/03/04/friends-with-benefits-a-social-media-handbook/</link>
		<comments>http://www.silenceit.ca/2010/03/04/friends-with-benefits-a-social-media-handbook/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 20:37:41 +0000</pubDate>
		<dc:creator>Lynn</dc:creator>
				<category><![CDATA[Social Media]]></category>
		<category><![CDATA[Darren Barefoot]]></category>
		<category><![CDATA[Julie Szabo]]></category>
		<category><![CDATA[No Starch Press]]></category>
		<category><![CDATA[Social Media Marketing]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1372</guid>
		<description><![CDATA[Social Media seems to be the topic that everyone is talking about and many businesses are moving toward as another outlet for marketing.  Darren Barefoot and Julie Szabo explain it all in their book: Friends with Benefits – A Social Media Handbook.]]></description>
			<content:encoded><![CDATA[<p>Social Media seems to be the topic that everyone is talking about and many businesses are moving toward as another outlet for marketing.</p>
<p>Social Media Marketing, as defined by Darren Barefoot and Julie Szabo, authors of <span style="text-decoration: underline;">Friends with Benefits – A Social Media Handbook</span> is: “using social media channels to promote your company and its products  (Barefoot and Szabo, 13).&#8221; Examples of a few social media tools include blogs and numerous social networks like Facebook and Twitter.</p>
<p><span style="text-decoration: underline;">Friends with Benefits – A Social Media Handbook</span> is exactly what the title defines.  From the beginning, the authors explain the basic principles behind social media and then elaborate on how you should utilize each social media channel to its fullest potential. Other books that I&#8217;ve read on marketing come across as a sales pitch making me forget that I am looking for tips, tricks and any information that I can gather rather than feeling like I just got off the phone with a telemarketer. Darren and Julie&#8217;s writing elegantly explain the basics of many social media channels without losing the reader with all techno-jargon. They are able to give the reader an abundance of information without being overwhelmed.  Each chapter also includes links that direct you to useful websites or book suggestions that will only further your knowledge with everything associated with social media from RSS feeds to measuring analytics.</p>
<p>Even though being part of the generation that “grew” up using social networks like Facebook and Twitter, there was still so much that I was unaware of before reading this book.  Darren and Julie define and emphasize the importance of online visibility that can be achieved when using social media beyond the basic &#8217;social&#8217; aspect and &#8216;networking&#8217; abilities of these tools to promote and market your company. The information that they provide is not necessarily a tailored marketing plan that you can follow, but instead they give you all the information you need to get your foot into social media and feel confident about your actions online by using examples of successful marketing campaigns.</p>
<p>Whether you are just starting your social media adventure or if you are in the middle of a marketing campaign, this book can give you great tips, &#8220;do&#8217;s and don&#8217;ts&#8221; for specific tools and extra resources for the many social media channels that are at your fingertips.</p>
<p><br class="spacer_" /></p>
<p><img class="aligncenter size-medium wp-image-1381" title="social media channels" src="http://www.silenceit.ca/wordpress/wp-content/uploads/2010/02/social-media-channels-300x47.png" alt="social media channels" width="300" height="47" /></p>
<p><br class="spacer_" /></p>
<p>Barefoot, Darren and Julie Szabo.  <span style="text-decoration: underline;">Friends with Benefits: A Social Media Marketing Handbook</span>.  San Francisco, CA: No Starch Press, 2010.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/03/04/friends-with-benefits-a-social-media-handbook/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>JavaServer Pages</title>
		<link>http://www.silenceit.ca/2010/03/03/java-server-pages/</link>
		<comments>http://www.silenceit.ca/2010/03/03/java-server-pages/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 19:14:25 +0000</pubDate>
		<dc:creator>jascha</dc:creator>
				<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaServer Pages]]></category>
		<category><![CDATA[JSP]]></category>
		<category><![CDATA[JSTL]]></category>
		<category><![CDATA[Servlet]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1254</guid>
		<description><![CDATA[JavaServer Pages enable Web developers and designers to rapidly develop and easily maintain, information-rich, dynamic Web pages that leverage existing business systems.]]></description>
			<content:encoded><![CDATA[<p><strong>Overview:</strong></p>
<p>JavaServer Pages (JSP) enable web developers and designers to rapidly develop and easily maintain information-rich, dynamic web pages that leverage existing business systems. JSP technology enables development of applications that are platform independent and run in almost any environment. JSP Technology is designed to separate the user interface from content generation, enabling designers to easily change the overall page layout without altering the underlying dynamic content.</p>
<p>JSP uses “JavaServer Pages Standard Tag Library” (JSTL) which encapsulates core functionality common to many web applications and is inserted into JSP Pages. JSTL has support for common, structural tasks such as: iteration and conditionals, tags for manipulating XML documents, internationalization tags, and SQL tags.</p>
<p>Java Servlets do the grunt work of JSP. Java Servlet technology provides web developers with a simple, consistent mechanism for extending the functionality of a web server and for accessing existing business systems. A servlet can almost be thought of as an applet that runs on the server side; without a face. Servlets have access to the entire family of Java APIs, including the JDBC API, to access enterprise databases. Servlets can also access a library of HTTP-specific calls and receive all the benefits of the mature Java language, including portability, performance, re-usability, and crash protection.</p>
<p>Another major component of JSP’s are Java Beans. Java Beans are reusable components adhering to a set of conventions. They are used to separate Business logic from the Presentation logic. Internally, a bean is simply an instance of a class with special naming conventions and characteristics.</p>
<p>In order to function as a JavaBean class, an object class must obey certain conventions about method naming, construction and behavior. These conventions make it possible to have tools that can use, re-use, replace and connect JavaBeans.</p>
<p>The class must have a public default constructor. This allows easy instantiation within editing and activation frameworks. The class properties must be accessible using get, set, and other methods (so-called accessor methods and mutator methods), following a standard naming convention. This allows easy automated inspection and updating of bean state within frameworks, many of which include custom editors for various types of properties. The class should be serializable, allowing applications and frameworks to reliably save, store and restore the bean&#8217;s state in a fashion that is independent of the VM and platform.</p>
<p><strong>JSP Benefits:</strong></p>
<ul>
<li>Platform and Server Independence</li>
<li>Open Development Process, Open Source</li>
<li>Extensible JSP Tags</li>
<li>Application persistence and variable scopes</li>
<li>Mature Java language</li>
<li>Easier Maintenance</li>
</ul>
<p>Scripting languages are acceptable for small applications, but do not scale well to manage large, complex applications. Due to how Java language is structured, it is easier to build and maintain large, modular applications with it. JSP technology&#8217;s emphasis on components over scripting makes it easier to revise content without affecting logic or revise logic without changing content.</p>
<p>The Enterprise JavaBeans architecture encapsulates the enterprise logic, such as database access, security and transaction integrity, and isolates it from the application itself. Because JSP technology is an open, cross-platform architecture, web servers, platforms and other components can be easily upgraded or switched without affecting JSP-based applications. This makes JSP suitable for real-world web applications where constant change and growth is the norm.</p>
<p><strong>Security:</strong></p>
<p>Since JSP can inter-operate with standard Java,it has access to the underlying Java SE Platforms extensible security architecture including security features such as cryptography, authentication and authorization, public key infrastructure and more.</p>
<p><strong>JSP Shortcomings:</strong></p>
<ul>
<li>Compiler Required</li>
<li>JSP Typically issues poor error reports</li>
<li>JSP Pages use more disk space then regular scripting languages</li>
<li>Need a solid knowledge of Java</li>
<li>Some simple tasks are more difficult to perform</li>
<li>Coding standards need to be diligently adhered to</li>
<li>Since Java programs run in the Java Virtual Machine, they run somewhat slower then applications written in C or C++</li>
</ul>
<p><strong>Conclusion:</strong></p>
<p>In conclusion, JSP Technology is an excellent way for software developers to implement complex web applications that can have all the features of the mature java language. Even though there are a few shortcomings to JSP the benefits outweigh these.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/03/03/java-server-pages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Social Media Revolution</title>
		<link>http://www.silenceit.ca/2010/02/24/social-media-revolution/</link>
		<comments>http://www.silenceit.ca/2010/02/24/social-media-revolution/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 16:36:17 +0000</pubDate>
		<dc:creator>Lynn</dc:creator>
				<category><![CDATA[Social Media]]></category>
		<category><![CDATA[Social Media Marketing]]></category>
		<category><![CDATA[Social Media Revolution]]></category>
		<category><![CDATA[Socialnomics]]></category>
		<category><![CDATA[Viral Videos of 2010]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1356</guid>
		<description><![CDATA[Social Media Revolution is one of the top 10 viral videos of 2010 - so far.]]></description>
			<content:encoded><![CDATA[<p>Even though we are only two months into 2010, social media is definitely becoming one of the most talked about subjects – whether you are using social media as a part of a marketing campaign or just surfing online.</p>
<p>For the past couple of months, I have become more and more interested in social media and all that it has to offer. With that growing interest, I have brought awareness of this trend to people who are a part of my day-to-day life. Just last week, I was notified by an individual who has a mild interest in social media (for example, completely unaware that he was using social media channels such as Facebook and YouTube) of one of the top 10 viral videos of 2010 – so far.</p>
<p>The video that he was referring to is the video called <a title="Social Media Revolution" href="http://www.youtube.com/watch?v=sIFYPQjYhv8" target="_blank">Social Media Revolution</a> found on YouTube. The source information and the video can be found at <a title="Socialnomics Website" href="http://www.socialnomics.com/" target="_blank">www.socialnomics.com</a>. There are some great and hard to believe facts found within this video and even if you are not currently working on a marketing plan that involves social media, you will want to watch this video to at least understand what people are talking about around the water cooler.</p>
<p>Not only is this video jammed packed with interesting information such as iPod application downloads hit 1 billion in 9 months or that YouTube is the second largest search engine in the world, but the music that is used (Right Here, Right Now by Fat Boy Slim) helps build drama and a sense of importance regarding Social Media.</p>
<p>If you believe that social media is a fad that will soon lose traction, you might think twice after you watch Social Media Revolution.</p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/02/24/social-media-revolution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Gears: An Overview</title>
		<link>http://www.silenceit.ca/2010/02/23/google-gears-an-overview/</link>
		<comments>http://www.silenceit.ca/2010/02/23/google-gears-an-overview/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 16:31:21 +0000</pubDate>
		<dc:creator>Cole Jackson</dc:creator>
				<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[browser extension]]></category>
		<category><![CDATA[Google Gears]]></category>
		<category><![CDATA[JavaScript Library]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1282</guid>
		<description><![CDATA[Around two years ago, Google released a new product "Google Gears."  The main goal was to increase web applications accessibility to client's computers, therefore increasing possible functionality.]]></description>
			<content:encoded><![CDATA[<p>Around two years ago, Google released a new product &#8220;Google Gears.&#8221;  The main goal was to increase web applications accessibility to client&#8217;s computers, therefore increasing possible functionality.  In Google&#8217;s  own words:</p>
<p>“Gears is an open source project that enables more powerful web applications, by adding new features to web browsers.”</p>
<p>Google Gears is basically two parts: a browser extension that a user has to download and install; as well as a JavaScript library that a developer would include on a web page.  This allows a web developer to use extra features not normally available.</p>
<p>Below is a summary of these features:</p>
<p><strong>Desktop</strong></p>
<ul>
<li>A few simple desktop functions (i.e. the ability to create a desktop icon) </li>
</ul>
<p><strong>Geo-location</strong></p>
<ul>
<li>Wi-fi geo-location functionality; iPhone apps presently offer this feature </li>
</ul>
<p><strong>Database</strong></p>
<ul>
<li>A basic install of sqlite locally allows web apps to store information in a local database. This is an interesting feature, but it can add synchronization issues.  Having a single database is one of the nicer parts of coding web applications. </li>
</ul>
<p><strong>Local Server</strong></p>
<ul>
<li>Google Gears installs a mini server locally that again can be used by the web developer.  Combining this with the local database would allow a web application to run offline.  Gmail is an example of this, but again, it complicates the web application. </li>
</ul>
<p><strong>Timer</strong></p>
<ul>
<li>An advanced (and much more accurate) browser timer.</li>
</ul>
<p><strong>Javascript Worker pool</strong></p>
<ul>
<li>This is another interesting feature that provides a developer with the ability to run resource-intensive JavaScript in the background, separate from any of the user interface, therefore preventing extra rendering time.  However, it is somewhat limited as it has no access to the DOM and requires a separate function set to use Ajax.</li>
</ul>
<p>All and all, Google Gears has some &#8220;idea&#8221; potential, but has basically flopped.  Development seems to be stagnant and no news has been posted.  It appears as though it was a push to increase the value of their Gmail and Google Docs products that has fizzled.  Google Gears is not even available on Chrome, Google&#8217;s own browser.   It may be resurrected with the unveiling of the Google OS.  Either way, this user would like to see some of the more basic features available in new browser releases.</p>
<p>Check out my slides for more:</p>
<div id="__ss_3127261" style="text-align: left; width: 425px;"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" title="Google Gears" href="http://www.slideshare.net/silenceit/google-gears">Google Gears</a></div>
<p>
<object style="margin:0px" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=googlegears-100210145752-phpapp01&amp;stripped_title=google-gears" /><param name="allowfullscreen" value="true" /><embed style="margin:0px" type="application/x-shockwave-flash" width="425" height="355" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=googlegears-100210145752-phpapp01&amp;stripped_title=google-gears" allowscriptaccess="always" allowfullscreen="true"></embed></object>
</p>
<div style="font-family: tahoma,arial; height: 26px; font-size: 11px; padding-top: 2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">presentations</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/silenceit">SilenceIT Inc.</a>.</div>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/02/23/google-gears-an-overview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP-IDS</title>
		<link>http://www.silenceit.ca/2010/02/22/php-ids/</link>
		<comments>http://www.silenceit.ca/2010/02/22/php-ids/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 16:26:10 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHP-IDS]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[web applications]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1265</guid>
		<description><![CDATA[PHP-IDS is an open-source IDS made for and in PHP.  It is a collection of blacklist filters designed to detect common (and less common) intrusions that can occur in PHP applications, such as SQL injections.]]></description>
			<content:encoded><![CDATA[<h2>What is an <acronym title="Intrusion Detection System">IDS</acronym>?</h2>
<p>An IDS is an &#8220;Intrusion Detection System,&#8221; a system which detects attempts (whether manual or automated) to break into another system or network. These systems are designed solely for detection and notification.  The resulting actions are up to those responsible. For this reason, IDSs tend to have a lot of rules and therefore tend to cause false positives.  It is up to the maintainers to decide which rules (or filters) should be used in the first place and which should be tuned.</p>
<h2>What is PHP-IDS?</h2>
<p>PHP-IDS is an open-source IDS made for and in PHP.  It is a collection of blacklist filters designed to detect common (and less common) intrusions that can occur in PHP applications, such as SQL injections. These filters are all regular expressions which are fairly robust in general, but the filters still need some work.  Some of the false positives (discussed below) seem quite ridiculous!</p>
<h2>The Good</h2>
<ul>
<li>It can log incidents to a file or a database (or anything else which you implement the class for) as well as e-mail you when the incidents occur.</li>
<li>Since it is a function called by your PHP application, it returns a result you can use to then execute an action based on how strong the attack is according to PHP-IDS.  This allows you to use it as an <acronym title="Intrusion Prevention System">IPS</acronym> but you have to be careful with this since, as previously stated, false positives can occur.</li>
<li>However, it does have flexibility in what can be detected.  The filters come as a simple XML file (there&#8217;s also a JSON version) which makes it relatively easy to add and remove filters.</li>
<li>The general configuration file can be overridden.  This way, you can have a different configuration or set of rules used for different parts of your application or even dynamically change the configuration based on circumstance.</li>
<li>The <var>auto_prepend_file</var> setting in PHP can be used to add PHP-IDS to every page in an application, site or server.</li>
<li>The <a href="http://demo.php-ids.org/">demo</a> on the PHP-IDS website can be used for testing and getting an impression of its strengths and weaknesses without having to set up such a test bed yourself.</li>
</ul>
<h2>The Bad</h2>
<ul>
<li>Hardly any documentation.  Most of what is provided is really more developer documentation than user documentation.</li>
<li>More or less requires a change of the PHP include path, which can be a bit obscure.</li>
<li>No (special) protection from <a href="http://forum.php-ids.org/comments.php?DiscussionID=370&amp;page=1">separated XSS injections</a>.  For example, attacks that can be split in half between two inputs.</li>
<li>Naturally, it doesn&#8217;t protect you from everything.  Some security holes made by sloppy or careless programming (or some obscure feature) will go right through as nothing automated can protect you from that (e.g. the <a href="http://isc.sans.org/diary.html?storyid=6934">Wordpress array attack</a>). It may not fit in &#8220;The Bad,&#8221; but it&#8217;s definitely something to keep in mind.</li>
<li>Examples show GPC (and R) lumped together (much like how <var>$_REQUEST</var> works by default), but they at least do warn of <var>array_merge()</var>&#8217;s effects.</li>
<li>The community is virtually non-existent. There are posts asking for help that are not being answered; even posts which are pointing out valid false positives. Speaking of, the box to report false positives on the demo page is not currently functional.</li>
</ul>
<h2>The Ugly</h2>
<ul>
<li>It&#8217;s only IDS, not an IPS. The major problems with IDS systems currently is that a simple notification isn&#8217;t good enough.  Chances are by the time you&#8217;re done reading the fact that there <em>could</em> be a problem, the exploit is done and over with and it is too late.</li>
<li>It is not a whitelist.  No matter how good the blacklist, the moment any new features or technologies are provided, it will instantly be a step behind and usually will remain a step behind. On the other hand, whitelists take more effort to produce (depending on the situation) but only allow specific data that is expected.</li>
<li>There are quite a lot of false positives to worry about in this IDS.</li>
<li>The project seems to be dying; there have been no updates to the filters in two months.</li>
</ul>
<h2>False positives</h2>
<ul>
<li>Two hyphens side-by-side anywhere (i.e. -‌-).  Technically, one should never end up with this, but many are lazy and substitute proper en dashes (–) and em dashes (—) with hyphens. In the proper context this is not a false positive (&#8211; is a comment in SQL queries). </li>
<li>Certain <a href="http://forum.php-ids.org/comments.php?DiscussionID=374&amp;page=1">blocks of unrelated text</a> having <a href="http://forum.php-ids.org/comments.php?DiscussionID=369&amp;page=1">specific common punctuation</a> and/or &#8220;reserved words&#8221;, e.g. L&#8217;or! triggers a false positive.</li>
<li>The longer and more varied the text is (comments, blog posts, news articles, &#8230;) the more likely it is to be a false positive.</li>
</ul>
<h2>False negatives</h2>
<p>I tried to locate a few but I haven&#8217;t found any yet. I&#8217;ve tried a variety of different methods as well as obscure and browser-specific hacks and so far have found nothing which gets through — yet. But at least it has that going for it.</p>
<h2>Conclusion</h2>
<p>It makes a nice <em>addition</em> to existing security measures. It is useful — as an IDS — for tracking repeat attacks and users attempting to abuse a system. However, even altered to function as an IPS, it needs more work to be used alone and therefore cannot be relied on yet as an IPS. It is certainly no substitute for <a href="http://www.modsecurity.org/">mod_security</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/02/22/php-ids/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Français added to Golf-O-Max Gatineau website</title>
		<link>http://www.silenceit.ca/2010/02/19/francais-added-to-golf-o-max-gatineau-website/</link>
		<comments>http://www.silenceit.ca/2010/02/19/francais-added-to-golf-o-max-gatineau-website/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 20:55:37 +0000</pubDate>
		<dc:creator>Lynn</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Gatineau]]></category>
		<category><![CDATA[Golf-O-Max]]></category>
		<category><![CDATA[Quebec]]></category>
		<category><![CDATA[SilenceIT]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1342</guid>
		<description><![CDATA[This week, SilenceIT added Français content to the Golf-O-Max Gatineau website.]]></description>
			<content:encoded><![CDATA[<p><!-- 		@page { margin: 0.79in } 		P { margin-bottom: 0.08in } --></p>
<p>This week, SilenceIT added a language option to the <a title="Golf O Max Gatineau" href="http://www.golfomaxgatineau.com/" target="_blank">Golf-O-Max Gatineau</a> website. Previously, the content of the website was entirely in English, but since the location of Golf-O-Max Gatineau was located in Quebec, the addition of  Français content was necessary and a nice little feature to the website.</p>
<p>When you first visit Golf-O-Max Gatineau, Français is the default language, but a simple click to &#8216;English&#8217; located underneath the navigation bar will instantly change the website content to English.</p>
<p><br class="spacer_" /></p>
<p>Visit <a title="Golf O Max Gatineau" href="http://www.golfomaxgatineau.com/" target="_blank">Golf-O-Max Gatineau</a> to view this new feature of the website.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/02/19/francais-added-to-golf-o-max-gatineau-website/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New RFPBlaster™ Release &#8211; More great procurement tools</title>
		<link>http://www.silenceit.ca/2010/02/19/new-rfpblaster%e2%84%a2-release-more-great-procurement-tools/</link>
		<comments>http://www.silenceit.ca/2010/02/19/new-rfpblaster%e2%84%a2-release-more-great-procurement-tools/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 18:56:48 +0000</pubDate>
		<dc:creator>Lynn</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[New Release]]></category>
		<category><![CDATA[RFP]]></category>
		<category><![CDATA[RFPBlaster]]></category>
		<category><![CDATA[SRScan]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1335</guid>
		<description><![CDATA[SRScan launched a new release of RFPBlaster.com with  help from the development team at SilenceIT. The new release provides extra support documents and services as well as offering a membership to reap even more benefits from the RFPBlaster.com website.]]></description>
			<content:encoded><![CDATA[<p>Yesterday, SRScan launched a new release of RFPBlaster.com with  help from the SilenceIT development team.</p>
<p>The RFPBlaster.com website sells a variety of high quality, professionally prepared RFP’s for businesses in the IT industry and with the new release, RFPBlaster™  provides extra support documents and services as well as offering a membership to reap even more benefits from the RFPBlaster.com website.</p>
<p>Here is a look at the new RFPBlaster™ website release:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-1336" title="New RFPBlaster™ website Release" src="http://www.silenceit.ca/wordpress/wp-content/uploads/2010/02/new-release-image.jpg" alt="New RFPBlaster Release" width="531" height="261" /></p>
<p>View the <a title="RFPBlaster Website" href="http://www.rfpblaster.com/" target="_blank"><span style="font-size: 13px;">RFPBlaster™</span></a> website and find out more.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/02/19/new-rfpblaster%e2%84%a2-release-more-great-procurement-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby on Rails</title>
		<link>http://www.silenceit.ca/2010/02/17/ruby-on-rails/</link>
		<comments>http://www.silenceit.ca/2010/02/17/ruby-on-rails/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 15:37:44 +0000</pubDate>
		<dc:creator>JT</dc:creator>
				<category><![CDATA[Product Reviews]]></category>
		<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Web Application]]></category>

		<guid isPermaLink="false">http://www.silenceit.ca/?p=1200</guid>
		<description><![CDATA[Ruby on Rails (RoR or Rails) is an open-source web application framework based from the Ruby programming language. It is a framework which utilizes convention over configuration, meaning it decreases the choices needed to be made by the developer.]]></description>
			<content:encoded><![CDATA[<p>Ruby on Rails (RoR or Rails) is an open-source web application framework based from the Ruby programming language. It is a framework which utilizes convention over configuration, meaning it decreases the choices needed to be made by the developer.</p>
<p>Rails also follows the MVC architectural pattern, allowing for developers and designers to easily work alongside one another.  Although, in most cases, the designer would still require some knowledge of the Ruby language. Continuing with patterns, Rails also sports the ActiveRecord base for use with its models, creating objects from your database fields. This provides a simple way to create, update and destroy records without dealing with SQL.</p>
<p>While Rails, when used properly, can be a very powerful tool, there are also some disputed downfalls of it. Scalability has been a topic with Rails for a while and on many occasions has been proven a negative. While I cannot provide much insight into the actual truth of this, I do think <a href="http://www.twitter.com">Twitter</a> is a prime example of a large system able to run on Rails as well as all of the <a href="http://www.37signals.com">37signals products</a>. Also if not properly managed, there have been reports of Ruby servers using copious amounts of memory due to the system&#8217;s constant runtime.</p>
<p>All of these factors considered, I believe the ease of use of Rails speaks above all. Having the potential to create web applications without starting from scratch is always a plus and having the added help Rails provides is even better. While it isn&#8217;t best suited for every project, it does offer a great view of how fun programming can be.</p>
<p>To learn more about rails and learn to build a basic blog in twenty minutes, visit <a href="http://www.rubyonrails.org">rubyonrails.org</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.silenceit.ca/2010/02/17/ruby-on-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
