<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:georss="http://www.georss.org/georss" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-3928190665450830956</atom:id><lastBuildDate>Fri, 13 Nov 2009 02:15:27 +0000</lastBuildDate><title>Coder's Talk</title><description>A Programmer's Blog</description><link>http://coderstalk.blogspot.com/</link><managingEditor>noreply@blogger.com (ApOgEE)</managingEditor><generator>Blogger</generator><openSearch:totalResults>82</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><image><url>http://www.feedburner.com/fb/images/pub/fb_pwrd.gif</url></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/CodersTalk" type="application/rss+xml" /><feedburner:emailServiceId>CodersTalk</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-2881980740360740700</guid><pubDate>Fri, 13 Nov 2009 01:00:00 +0000</pubDate><atom:updated>2009-11-13T10:15:27.132+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">LISP</category><title>Beginning LISP Programming in Ubuntu</title><description>For any reason, you may wanted to start &lt;span style="font-weight:bold;"&gt;learning Lisp Programming&lt;/span&gt;. However, you may wondering where to start. So here again, I'm going to share with you. How to begin Lisp Programming, "the programmable programming language".&lt;br /&gt;&lt;br /&gt;As, I'm using Ubuntu here, this example is shown step by step on Ubuntu. &lt;br /&gt;&lt;br /&gt;In order to start playing with Lisp on your ubuntu, you need to install CMUCL. CMUCL is a free implementation of Common Lisp which was originally developed at Carnegie Mellon University. To install CMUCL package, just run this command on your Ubuntu terminal:&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ sudo apt-get install cmucl&lt;/pre&gt;&lt;br /&gt;Next, we are going to feel the environment. Open up your terminal and type:&lt;br /&gt;&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ lisp&lt;/pre&gt;&lt;br /&gt;You will be greeted by CMU Common Lisp with it version and loaded subsystem. In my case, I see like this.&lt;br /&gt;&lt;br /&gt;&lt;pre id="linuxterm"&gt;apogee@apogee-ubuntu:~$ lisp&lt;br /&gt;CMU Common Lisp CVS release-19a 19a-release-20040728 + minimal debian patches, running on apogee-ubuntu&lt;br /&gt;With core: /usr/lib/cmucl/lisp.core&lt;br /&gt;Dumped on: Fri, 2009-11-13 09:05:47+08:00 on apogee-ubuntu&lt;br /&gt;For support see http://www.cons.org/cmucl/support.html Send bug reports to the debian BTS.&lt;br /&gt;or to pvaneynd@debian.org&lt;br /&gt;type (help) for help, (quit) to exit, and (demo) to see the demos&lt;br /&gt;&lt;br /&gt;Loaded subsystems:&lt;br /&gt;    Python 1.1, target Intel x86&lt;br /&gt;    CLOS based on Gerd's PCL 2004/04/14 03:32:47&lt;br /&gt;* &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;As you can see the loaded subsystem is Python 1.1. This is not the Python as in &lt;a href="http://coderstalk.blogspot.com/search/label/python"&gt;Python Programming&lt;/a&gt;. Don't get confused. It is a native code compiler named "Python". If Common Lisp source code has been written with appropriate declarations and is organized with speed in mind, the Python compiler generates code that is almost free from overhead compared to code compiled from languages like C++. Some inefficiencies such as function call interfaces and lack of pointer-free arrays of user-defined data types are dictated by the Common Lisp standard and still need to be worked around (e.g. by inlining more and using macros to build constructs that look like user-defined structures but are actually accessing fields in preallocated specialized arrays). The Python compiler also features powerful type inferences, helping the programmer in writing overhead-free code by either inferring types automatically or issuing hints about missed optimization opportunities. &lt;br /&gt;&lt;br /&gt;Before doing anything else, you have to know how to exit from this environment. To exit from this lisp terminal, you can simply type &lt;span style="font-weight:bold;"&gt;(quit)&lt;/span&gt; and press enter.&lt;br /&gt;&lt;br /&gt;&lt;pre id="linuxterm"&gt;apogee@apogee-ubuntu:~$ lisp&lt;br /&gt;CMU Common Lisp CVS release-19a 19a-release-20040728 + minimal debian patches, running on apogee-ubuntu&lt;br /&gt;With core: /usr/lib/cmucl/lisp.core&lt;br /&gt;Dumped on: Fri, 2009-11-13 09:05:47+08:00 on apogee-ubuntu&lt;br /&gt;For support see http://www.cons.org/cmucl/support.html Send bug reports to the debian BTS.&lt;br /&gt;or to pvaneynd@debian.org&lt;br /&gt;type (help) for help, (quit) to exit, and (demo) to see the demos&lt;br /&gt;&lt;br /&gt;Loaded subsystems:&lt;br /&gt;    Python 1.1, target Intel x86&lt;br /&gt;    CLOS based on Gerd's PCL 2004/04/14 03:32:47&lt;br /&gt;* (quit)&lt;br /&gt;apogee@apogee-ubuntu:~$ &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Now you know how to start and end the CMU Common Lisp. We can start playing with codes. Here is some example:&lt;br /&gt;&lt;br /&gt;1. Adding Numbers:&lt;br /&gt;&lt;br /&gt;&lt;pre id="linuxterm"&gt;* (+ 200 800 300 700 19 10)&lt;br /&gt;&lt;br /&gt;2029&lt;br /&gt;* &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Notice my code started with '(' and end with ')'. &lt;br /&gt;&lt;br /&gt;2. Subtract Numbers:&lt;br /&gt;&lt;br /&gt;&lt;pre id="linuxterm"&gt;* (* 12 2 3)&lt;br /&gt;&lt;br /&gt;72&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;3. Or even Adding and Subtract:&lt;br /&gt;&lt;br /&gt;&lt;pre id="linuxterm"&gt;* (+ (* 12 2 3) 1)&lt;br /&gt;&lt;br /&gt;73&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;There you go. From here you can try more stuff by following these tutorials and manual:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.cs.sfu.ca/CC/310/pwfong/Lisp/1/tutorial1.html" target="_blank"&gt;Lisp Tutorial: Basic Lisp Programming&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.apl.jhu.edu/~hall/lisp.html" target="_blank"&gt;An Introduction and Tutorial for Common Lisp&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://gigamonkeys.com/book/" target="_blank"&gt;Practical Common Lisp&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://xahlee.org/emacs/elisp.html" target="_blank"&gt;Xah's Emacs Lisp Tutorial&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://common-lisp.net/project/cmucl/doc/cmu-user/" target="_blank"&gt;CMUCL User's Manual&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;That's all for now mates.. Happy Coding!!&lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-2881980740360740700?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/vyOEHi1bduQ/beginning-lisp-programming-in-ubuntu.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/11/beginning-lisp-programming-in-ubuntu.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-7536358080990135919</guid><pubDate>Wed, 04 Nov 2009 08:10:00 +0000</pubDate><atom:updated>2009-11-04T16:28:36.468+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">python</category><title>Example of Simple Web Server Using Python</title><description>I may got the question wrong on &lt;a href="http://coderstalk.blogspot.com/2009/11/example-of-simple-website-using-python.html"&gt;my previous post&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So, here is how to make a simple web server using python in ubuntu.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Open up your ubuntu terminal and create the 'index.html' file like this:&lt;br /&gt;&lt;pre dir="ltr" style="border: 1px inset ; margin: 0px; padding: 3px; overflow: auto; width: 98%; height: 170px; text-align: left;"&gt;&amp;lt;html&gt;&lt;br /&gt;&amp;lt;head&gt;&amp;lt;title&gt;python.my sample&amp;lt;/title&gt;&amp;lt;/head&gt;&lt;br /&gt;&amp;lt;body&gt;&lt;br /&gt;&amp;lt;h1&gt;python.my sample&amp;lt;/h1&gt;&lt;br /&gt;&amp;lt;p&gt;This is the simple html sample. Got it?&amp;lt;/p&gt;&lt;br /&gt;&amp;lt;p&gt;Visit &amp;lt;a href="http://coderstalk.blogspot.com"&gt;Coder's Talk blog&amp;lt;/a&gt;&amp;lt;/p&gt;&lt;br /&gt;&amp;lt;/body&gt;&lt;br /&gt;&amp;lt;/html&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In the same directory, create the python server and name it as 'pyserver.py' and enter the content like this:&lt;br /&gt;&lt;pre dir="ltr" style="border: 1px inset ; margin: 0px; padding: 3px; overflow: auto; width: 98%; height: 170px; text-align: left;"&gt;import SimpleHTTPServer&lt;br /&gt;import SocketServer&lt;br /&gt;&lt;br /&gt;theport = 1234&lt;br /&gt;Handler = SimpleHTTPServer.SimpleHTTPRequestHandler&lt;br /&gt;pywebserver = SocketServer.TCPServer(("", theport), Handler)&lt;br /&gt;&lt;br /&gt;print "Python based web server. Serving at port", theport&lt;br /&gt;pywebserver.serve_forever()&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Run the python code using this command:&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ python pyserver.py&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Open up your web browser and go to &lt;a href="http://localhost:1234" target="_blank"&gt;http://localhost:1234&lt;/a&gt; and see your python web server running.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;That's all... Have fun coding &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-7536358080990135919?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/H5yxoSe9_E4/example-of-simple-web-server-using.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/11/example-of-simple-web-server-using.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-1371181454822949412</guid><pubDate>Wed, 04 Nov 2009 06:55:00 +0000</pubDate><atom:updated>2009-11-04T15:31:34.309+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">python</category><title>Example of Simple Website Using Python</title><description>While reading my email today, found this question from one of the python.my mailing list subscriber. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Question:&lt;/b&gt; i want to run a web server using python&lt;br /&gt;can expertise in python share some simple codes with html as well to&lt;br /&gt;demonstrate this. &lt;a href="http://groups.google.com.my/group/pythonmy/browse_thread/thread/a76b59b8de5b2f1f?hl=en" target="_blank"&gt;[link to python.my thread]&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Answer:&lt;/b&gt; As I'm bored today coz Kristen didn't answer my email yet, I pop my ubuntu terminal and type this code:&lt;br /&gt;&lt;pre dir="ltr" style="border: 1px inset ; margin: 0px; padding: 3px; overflow: auto; width: 98%; height: 760px; text-align: left;"&gt;## =========================================================&lt;br /&gt;# Sample python site by ApOgEE&lt;br /&gt;# ----------------------------&lt;br /&gt;# 1) Make sure you have apache and enable mod-python on your apache. For example on ubuntu:&lt;br /&gt;#    $ sudo apt-get install apache2&lt;br /&gt;#    $ sudo apt-get install libapache2-mod-python&lt;br /&gt;#    $ sudo a2enmod python&lt;br /&gt;#&lt;br /&gt;# 2) Make sure you have proper PythonHandler. For example:&lt;br /&gt;# AddHandler mod_python .py&lt;br /&gt;# PythonHandler mod_python.publisher&lt;br /&gt;# PythonDebug On&lt;br /&gt;#&lt;br /&gt;# 3) Enter this codes and name it as 'pythonmysample.py' on your web directory&lt;br /&gt;#&lt;br /&gt;# 4) test it on your browser http://localhost/pythonmysample.py&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;def index(req):&lt;br /&gt;    thetitle = "Python.my sample by ApOgEE"&lt;br /&gt;    mysite = siteheader(thetitle)&lt;br /&gt;    mysite += sitebody(thetitle)&lt;br /&gt;    mysite += sitefoot()&lt;br /&gt;    return mysite &lt;br /&gt;&lt;br /&gt;def siteheader(title):&lt;br /&gt;    str = "&amp;lt;html&gt;&amp;lt;head&gt;&amp;lt;title&gt;" + title + "\n"&lt;br /&gt;    str += "&amp;lt;/title&gt;&amp;lt;/head&gt;&amp;lt;body&gt;\n"&lt;br /&gt;    return str&lt;br /&gt;&lt;br /&gt;def sitefoot():&lt;br /&gt;    str = "\n&amp;lt;/body&gt;&amp;lt;/html&gt;"&lt;br /&gt;    return str&lt;br /&gt;&lt;br /&gt;def sitebody(title):&lt;br /&gt;    str = "&amp;lt;h1&gt;" + title + "&amp;lt;/h1&gt;\n"&lt;br /&gt;    str += "&amp;lt;p&gt;Hi mate!&amp;lt;br&gt;\n" + \&lt;br /&gt;           "This is the testing python site example.&amp;lt;br&gt;&amp;lt;br&gt;" + \&lt;br /&gt;    "Coded by: ApOgEE&amp;lt;br&gt;" + \&lt;br /&gt;    "Visit &amp;lt;a href=\"http://coderstalk.blogspot.com\"&gt;http://coderstalk.blogspot.com&amp;lt;/a&gt;&lt;/p&gt;\n"&lt;br /&gt;    return str&lt;br /&gt;&lt;br /&gt;# end of code. Copyright (C) 2009, ApOgEE - http://coderstalk.blogspot.com&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;If you have problem opening the page on your ubuntu, here is the checklist:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Install apache2 and libapache2-mod-python and enable mod-python&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ sudo apt-get install apache2&lt;br /&gt;$ sudo apt-get install libapache2-mod-python&lt;br /&gt;$ sudo a2enmod python&lt;/pre&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Edit /etc/apache2/sites-enabled/000-default. Search for this lines:&lt;br /&gt;&lt;pre dir="ltr" style="border: 1px inset ; margin: 0px; padding: 3px; overflow: auto; width: 98%; height: 130px; text-align: left;"&gt;        &amp;lt;Directory /var/www/&gt;&lt;br /&gt;                Options Indexes FollowSymLinks MultiViews&lt;br /&gt;                AllowOverride None&lt;br /&gt;                Order allow,deny&lt;br /&gt;                allow from all&lt;br /&gt;        &amp;lt;/Directory&gt;&lt;br /&gt;&lt;/pre&gt;and add python handler like this:&lt;br /&gt;&lt;pre dir="ltr" style="border: 1px inset ; margin: 0px; padding: 3px; overflow: auto; width: 98%; height: 220px; text-align: left;"&gt;        &amp;lt;Directory /var/www/&gt;&lt;br /&gt;                Options Indexes FollowSymLinks MultiViews&lt;br /&gt;                AllowOverride None&lt;br /&gt;                Order allow,deny&lt;br /&gt;                allow from all&lt;br /&gt;                &lt;font color="red"&gt;&lt;br /&gt;                AddHandler mod_python .py&lt;br /&gt;                PythonHandler mod_python.publisher&lt;br /&gt;                PythonDebug On&lt;br /&gt;                &lt;/font&gt;&lt;br /&gt;        &amp;lt;/Directory&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Restart your apache&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ sudo /etc/init.d/apache2 restart&lt;/pre&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;That's all. Hope you enjoy it... Happy Coding!! &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-1371181454822949412?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/8BDDlOU25gQ/example-of-simple-website-using-python.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/11/example-of-simple-website-using-python.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-7176220728693401350</guid><pubDate>Thu, 22 Oct 2009 02:38:00 +0000</pubDate><atom:updated>2009-10-22T12:18:18.076+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">more</category><category domain="http://www.blogger.com/atom/ns#">Cheat Code</category><category domain="http://www.blogger.com/atom/ns#">VBScript</category><category domain="http://www.blogger.com/atom/ns#">Visual basic</category><category domain="http://www.blogger.com/atom/ns#">Windows XP</category><title>List Windows XP Running Process And ProcessID in VBScript</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QmenDvyMjlk/St_Qa6pvvMI/AAAAAAAAB3Q/Pg5wxk8XU6g/s1600-h/showproc.PNG"&gt;&lt;img style="float:left; margin:0 10px 0px 0;cursor:pointer; cursor:hand;width: 150px; height: 400px;" src="http://4.bp.blogspot.com/_QmenDvyMjlk/St_Qa6pvvMI/AAAAAAAAB3Q/Pg5wxk8XU6g/s400/showproc.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5395260039452671170" /&gt;&lt;/a&gt;One of my reason why I hate Windows XP is because it is prone to virus. However, I can't escape from using it because there are instruments which I use that can only communicate with it's own proprietary windows program. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Love it or not, I still need these proprietary programs to run in the windows box on site because they don't have linux version of it nor even going to have it.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Leaving the windows box like that. I believe in some way, it will get infected when some user access the box to grab some data with their infected USB drive or there is virus in the network. It simply happened last two weeks on the site box where this virus prevent me to open the Windows Task Manager to show what process is running in the box.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Thanks to VBScript which allows me to view the running process and investigate. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So, after getting frustated and cursing the virus prone OS for some time, I just open Notepad program and begin writing this script:&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color=black&gt;&lt;pre dir="ltr" style="border: 1px inset rgb(0, 0, 0); margin: 0px; padding: 3px; overflow: auto; width: 98%; height: 300px; text-align: left; "&gt;&lt;font color="#008000"&gt;'==========================================================='&lt;br /&gt;' showproc.vbs&lt;br /&gt;' Author: M. Fauzilkamil Zainuddin http://coderstalk.blogspot.com&lt;br /&gt;' October 2009&lt;br /&gt;'==========================================================='&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#0000A0"&gt;Option Explicit&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#0000A0"&gt;Dim&lt;/font&gt; oProc, oWMIServ, colProc&lt;br /&gt;&lt;font color="#0000A0"&gt;Dim&lt;/font&gt; strPC, strList&lt;br /&gt;&lt;font color="#0000A0"&gt;Dim&lt;/font&gt; StrSpace&lt;br /&gt;&lt;br /&gt;strPC = "."&lt;br /&gt;&lt;br /&gt;&lt;font color="#0000A0"&gt;Set&lt;/font&gt; oWMIServ = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &amp; strPC &amp; "\root\cimv2")    &lt;br /&gt;&lt;br /&gt;&lt;font color="#0000A0"&gt;Set&lt;/font&gt; colProc = oWMIServ.ExecQuery("Select * from Win32_Process")&lt;br /&gt;&lt;br /&gt;strSpace = string(20," ")&lt;br /&gt;strList = "ProcName" &amp; strSpace &amp; vbTab &amp; "ProcID" &amp; vbCrLf &amp; string(45,"-")&lt;br /&gt;&lt;br /&gt;&lt;font color="#0000A0"&gt;For&lt;/font&gt; &lt;font color="#0000A0"&gt;Each&lt;/font&gt; oProc &lt;font color="#0000A0"&gt;In&lt;/font&gt; colProc&lt;br /&gt;    strSpace = string(28 - len(oProc.Name)," ")&lt;br /&gt;    strList = strList &amp; vbCrLf &amp; oProc.Name &amp; strSpace &amp; vbTab &amp; oProc.ProcessId&lt;br /&gt;&lt;font color="#0000A0"&gt;Next&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;WScript.Echo strList&lt;br /&gt;WScript.Quit&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/font&gt;&lt;br /&gt;And then, I can see the suspicious process. They can't hide from me anymore. I can even kill the process by simply adding if statement which check for the suspicious process Name or ProcessID in specific and kill it. Here's a snippet to terminate specific ProcessID:&lt;br /&gt;&lt;br /&gt;&lt;font color=black&gt;&lt;pre dir="ltr" style="border: 1px inset rgb(0, 0, 0); margin: 0px; padding: 3px; overflow: auto; width: 98%; height: 150px; text-align: left; "&gt;&lt;font color="#008000"&gt;' just add this code below 'WScript.Echo strList'&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000A0"&gt;For Each&lt;/font&gt; oProc &lt;font color="#0000A0"&gt;In&lt;/font&gt; colProc&lt;br /&gt;    &lt;font color="#008000"&gt;' the 3008 is the ProcessID that I want to kill.&lt;br /&gt;    ' your process id may be different&lt;/font&gt;&lt;br /&gt;    &lt;font color="#0000A0"&gt;If&lt;/font&gt; oProc.ProcessID = 3008 &lt;font color="#0000A0"&gt;Then&lt;/font&gt;&lt;br /&gt;        oProc.Terminate()&lt;br /&gt;    &lt;font color="#0000A0"&gt;End If&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000A0"&gt;Next&lt;/font&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/font&gt;&lt;br /&gt;That's all for now. Happy coding!! &lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-7176220728693401350?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/7-P88qIRO6E/list-windows-xp-running-process-and.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_QmenDvyMjlk/St_Qa6pvvMI/AAAAAAAAB3Q/Pg5wxk8XU6g/s72-c/showproc.PNG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/10/list-windows-xp-running-process-and.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-6040599400540105539</guid><pubDate>Fri, 29 May 2009 01:54:00 +0000</pubDate><atom:updated>2009-05-29T09:59:47.125+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Ubuntu</category><title>Ubuntu-my Jaunty Release Party &amp; Official LoCo Launching</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QmenDvyMjlk/Sh9BTtJhmbI/AAAAAAAABj4/z2zAkdJVAe0/s1600-h/ubuntu-my-JRP.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 283px; height: 400px;" src="http://1.bp.blogspot.com/_QmenDvyMjlk/Sh9BTtJhmbI/AAAAAAAABj4/z2zAkdJVAe0/s400/ubuntu-my-JRP.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5341059489877563826" /&gt;&lt;/a&gt;&lt;br /&gt;For more info, check out &lt;a href="http://baung.oscc.org.my/wiki/?title=ReleaseParty"&gt;Ubuntu Malaysia Jaunty Release Party&lt;/a&gt;. Enjoy!! &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-6040599400540105539?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/C-BGda84MMQ/ubuntu-my-jaunty-release-party-official.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_QmenDvyMjlk/Sh9BTtJhmbI/AAAAAAAABj4/z2zAkdJVAe0/s72-c/ubuntu-my-JRP.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/05/ubuntu-my-jaunty-release-party-official.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-32979595715104337</guid><pubDate>Mon, 26 Jan 2009 04:44:00 +0000</pubDate><atom:updated>2009-01-26T13:47:45.023+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">open source</category><category domain="http://www.blogger.com/atom/ns#">more</category><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">Operating System</category><category domain="http://www.blogger.com/atom/ns#">gadget</category><category domain="http://www.blogger.com/atom/ns#">Android</category><category domain="http://www.blogger.com/atom/ns#">mobile phone</category><title>Introducing Android : Open Source, Linux Based Mobile Phone Operating System</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QmenDvyMjlk/SX1H0Ur8jNI/AAAAAAAABao/yuA5Fxgl-hc/s1600-h/500px-Android-logo.svg.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 144x; height: 144px;" src="http://1.bp.blogspot.com/_QmenDvyMjlk/SX1H0Ur8jNI/AAAAAAAABao/yuA5Fxgl-hc/s144/500px-Android-logo.svg.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5295467701089373394" /&gt;&lt;/a&gt;Lately, I'm getting interested in &lt;span style="font-weight:bold;"&gt;Mobile Phone Application&lt;/span&gt;. And what make me more interested about it was, getting to know the &lt;span style="font-weight:bold;"&gt;Android&lt;/span&gt;, a new &lt;span style="font-weight:bold;"&gt;open source operating system and software platform for mobile phones&lt;/span&gt;. The Android is developed by Google, and later the Open Handset Alliance based on &lt;span style="font-weight:bold;"&gt;&lt;a href="http://coderstalk.blogspot.com/search/label/linux"&gt;Linux kernel&lt;/a&gt;&lt;/span&gt;. Google has made most of the Android platform available under the Apache free-software and open source license. &lt;br /&gt;&lt;br /&gt;The &lt;span style="font-weight:bold;"&gt;Open Handset Alliance (OHA)&lt;/span&gt; is a business alliance of 48 firms including Google, HTC, Intel, Motorola, Qualcomm, Samsung, LG, T-Mobile, NVIDIA, Sony Ericsson, ARM, AKM Semiconductor Inc, ASUSTek COmputer Inc, Atheros Communications, Borqs, Ericsson, Garmin International Inc, Wind River Systems, Huawei Technologies, Omron Software Co Ltd, Softbank Monile Corporation, Teleca AB, Toshiba Corporation and Vodafone that came together to develop open standards for mobile devices. The Android platform was announced on 5 November 2007 &lt;span class="fullpost"&gt; with the founding of the Open Handset Alliance. &lt;br /&gt;&lt;br /&gt;Now, mobile phone application developers are able to write &lt;span style="font-weight:bold;"&gt;managed code&lt;/span&gt; in the &lt;span style="font-weight:bold;"&gt;Java language&lt;/span&gt;, controlling the mobile device with Android via &lt;span style="font-weight:bold;"&gt;Google-developed Java libraries&lt;/span&gt;. If you are good in C or other &lt;span style="font-weight:bold;"&gt;programming&lt;/span&gt; languages, your applications written in C and other languages can be compiled to ARM native code and run. However, the other development path isn't officially supported by Google.  &lt;br /&gt;&lt;br /&gt;And, here is a video from &lt;span style="font-weight:bold;"&gt;Android&lt;/span&gt; developer to get you more excited with this Android &lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt; :&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/1FJHYqE0RDg&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/1FJHYqE0RDg&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Isn't it a WoooOOoW for you coders?... Let's get up, &lt;a href="http://www.android.com/"&gt;grab the SDK&lt;/a&gt; and develop great apps on Android. I would love to hear one of us entitled for those &lt;span style="font-weight:bold;"&gt;TEN MILLION U.S. DOLLARS&lt;/span&gt; for creating a great, useful, free and open source software on &lt;span style="font-weight:bold;"&gt;Android platform&lt;/span&gt;. &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;br /&gt;&lt;br /&gt;&lt;quote&gt;&lt;span style="font-style:italic;"&gt;p/s: For all my Chinese friends and readers, I would like to wish you all a very Happy and Prosperous Chinese New Year!! Cheers!!&lt;/span&gt;&lt;/quote&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-32979595715104337?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/Luq6sQG3J00/introducing-android-open-source-linux.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_QmenDvyMjlk/SX1H0Ur8jNI/AAAAAAAABao/yuA5Fxgl-hc/s72-c/500px-Android-logo.svg.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/01/introducing-android-open-source-linux.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-3698993315603026716</guid><pubDate>Thu, 22 Jan 2009 01:21:00 +0000</pubDate><atom:updated>2009-01-22T09:55:32.278+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Videos</category><category domain="http://www.blogger.com/atom/ns#">Hackers</category><category domain="http://www.blogger.com/atom/ns#">computer</category><category domain="http://www.blogger.com/atom/ns#">anime</category><title>Battle Programmer Shirase - Episode 2</title><description>For those who remember my post about the &lt;a href="http://coderstalk.blogspot.com/2008/05/battle-programmer-shirase-episode-1.html" target="_blank"&gt;Battle Programmer Shirase&lt;/a&gt;, here is the continuation of the episode. &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt; For those who haven't watch the &lt;span style="font-weight:bold;"&gt;first episode&lt;/span&gt;, you better watch it first. But, if you wanna skip it, the first episode is the introduction of a &lt;span style="font-weight:bold;"&gt;brilliant programmer or hacker&lt;/span&gt; named &lt;span style="font-weight:bold;"&gt;Akira Shirase&lt;/span&gt;. &lt;br /&gt;&lt;br /&gt;In that episode, there was a &lt;span style="font-weight:bold;"&gt;hacking attempt&lt;/span&gt; on U.S. shipping company which reroutes a package to an &lt;span style="font-weight:bold;"&gt;Asian Hacker&lt;/span&gt;. While on the other side, BPS or &lt;span style="font-weight:bold;"&gt;Battle Programmer Shirase&lt;/span&gt; is recruited by Akizuki, an employee from Abin Electronics. BPS accepted Akira's recruitment after seeing the &lt;span style="font-weight:bold;"&gt;discontinued X68 series doujinshi SCSI card&lt;/span&gt; by Abin Electronics which was made at Iwasawa plant. Apart from that, there is another story of Misao-chan who somehow have an unknown relationship with Shirase. Now, let's watch this &lt;span style="font-weight:bold;"&gt;Episode 2 of Battle Programmer Shirase&lt;/span&gt;... &lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/7SOlmlxGC8w&amp;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/7SOlmlxGC8w&amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Hmm.. hope you like it. I'll continue with the next episode later. Enjoy!!&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;div style="padding: 10px; background-color: rgb(255, 250, 218);"&gt;&lt;b&gt;You may also love to read:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href='http://coderstalk.blogspot.com/2008/05/battle-programmer-shirase-episode-1.html'&gt;Battle Programmer Shirase - Episode 1&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-3698993315603026716?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/i2X-H8nwuLs/battle-programmer-shirase-episode-2.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/01/battle-programmer-shirase-episode-2.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-7191542143869332658</guid><pubDate>Mon, 19 Jan 2009 01:02:00 +0000</pubDate><atom:updated>2009-01-19T09:47:40.504+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu</category><title>Where to find Ubuntu Resources?</title><description>I have lot's of queries from friends who recently migrates to Ubuntu on &lt;span style="font-weight: bold;"&gt;Where to find Ubuntu Resources?&lt;/span&gt; So, I'm listing some useful &lt;span style="font-weight: bold;"&gt;Ubuntu Resources&lt;/span&gt; here for newbies to start with.&lt;br /&gt;&lt;center&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/3207613907/" title="Ubuntu in the Office by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3391/3207613907_678bd8c6db_m.jpg" alt="Ubuntu in the Office" height="240" width="180" /&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://ubuntuforums.org/"&gt;http://ubuntuforums.org&lt;/a&gt; - In this &lt;span style="font-weight: bold;"&gt;searchable web forum&lt;/span&gt; and moderated social network is a diverse, talented, and moderated community of Ubuntu users and support staff. People share their success and setbacks here with each other as well as offering assistance and guidance. Chances are good that if you’re having difficulty with something in &lt;span style="font-weight: bold;"&gt;Ubuntu&lt;/span&gt;, someone has already run into the same problem and found a solution.&lt;/li&gt;&lt;li&gt;&lt;a href="http://forums.ubuntu.com.my/"&gt;http://forums.ubuntu.com.my&lt;/a&gt; - This is another &lt;span style="font-weight: bold;"&gt;searchable web forum&lt;/span&gt; aiming to support local Malaysian Ubuntu Community. All the people here are &lt;span style="font-weight: bold;"&gt;Malaysian Ubuntu Users&lt;/span&gt; and Official Ubuntu LoCo Member. You can get support in Malay language here.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/www.ubuntu.com/support"&gt;www.ubuntu.com/support&lt;/a&gt; - This site offers &lt;span style="font-weight: bold;"&gt;paid support from Canonical Ltd.&lt;/span&gt;, the company behind Ubuntu. If you don’t want to spend time searching through the forums, or waiting for responses, Canonical Ltd. is one avenue for telephone, e-mail, and web support costing around $20 a month. There is also Ubuntu training available aimed at companies and corporate users.&lt;/li&gt;&lt;li&gt;&lt;a href="https://help.ubuntu.com/"&gt;https://help.ubuntu.com&lt;/a&gt; - This site contains the official, up-to-date, online documentation for each Ubuntu release. As newer Ubuntu releases come out, you can come here to find out what’s new.&lt;/li&gt;&lt;li&gt;&lt;a href="http://screencasts.ubuntu.com/"&gt;http://screencasts.ubuntu.com&lt;/a&gt; - View &lt;span style="font-weight: bold;"&gt;recorded desktop sessions&lt;/span&gt; on how to do different things with Ubuntu, from setting up a printer, to setting up Samba file sharing, to installing updates to keep your Ubuntu system in top shape. &lt;span style="font-weight: bold;"&gt;Ubuntu&lt;/span&gt; users are encouraged to join the Ubuntu Screencasts Launchpad Team (https://launchpad.net/~ubuntu-screencasts) to contribute.&lt;/li&gt;&lt;li&gt;&lt;a href="https://lists.ubuntu.com/mailman/listinfo/ubuntu-users"&gt;https://lists.ubuntu.com/mailman/listinfo/ubuntu-users&lt;/a&gt; - Join the &lt;span style="font-weight: bold;"&gt;Ubuntu-users mailing list&lt;/span&gt; and interact with Ubuntu users over e-mail to discuss and solve problems that come up with everything from implementing mysql databases to setting up a problematic network devices. An archive of past threads can be viewed at https://lists.ubuntu.com/archives/ubuntu-users.&lt;/li&gt;&lt;li&gt;&lt;a href="https://wiki.ubuntu.com/IRCResourcePage"&gt;https://wiki.ubuntu.com/IRCResourcePage&lt;/a&gt; - If you are interested in live &lt;span style="font-weight: bold;"&gt;IRC chat support&lt;/span&gt;, you can visit the Ubuntu IRC resource page to find guidelines, clients, and chat servers which are an available source of support, free at any time. It is advisable to visit the Ubuntu Code of Conduct page (www.ubuntulinux.org/community/conduct/) if you have not taken part in IRC chat before.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/www.linux-usb.org"&gt;www.linux-usb.org&lt;/a&gt; - This web site aims to maintain a working knowledge of &lt;span style="font-weight: bold;"&gt;USB devices&lt;/span&gt; known to be Linux-friendly. There is a search utility where you can plug in the name or model of a manufacturer and get an instant status report on the usability of that device with Linux.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/www.linux-foundation.org/en/OpenPrinting"&gt;www.linux-foundation.org/en/OpenPrinting&lt;/a&gt; - &lt;span style="font-weight: bold;"&gt;The CUPS (http://cups.org)&lt;/span&gt; printing system is the standard printing system used on most Linux systems these days. If your printer model is not listed when you attempt to add a new printer to your Ubuntu system, you may need to search this site for an updated PPD file to add to your CUPS system. Vendors who make Linux-friendly printers can also be found at www.linux-foundation.org/en/OpenPrinting/Database/SuggestedPrinters.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/www.sane-project.org"&gt;www.sane-project.org&lt;/a&gt; - &lt;span style="font-weight: bold;"&gt;Scanner Access Now Easy (SANE)&lt;/span&gt; is a site devoted to the topic of document scanning on Linux. If you are looking for a scanner or multifunction printer, check here to see how well the vendors stack up in terms of Linux support.&lt;/li&gt;&lt;li&gt;&lt;a href="http://tldp.org/"&gt;http://tldp.org&lt;/a&gt; - &lt;span style="font-weight: bold;"&gt;The Linux Documentation Project&lt;/span&gt; is a culmination of Guides, How-To articles, and FAQS covering everything from how to make coffee with Linux to setting up QoS and Traffic Control.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Actually, this is not the complete list... You can search for more via your favourite search engine. However, these sites are good for beginner to start with. &lt;img class="inline" src="http://coderstalk.googlepages.com/sengih.gif" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-7191542143869332658?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/LV9loFnq9UI/where-to-find-ubuntu-resources.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/01/where-to-find-ubuntu-resources.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-521885782969800809</guid><pubDate>Wed, 07 Jan 2009 03:30:00 +0000</pubDate><atom:updated>2009-04-04T10:16:21.441+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu</category><title>Jaunty Jackalope Is the codename of Ubuntu 9.04</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/codedragon/3115556686/in/photostream"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 213px; height: 320px;" src="http://2.bp.blogspot.com/_QmenDvyMjlk/SWQk4y6kZXI/AAAAAAAABWo/XECu9c2IUC8/s320/ubuntu-all-stars-jaunty-jackalope.jpg" alt="** Some Rights Reserved" title="** Some Rights Reserved"id="BLOGGER_PHOTO_ID_5288392420598506866" border="0" /&gt;&lt;/a&gt;Mark Shuttleworth have announced that the codename for &lt;span style="font-weight: bold;"&gt;Ubuntu 9.04&lt;/span&gt;, which is expected to arrive in April 2009, will be &lt;span style="font-weight: bold;"&gt;Jaunty Jackalope&lt;/span&gt;. Ubuntu releases are issued every six months and include the latest versions of popular open source software applications.&lt;br /&gt;&lt;br /&gt;&lt;blockquote style="color: rgb(255, 102, 0);"&gt;"The Warrior Rabbit is our talisman as we move into a year where we can reasonably expect Ubuntu to ship on several million devices, to consumers who can reasonably expect the software experience to be comparable to those of the traditional big OSV's—Microsoft and Apple," he wrote in a mailing list post. "The bar is set very high, and we have been given the opportunity to leap over it. It's a once-in-a-lifetime chance to shine, and we want to make sure that the very best thinking across the whole open source ecosystem is reflected in Ubuntu, because many people will judge free software as a whole by what we do."&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;A big focus of the 9.04 release will be improving boot time and general performance. Shuttleworth also says that the developers also aim to bring tighter web integration to the desktop. Ubuntu 9.04 will be like a Jackalope, he claims, because it will be lightning fast and will converge desktop and web technologies to create a hybrid software experience.&lt;br /&gt;&lt;br /&gt;&lt;blockquote style="color: rgb(255, 102, 0);"&gt;"There are some specific goals that we need to meet in Jaunty. One of them is boot time. We want Ubuntu to boot as fast as possible—both in the standard case, and especially when it is being tailored to a specific device," he wrote. "Another goal is the blurring of web services and desktop applications."&lt;/blockquote&gt;&lt;br /&gt;&lt;div style="float: right; text-align: center; margin-left: 15px; margin-bottom: 15px;"&gt;&lt;a href="http://www.flickr.com/photos/7768604@N05/2635060236/" title="jackalope sighting by evie_coates"&gt;&lt;img src="http://farm4.static.flickr.com/3111/2635060236_5e05cb9fb6_t.jpg" alt="jackalope sighting by evie_coates" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br clear="all" /&gt;Ubuntu has achieved unprecedented popularity in the desktop Linux ecosystem and is rapidly moving into the general consumer market. Canonical has high hopes for Ubuntu adoption on netbooks, budget computers that feature a small form factor and tie into the cloud. Dell is already shipping Ubuntu on its new mini 9 netbook and we expect to see more Ubuntu-based subnotebook products coming soon.&lt;br /&gt;&lt;br /&gt;via &lt;a href="http://arstechnica.com/news.ars/post/20080908-ubuntu-9-04-to-be-called-jaunty-jackalope.html"&gt;[arstechnica.com]&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='font-size:85%;'&gt;** Photo is licensed under a &lt;a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/"&gt;Creative Commons Attribution-Noncommercial-Share Alike 2.0 Generic License&lt;/a&gt;.&lt;/span&gt;&lt;a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/"&gt;&lt;img alt="Creative Commons License" style="border-width:0;" src="http://creativecommons.org/images/public/somerights20.png" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-521885782969800809?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/K_coGOjR-5A/jaunty-jackalope-is-codename-of-ubuntu.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_QmenDvyMjlk/SWQk4y6kZXI/AAAAAAAABWo/XECu9c2IUC8/s72-c/ubuntu-all-stars-jaunty-jackalope.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2009/01/jaunty-jackalope-is-codename-of-ubuntu.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-3984771265220082264</guid><pubDate>Tue, 16 Dec 2008 07:19:00 +0000</pubDate><atom:updated>2008-12-16T18:42:54.651+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">more</category><category domain="http://www.blogger.com/atom/ns#">TS-ARM</category><category domain="http://www.blogger.com/atom/ns#">gsm modem</category><category domain="http://www.blogger.com/atom/ns#">embedded system</category><category domain="http://www.blogger.com/atom/ns#">gprs</category><title>3 Pin serial connection for Wavecom GSM Modem</title><description>When working with SBC or Single Board Computer for embedded project, we can't have full RS-232 serial with all 9 pin signal compatibility at all times. For instance, while I'm working with TS-7260 board from Technologic Systems, the COM3 serial interface have only 3 pin which is RX, TX and GND. So, in order to make my Wavecom GSM/GPRS/EDGE modem working, I have to create my own cable pinout to connect the 15 pin connector on the Wavecom Modem to the 3 pin RS-232 serial interface on the board.  &lt;br /&gt;&lt;br /&gt;Before creating the cable, I did some search and find this cable pinout from Wavecom GSM Modem manual.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Pin Description&lt;br /&gt;1   DCD (Data Carrier Detect)&lt;br /&gt;2   TXD (Transmit Data)&lt;br /&gt;3   Reserved&lt;br /&gt;4   MICROPHONE (+)&lt;br /&gt;5   MICROPHONE (-)&lt;br /&gt;6   RXD (Receive Data)&lt;br /&gt;7   DSR (Data Set Ready)&lt;br /&gt;8   DTR (Data Terminal Ready)&lt;br /&gt;9   GND(Signal Ground)&lt;br /&gt;10  SPEAKER (+)&lt;br /&gt;11  CTS (Clear To Send)&lt;br /&gt;12  RTS (Request To Send)&lt;br /&gt;13  RI (Ring Indicator)&lt;br /&gt;14  RESET&lt;br /&gt;15  SPEAKER (-)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;and the pinout from TS-7260 Board manual:&lt;br /&gt;&lt;quote&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;5.6 COM3 Header&lt;/span&gt;&lt;br /&gt;In the default TS-7260 configuration (OP-2TTLCOM not selected), the COM3 port has RS-232 signal levels, utilizes RTS and CTS signals and is accessible on a 10-pin header labeled COM3:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Table: TS-7260 COM3 Serial Port Header Pin Out&lt;br /&gt;&lt;br /&gt;           NC    RTS   CTS   NC    NC&lt;br /&gt;         |-----|-----|-----|-----|-----|&lt;br /&gt;         |  6  |  7  |  8  |  9  | 10  |&lt;br /&gt;         |-----|-----|-----|-----|-----|&lt;br /&gt;         |  1  |  2  |  3  |  4  |  5  |&lt;br /&gt;         |-----|-----|-----|-----|-----|&lt;br /&gt;           NC    RXD   TXD   NC    GND&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The COM3 serial port is implemented at address 0x12400000. It has a 5-byte receive FIFO and a 1-byte transmit FIFO. A TS-Kernel serial driver, "tsuart" is available which allows manipulation of this hardware in Linux using the device node /dev/ttyTS0. The 5-byte receive FIFO is enough to prevent buffer overflow at 115200 baud with the Linux driver; however, it is recommended that user designs first utilize using COM1 or COM2 ports with 16-byte FIFOs at these high speeds&lt;br /&gt;&lt;/quote&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;After struggling with so many testing, probing and research, I found the cable pinout and how I can make the 3 pin serial connection cable. Here is the result:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Wavecom Modem cable pin-out. [9 Pin connection]&lt;br /&gt;  &lt;br /&gt;              15 pin male connector (to modem)&lt;br /&gt;             View from Back side (solder point)&lt;br /&gt;&lt;br /&gt;                    +-----------------------------------+&lt;br /&gt;                    |           +---------------------+ |&lt;br /&gt;               _____|___________|___________          | |&lt;br /&gt;             /      |           |            \        | |&lt;br /&gt;            /    11 |  12    13 |  14    15   \       | |&lt;br /&gt;           /      0-+   0\    0-+   0     0    \      | |&lt;br /&gt;          / +----+        `------------------+  \     | |&lt;br /&gt;         /  | 6  |  7     8     9    10      |   \    | |&lt;br /&gt;        /   | 0  |  0     0     0     0      |    \   | |&lt;br /&gt;       |    | |  |  |     |     |            |     |  | |&lt;br /&gt;       |    | |  |1 |  2  |  3  |  4     5   |     |  | |&lt;br /&gt;       |    | |  0  |  0  |  0  |  0     0   |     |  | |&lt;br /&gt;       |    | |   +-+  |  |     |            |     |  | |&lt;br /&gt;        \___|_|___|____|__|_____|____________|____/   | |&lt;br /&gt;            | |   |    |  |     |            |        | |&lt;br /&gt;            | |   |    |  |     |            |        | |&lt;br /&gt;            | |   |    |  |     |            |        | |&lt;br /&gt;            | +-+ |    |  |     +----+       |        | |&lt;br /&gt;         +--+   | |    |  +---+      |       |        | |&lt;br /&gt;         |      | |    |      |      |       |        | |&lt;br /&gt;      ___|______|_|____|______|______|___    |        | |&lt;br /&gt;    /    |      | |    |      |      |    \  |        | |&lt;br /&gt;   |     |      | |    |      |      |     | |        | |&lt;br /&gt;   |     0      0 |    0      0      0     | |        | |&lt;br /&gt;   \     1      2 |    3      4      5    /  |        | |&lt;br /&gt;    \        ,----+ ,------------------------+        | |&lt;br /&gt;     \      0      0    +-0      0--------------------+ |&lt;br /&gt;      \     6      7    | 8      9     /                |&lt;br /&gt;       \________________|_____________/                 |&lt;br /&gt;                        |                               | &lt;br /&gt;                        +-------------------------------+&lt;br /&gt;&lt;br /&gt;    9 pin female connector (to mother board)&lt;br /&gt;&lt;br /&gt;------------------------------------------------------&lt;br /&gt;&lt;br /&gt;Wavecom Modem cable pin-out for 3 wire (RX,TX,GND) &lt;br /&gt;&lt;br /&gt;              15 pin male connector (to modem)&lt;br /&gt;             View from Back side (solder point)&lt;br /&gt;               _____________________________&lt;br /&gt;             /                               \&lt;br /&gt;            /    11    12    13    14    15   \&lt;br /&gt;           /      0-----0     0     0     0    \&lt;br /&gt;          /                                     \&lt;br /&gt;         /    6     7     8     9    10          \&lt;br /&gt;        /     0     0-----0     0     0           \&lt;br /&gt;       |      |     |           |                  |&lt;br /&gt;       |      |  1  |  2     3  |  4     5         | &lt;br /&gt;       |      |  0--+  0     0  |  0     0         |&lt;br /&gt;       |      |        |        |                  |&lt;br /&gt;        \_____|________|________|_________________/  &lt;br /&gt;              |        |        |&lt;br /&gt;              |RX      |TX      |GND&lt;br /&gt;              |        |        |&lt;br /&gt;              +-+      |        +----+&lt;br /&gt;                |      |             |&lt;br /&gt;                |      |             |&lt;br /&gt;      __________|______|_____________|___&lt;br /&gt;    /           |      |             |    \&lt;br /&gt;   |            |      |             |     |&lt;br /&gt;   |     0      0      0      0      0     |&lt;br /&gt;   \     1      2      3      4      5    / &lt;br /&gt;    \                                    /    &lt;br /&gt;     \      0      0      0      0      /   &lt;br /&gt;      \     6      7      8      9     /&lt;br /&gt;       \______________________________/&lt;br /&gt;&lt;br /&gt;    9 pin female connector (to mother board)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Mind my bad ASCII Art.. heheh &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt; Hope you understand it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Problem with Wavecom Fastrack Supreme 20 - GSM/GPRS/EDGE CI.10 Plug &amp; Play&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;My cable is working great with previous Wavecom Modem (Ref: M1306B). However, we cannot find this type of modem anymore in stock from our supplier. So, they suggest us to use Wavecom Fastrack Supreme 20 and then the weird thing happen.&lt;br /&gt;&lt;br /&gt;By default, the Modem is working fine with my computer but somehow didn't work on my SBC. The modem didn't reply to any command I send. I did check the baud rate, cable and pinout. It is exactly the same pinout and the default baudrate is 112500. So, what is going to be wrong here?&lt;br /&gt;&lt;br /&gt;After a day of searching, I found that the default setting for DTE-DCE local flow control of this modem is set to 2,2. you can check it by sending this command to your wavecom modem:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;AT+IFC?&amp;lt;CR&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;span style="font-size:80%;"&gt;* please note that &amp;lt;CR&gt; is just a simbol for carriage return character.&lt;/span&gt;&lt;br /&gt;and my modem reply like this:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;AT+IFC=2,2&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Here is the setting table for the DTE-DCE local flow control +IFC:&lt;br /&gt;&lt;br /&gt;This command is used to control the operation of local flow control between the DTE and DCE.&lt;br /&gt;&lt;br /&gt;AT+IFC=&amp;lt;DCE_by_DTE&amp;gt;,&amp;lt;DTE_by_DCE&amp;gt;&lt;br /&gt;&lt;br /&gt;*&amp;lt; DCE_by_DTE &amp;gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;table cellspacing="0" border="1" width="90%" cellpadding="3" style="border:1px solid gray;width:90%;padding:3px"&gt;&lt;tr&gt;&lt;th style="width:10%;text-align:left"&gt;code&lt;/th&gt;&lt;th style="text-align:left"&gt;description&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;none&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;Xon/Xoff local circuit 103&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;RTS&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Xon/Xoff global on circuit 103&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;*&amp;lt; DTE_by_DCE &amp;gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;table style="border:1px solid gray;width:90%"&gt;&lt;tr&gt;&lt;th style="width:10%;text-align:left;"&gt;code&lt;/th&gt;&lt;th style="text-align:left"&gt;description&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;none&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;Xon/Xoff circuit 104&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;CTS&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;So, in order to fix it, I connect the modem to my computer and use minicom to send this command to the modem:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;AT+IFC=0,0&amp;lt;CR&gt;&lt;br /&gt;AT&amp;W&amp;lt;CR&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;then plug it back to the SBC with the 3 pin cable. and it should works like charm again. &lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-3984771265220082264?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/H-MGFfqQcPQ/3-pin-serial-connection-for-wavecom-gsm.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/12/3-pin-serial-connection-for-wavecom-gsm.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-201048297975815391</guid><pubDate>Wed, 12 Nov 2008 00:00:00 +0000</pubDate><atom:updated>2008-11-12T10:24:50.679+08:00</atom:updated><title>Howto do command sequence in linux with conditional check</title><description>One of the cool things you can do in your CLI (Command Line Interface) or so called Terminal console is triggering one line of multi command sequence with conditional check. I'm always using this trick when I don't wanna wait for the first command which takes some minutes to finish to trigger the next command. Some people wrote a bash script file to do it but today i wanna show you how to do it in one single line of command. One of my common use of this trick is to trigger a loud song or alert after my dd command (which takes about 15 minutes) to copy a 2GB image to my SD cards.&lt;br /&gt;&lt;br /&gt;So, while waiting for these command to finish, I can do something else... Like playing Gangster Battle on Facebook &lt;a href='http://coderstalk.blogspot.com'&gt;&lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt;&lt;/a&gt; or chatting on the IRC (wave me @ irc.freenode.net on #ubuntu-my) &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QmenDvyMjlk/SRo3NSI7XNI/AAAAAAAAA74/JBtnNp1d8iI/s1600-h/ddfinish.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 191px;" src="http://1.bp.blogspot.com/_QmenDvyMjlk/SRo3NSI7XNI/AAAAAAAAA74/JBtnNp1d8iI/s400/ddfinish.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5267583415510326482" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here's the howto:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:113%;font-weight:bold;"&gt;Executing two or more commands in sequence&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To execute two or more commands in sequence regardless of the failure/success  of the previous command, you can use the semi colon ";" in between of your commands. For example:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;$ mycommand1 ; mycommand2&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;In this example, &lt;span style="font-weight:bold;"&gt;mycommand2&lt;/span&gt; will be executed after &lt;span style="font-weight:bold;"&gt;mycommand1&lt;/span&gt; have been accomplished.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:113%;font-weight:bold;"&gt;Execute the next command only if the first command fails&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To execute the next command in condition of when the first command fails, you can use logical OR operator which is double pipes "||". I'm not sure what you call them but here's the example:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;$ mycommand1 || mycommand2&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;mycommand2&lt;/span&gt; in this example will only be executed if &lt;span style="font-weight:bold;"&gt;mycommand1&lt;/span&gt; failed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:113%;font-weight:bold;"&gt;Execute the next command only if the first is successful&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I hope you got the idea now. Yes, we can use logical operator in between of our commands. To execute the next command in condition of when the first command is successfully accomplished, you can use logical AND operator which is double ampersand "&amp;&amp;". Look at this example:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;$ mycommand1 &amp;&amp; mycommand2&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;In this last example, mycommand2 will only be executed when mycommand1 is successful.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;That's all for now mates. Hope you can have more control on your linux terminal console. Have fun!! &lt;a href='http://coderstalk.blogspot.com'&gt;&lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-201048297975815391?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/MLbYKEM5ZMU/howto-do-command-sequence-in-linux-with.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_QmenDvyMjlk/SRo3NSI7XNI/AAAAAAAAA74/JBtnNp1d8iI/s72-c/ddfinish.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/11/howto-do-command-sequence-in-linux-with.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-8435547305572304407</guid><pubDate>Tue, 16 Sep 2008 01:13:00 +0000</pubDate><atom:updated>2008-09-16T11:26:23.597+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">how to</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu</category><title>Finch - Howto use Pidgin via Terminal Console</title><description>For those who have starts getting in love with Terminal Console in &lt;b&gt;Ubuntu&lt;/b&gt;, you may love to be able to do everything from the Terminal console. Even if I previously said, I've already bored with the terminal coz I see it every day... &lt;br /&gt;&lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt; it is good to know that actually, your terminal can do almost everything you wanna do in your linux box. I just don't like the way it looks and feel because I love &lt;a href="http://artofapogee.blogspot.com" target="_blank"&gt;art and graphics&lt;/a&gt;. I like the eye catchy graphics and also the live cubic desktop effect and so on. Anyway, I would like to share on how to use your &lt;b&gt;Pidgin from terminal console.&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SM8a1XIsXkI/AAAAAAAAA4M/6s-ZowJwDOk/s1600-h/finch.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SM8a1XIsXkI/AAAAAAAAA4M/6s-ZowJwDOk/s400/finch.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5246441594955783746" /&gt;&lt;/a&gt;&lt;br /&gt;I have a lot to say about situations where you only got your terminal console to use programs in linux. But lets keep it short and go straight to the point now. The program to enable you to use &lt;span style="font-weight:bold;"&gt;Pidgin via Terminal console&lt;/span&gt; is called &lt;span style="font-weight:bold;"&gt;Finch&lt;/span&gt;. &lt;span style="font-weight:bold;"&gt;Finch&lt;/span&gt; as in the manual is &lt;span style="font-weight:bold;"&gt;"A Pimpin’ Penguin console frontend to libpurple Instant Messaging client."&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;Run this command on your terminal to install finch in Ubuntu:&lt;br /&gt;&lt;pre id='linuxterm'&gt;$ sudo apt-get install finch&lt;/pre&gt;&lt;br /&gt;After installation, you can now use your Pidgin from the terminal console by running this command on your terminal:&lt;br /&gt;&lt;pre id='linuxterm'&gt;$ finch&lt;/pre&gt;&lt;br /&gt;As you wish to use terminal, you should already aware that you can't use your mouse (too bad for mousey... LOL). So, you have to be ready with keyboard shortcuts to use this application. Here is the quick list of useful &lt;span style="font-weight:bold;"&gt;keyboard shortcut&lt;/span&gt; to be use within Finch (taken from 'man finch'):&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Finch: GNT Shortcut&lt;/b&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.nobr br { display: none } table.ex { color:#000000;background-color:#eeeeff;font-size: 100%;padding:0px;border-top: 1px solid gray;border-left: 1px solid gray;border-bottom: 0px solid gray;border-right: 0px solid gray;} table.ex th, table.ex td { padding-bottom:2px; border-top: 0px solid gray; border-left: 0px solid gray;border-bottom: 1px solid gray;border-right: 1px solid gray;} &lt;/style&gt;&lt;div class="nobr"&gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;table class="ex" cellspacing="0" border="1" width="100%" cellpadding="3"&gt;&lt;br /&gt;&lt;tr style="background-color:#ccccff"&gt;&lt;th width="25%" align="center"&gt;Shortcut&lt;/th&gt;&lt;th width="75%" align="center"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + a&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Bring up a list of available actions. You can use this list to access the accounts window, plugins window, preference window etc.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + n&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Go to the next window.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + p&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Go to the previous window.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + w&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Show the list of windows. You can select and jump to any window from the list.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + c&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Close the current window.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + q&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Quit.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + m&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Start moving a window. Press the cursor keys to move the window. When you are done, press Enter or Escape.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + r&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Start resizing a window. Press the cursor keys to resize the window. When you are done, press Enter or Escape.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + d&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Dump the contents of the screen in HTML format in a file named "dump.html" in working directory.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + .&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Move the position of the current window in the window list one place to the right.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + ,&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Move the position of the current window in the window list one place to the left.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + l&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Refresh the windows. This is useful after resizing the terminal window.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + 1 2 ... 0&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Jump to the 1st, 2nd ... 10th window.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Ctrl + o&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Bring up the menu (if there is one) for a window. Note that currently only the buddylist has a menu.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + /&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Show a list of available key-bindings for the current widget in focus.&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + &amp;gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Switch to the next workspace&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + &amp;lt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Switch to the previous workspace&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + t&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Tag (or untag) the current window&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + T&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Attached all the tag windows to the current workspace&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Alt + s&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Show the workspace list&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;F9&lt;/b&gt;&lt;/td&gt;&lt;td&gt; Create a new workspace and switch to it&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;/center&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;You may now grab your terminal, try and feel it for yourself. For more information, you may simply call &lt;span style="font-weight:bold;"&gt;"man finch"&lt;/span&gt; and read them. That's all for now mate, Enjoy Ubuntu!! &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-8435547305572304407?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/KQGaQpwCUFw/finch-howto-use-pidgin-via-terminal.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_QmenDvyMjlk/SM8a1XIsXkI/AAAAAAAAA4M/6s-ZowJwDOk/s72-c/finch.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/09/finch-howto-use-pidgin-via-terminal.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-2863096890946908034</guid><pubDate>Sat, 30 Aug 2008 13:11:00 +0000</pubDate><atom:updated>2008-08-31T14:10:07.399+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">how to</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu</category><category domain="http://www.blogger.com/atom/ns#">networking</category><title>Howto Set Ubuntu Server IP</title><description>Configuring Ubuntu Server IP have never been any easier. Just edit the &lt;b&gt;&lt;code&gt;/etc/network/interfaces&lt;/code&gt;&lt;/b&gt; file using any text editor on the server. By default, you should have nano and vi in your Ubuntu Server.&lt;br /&gt;&lt;br /&gt;The simplest and straight forward text editor is nano. So, use this command:&lt;br /&gt;&lt;br /&gt;&lt;pre id='linuxterm'&gt;$ sudo nano /etc/network/interfaces&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;you should see the default file content like this:&lt;br /&gt;&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 230px;text-align: left; overflow: auto"&gt;&lt;br /&gt;# This file describes the network interfaces available on your system&lt;br /&gt;# and how to activate them. For more information, see interfaces(5).&lt;br /&gt;&lt;br /&gt;# The loopback network interface&lt;br /&gt;auto lo&lt;br /&gt;iface lo inet loopback&lt;br /&gt;&lt;br /&gt;# The primary network interface&lt;br /&gt;auto eth0&lt;br /&gt;iface eth0 inet dhcp&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This is the default network settings on your Ubuntu Server where it use DHCP. So, to set it as static IP. Let say, we wanna setting like this:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;=&gt; Host IP address:&lt;/span&gt; 10.1.1.100&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;=&gt; Netmask:&lt;/span&gt; 255.255.255.0&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;=&gt; Network ID:&lt;/span&gt; 10.1.1.0&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;=&gt; Broadcast IP:&lt;/span&gt; 10.1.1.255&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;=&gt; Gateway/Router IP:&lt;/span&gt; 10.1.1.254&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;=&gt; DNS Server:&lt;/span&gt; 10.1.1.254&lt;br /&gt;&lt;br /&gt;You should change the file like this:&lt;br /&gt;&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 230px;text-align: left; overflow: auto"&gt;&lt;br /&gt;# This file describes the network interfaces available on your system&lt;br /&gt;# and how to activate them. For more information, see interfaces(5).&lt;br /&gt;&lt;br /&gt;# The loopback network interface&lt;br /&gt;auto lo&lt;br /&gt;iface lo inet loopback&lt;br /&gt;&lt;br /&gt;# The primary network interface&lt;br /&gt;auto eth0&lt;br /&gt;#iface eth0 inet dhcp&lt;br /&gt;iface eth0 inet static&lt;br /&gt;        address 10.1.1.100&lt;br /&gt;        netmask 255.255.255.0&lt;br /&gt;        network 10.1.1.0&lt;br /&gt;        broadcast 10.1.1.255&lt;br /&gt;        gateway 10.1.1.254&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;To set the DNS server, edit the &lt;b&gt;&lt;code&gt;/etc/resolv.conf&lt;/code&gt;&lt;/b&gt; file using this command:&lt;br /&gt;&lt;br /&gt;&lt;pre id='linuxterm'&gt;$ sudo nano /etc/resolv.conf&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;add the line for nameserver like this:&lt;br /&gt;&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 100px;text-align: left; overflow: auto"&gt;&lt;br /&gt;search myisp.com&lt;br /&gt;nameserver 10.1.1.254&lt;br /&gt;nameserver 208.67.222.222&lt;br /&gt;nameserver 208.67.220.220&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;That's all... enjoy!! &lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-2863096890946908034?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/lg4UQpZ_KaU/howto-set-ubuntu-server-ip.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/08/howto-set-ubuntu-server-ip.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-8380319311821941845</guid><pubDate>Tue, 12 Aug 2008 00:23:00 +0000</pubDate><atom:updated>2008-08-12T09:32:20.330+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">more</category><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu</category><title>Having Fun Programming in Linux with Geany</title><description>Sorry for not having any post last month. It's just because I'm getting busy with my workloads and some stuff to do with &lt;a href="http://forums.ubuntu.com.my" target="_blank"&gt;Ubuntu Malaysia Community&lt;/a&gt;. &lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt; Now I'm back, and I would like to share with you this cool IDE for programming in Linux called Geany.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QmenDvyMjlk/SKDky5I35mI/AAAAAAAAA3I/Reucen_Czzc/s1600-h/geany_vte.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_QmenDvyMjlk/SKDky5I35mI/AAAAAAAAA3I/Reucen_Czzc/s400/geany_vte.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5233434329987147362" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;Geany is a light-weight cross-platform GTK+ text editor based on Scintilla with basic Integrated Development Environment (IDE) features. It is designed to have limited dependency on separate packages and short load times. It is available for a wide range of operating systems, such as Windows, Linux, BSD and Solaris. Among the supported programming languages are (according to the documentation) C, Java, JavaScript, PHP, HTML, CSS, Python, Perl and Pascal.&lt;br /&gt;&lt;br /&gt;Geany is one of the more fully-featured editors on the Linux platform, as most Linux editors adopt a more minimalist philosophy. It is similar to Windows editors such as NoteTab or ConTEXT.&lt;br /&gt;&lt;br /&gt;It is Free Software licensed under the terms of the GNU GPL.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;~ Cited From Wikipedia ~&lt;/i&gt;&lt;/blockquote&gt;&lt;br /&gt;Previously, people use vim, nano or gedit to write codes for linux programming. Even thou there is not much problem in using all these text editors to write codes, productive people will need more things to have that will reduce their work and increase their output.&lt;span class="fullpost"&gt; While there are Anjuta, Eclipse, Netbeans and other complete IDE available, Geany come as a middle solution for people who don't wanna something crowded like full IDE but also need something more than a simple text editor.&lt;br /&gt;&lt;br /&gt;To install Geany on your Ubuntu, you can simply use Synaptic Package Manager and search for "geany" or run this line on your Terminal:&lt;br /&gt;&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ sudo apt-get install geany&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;And this is what you can expect to get from Geany:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Code Folding - To stay focus within a complex codes, Code folding comes handy to hide big chunks of code and leave only what I'm working on right now.&lt;/li&gt;&lt;li&gt;saving the session - Geany can load files from the last session.  Unfortunately, it doesn't remember where the cursor was within the file or which parts of code were folded.&lt;/li&gt;&lt;li&gt;sidebar - Before Geany, coders using vim or nano don't use these additional bars. This one is actually quite helpful.  It lists all important code elements (functions, classes, variables, etc.) sorted in alphabetical order and lets us quickly jump to them.  Also, we can right-click on a function name where it's used and quickly jump to a line when this function is declared (if it's declared in some file that's been opened, off course).&lt;/li&gt;&lt;li&gt;all standard features anybody would expect - syntax highlighting, code completion, tabs, auto indentation (either tabs or spaces), (un)commenting and decreasing/increasing indentation of multiple lines.&lt;/li&gt;&lt;li&gt;support for many languages - I counted 26 supported filetypes.&lt;/li&gt;&lt;li&gt;build system - it can compile, build, make all, make custom target, make object and execute.&lt;/li&gt;&lt;li&gt;multiple tiny bells and whistles, such as a color picker or the ability to insert predefined comments (for example description of a function).&lt;/li&gt;&lt;li&gt;and most of all - it doesn't do anything that annoys me.  It's quite common for smallish applications to behave in a non-standard way.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;You can also check out &lt;a href="http://geany.uvena.de/Main/HomePage" target="_blank"&gt;Geany website&lt;/a&gt; for more infos. That's all for now... Wish you a Happy Coding!! &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-8380319311821941845?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/7k4cFd9XgIQ/having-fun-programming-in-linux-with.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_QmenDvyMjlk/SKDky5I35mI/AAAAAAAAA3I/Reucen_Czzc/s72-c/geany_vte.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/08/having-fun-programming-in-linux-with.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-2759476779593868178</guid><pubDate>Sun, 29 Jun 2008 02:58:00 +0000</pubDate><atom:updated>2008-07-15T11:10:29.658+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">electronic</category><category domain="http://www.blogger.com/atom/ns#">bash</category><category domain="http://www.blogger.com/atom/ns#">TS-ARM</category><category domain="http://www.blogger.com/atom/ns#">Software Engineering</category><category domain="http://www.blogger.com/atom/ns#">embedded system</category><title>Some Photos from my office's Desktop</title><description>It is Sunday, and I'm checking my old photos... And then, I found my office's desktop photos. You may want to see them. Sometimes, my desk is clean but sometimes, it get horribly messy... &lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt; This is the average looks of it.&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2341857039/" title="The Serial Data Logger by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2110/2341857039_591f6f68d4_m.jpg" width="180" height="240" alt="The Serial Data Logger" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2342686354/" title="What I see every day by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2193/2342686354_d1a002f298_m.jpg" width="180" height="240" alt="What I see every day" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2341856599/" title="The Rain Gauge PCB by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3295/2341856599_e9577bd72f_m.jpg" width="240" height="180" alt="The Rain Gauge PCB" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2341856429/" title="My Table by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3081/2341856429_a2f9407d94_m.jpg" width="240" height="180" alt="My Table" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2341856267/" title="My Old Circuit Board Design by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2336/2341856267_fcd0cda59e_m.jpg" width="240" height="180" alt="My Old Circuit Board Design" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2342685594/" title="The new TS-7260 by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2199/2342685594_53ea0218a1_m.jpg" width="240" height="180" alt="The new TS-7260" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2342685462/" title="My Desktop by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3247/2342685462_c54ddd13d6_m.jpg" width="240" height="180" alt="My Desktop" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2342685270/" title="The SBC, PCB and The Black Box by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2339/2342685270_24c2d9e53e_m.jpg" width="240" height="180" alt="The SBC, PCB and The Black Box" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2341855437/" title="SBC serial /dev/ttyAM1 by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2365/2341855437_be1879100d_m.jpg" width="240" height="180" alt="SBC serial /dev/ttyAM1" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2342685006/" title="Power Supply And Serial /dev/ttyAM0 by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2211/2342685006_88bbc825d5_m.jpg" width="240" height="180" alt="Power Supply And Serial /dev/ttyAM0" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2342684814/" title="The TS-ARM by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3132/2342684814_de923f59b5_m.jpg" width="240" height="180" alt="The TS-ARM" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2341854951/" title="TS-7260, Data Logger and GPRS Modem by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2189/2341854951_0709978785_m.jpg" width="240" height="180" alt="TS-7260, Data Logger and GPRS Modem" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2342684528/" title="TS-7260 and Data Logger by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2279/2342684528_94dd6eb2be_m.jpg" width="180" height="240" alt="TS-7260 and Data Logger" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/jerungkun-gallery/2342686764/" title="Rain Gauge Data Logging by - ApOgEE -, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3264/2342686764_d445433d6d_m.jpg" width="180" height="240" alt="Rain Gauge Data Logging" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Working on these Wireless Rain Gauge development have build up my skills in linux bash programming and I learn a lot on how Single Board computer works. In the beginning, we just create a daughter board and attach it to a &lt;a href="http://wiki.openwrt.org/OpenWrtDocs/Hardware/Linksys/WRT54GS" target="_blank"&gt;hacked LinkSYS WRT45GS&lt;/a&gt; board which I've installed &lt;a href="http://openwrt.org/" target="_blank"&gt;OpenWRT&lt;/a&gt; so I can embed my bash script inside. But then, we go for TS-7260 board from embeddedarm.com to get more control on the RainGause for version two.&lt;br /&gt;&lt;br /&gt;Till now, I'm still upgrading the code for more features and stability. Well, that's all for now. &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt; Enjoy what you're doing!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-2759476779593868178?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/5qLQ22zzAcw/some-photos-form-my-offices-desktop.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/06/some-photos-form-my-offices-desktop.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-3794324692150950551</guid><pubDate>Thu, 26 Jun 2008 00:53:00 +0000</pubDate><atom:updated>2008-06-26T10:05:16.605+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">blog</category><category domain="http://www.blogger.com/atom/ns#">blogspot hack</category><category domain="http://www.blogger.com/atom/ns#">how to</category><title>Fixing Read More link appear on Blogger Fullpost</title><description>Thanks to &lt;a href='http://paulescolarisdrunk.blogspot.com/' target='_blank'&gt;Paul Escolar&lt;/a&gt; who really use my code on &lt;a href='http://coderstalk.blogspot.com/2008/06/how-to-create-expandable-post-summaries.html' target='_blank'&gt;'How to create expandable post summaries in Blogger'&lt;/a&gt; and spot a bug on that tutorial.&lt;br /&gt;&lt;br /&gt;Hence my code for this blog is already changed for other additional stuff. Sorry for that silly mistakes &lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt;. As I went to debug my tutorial, I found that whoever follow that tutorial properly will get the same result as Paul's blog. So, here is the explanation and how to fix it.&lt;br /&gt;&lt;br /&gt;Please check at the &lt;a href='http://coderstalk.blogspot.com/2008/06/how-to-create-expandable-post-summaries.html#step-01' target='_blank'&gt;last chunk of code on 'Step #1 - Edit your template code'&lt;/a&gt;. The old code should look like this:&lt;br /&gt;&lt;br /&gt;&lt;pre id='blogcode'&gt;&lt;br /&gt;&amp;lt;b:if cond='data:post.labels'&amp;gt;&lt;br /&gt;   &amp;lt;b:loop values='data:post.labels' var='label'&amp;gt;&lt;br /&gt;      &amp;lt;b:if cond='data:label.name == &amp;amp;quot;more&amp;amp;quot;'&amp;gt;&lt;br /&gt;         &amp;lt;a expr:href='data:post.url'&amp;gt;...&amp;lt;b&amp;gt;Read more&amp;lt;/b&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;      &amp;lt;/b:if&amp;gt;&lt;br /&gt;   &amp;lt;/b:loop&amp;gt;&lt;br /&gt;&amp;lt;/b:if&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;where the previous screenshot is this:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SFAHEUsjVfI/AAAAAAAAA0s/VvZxrSNiawU/s1600-h/before-after.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SFAHEUsjVfI/AAAAAAAAA0s/VvZxrSNiawU/s400/before-after.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5210672539724109298" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;What this code do is checking the 'more' label and put that 'Read More' link at the end of your post, regardless you are in fullpost or not. So, to wipe it out when we are in fullpost, you just have to add this two lines of code, before and after that code chunk:&lt;br /&gt;&lt;br /&gt;&lt;pre id='blogcode'&gt;&lt;br /&gt;&amp;lt;b:if cond='data:blog.pageType != &amp;amp;quot;item&amp;amp;quot;'&amp;gt;&lt;br /&gt;   &lt;span style='color:#aaaaaa;'&gt;&amp;lt;b:if cond='data:post.labels'&amp;gt;&lt;br /&gt;      &amp;lt;b:loop values='data:post.labels' var='label'&amp;gt;&lt;br /&gt;         &amp;lt;b:if cond='data:label.name == &amp;amp;quot;more&amp;amp;quot;'&amp;gt;&lt;br /&gt;            &amp;lt;a expr:href='data:post.url'&amp;gt;...&amp;lt;b&amp;gt;Read more&amp;lt;/b&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;         &amp;lt;/b:if&amp;gt;&lt;br /&gt;      &amp;lt;/b:loop&amp;gt;&lt;br /&gt;   &amp;lt;/b:if&amp;gt;&lt;/span&gt;&lt;br /&gt;&amp;lt;/b:if&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;In blogger layout code, the fullpost page type is called 'item'. So, this &lt;b&gt;'if statement'&lt;/b&gt; is added to check that we are not in &lt;b&gt;'item'&lt;/b&gt; post and only do loop through the labels and add the Read More links then. &lt;br /&gt;&lt;br /&gt;That's it, you may save your template now and see the difference. Good Luck!!&lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;div style="padding: 10px; background-color: rgb(255, 250, 218);"&gt;&lt;b&gt;You may also love to read:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href='http://coderstalk.blogspot.com/2008/06/how-to-create-expandable-post-summaries.html'&gt;How to create expandable post summaries in Blogger&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='http://coderstalk.blogspot.com/2007/07/how-to-show-and-hide-text-in-blog-post.html' target='_blank'&gt;How to Show and Hide Text in Blog Post&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='http://coderstalk.blogspot.com/2008/02/how-to-show-and-hide-text-in-blog-post.html' target='_blank'&gt;How to Show and Hide Text in Blog Post with teaser&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-3794324692150950551?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/X0iEHyuEQHE/fixing-read-more-link-appear-on-blogger.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_QmenDvyMjlk/SFAHEUsjVfI/AAAAAAAAA0s/VvZxrSNiawU/s72-c/before-after.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">21</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/06/fixing-read-more-link-appear-on-blogger.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-1162912043435933231</guid><pubDate>Wed, 11 Jun 2008 18:30:00 +0000</pubDate><atom:updated>2008-09-02T10:59:43.551+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">more</category><category domain="http://www.blogger.com/atom/ns#">blog</category><category domain="http://www.blogger.com/atom/ns#">blogspot hack</category><category domain="http://www.blogger.com/atom/ns#">how to</category><title>How to create expandable post summaries in Blogger</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SFAmZ6p90YI/AAAAAAAAA1M/o_QvZC99At8/s1600-h/blogspot.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SFAmZ6p90YI/AAAAAAAAA1M/o_QvZC99At8/s200/blogspot.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5210706995551523202" /&gt;&lt;/a&gt;I've been tweaking my blog template because I've already bored with my old default template that I use previously. While working on this template, I'm thinking that it may be cool to have my long post to be truncated and &lt;span style="font-weight:bold;"&gt;have the "read more" link&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;I found the &lt;span style="font-weight:bold;"&gt;code&lt;/span&gt; from &lt;span style="font-weight:bold;"&gt;Blogger Help&lt;/span&gt; to do this. However, there is one issue with their code where the "read more" link will appear regardless of whether a post has been truncated or not. You can check it out at &lt;a href='http://help.blogger.com/bin/answer.py?hl=en&amp;answer=42215' target='_blank'&gt;help.blogger.com on How can I create expandable post summaries?&lt;/a&gt;. If you have already read them, you should notice the disadvantages under the &lt;span style="font-weight:bold;"&gt;Note list&lt;/span&gt; which says:&lt;br /&gt;&lt;blockquote&gt;&lt;ul&gt;&lt;li&gt;Disadvantages: Requires changes to the posts themselves, rather than to the template only. However, &lt;span style="color:magenta"&gt;the "read more" link is in the template, so it will appear regardless of whether a post has been truncated or not.&lt;/span&gt; &lt;span style="color:green"&gt;(Modifying this feature is left as an exercise for the reader.)&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;br /&gt;Do you think it is a good exercise? So, how many of you have already solve this exercise? I've been browsing through pages of google results and found that currently, I didn't see anybody solve and publish the answer for this exercise with just the &lt;span style="font-weight:bold;"&gt;blogger layout code&lt;/span&gt; and without using other &lt;span style="font-weight:bold;"&gt;javascript code&lt;/span&gt;. I do the search because I'm a lazy coder where I don't wanna spend my precious time to reinvent the wheel. Anyway, after a few minutes of thinking, I got an idea on how to solve this problem. And as usual, I'm happy to share my solution with you.&lt;span class="fullpost"&gt; &lt;br /&gt;&lt;br /&gt;Let's make it short now, here's the tutorial:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:1.5em;color:#ff6600"&gt;&lt;strong&gt;How can I create expandable post summaries that only show the "read more" link if post is truncated?&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;With this hack, you can choose to display a select amount of text from the beginning of each post as a teaser instead of showing the entire post on the front page of your blog. Then when people want to read the rest of the post, they can click a &lt;span style="color:green"&gt;“read more”&lt;/span&gt; link to see the full post. This is very handy if you have lots of long articles all on one page. (Note that you’ll need to have &lt;a href="http://help.blogger.com/bin/answer.py?answer=42049" target="_blank"&gt;post pages&lt;/a&gt; enabled in order to make this feature work.)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#1069f1;font-size:1.5em;"&gt;&lt;b&gt;Step #1 - Edit your template code&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;To edit your template code, you have to go to your &lt;span style="font-weight:bold;"&gt;Layout &gt; Edit HTML&lt;/span&gt; tab. Tick the &lt;span style="font-weight:bold;"&gt;Expand Widget Templates&lt;/span&gt; to have all the codes. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QmenDvyMjlk/SE_zN9RJQfI/AAAAAAAAA0c/0t-wwUKZWos/s1600-h/layout-edit-html.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_QmenDvyMjlk/SE_zN9RJQfI/AAAAAAAAA0c/0t-wwUKZWos/s400/layout-edit-html.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5210650715001274866" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It is easier to copy all code and paste it to your text editor. To copy all code, click on the code area once and then press &lt;b&gt;Ctrl+A&lt;/b&gt; to &lt;span style="font-weight:bold;"&gt;Select All&lt;/span&gt;. Press &lt;span style="font-weight:bold;"&gt;Ctrl+C&lt;/span&gt; to &lt;span style="font-weight:bold;"&gt;copy the selected codes&lt;/span&gt;, open your text editor and paste it in. Now you have your code ready to edit.&lt;br /&gt;&lt;br /&gt;Add this code just before the &lt;code style='color:green'&gt;&amp;lt;b:skin&amp;gt;&lt;/code&gt; tag on your template code:&lt;br /&gt;&lt;br /&gt;&lt;pre id='blogcode'&gt;&lt;br /&gt;&amp;lt;style&amp;gt;&lt;br /&gt;&amp;lt;b:if cond='data:blog.pageType == &amp;amp;quot;item&amp;amp;quot;'&amp;gt; &lt;br /&gt;   span.fullpost {display:inline;}&lt;br /&gt;&amp;lt;b:else/&amp;gt;&lt;br /&gt;   span.fullpost {display:none;} &lt;br /&gt;&amp;lt;/b:if&amp;gt;&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Here's how it should look. The yellow box in the image below shows your newly added code:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SE_6B8kmlKI/AAAAAAAAA0k/uT-lPaFslCk/s1600-h/code-1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SE_6B8kmlKI/AAAAAAAAA0k/uT-lPaFslCk/s400/code-1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5210658205237417122" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a id='step-01'&gt;&lt;/a&gt;&lt;br /&gt;And then you have to find &lt;code style='color:green'&gt;&amp;lt;data:post.body/&amp;gt;&lt;/code&gt; tag using Ctrl+F or find function in your text editor and paste this code just before the &lt;code style='color:green'&gt;&amp;lt;/p&amp;gt;&lt;/code&gt; tag, right after the &lt;code style='color:green'&gt;&amp;lt;data:post.body/&amp;gt;&lt;/code&gt; tag:&lt;br /&gt;&lt;br /&gt;&lt;pre id='blogcode'&gt;&lt;br /&gt;&amp;lt;b:if cond='data:post.labels'&amp;gt;&lt;br /&gt;   &amp;lt;b:loop values='data:post.labels' var='label'&amp;gt;&lt;br /&gt;      &amp;lt;b:if cond='data:label.name == &amp;amp;quot;more&amp;amp;quot;'&amp;gt;&lt;br /&gt;         &amp;lt;a expr:href='data:post.url'&amp;gt;...&amp;lt;b&amp;gt;Read more&amp;lt;/b&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;      &amp;lt;/b:if&amp;gt;&lt;br /&gt;   &amp;lt;/b:loop&amp;gt;&lt;br /&gt;&amp;lt;/b:if&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;And the screenshot. The yellow box shows your newly added code:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SFAHEUsjVfI/AAAAAAAAA0s/VvZxrSNiawU/s1600-h/before-after.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SFAHEUsjVfI/AAAAAAAAA0s/VvZxrSNiawU/s400/before-after.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5210672539724109298" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;My solution here is by checking the label whether it have &lt;span style='color:green;'&gt;"more"&lt;/span&gt; label. So, in every post that you decided to have the "read more" link, you have to add this label. I'm adding a loop to read the labels for each post and inside the loop, there is an IF statement to check whether it have the "more" label.&lt;br /&gt;&lt;br /&gt;You should notice this line with:&lt;br /&gt;&lt;code style="color:green"&gt;&amp;lt;b:if cond='data:label.name == &amp;amp;quot;&lt;span style="color:#005500;font-weight:bold;"&gt;more&lt;/span&gt;&amp;amp;quot;'&amp;gt;&lt;/code&gt;&lt;br /&gt;where the word 'more' in bold here is the label name. You can substitute this with any word you like but make sure you will only add that label to the post where you want to have the &lt;span style="color:green;"&gt;"read more"&lt;/span&gt; link.&lt;br /&gt;&lt;br /&gt;And now, you can differentiate the truncated post. &lt;img class='inline' src='http://coderstalk.googlepages.com/sengih.gif'/&gt; After verifying your code, copy it from your text editor and overwrite your HTML template code. Click on&lt;span style="font-weight:bold;"&gt; Save Template&lt;/span&gt; and you are done with the first step. Check your code carefully if Blogger fail to save it. Maybe you have missed any &lt;code style="color:green;font-weight:bold;"&gt;'&amp;lt;'&lt;/code&gt; or &lt;code style="color:green;font-weight:bold;"&gt;'&amp;gt'&lt;/code&gt; in your code.&lt;br /&gt;&lt;br /&gt;&lt;a href='http://coderstalk.blogspot.com/2008/06/fixing-read-more-link-appear-on-blogger.html' target='_blank'&gt;&lt;b&gt;UPDATE!!: Please Read - Fixing Read More link appear on Blogger Fullpost&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#1069f1;font-size:1.5em;"&gt;&lt;b&gt;Step #2 - Add Class Tag in your default Post Template&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;The next step is optional to keep the class tag handy on every post you would like to have expandable post summaries. To add this, you can just go to &lt;span style="font-weight:bold;"&gt;Settings &gt; Formatting&lt;/span&gt; tab on your blog settings. Scroll to the bottom and you will see the &lt;span style="font-weight:bold;"&gt;Post Template&lt;/span&gt; option. Then, put this code:&lt;br /&gt;&lt;br /&gt;&lt;pre id='blogcode'&gt;&lt;br /&gt;&amp;lt;span class="fullpost"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/span&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Here's the screenshot:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QmenDvyMjlk/SFAW7miR2xI/AAAAAAAAA00/WMO9w5H5XM4/s1600-h/template.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_QmenDvyMjlk/SFAW7miR2xI/AAAAAAAAA00/WMO9w5H5XM4/s400/template.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5210689982080080658" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After that, click on &lt;span style="font-weight:bold;"&gt;Save Settings&lt;/span&gt; and you are done.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#1069f1;font-size:1.5em;"&gt;&lt;b&gt;Step #3 - Creating your expandable post&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;You can now follow the same way like in the blogger help to create your expandable post. When writing your new post, anything you put above the &lt;code style='color:green'&gt;&amp;lt;span class=”fullpost”&amp;gt;&lt;/code&gt; tag will be the teaser text. The main body of your post needs to go in between the &lt;code style='color:green'&gt;&amp;lt;span class=”fullpost”&amp;gt;&lt;/code&gt; and &lt;code style='color:green'&gt;&amp;lt;/span&amp;gt;&lt;/code&gt; tags. When you have finish typing your post, make sure you add &lt;span style='color:green;'&gt;"more"&lt;/span&gt; label in order for the “read more” link to work properly.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QmenDvyMjlk/SFAXEkbRF0I/AAAAAAAAA08/BqzxJW5BcOI/s1600-h/post-sample.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_QmenDvyMjlk/SFAXEkbRF0I/AAAAAAAAA08/BqzxJW5BcOI/s400/post-sample.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5210690136132622146" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Now, you can Publish your post, and see the result. Have fun blogging!!!&lt;img class='inline' src='http://coderstalk.googlepages.com/tongue.gif'/&gt; Don't forget to subscribe my &lt;a href="http://feeds.feedburner.com/coderstalk"&gt;RSS Feed&lt;/a&gt; for more coding tricks. Feel free to link my blog on yours too... Heheh.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;div style="padding: 10px; background-color: rgb(255, 250, 218);"&gt;&lt;b&gt;You may also love to read:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href='http://coderstalk.blogspot.com/2007/07/how-to-show-and-hide-text-in-blog-post.html' target='_blank'&gt;How to Show and Hide Text in Blog Post&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='http://coderstalk.blogspot.com/2008/02/how-to-show-and-hide-text-in-blog-post.html' target='_blank'&gt;How to Show and Hide Text in Blog Post with teaser&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-1162912043435933231?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/vO5Mjlh3a8A/how-to-create-expandable-post-summaries.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_QmenDvyMjlk/SFAmZ6p90YI/AAAAAAAAA1M/o_QvZC99At8/s72-c/blogspot.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">60</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/06/how-to-create-expandable-post-summaries.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-1448403297074059291</guid><pubDate>Tue, 10 Jun 2008 01:13:00 +0000</pubDate><atom:updated>2008-06-11T17:32:11.482+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">more</category><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">how to</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu</category><title>How to Install .rpm packages in Ubuntu</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QmenDvyMjlk/SE3Yuoln8dI/AAAAAAAAAzw/j5X7EvW_MLc/s1600-h/800px-RPM_Logo.svg.png"&gt;&lt;img style="float:right; margin:0 10px 0px 10px;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_QmenDvyMjlk/SE3Yuoln8dI/AAAAAAAAAzw/j5X7EvW_MLc/s200/800px-RPM_Logo.svg.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5210058639618339282" /&gt;&lt;/a&gt;Ubuntu normally use .deb package for application installer. However, if you have an rpm file for a package you wish to install, and if you cannot find a .deb debian package in any of the Ubuntu repositories or elsewhere, you can use the &lt;a href="http://kitenet.net/programs/alien/" target="_blank"&gt;alien package converter application&lt;/a&gt; to install the .rpm file.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Alien is a program that converts between the rpm, dpkg, stampede slp, and slackware tgz file formats. If you want to use a package from another distribution than the one you have installed on your system, you can use alien to convert it to your preferred package format and install it.&lt;br /&gt;&lt;br /&gt;Despite the large version number, alien is still (and will probably always be) rather experimental software. It has been used by many people for many years, but there are still many bugs and limitations.&lt;br /&gt;&lt;br /&gt;Alien should not be used to replace important system packages, like sysvinit, shared libraries, or other things that are essential for the functioning of your system. Many of these packages are set up differently by Debian and Red Hat, and packages from the different distributions cannot be used interchangably. In general, if you can&amp;#8217;t uninstall the package without breaking your system, don&amp;#8217;t try to replace it with an alien version.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;h4 style="font-weight:bold;font-size:5;"&gt;How to Install RPM Files Using Alien&lt;/h4&gt;&lt;h4&gt;Installing Alien&lt;/h4&gt;&lt;br /&gt;The &lt;strong&gt;alien&lt;/strong&gt; can be installed from the Ubuntu &lt;em&gt;Universe&lt;/em&gt; repository by adding the repository to your list of sources and issuing this commands:&lt;span class='fullpost'&gt;&lt;br /&gt;&lt;pre id=linuxterm&gt;$ sudo apt-get update&lt;br /&gt;$ sudo apt-get install alien&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Installing the .rpm file&lt;/h4&gt;&lt;br /&gt;To install the .rpm file, you have to convert it first to a .deb file which then can be installed on Ubuntu.&lt;br /&gt;Assuming that you downloaded the package to your Desktop (~/Desktop is the directory)&lt;br /&gt;You can convert the .rpm to a .deb by using the following commands:&lt;br /&gt;&lt;br /&gt;&lt;pre id=linuxterm&gt;$ cd ~/Desktop&lt;/pre&gt;-This will change the directory to your desktop, where you have the .rpm file. &lt;br /&gt;&lt;br /&gt;&lt;pre id=linuxterm&gt;$ sudo alien -k name-of-rpm-file.rpm&lt;/pre&gt;- This will convert the .rpm to a .deb.&lt;br /&gt;- The &amp;#8220;-k&amp;#8221; will keep the version number. Otherwise alien adds a &amp;#8220;1&amp;#8243; to the version number.&lt;br /&gt;&lt;br /&gt;&lt;pre id=linuxterm&gt;$ sudo dpkg -i name-of-deb-file.deb&lt;/pre&gt;- This will install the .deb package&lt;br /&gt;&lt;br /&gt;Feel free to read the alien manpage for more details on how you can convert other kinds of packages and the options available.&lt;br /&gt;&lt;br /&gt;That's all for now, Good Luck!!&lt;img class='inline' src='http://img458.imageshack.us/img458/6599/sengih2ys5.gif'/&gt;&lt;br /&gt;via [&lt;a href="http://ubuntu.wordpress.com/2005/09/23/installing-using-an-rpm-file/" target="_blank"&gt;ubuntu.wordpress&lt;/a&gt;]&lt;br /&gt;&lt;br/&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-1448403297074059291?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/jrlxE14r0VI/how-to-install-rpm-packages-in-ubuntu.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_QmenDvyMjlk/SE3Yuoln8dI/AAAAAAAAAzw/j5X7EvW_MLc/s72-c/800px-RPM_Logo.svg.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/06/how-to-install-rpm-packages-in-ubuntu.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-7106914761850055451</guid><pubDate>Thu, 05 Jun 2008 10:57:00 +0000</pubDate><atom:updated>2008-06-11T17:47:11.089+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">bash</category><category domain="http://www.blogger.com/atom/ns#">Linux shell script</category><title>Bash Scripting - Script execution counter</title><description>This &lt;span style="font-weight:bold;"&gt;Linux shell script&lt;/span&gt; does nothing than just increasing n value every time it is executed and then keep the value in a file. When the value goes greater than 10, it will drop back to 1. Uhhh... this reminds me to the increasing of the fuel price. But that fuel price will just increase and will never drop back... Lol... Anyway, I wrote this &lt;span style="font-weight:bold;"&gt;bash script&lt;/span&gt; just to make a permanent variable to be used as bash script running counter. With this code, I can count how many time the script have been executed.&lt;br /&gt;&lt;br /&gt;Here's the code:&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 230px;text-align: left; overflow: auto"&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;nfilename="./nvalue"&lt;br /&gt;&lt;br /&gt;n=0&lt;br /&gt;touch $nfilename&lt;br /&gt;. $nfilename&lt;br /&gt;&lt;br /&gt;echo "current n value is $n"&lt;br /&gt;&lt;br /&gt;n=$(expr $n + 1)&lt;br /&gt;&lt;br /&gt;if [ $n -gt 10 ]; then&lt;br /&gt;   n=1&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;echo "new n value is $n"&lt;br /&gt;&lt;br /&gt;echo "n=$n" &gt; $nfilename&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Here's the step for testing the script for newbies bash scripter.&lt;br /&gt;&lt;br /&gt;1. Create one text file in your home folder. In this example I'm using &lt;span style="font-weight:bold;"&gt;ncounter&lt;/span&gt; as the file name:&lt;br /&gt;&lt;pre id=linuxterm&gt;apogee@apogee-persiasys:~ gedit ncounter&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;2. Copy and paste the codes in this file, then save and close it.&lt;br /&gt;&lt;br /&gt;3. Change the file permission to executable:&lt;br /&gt;&lt;pre id=linuxterm&gt;apogee@apogee-persiasys:~ chmod +x ncounter&lt;br /&gt;&lt;/pre&gt; &lt;br /&gt;4. Then you can test it... here's my output example:&lt;br /&gt;&lt;pre id=linuxterm&gt;apogee@apogee-persiasys:~$ ./ncounter &lt;br /&gt;current n value is 0&lt;br /&gt;new n value is 1&lt;br /&gt;apogee@apogee-persiasys:~$ ./ncounter &lt;br /&gt;current n value is 1&lt;br /&gt;new n value is 2&lt;br /&gt;apogee@apogee-persiasys:~$ ./ncounter &lt;br /&gt;current n value is 2&lt;br /&gt;new n value is 3&lt;br /&gt;apogee@apogee-persiasys:~$ ./ncounter &lt;br /&gt;current n value is 3&lt;br /&gt;new n value is 4&lt;br /&gt;apogee@apogee-persiasys:~$ &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Feel free to experiment and change the &lt;span style="font-weight:bold;"&gt;./nvalue&lt;/span&gt; file location to somewhere else where you have read and write permission. This is just another linux shell script that I haven't used yet... heheh&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-7106914761850055451?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/grhGfHa2lQg/bash-scripting-script-execution-counter.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/06/bash-scripting-script-execution-counter.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-8421214921505042355</guid><pubDate>Tue, 03 Jun 2008 01:08:00 +0000</pubDate><atom:updated>2008-06-11T17:34:16.300+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">coder's talk</category><category domain="http://www.blogger.com/atom/ns#">more</category><category domain="http://www.blogger.com/atom/ns#">computer</category><title>PC in a Keyboard</title><description>Have you ever wished of having a desktop where your super slim LCD monitor attached to just a keyboard? And nothing else? &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QmenDvyMjlk/SESZwm-pneI/AAAAAAAAAzI/8IHVdMC7Tok/s1600-h/pc-in-keyboard-01.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_QmenDvyMjlk/SESZwm-pneI/AAAAAAAAAzI/8IHVdMC7Tok/s400/pc-in-keyboard-01.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5207456129523228130" /&gt;&lt;/a&gt;&lt;br /&gt;If you did, it is worth to have a look at this space saving desktop computer from &lt;span style="font-weight:bold;"&gt;Cybernet&lt;/span&gt;, the &lt;span style="font-weight:bold;"&gt;Computer in a Keyboard&lt;/span&gt;. This company has shrunk the CPU behind a regular sized keyboard and it comes complete with an &lt;span style="font-weight:bold;"&gt;Intel Core 2 Quad chip, DVD drive, hard disk drive, up to 4GB RAM, a touchpad, memory card slots and standard USB ports&lt;/span&gt;.&lt;span class='fullpost'&gt;&lt;br /&gt;&lt;br /&gt;Even thou it makes the keyboard bulky, it can be a small tradeoff for all the space saving that the PC achieves. You can plug your standard monitor or even your LCD monitors into this &lt;span style="font-weight:bold;"&gt;Computer in Keyboard&lt;/span&gt;. Isn't that great?&lt;br /&gt;&lt;br /&gt;&lt;div style="display:block; margin:0px auto 10px; text-align:center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SESaYznhAqI/AAAAAAAAAzo/r1-JjKuyVww/s1600-h/pc-in-keyboard-04.jpg"&gt;&lt;img style="border:0; margin:0px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SESaYznhAqI/AAAAAAAAAzo/r1-JjKuyVww/s200/pc-in-keyboard-04.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5207456820110623394" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QmenDvyMjlk/SESaQKnKupI/AAAAAAAAAzg/iJw8uBUPSww/s1600-h/zpc1.jpg"&gt;&lt;img style="border:0; margin:0px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_QmenDvyMjlk/SESaQKnKupI/AAAAAAAAAzg/iJw8uBUPSww/s200/zpc1.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5207456671664355986" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SESaJI9gGbI/AAAAAAAAAzY/SFoxPMWHP6M/s1600-h/pc-in-keyboard-03.jpg"&gt;&lt;img style="border:0; margin:0px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SESaJI9gGbI/AAAAAAAAAzY/SFoxPMWHP6M/s200/pc-in-keyboard-03.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5207456550962076082" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QmenDvyMjlk/SESaAEst1CI/AAAAAAAAAzQ/KHbE6lpHmPI/s1600-h/pc-in-keyboard-02.jpg"&gt;&lt;img style="border:0; margin:0px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_QmenDvyMjlk/SESaAEst1CI/AAAAAAAAAzQ/KHbE6lpHmPI/s200/pc-in-keyboard-02.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5207456395199108130" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;As far as I know, the &lt;span style="font-weight:bold;"&gt;PC in keyboard&lt;/span&gt; is fully customizable and will cost around $700 to $1100. Enjoy!! &lt;img class='inline' src='http://img458.imageshack.us/img458/1977/tongue2fe6.gif'/&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-8421214921505042355?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/pUEdygPR2Wo/pc-in-keyboard.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_QmenDvyMjlk/SESZwm-pneI/AAAAAAAAAzI/8IHVdMC7Tok/s72-c/pc-in-keyboard-01.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/06/pc-in-keyboard.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-2603862954514748619</guid><pubDate>Mon, 02 Jun 2008 04:11:00 +0000</pubDate><atom:updated>2008-06-04T09:44:13.509+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">coder's talk</category><category domain="http://www.blogger.com/atom/ns#">how to</category><title>Howto Create .ISO images from CD or DVD in Linux</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QmenDvyMjlk/SEN1yVEa2BI/AAAAAAAAAzA/MtcIvVHVVgs/s1600-h/penguin-cd.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_QmenDvyMjlk/SEN1yVEa2BI/AAAAAAAAAzA/MtcIvVHVVgs/s320/penguin-cd.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5207135101680015378" /&gt;&lt;/a&gt;In &lt;span style="font-weight:bold;"&gt;Linux computer&lt;/span&gt;, we have a simple tool to create CD or DVD .ISO file. This is very helpfull to backup your CD and DVD into ISO images:&lt;br /&gt;&lt;br /&gt;To make an ISO from your CD/DVD, place the media in your drive but do not mount it. If it automounts, unmount it. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;for dvd:&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ dd if=/dev/dvd of=mydvd.iso&lt;/pre&gt;&lt;br /&gt;for cdrom:&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ dd if=/dev/cdrom of=mycd.iso&lt;/pre&gt;&lt;br /&gt;for scsi cdrom:&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ dd if=/dev/scd0 of=mycd.iso&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;And if you wanna make an ISO from files on your hard drive, create a directory which holds the files you want. Then use the mkisofs command.&lt;br /&gt;&lt;br /&gt;&lt;pre id="linuxterm"&gt;mkisofs -o /tmp/mycd.iso /tmp/directory/&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This results in a file called cd.iso in folder /tmp which contains all the files and directories in /tmp/directory/.&lt;br /&gt;&lt;br /&gt;For more info, see the man pages for mkisofs, losetup, and dd, or see the CD-Writing-HOWTO at http://www.tldp.org. Enjoy Linux!! &lt;img class='inline' src='http://img458.imageshack.us/img458/6599/sengih2ys5.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-2603862954514748619?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/P60xSbjBxk8/howto-create-iso-images-from-cd-or-dvd.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_QmenDvyMjlk/SEN1yVEa2BI/AAAAAAAAAzA/MtcIvVHVVgs/s72-c/penguin-cd.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/06/howto-create-iso-images-from-cd-or-dvd.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-6517419490458003829</guid><pubDate>Thu, 29 May 2008 03:40:00 +0000</pubDate><atom:updated>2008-05-29T11:53:16.971+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">coder's talk</category><category domain="http://www.blogger.com/atom/ns#">computer</category><title>How to survive a day at the office</title><description>Hahahah... while reading my email, I receive this funny cartoon especially the &lt;span style="font-weight:bold;"&gt;Version Two&lt;/span&gt; about computer virus. Well, you cannot do this if you are using linux in your office. heheh&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;span style="font-weight:bold;color:blue"&gt;Version One&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SD4mxG0Sf6I/AAAAAAAAAyY/gPHbZSp9o2E/s1600-h/office-computer-survive-001.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SD4mxG0Sf6I/AAAAAAAAAyY/gPHbZSp9o2E/s400/office-computer-survive-001.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5205640844372246434" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight:bold;color:blue"&gt;Version Two&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QmenDvyMjlk/SD4oNG0Sf7I/AAAAAAAAAyg/c8k6uQXiTqM/s1600-h/office-computer-survive-002.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QmenDvyMjlk/SD4oNG0Sf7I/AAAAAAAAAyg/c8k6uQXiTqM/s400/office-computer-survive-002.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5205642424920211378" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;Smile and have fun!! &lt;img class='inline' src='http://img458.imageshack.us/img458/6599/sengih2ys5.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-6517419490458003829?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/meal5MEDs4M/how-to-survive-day-at-office.html</link><author>noreply@blogger.com (ApOgEE)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_QmenDvyMjlk/SD4mxG0Sf6I/AAAAAAAAAyY/gPHbZSp9o2E/s72-c/office-computer-survive-001.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/05/how-to-survive-day-at-office.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-296987914363410001</guid><pubDate>Tue, 27 May 2008 05:13:00 +0000</pubDate><atom:updated>2008-06-04T09:49:43.658+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">bash</category><category domain="http://www.blogger.com/atom/ns#">Linux shell script</category><title>Linux Shell Script to Compare PID</title><description>Just my testing &lt;span style="font-weight:bold;"&gt;Linux bash script&lt;/span&gt; code to compare PID... I'm not really using it yet. But I'm thinking if I can use it to verify that there is running process with the same PID in &lt;span style="font-weight:bold;"&gt;/var/run/appname.pid&lt;/span&gt; on the running process snapshot (ps).&lt;br /&gt;&lt;br /&gt;if there is no such PID, maybe I can simply delete the .pid file. And the process which will check for this file can restart as usual. &lt;img class='inline' src='http://img458.imageshack.us/img458/1977/tongue2fe6.gif'/&gt;&lt;br /&gt;&lt;br /&gt;Here's the content of my &lt;span style="font-weight:bold;"&gt;~/pidcmp&lt;/span&gt; script:&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 230px;text-align: left; overflow: auto"&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;thepid=`cat /var/run/ppp0.pid`&lt;br /&gt;echo "the pid is $thepid"&lt;br /&gt;spsaux=`ps aux | grep [p]ppd`&lt;br /&gt;okflag=0&lt;br /&gt;&lt;br /&gt;gettx ()&lt;br /&gt;{&lt;br /&gt;   local IFS=" "&lt;br /&gt;   i=0&lt;br /&gt;   for tx in $1; do&lt;br /&gt;      myarr[$i]=$tx&lt;br /&gt;      let i+=1&lt;br /&gt;   done&lt;br /&gt;}&lt;br /&gt;NEWLINE='&lt;br /&gt;';&lt;br /&gt;oldifs=$IFS&lt;br /&gt;IFS=$NEWLINE&lt;br /&gt;for line in $spsaux; do&lt;br /&gt;#   echo "line: $line"&lt;br /&gt;   gettx $line&lt;br /&gt;   foundpid=${myarr[1]}&lt;br /&gt;   if [ $foundpid == $thepid ]; then&lt;br /&gt;      echo "the pid is equal!!"&lt;br /&gt;      okflag=1&lt;br /&gt;   fi&lt;br /&gt;done&lt;br /&gt;&lt;br /&gt;#echo "foundpid: ${myarr[1]}"&lt;br /&gt;IFS=$oldifs&lt;br /&gt;&lt;br /&gt;echo "okflag = $okflag"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This is just my idea... The script is working for that purpose but use it at your own risk... Enjoy &lt;span style="font-weight:bold;"&gt;Linux bash scripting&lt;/span&gt;!!&lt;img class='inline' src='http://img458.imageshack.us/img458/6599/sengih2ys5.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-296987914363410001?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/MLeQFVKjipQ/linux-shell-script-to-compare-pid.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/05/linux-shell-script-to-compare-pid.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-3074000224334193482</guid><pubDate>Mon, 26 May 2008 23:00:00 +0000</pubDate><atom:updated>2008-05-27T07:00:01.157+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Videos</category><title>Downloading Battle Programmer Shirase</title><description>Since my post about the &lt;a href="http://coderstalk.blogspot.com/2008/05/battle-programmer-shirase-episode-1.html"&gt;Battle Programmer Shirase videos&lt;/a&gt;, I'm searching if I can download all episodes... Then I found one good fast completed torrent download...&lt;br /&gt;&lt;br /&gt;You can get it too at &lt;a href="http://www.animesuki.com/series.php/258.html"&gt;http://www.animesuki.com/series.php/258.html &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;My torrent downloads will finish soon... &lt;img class='inline' src='http://img458.imageshack.us/img458/1977/tongue2fe6.gif'/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-3074000224334193482?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/6aUsfepfc8U/downloading-battle-programmer-shirase.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/05/downloading-battle-programmer-shirase.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3928190665450830956.post-2910447524010810953</guid><pubDate>Mon, 26 May 2008 10:07:00 +0000</pubDate><atom:updated>2008-06-04T09:56:44.484+08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">internet connection</category><category domain="http://www.blogger.com/atom/ns#">gprs</category><title>Maxis GPRS Connection</title><description>I'm putting this here just for my reference. Feel free to ask me on the comment section if you don't understand what I'm talking about...&lt;img class='inline' src='http://img458.imageshack.us/img458/1977/tongue2fe6.gif'/&gt; Please note that I'm using TS-7260 SBC from embedded arm which I've installed ts-7000 linux (debian-arm based) on SD card.&lt;br /&gt;&lt;br /&gt;I'm using this to have &lt;span style="font-weight:bold;"&gt;wireless connection&lt;/span&gt; fron my Rain Gauge device to the internet. To make &lt;span style="font-weight:bold;"&gt;internet connection&lt;/span&gt; via Maxis GPRS on a Linux computer with &lt;span style="font-weight:bold;"&gt;ppp dial up connection&lt;/span&gt;, we just need some files which is:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;/etc/ppp/peers/maxisGPRS&lt;/li&gt;&lt;li&gt;/etc/ppp/pap-secrets&lt;/li&gt;&lt;li&gt;/etc/ppp/chat/maxisGPRS&lt;/li&gt;&lt;li&gt;/etc/ppp/chat/gprs-disconnect&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;and make sure the ppp and chat package is installed on that box.&lt;br /&gt;&lt;br /&gt;To install ppp on debian, you can use&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ apt-get install ppp&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Here is the contents of &lt;span style="font-weight:bold;"&gt;/etc/ppp/peers/maxisGPRS&lt;/span&gt;&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 230px;text-align: left; overflow: auto"&gt;hide-password&lt;br /&gt;noauth&lt;br /&gt;connect "/usr/sbin/chat -v -f /etc/ppp/chat/maxisGPRS"&lt;br /&gt;disconnect "/usr/sbin/chat -V -s -S -f /etc/ppp/chat/gprs-disconnect"&lt;br /&gt;debug&lt;br /&gt;crtscts&lt;br /&gt;/dev/ttyTS0&lt;br /&gt;9600&lt;br /&gt;defaultroute&lt;br /&gt;noipdefault&lt;br /&gt;user maxis&lt;br /&gt;lcp-echo-interval 0&lt;br /&gt;usepeerdns&lt;br /&gt;maxfail 0&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;here is the contents of &lt;span style="font-weight:bold;"&gt;/etc/ppp/pap-secrets&lt;/span&gt;&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 100px;text-align: left; overflow: auto"&gt;maxis   *       wap     *&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;here is the contents of &lt;span style="font-weight:bold;"&gt;/etc/ppp/chat/maxisGPRS&lt;/span&gt;&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 230px;text-align: left; overflow: auto"&gt;ABORT BUSY&lt;br /&gt;ABORT 'NO CARRIER'&lt;br /&gt;ABORT VOICE&lt;br /&gt;ABORT 'NO DIALTONE'&lt;br /&gt;ABORT 'NO DIAL TONE'&lt;br /&gt;ABORT 'NO ANSWER'&lt;br /&gt;ABORT DELAYED&lt;br /&gt;'' ATZ&lt;br /&gt;OK AT&lt;br /&gt;OK ATE0V1&lt;br /&gt;OK AT+CGDCONT=1,"IP","net"&lt;br /&gt;OK ATDT*99***1#&lt;br /&gt;CONNECT ''&lt;br /&gt;'' \d\c&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;here is the contents of &lt;span style="font-weight:bold;"&gt;/etc/ppp/chat/gprs-disconnect&lt;/span&gt;&lt;br /&gt;&lt;pre dir="ltr" style="margin: 0px;padding: 3px;border: 1px inset;width: 98%;height: 230px;text-align: left; overflow: auto"&gt;# This is called at &lt;ctrl-c&gt;, (termination of pppd)&lt;br /&gt;ABORT "BUSY"&lt;br /&gt;ABORT "ERROR"&lt;br /&gt;ABORT "NO DIALTONE"&lt;br /&gt;SAY "Sending break to the modem\n"&lt;br /&gt;"" "\K"&lt;br /&gt;"" "\K"&lt;br /&gt;"" "\K"&lt;br /&gt;"" "+++ATH"&lt;br /&gt;"" "+++ATH"&lt;br /&gt;"" "+++ATH"&lt;br /&gt;SAY "PDP context detached\n"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;I've tested this and verified that it works on ubuntu Gutsy too... just plug in the Wavecom modem and change the &lt;span style="font-weight:bold;"&gt;/etc/ppp/peers/maxisGPRS&lt;/span&gt; file to use &lt;span style="font-weight:bold;"&gt;/dev/ttyS0&lt;/span&gt; or any serial port where you plug in the GPRS modem.&lt;br /&gt;&lt;br /&gt;to dial the gprs connection, use this command:&lt;br /&gt;&lt;pre id="linuxterm"&gt;$ pppd call maxisGPRS debug nodetach&lt;/pre&gt;&lt;br /&gt;(I'm using debug nodetach to see the output, you can strip out that two option if you wanna call this from cron or your script) &lt;br /&gt;&lt;br /&gt;OK, that's all... &lt;img class='inline' src='http://img458.imageshack.us/img458/6599/sengih2ys5.gif'/&gt; Enjoy!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3928190665450830956-2910447524010810953?l=coderstalk.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://feedproxy.google.com/~r/CodersTalk/~3/B56g-z5feQM/maxis-gprs-connection.html</link><author>noreply@blogger.com (ApOgEE)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">14</thr:total><feedburner:origLink>http://coderstalk.blogspot.com/2008/05/maxis-gprs-connection.html</feedburner:origLink></item></channel></rss>
