<?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>The Mercian Labels Group Blog - Security Labels International, Mercian Labels and AC Labels &#187; coding</title>
	<atom:link href="http://www.selfadhesivelabels.com/blog/category/coding/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.selfadhesivelabels.com/blog</link>
	<description>We blog about We blog on label printing, security labelling, variable barcode labelling and open source software in small business.</description>
	<lastBuildDate>Thu, 02 Feb 2012 20:35:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Label Grid launched &#8211; is is possible to have browser based label printing software &#8211; and open source too!</title>
		<link>http://www.selfadhesivelabels.com/blog/2010/06/29/label-grid-launched-is-is-possible-to-have-browser-based-label-printing-software-and-open-source-too/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2010/06/29/label-grid-launched-is-is-possible-to-have-browser-based-label-printing-software-and-open-source-too/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 06:04:40 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Labels]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[label printing software]]></category>
		<category><![CDATA[labelgrid]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/?p=778</guid>
		<description><![CDATA[I was interested to hear of the launch  of Labelgrid recently.  This is a new open source project (GPL licence) to design a web based label printing software stack to design and print labels in a browser rather than the typical client based software.  There  will be a number of challenges in this as the [...]]]></description>
			<content:encoded><![CDATA[<p>I was interested to hear of the launch  of Labelgrid recently.  This is a new <a href="http://sourceforge.net/projects/labelsoftware/">open source project (GPL licence) to design a web based label printing software stack</a> to design and print labels in a browser rather than the typical client based software.  There  will be a number of challenges in this as the authors point out on their <a href="http://www.labelgrid.net/">webpage</a>, but I thin its a really interesting idea if they get it to work well, and I wish them all the best in the code development .  You can see a demo <a href="http://www.labelgrid.net/labelsoftware/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2010/06/29/label-grid-launched-is-is-possible-to-have-browser-based-label-printing-software-and-open-source-too/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to configure a SNOM 300 phone for a conference call using TRIXBOX</title>
		<link>http://www.selfadhesivelabels.com/blog/2010/05/06/how-to-configure-a-snom-300-phone-for-a-conference-call-using-trixbox/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2010/05/06/how-to-configure-a-snom-300-phone-for-a-conference-call-using-trixbox/#comments</comments>
		<pubDate>Thu, 06 May 2010 06:28:07 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/?p=711</guid>
		<description><![CDATA[We use a lot of SNOM 300 VOIP phones at our sites, and have just cracked a way to make conference calls on them, which is not obvious or covered by the manual. If you are trying to do this: Login to your phone using the web GUI via http://its.IP.x.x and select function L4 &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter" title="snom300" src="http://www.snom.com/fileadmin/user_upload/4_Presse/4_Download/snom300_WEB_copyr.jpg" alt="" width="600" height="526" /></p>
<p>We use a lot of SNOM 300 VOIP phones at our sites, and have just cracked a way to make conference calls on them, which is not obvious or covered by <a href="http://www.snom.com/uploads/docu/UM_snom3xx_V2.2_en.pdf">the manual.</a> If you are trying to do this:</p>
<ol>
<li>Login to your phone using the web GUI via http://its.IP.x.x and select function L4 &#8211; directory, (or any function you dont use)</li>
<li>change the function tag to   F_CONFERENCE</li>
<li>save</li>
</ol>
<p>to make a conference call,</p>
<ol>
<li>call the first call, speak and put on hold by pressing the L1 line 1 button</li>
<li>dial the second number and speak to them</li>
<li>press L4 and all 3 callers are connected</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2010/05/06/how-to-configure-a-snom-300-phone-for-a-conference-call-using-trixbox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>miserware only delivers a 2.7% power reduction</title>
		<link>http://www.selfadhesivelabels.com/blog/2010/02/13/miserware-only-delivers-a-2-7-power-reduction/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2010/02/13/miserware-only-delivers-a-2-7-power-reduction/#comments</comments>
		<pubDate>Sat, 13 Feb 2010 06:21:49 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[miserware]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/?p=515</guid>
		<description><![CDATA[15/2/10 NOTE: this post has content that is seen as inaccurate by Miserware and you are advised to read all the text before forming conclusions to give Miserware a fair hearing. Interested by some of Alan&#8217;s posts at the Open Sourcerer, I&#8217;ve been conducting an experiment in recent weeks with the Miserware power saving software [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><strong>15/2/10 NOTE: this post has content that is seen as inaccurate by Miserware and you are advised to read all the text before forming conclusions to give Miserware a fair hearing.</strong></p>
<div id="attachment_517" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-517" title="13022010134" src="http://www.selfadhesivelabels.com/blog/wp-content/uploads/2010/02/13022010134-300x225.jpg" alt="I used a power meter to measure the electric draw of the PC using and not using miserware" width="300" height="225" /><p class="wp-caption-text">I used a power meter to measure the electric draw of the PC using and not using miserware</p></div>
<p>Interested by some of <a href="http://www.theopensourcerer.com/2009/05/13/over-65-power-reduction-on-my-ubuntu-server/">Alan&#8217;</a>s posts at the <a href="http://www.theopensourcerer.com/2009/05/26/update-on-miserware-beta-power-saving-on-linux/">Open Sourcerer</a>, I&#8217;ve been conducting an experiment in recent weeks with the <a href="http://www.miserware.com/">Miserware </a>power saving software that claims to save energy by better controlling CPU management.  I run a new (late 2009) pc with an Intel Core 2 Quad Q8200 (4x 2.33) CPU with a 450w PowerCool 80+, and have given it a go.  However, I didnt rely on the software&#8217;s own claimed power savings, I put an electric meter between the PC&#8217;s plug and the socket, and directly measured the power usage over 3 weeks, both with and without the software installed, set at my current domestic electricity rate pkwh.</p>
<p>Here is my data:</p>
<p><!--   		BODY,DIV,TABLE,THEAD,TBODY,TFOOT,TR,TH,TD,P { font-family:"Arial"; font-size:x-small } --></p>
<table border="0" cellspacing="0" frame="VOID" rules="NONE">
<colgroup>
<col width="86"></col>
<col width="107"></col>
<col width="80"></col>
<col width="80"></col>
<col width="80"></col>
<col width="80"></col>
<col width="80"></col>
<col width="127"></col>
</colgroup>
<tbody>
<tr>
<td style="border: 1px solid #000000;" width="86" height="47" align="CENTER">miserware installed?</td>
<td style="border: 1px solid #000000;" width="107" align="CENTER">date</td>
<td style="border: 1px solid #000000;" width="80" align="CENTER">£ of electricity used</td>
<td style="border: 1px solid #000000;" width="80" align="CENTER">£ per day from last reading</td>
<td style="border: 1px solid #000000;" width="80" align="CENTER">£ per day</td>
<td style="border: 1px solid #000000;" width="80" align="CENTER">annual cost</td>
<td style="border: 1px solid #000000;" width="80" align="CENTER">annual saving</td>
<td style="border: 1px solid #000000;" width="127" align="LEFT"></td>
</tr>
<tr>
<td style="border: 1px solid #000000;" height="17" align="CENTER">no</td>
<td style="border: 1px solid #000000;" align="CENTER">19/01/10 14:00</td>
<td style="border: 1px solid #000000;" align="CENTER">0</td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="LEFT">pc booted up</td>
</tr>
<tr>
<td style="border: 1px solid #000000;" height="17" align="CENTER">no</td>
<td style="border: 1px solid #000000;" align="CENTER">20/01/10 18:00</td>
<td style="border: 1px solid #000000;" align="CENTER">0.16</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1371</td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="LEFT"></td>
</tr>
<tr>
<td style="border: 1px solid #000000;" height="17" align="CENTER">no</td>
<td style="border: 1px solid #000000;" align="CENTER">23/01/10 22:00</td>
<td style="border: 1px solid #000000;" align="CENTER">0.62</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1453</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1431</td>
<td style="border: 1px solid #000000;" align="CENTER">52.22</td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="LEFT">miserware installed</td>
</tr>
<tr>
<td style="border: 1px solid #000000;" height="17" align="CENTER">yes</td>
<td style="border: 1px solid #000000;" align="CENTER">24/01/10 08:00</td>
<td style="border: 1px solid #000000;" align="CENTER">0.67</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1200</td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="LEFT"></td>
</tr>
<tr>
<td style="border: 1px solid #000000;" height="17" align="CENTER">yes</td>
<td style="border: 1px solid #000000;" align="CENTER">26/01/10 19:00</td>
<td style="border: 1px solid #000000;" align="CENTER">1.02</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1424</td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="LEFT"></td>
</tr>
<tr>
<td style="border: 1px solid #000000;" height="17" align="CENTER">yes</td>
<td style="border: 1px solid #000000;" align="CENTER">30/01/10 08:43</td>
<td style="border: 1px solid #000000;" align="CENTER">1.53</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1428</td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="LEFT"></td>
</tr>
<tr>
<td style="border: 1px solid #000000;" height="17" align="CENTER">yes</td>
<td style="border: 1px solid #000000;" align="CENTER">08/02/10 08:33</td>
<td style="border: 1px solid #000000;" align="CENTER">2.81</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1423</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1418</td>
<td style="border: 1px solid #000000;" align="CENTER">51.77</td>
<td style="border: 1px solid #000000;" align="CENTER"></td>
<td style="border: 1px solid #000000;" align="LEFT">Uninstalled 8 feb</td>
</tr>
<tr>
<td style="border: 1px solid #000000;" height="17" align="CENTER">no</td>
<td style="border: 1px solid #000000;" align="CENTER">13/02/10 05:12</td>
<td style="border: 1px solid #000000;" align="CENTER">3.53</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1481</td>
<td style="border: 1px solid #000000;" align="CENTER">0.1481</td>
<td style="border: 1px solid #000000;" align="CENTER">54.07</td>
<td style="border: 1px solid #000000;" align="CENTER">2.3</td>
<td style="border: 1px solid #000000;" align="LEFT">test stopped</td>
</tr>
</tbody>
</table>
<p>What I did was to run the PC without the software installed for 4 days from 19-23 Jan, installed miserware from 23 Jan to 8 Feb, then ran the PC again from 8 Feb until today.  Congratulations to the miserware support though, when I had issues installing they were right on the ball, and FOC.</p>
<p>The results are pretty unimpressive.  Despite a claimed 15% power saving claimed by the software (sudo grep Estimated\ energy /var/log/* )  it actually made very little difference at all.  In fact, if you average out the estimated annual usage for the 2 periods without running miserware ((52.22+54.07)/2) = 53.15 and compare that to the annual cost running miserware of £51.77, you see a 2.7% power saving thats worth about £2.30 a year.  OK, its a saving, but its not worth a lot to me.</p>
<p>The scary observation is that if you leave a PC on 24/7, its going to cost you over fifty quid a year at current online dual fuel electricity tariff rates!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2010/02/13/miserware-only-delivers-a-2-7-power-reduction/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Multiple Accounts using a single Alias in Zimbra</title>
		<link>http://www.selfadhesivelabels.com/blog/2009/03/30/multiple-accounts-using-a-single-alias-in-zimbra/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2009/03/30/multiple-accounts-using-a-single-alias-in-zimbra/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 08:34:40 +0000</pubDate>
		<dc:creator>rich</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Multiple Accounts]]></category>
		<category><![CDATA[Single Alias]]></category>
		<category><![CDATA[Zimbra]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/?p=164</guid>
		<description><![CDATA[A little back end tweak here to allow multiple Zimbra email accounts to use a single alias. Normally, you can only assign an alias to one single user, otherwise you are presented with a similar error: Cannot add alias: Account user@domain already has alias aliasuser@domain We needed to be able to allow two user accounts [...]]]></description>
			<content:encoded><![CDATA[<p>A little back end tweak here to allow multiple Zimbra email accounts to use a single alias.</p>
<p>Normally, you can only assign an alias to one single user, otherwise you are presented with a similar error: </p>
<p>Cannot add alias:<br />
Account user@domain already has alias aliasuser@domain</p>
<p>We needed to be able to allow two user accounts to send emails from the same account (alias); there may be other ways to do this, but the fix that worked for us is:</p>
<p><strong>zmprov ma user1 +zimbraAllowFromAddress aliasuser@domain.com<br />
zmprov ma user2 +zimbraAllowFromAddress aliasuser@domain.com</strong></p>
<p>To run these commands, You need to connect to your zimbra server (I used SSH) and then su to the zimbra user:</p>
<p><strong>su zimbra</strong></p>
<p>then simply enter the commands:</p>
<p><strong>zmprov ma user1 +zimbraAllowFromAddress aliasuser@domain.com<br />
zmprov ma user2 +zimbraAllowFromAddress aliasuser@domain.com</strong></p>
<p>that should be all that&#8217;s needed.</p>
<p>This basically then allows user1 to use the alias, and user2 to use the same alias, and as far as I can tell, there are no limits to the number accounts you can apply this to. I did actually use two test accounts first to ensure of no problems, but all worked 100%.</p>
<p>Thanks to Matt at <a href="http://www.senokian.com/">Senokian</a> for the suggestion.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2009/03/30/multiple-accounts-using-a-single-alias-in-zimbra/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gulp &#8211; our first published hack &#8211; using a nokia e90 mobile phone over bluetooth as a 3G modem on T-mobile</title>
		<link>http://www.selfadhesivelabels.com/blog/2009/02/13/gulp-our-first-published-hack-using-a-nokia-e90-mobile-phone-over-bluetooth-as-a-3g-modem-on-t-mobile/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2009/02/13/gulp-our-first-published-hack-using-a-nokia-e90-mobile-phone-over-bluetooth-as-a-3g-modem-on-t-mobile/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 12:36:15 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/?p=155</guid>
		<description><![CDATA[I think this is our first ever hack, heavily copied from here (thanks to that author) with a few little changes for the UK T-mobile network, and shows how to use a nokia e90 mobile phone over bluetooth as a 3G modem on T-mobile on ubuntu 8.10, saving yoruself the cost of buying a Â£150 [...]]]></description>
			<content:encoded><![CDATA[<p>I think this is our first ever hack, heavily copied from <a href="http://www.thinkdigit.com/forum/showthread.php?t=73530">here</a> (thanks to that author) with a few little changes for the UK T-mobile network, and shows how to use a nokia e90 mobile phone over bluetooth as a 3G modem on T-mobile on ubuntu 8.10, saving yoruself the cost of buying a Â£150 USB 3G dongle</p>
<p>First Pair your Mobile to Your laptop Manually&#8230;using bluetooth manager.. if pc is not connecting to your device.. try to connect the pc from your mobile</p>
<p>then go to console n issue the following command</p>
<p>adrian@adrian-laptop:~$ sdptool search DUN</p>
<p>output<br />
&#8212;&#8212;&#8212;-<br />
Inquiring &#8230;<br />
Searching for DUN on 00:1A:89:CD:14:9A &#8230;<br />
Service Name: Dial-Up Networking<br />
Service RecHandle: 0x1005c<br />
Service Class ID List:<br />
&#8220;Dialup Networking&#8221; (0&#215;1103)<br />
Protocol Descriptor List:<br />
&#8220;L2CAP&#8221; (0&#215;0100)<br />
&#8220;RFCOMM&#8221; (0&#215;0003)<br />
Channel: 4<br />
Language Base Attr List:<br />
code_ISO639: 0x454e<br />
encoding:Â Â Â  0x6a<br />
base_offset: 0&#215;100<br />
Profile Descriptor List:<br />
&#8220;Dialup Networking&#8221; (0&#215;1103)<br />
Version: 0&#215;0100</p>
<p>NOTE THE CHANNEL NUMBER<br />
step 2: Issue the command</p>
<p>hcitool scan</p>
<p>output<br />
&#8212;&#8212;&#8212;&#8211;<br />
Scanning &#8230;<br />
00:1A:89:Cx:14:9AÂ Â Â  Adrian e90</p>
<p>step 3: issue the command</p>
<p>sudo gedit /etc/bluetooth/rfcomm.conf</p>
<p>paste the text in it</p>
<p>rfcomm0 {<br />
bind yes;<br />
device 00:1A:89:Cx:14:9A;<br />
channel 4;<br />
comment &#8220;Nokia E90&#8243;;<br />
}</p>
<p>USE YOUR OWN DETAILS FOR MAC ADDRESS AND CHANNEL NUMBER<br />
save it</p>
<p>step 4:</p>
<p>issue the command</p>
<p>sudo gedit /etc/ppp/peers/airtel</p>
<p>copy this in that file</p>
<p>/dev/rfcomm0 115200<br />
connect &#8216;/usr/sbin/chat -v -f /etc/ppp/chat-gprs&#8217;<br />
crtscts<br />
modem -detach<br />
noccp<br />
defaultroute<br />
usepeerdns<br />
noauth<br />
ipcp-accept-remote<br />
ipcp-accept-local<br />
noipdefault</p>
<p>step 5:</p>
<p>issue the command</p>
<p>sudo gedit /etc/ppp/chat-gprs</p>
<p>copy this in the file</p>
<p>&#8221; ATZ OK<br />
AT+CGDCONT=1,&#8221;IP&#8221;,&#8221;general.t-mobile.uk&#8221;<br />
OK &#8220;ATD*99***1#&#8221;<br />
CONNECT &#8221;<br />
step 6:</p>
<p>FINISHED</p>
<p>To run it,make sure you are not connected to another wifi network (reboot in needed), thenÂ  just issue this command</p>
<p>sudo pppd call airtel</p>
<p>It works, and has just saved me Â£150 for a 3G wireless USB dongle device.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2009/02/13/gulp-our-first-published-hack-using-a-nokia-e90-mobile-phone-over-bluetooth-as-a-3g-modem-on-t-mobile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Finally, I&#8217;ve found a decent webpage design software for linux (like dreamweaver)</title>
		<link>http://www.selfadhesivelabels.com/blog/2008/07/20/finally-ive-found-a-decent-webpage-design-software-for-linux-like-dreamweaver/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2008/07/20/finally-ive-found-a-decent-webpage-design-software-for-linux-like-dreamweaver/#comments</comments>
		<pubDate>Sun, 20 Jul 2008 07:57:27 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/?p=103</guid>
		<description><![CDATA[Apart from a couple of small SEO applications that only run on windos, the biggest problem I have come across when using linux in the past year for day to day business use is the lack of a WYSIWYG webapge editor.Â  At the moment I&#8217;m still remote desktop&#8217;ing onto our old windows server where we [...]]]></description>
			<content:encoded><![CDATA[<p>Apart from a couple of small SEO applications that only run on windos, the biggest problem I have come across when using linux in the past year for day to day business use is the lack of a WYSIWYG webapge editor.Â  At the moment I&#8217;m still remote desktop&#8217;ing onto our old windows server where we have dreamweaver installed.Â  I can code in html, but to be honest a split screen webpage editor is a fantastic tool, and until today I hadnt found one for linux.</p>
<p>I have <a href="http://www.selfadhesivelabels.com/blog/2007/08/12/any-suggestions-for-linux-substitutes-for-odd-windows-programs-tcp-port-scanner-gui-ssh-client-and-seoelite/">previously posted </a>on this issue, but got nowhere.Â  Bluefish installs and works fine but is not a split screen WYSIWYG webpage editor.Â  I couldn&#8217;t get NVU to install and I didnt like quanta.</p>
<p>However, today I found , http://ubuntuforums.org/showthread.php?t=842808&amp;page=1 which linked to a great application called <a href="http://www.kompozer.net/">KompoZer</a>, which does what I want, a  WYSIWYG webpage editor.</p>
<p>I&#8217;ve tried it out and it seems fine to me, again, thank you to the community who wrote this very useful application.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2008/07/20/finally-ive-found-a-decent-webpage-design-software-for-linux-like-dreamweaver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>new software system, dry run results</title>
		<link>http://www.selfadhesivelabels.com/blog/2008/07/14/new-software-system-dry-run-results/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2008/07/14/new-software-system-dry-run-results/#comments</comments>
		<pubDate>Mon, 14 Jul 2008 17:09:18 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/?p=99</guid>
		<description><![CDATA[Well we did a full dry run last Friday with the new PHP driven labels CRM system (yet to be named &#8211; any ideas?) and it didnt go as well as we hoped.Â  So much so that we have a list of bugs to work on before its good enough to go &#8220;live&#8221;, hopefully next [...]]]></description>
			<content:encoded><![CDATA[<p>Well we did a full dry run last Friday with the new PHP driven labels CRM system (yet to be named &#8211; any ideas?) and it didnt go as well as we hoped.Â  So much so that we have a list of bugs to work on before its good enough to go &#8220;live&#8221;, hopefully next weekend.</p>
<p>Patience is a vurtue as they say, but I&#8217;m just so keen to see the new system up and running and give us some more reliability.Â  Anyway, there is another week of bug fixing, and we try again next weekend.</p>
<p>Open source migrations take time, I knew it, and now we are proving it ourselves!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2008/07/14/new-software-system-dry-run-results/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Postgresql: Calculate work days (none weekend days)</title>
		<link>http://www.selfadhesivelabels.com/blog/2008/02/15/postgresql-calculate-work-days-none-weekend-days/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2008/02/15/postgresql-calculate-work-days-none-weekend-days/#comments</comments>
		<pubDate>Fri, 15 Feb 2008 13:40:29 +0000</pubDate>
		<dc:creator>rich</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Postgresql]]></category>
		<category><![CDATA[business days]]></category>
		<category><![CDATA[work days]]></category>
		<category><![CDATA[work_days()]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/2008/02/15/postgresql-calculate-work-days-none-weekend-days/</guid>
		<description><![CDATA[Coming from a MsSQL database with access queries/macros/modules and so on, its easy to be able to work out weekend days from two given dates, ie if you have two dates you can calculate how many days between them aren&#8217;t weekdays. In postgresql, this isnt so easy! there aren&#8217;t many examples on the net, without [...]]]></description>
			<content:encoded><![CDATA[<p>Coming from a MsSQL database with access queries/macros/modules and so on, its easy to be able to work out weekend days from two given dates, ie if you have two dates you can calculate how many days between them <strong>aren&#8217;t</strong> weekdays.</p>
<p>In postgresql, this isnt so easy!</p>
<p>there aren&#8217;t many examples on the net, without creating mass functions, but i&#8217;ve come up with this:</p>
<p>SELECT count(*) FROM generate_series(1, (higherdate::date &#8211; lowerdate::date)) i WHERE date_part(&#8216;dow&#8217;, higherdate::date + i) NOT IN (0,6);</p>
<p>the higherdate and lowerdate are exactly what they sound like, the higherdate has to be after the lowerdate.</p>
<p>That will work out how many days between each of those dates, and return a result that doesnt include sat/suns  basically giving you working days!</p>
<p>It doesnt take into account holidays, but I didnt need it to..</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2008/02/15/postgresql-calculate-work-days-none-weekend-days/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Postgresql: Converting money type to numeric!</title>
		<link>http://www.selfadhesivelabels.com/blog/2008/02/14/postgresql-converting-money-type-to-numeric/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2008/02/14/postgresql-converting-money-type-to-numeric/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 10:57:09 +0000</pubDate>
		<dc:creator>rich</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Postgresql]]></category>
		<category><![CDATA[cast money to numeric in postgresql]]></category>
		<category><![CDATA[postgresql money to numeric]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/2008/02/14/postgresql-converting-money-type-to-numeric/</guid>
		<description><![CDATA[Quick post here, as I was having trouble finding any information(that worked, or indepth enough to work for what I needed). The type money is now deprecated from postgresql, and a few of our tables contained this data type. This is fine, and worked as we wanted, until there came a time I needed to [...]]]></description>
			<content:encoded><![CDATA[<p>Quick post here, as I was having trouble finding any information(that worked, or indepth enough to work for what I needed).</p>
<p>The type money is now deprecated from postgresql, and a few of our tables contained this data type. This is fine, and worked as we wanted, until there came a time I needed to do a query such as:</p>
<p><strong>select * from mytable where (mytable.charge > 0);</strong></p>
<p>seems easy enough, but if myfieldname is of type money, you will get nice errors such as:</p>
<p>ERROR:  operator does not exist: money > integer<br />
HINT:  No operator matches the given name and argument type(s). You may need to add explicit type casts.</p>
<p>Doing what the Hint suggests isnt easy, and theres pretty much no good way to cast money to anything.</p>
<p>A few examples on the net dont work, depending on version, or can mess up the data.</p>
<p>After a bit of searching and messing, ive found a solution that does whats needed:</p>
<p>First you need to do:</p>
<p><strong>set lc_monetary=&#8217;C';</strong></p>
<p>to basically control the currency, ours was set to Â£ but doing that sets it back to $ and makes things easier to work with.</p>
<p>Next you need to do:</p>
<p><strong>alter table yourtable alter column yourfield type numeric(16,2) using translate(textin(cash_out(yourfield)), &#8216;$,&#8217;, &#8221;)::numeric;</strong></p>
<p>Once thats done, you&#8217;re set and it seems to work flawlessley (in version: 8.1.9 anyway).</p>
<p>May be a good idea to make a copy of the table before, just incase:</p>
<p><strong>create table backup_table_yourtable AS select * from yourtable;</strong></p>
<p>then if you have any issues you can revert back!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2008/02/14/postgresql-converting-money-type-to-numeric/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>lessons in backing up&#8230;.</title>
		<link>http://www.selfadhesivelabels.com/blog/2008/01/23/lessons-in-backing-up/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2008/01/23/lessons-in-backing-up/#comments</comments>
		<pubDate>Wed, 23 Jan 2008 15:56:31 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/2008/01/23/lessons-in-backing-up/</guid>
		<description><![CDATA[Sometimes I never learn, and check that backups are working as they should be.Â  Last night we had a zimbra failure that resulted in the default backup schedule not being run (incremental backup at 01:00), which measn that when we had to have a fresh install today we lost all yesterdays emails, calendar changes and [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes I never learn, and check that backups are working as they should be.Â  Last night we had a zimbra failure that resulted in the default backup schedule not being run (incremental backup at 01:00), which measn that when we had to have a fresh install today we lost all yesterdays emails, calendar changes and additions, everything.</p>
<p>Yesterday I spent all day writing up 3 tactical plans for the business, and lost them all becuase of this.Â  Fortunately I got some of the work back from a syncd copy on a PDA, but not everything.Â  This episode also dented our team&#8217;s confidence in Zimbra as its the second time it has happened.</p>
<p>We have now improved the backup regime to daily full backups and hourly incremental ones.Â  We did this by changing the zimbra backup cron job using WEBMIN on port 10000 on our ubuntu server using the nice GUI webpage, and it seems to work.</p>
<p>A lesson for other new zimbra users, the default backups just ain&#8217;t enough, so update your instalation NOW to get more backups!</p>
<p>Lesson learnt the hard way (again).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2008/01/23/lessons-in-backing-up/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>linux admin course notes</title>
		<link>http://www.selfadhesivelabels.com/blog/2007/07/05/linux-admin-course-notes/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2007/07/05/linux-admin-course-notes/#comments</comments>
		<pubDate>Thu, 05 Jul 2007 19:19:21 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/2007/07/05/linux-admin-course-notes/</guid>
		<description><![CDATA[I have just finished a rewarding 4 day course at OpenAdvantage on linux admin, very presented and run by Paul Cooper. I got a lot out of the course, but there was a wide range of attendees, from people with (literally) decades of unix experience to me, a microsoft convert making early steps in the [...]]]></description>
			<content:encoded><![CDATA[<p>I have just finished a rewarding 4 day course at <a href="http://www.openadvantage.org/">OpenAdvantage </a>on linux admin, very presented and run by <a href="http://www.devel.co.uk/">Paul Cooper</a>. I got a lot out of the course, but there was a wide range of attendees, from people with (literally) decades of unix experience to me, a microsoft convert making early steps in the command line environment.  The course was based on the linuxIT course , for people working towards the  <a href="http://www.lpi.org/">linux professional institute </a>exams (which I&#8217;m not taking!)</p>
<p>Overall, an excellent course.  What I want to take away is a crib sheet of linux commands and notes I can sync into my address book, so that when I next need to run stuff on the command line its easy to hand.  So here goes&#8230;  Please note that these are my crib notes, not a definative linux command line crib sheet!</p>
<p>BASIC COMMAND LINE COMMANDS</p>
<p>echo &#8220;test&#8221;         returns the text</p>
<p>CREDIT=300<br />
echo $CREDIT    returns the variable</p>
<p>ls -hl                     lists files in detail in human readable format<br />
pwd                            tells you where you are in the directory structure</p>
<p>env                      shows the  environment you are working in</p>
<p>ls -l &gt;errors.txt    redirects the output to errors.txt</p>
<p>set                           shows all variables<br />
|                                Pipe  symbol glues the lot together</p>
<p>ls f*                            gives all files starting with f<br />
ls f???s.*                     gives all files but only with the right number of characters<br />
ls [a-e]*.*                    for a range<br />
ls my\ documents     for files with a space in the name</p>
<p>SHORTCUTS</p>
<p>cntrol shift c and control shift v are copy and paste</p>
<p>tab gives tab completion of a predictable string<br />
up arrowauto completes from the history of command lines submitted</p>
<p>home and end keys more up and down the line<br />
man             is the manual command for HELP!<br />
eg<br />
man ls</p>
<p>q to quit</p>
<p>alias ll=ls -l              is a shortcut command</p>
<p>cd /media is absolute command to the media</p>
<p>FINDING FILES</p>
<p>find -name &#8220;f*.txt&#8221;</p>
<p>or</p>
<p>locate / &#8220;f*.txt&#8221;</p>
<p>REMOVE FILES</p>
<p>rmdir                         for directories<br />
rm -r music             removes the directory and all contents</p>
<p>COPY FILES</p>
<p>cp fil* my\ documents                  to copy</p>
<p>MOVE FILES</p>
<p>mv                                                                     is move file</p>
<p>FILES SYSTEMS<br />
ext2 is the linux old equivilant of fat32, a basic file format for linux<br />
ext3 joural based file system  &#8211; best to use</p>
<p>swap file partition should be double actual physical memory</p>
<p>lspci lists the hardware</p>
<p>RUNNING AS ROOT</p>
<p>sudo runs a single command as root<br />
su is switch user eg<br />
su &#8211; root</p>
<p>FORMAT DISKS</p>
<p>sudo fdisk /dev/sda runs the fdisk command</p>
<p>df     tool for mounted and<br />
du -h /usr as an example of finding file sizes</p>
<p>PERMISSIONS<br />
user  u<br />
group  g<br />
other  o</p>
<p>read r or 4<br />
write w or 2<br />
execute x or 1</p>
<p>character 1 is file info, 1-3 is user,4-6 is group,7-9 other</p>
<p>chmod u+x files.txt      gives execute permision to users</p>
<p>PROCESSES</p>
<p>pstree -p  shows the runningprocesses<br />
ps ax shows all process for all users</p>
<p>kill pid number           kills the process<br />
or<br />
kill -9 pid number</p>
<p>top                       gives the running processes</p>
<p>nohup             runs outside the session</p>
<p>TEXT EDITOR</p>
<p>at is a basic text editor<br />
control D stops it</p>
<p>head -5 hello.txt gives you the last 5 lines of hello.txt</p>
<p>grep term filename &gt; results.txt</p>
<p>VI or VIM is a good embedded text editor</p>
<p>q!  to quit</p>
<p>esc to go back to command line<br />
x to save and escape</p>
<p>SSH</p>
<p>at command line you can ssh to any url</p>
<p>STOP AND START PROCESES<br />
eg<br />
sudo /etc/init.d/ssh stop</p>
<p>w<br />
whoami   tells you who is on a machine</p>
<p>SECURECOPY</p>
<p>scp root@ the address :whoteist.txt whitelist.txt is a secure copy</p>
<p>TIMING</p>
<p>crontab -l to list<br />
crontab -e to edit</p>
<p>eg<br />
45 14 * * * /bin/touch /home/demo/results.txt<br />
will touch the results file at 14:45 every day</p>
<p>NETWORK</p>
<p>ifconfig    gives you your network information, your IP address etc</p>
<hr />
I hope this is enough of a memory dump for future reference.Â  Thanks Paul for a very useful course</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2007/07/05/linux-admin-course-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>learning how to run linux at command line with only a DOS and windows bckground</title>
		<link>http://www.selfadhesivelabels.com/blog/2007/04/07/learning-how-to-run-linux-at-command-line-with-only-a-dos-and-windows-bckground/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2007/04/07/learning-how-to-run-linux-at-command-line-with-only-a-dos-and-windows-bckground/#comments</comments>
		<pubDate>Sat, 07 Apr 2007 12:13:40 +0000</pubDate>
		<dc:creator>Adrian</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/2007/04/07/learning-how-to-run-linux-at-command-line-with-only-a-dos-and-windows-bckground/</guid>
		<description><![CDATA[although the techies love it,probably for good reason, a lotof user interface with linux is at the command line, not the usual GUI interface that we are geneticly engineered to know and understand&#8230;. this means that if you really want to use some of the linux features and functions, you have to know how to [...]]]></description>
			<content:encoded><![CDATA[<p>although the techies love it,probably for good reason, a lotof user interface with linux is at the command line, not the usual GUI interface that we are geneticly engineered to know and understand&#8230;. this means that if you really want to use some of the linux features and functions, you have to know how to use the command line.</p>
<p>I have some basic unix experience from numerical modelling research, but not enough that I didn&#8217;t have to start at square one.</p>
<p>I tried this website, which I was impressed with, and guided me through the basic functions well.</p>
<p>www.linux.org/lessons</p>
<p>Its worth a go , after 30 minutes I could even find and load our website files and edit them with the VI text editor.</p>
<p>I still prefer the GUI ubuntu interface though!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2007/04/07/learning-how-to-run-linux-at-command-line-with-only-a-dos-and-windows-bckground/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The MVC fun continues&#8230;</title>
		<link>http://www.selfadhesivelabels.com/blog/2007/03/21/the-mvc-fun-continues/</link>
		<comments>http://www.selfadhesivelabels.com/blog/2007/03/21/the-mvc-fun-continues/#comments</comments>
		<pubDate>Wed, 21 Mar 2007 15:43:55 +0000</pubDate>
		<dc:creator>rich</dc:creator>
				<category><![CDATA[coding]]></category>

		<guid isPermaLink="false">http://www.selfadhesivelabels.com/blog/2007/03/21/the-mvc-fun-continues/</guid>
		<description><![CDATA[Well.. we finally decided that we should give the MVC framework process a chance, to see if we could truly benifit from it. I&#8217;m going to be using a simple ish MVC framework and Smarty for the templating system, this seems to be working both logically and easy for us, or fairly easy anyway. The [...]]]></description>
			<content:encoded><![CDATA[<p>Well.. we finally decided that we should give the MVC framework process a chance, to see if we could truly benifit from it.</p>
<p>I&#8217;m going to be using a simple ish MVC framework and Smarty for the templating system, this seems to be working both logically and easy for us, or fairly easy anyway.</p>
<p>The way im going to do this is have a main page which will control the configuration etc, and then a series of templates for each section (ill come back to this) and then modules for each section too.</p>
<p>What i mean by section is this.. Basically the way I see how our company runs the existing database is based on a few sections(Customers, Orders, Searching, Report).. there is more, but this is just an example, so i&#8217;ve decided to have these as our main controlling elements.</p>
<p>So our intranet should work on this basis: http://address/index.php?section=Customer  meaning our program knows we only want to be working with whatever is involved with a Customer, the same goes for Orders, Reports and so on, keeping the whole process a lot simpler (or so i think anyway)</p>
<p>With this in mind, ive now got a CustomerModelController which will take aditional parameters defining which action should be performed now we&#8217;re only concerned with the customer, for instance Search for Customers.</p>
<p>Our intranet again shows how easy and logical this makes things:</p>
<p>http://address/index.php?section=Customer&amp;action=search_for_users or add_user etc, you get the idea anyway.</p>
<p>These methods allow me to have custom templates for each section, and still keep my code nice and tidy, so i&#8217;ve not got 100&#8242;s of smaller functions within one big controller.</p>
<p>I&#8217;ve tried not to go into too much detail here, so not to confuse people/myself anymore, but if anyone wants further explanations just let me know, and ill go into more detail.</p>
<p>Just want to say thanks to the people who have commented on the MVC ideas so far, definately made an interesting read, cheers!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.selfadhesivelabels.com/blog/2007/03/21/the-mvc-fun-continues/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

