<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6353712786153645565</id><updated>2011-04-22T12:31:55.710+08:00</updated><category term='Network Cabling'/><category term='Ubuntu'/><category term='Firewall'/><category term='The first step'/><category term='OS'/><category term='Good Links'/><category term='Network Checklist'/><title type='text'>Ian's Work Journal</title><subtitle type='html'>A collection of my work experiences.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>21</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-6144883902387330744</id><published>2008-04-13T17:14:00.000+08:00</published><updated>2011-03-29T23:00:53.718+08:00</updated><title type='text'></title><content type='html'>Prepopulating a strut form before rendering it has been an issue. Especially when we need to perform some logic before rendering a form&lt;br id="h.t3"&gt;&lt;br id="qrbk"&gt;Simple prepopulating of struts form can be achieved in its constructor but this is limited to simple default values settings.&lt;br id="k90x"&gt;We cannot access request and session attributes when we prepopulate in struts form constructors.&lt;br id="cq1."&gt;&lt;br id="h5kf"&gt;Therefore, here is a simple solution to achieve the prepopulating function.&lt;br id="n6dl"&gt;&lt;br id="iab0"&gt;#Add an actionForm - NaviPopulateForm&lt;br id="udw:"&gt;&lt;br id="w4k1"&gt;This form will only consist of only one variable - action.&lt;br id="kt5o"&gt;action will direct and execute the correct code computation in the controller - NaviPopulateAction&lt;br id="cec0"&gt;&lt;br id="jf1q"&gt;#Add an controller - NaviPopulateAction&lt;br id="v813"&gt;&lt;br id="vuy5"&gt;This action contains all the prepopulating logic needed for each action.&lt;br id="adh0"&gt;After executing the correct prepopulating logic, controller navigate to the correct page to render the prepopuated form.&lt;br id="zj:g"&gt;            &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-6144883902387330744?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/6144883902387330744/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=6144883902387330744' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/6144883902387330744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/6144883902387330744'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2008/04/prepopulating-strut-form-before.html' title=''/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-372142345248903361</id><published>2008-01-06T15:35:00.000+08:00</published><updated>2008-01-06T16:08:34.835+08:00</updated><title type='text'>Say goodbye to 2007!</title><content type='html'>2007 had been a special year for me.&lt;br /&gt;&lt;br /&gt;A lot of changes had happened.&lt;br /&gt;&lt;br /&gt;Here is a quick review of my 2007.&lt;br /&gt;&lt;br /&gt;My first IT job working for Alan and his brother, Alex.&lt;br /&gt;My sincere thanks to them for giving me an opportunity and a foundation to embark on my career in IT.&lt;br /&gt;&lt;br /&gt;My second IT job and my current job with IP Mirror as a Web Application Developer.&lt;br /&gt;In this job, I learned. I made mistakes. But I will not give up.&lt;br /&gt;I had discovered my working style and adopted good coding practice.&lt;br /&gt;&lt;br /&gt;So for the coming 2008,&lt;br /&gt;&lt;br /&gt;I have new resolutions.&lt;br /&gt;&lt;br /&gt;To continue to learn, refine my working style , to regain my reputation at work.&lt;br /&gt;To learn, researb about web security and expand my coding knowledge to produce secure web application.&lt;br /&gt;To complete my degree. (So I can start saving for my marriage!!! Arrgh!!)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-372142345248903361?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/372142345248903361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=372142345248903361' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/372142345248903361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/372142345248903361'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2008/01/say-goodbye-to-2007.html' title='Say goodbye to 2007!'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-4924206407136547948</id><published>2007-10-13T15:54:00.000+08:00</published><updated>2007-10-13T16:36:24.857+08:00</updated><title type='text'>Project Whois</title><content type='html'>Oct is a challenging month for me.&lt;br /&gt;&lt;br /&gt;I had been working on singular tasks since I joined. Then came Project &lt;a href="http://en.wikipedia.org/wiki/WHOIS"&gt;Whois&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The idea is to implement a system that will generate whois details on the fly once a registrant registered a domain successfully. The generated details txt files will be rsynch from the generating server to the actual whois server that will just read the txt files and render to the whois querier.&lt;br /&gt;&lt;br /&gt;This is my first project and I realized very lately that this project is my responsibility (Sadly to say).&lt;br /&gt;&lt;br /&gt;I was too eager to code and didn't pay much attention to POLEs  (point of logging and emailing). And also, I should have analyze the system for POFs (point of failure) and POEs (point of entry) and devised the strategy to tighten the system security and keep it bug free.&lt;br /&gt;&lt;br /&gt;And because of my negligence, I had scoldings from my superior for bad work quality...&lt;br /&gt;&lt;br /&gt;To be honest, I was not familiar and clear of what was happening during the development phrase. This was another bad mistake. Because I was not clear of the situation, I didn't understand the system to be implemented and what was expected.&lt;br /&gt;&lt;br /&gt;Lesson learnt:&lt;br /&gt;&lt;br /&gt;From now, I will not rush into coding. I will sit back and draw out the system flow.&lt;br /&gt;From the system flow diagram, I will identify the &lt;span style="font-weight: bold;"&gt;POEs&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;POFs&lt;/span&gt; and &lt;span style="font-weight: bold;"&gt;POLEs&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;POEs&lt;/span&gt; :&lt;br /&gt;Null or empty string inputs&lt;br /&gt;Negative values, illegal chars and so.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;POFs&lt;/span&gt; :&lt;br /&gt;What are the possible failures that cause system to fail?&lt;br /&gt;Where will these failures occur?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;POLEs&lt;/span&gt; :&lt;br /&gt;Where should the logging/emailing be at?&lt;br /&gt;&lt;br /&gt;Next, devise the actions to be taken to take of the 3&lt;span style="font-weight: bold;"&gt; P&lt;/span&gt;.&lt;br /&gt;Good coding practices and techniques will be needed here. Experiences comes in here from now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-4924206407136547948?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/4924206407136547948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=4924206407136547948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/4924206407136547948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/4924206407136547948'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/10/project-whois.html' title='Project Whois'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-4138708481349227375</id><published>2007-09-16T12:31:00.002+08:00</published><updated>2007-09-16T12:49:24.066+08:00</updated><title type='text'>A Long Waited Bittersweet Taste Of Failure</title><content type='html'>&lt;span style="font-family:verdana;"&gt;Mid Sept. A quiet period of my life.&lt;br /&gt;&lt;br /&gt;Work has been quite smooth so far. Been working on the preventing direct JSP access to the pages. Working on creating the details files for whois. Fix the ordering bug.&lt;br /&gt;&lt;br /&gt;Have been settled down at work too.&lt;br /&gt;&lt;br /&gt;Maybe, I was tired and lost the interest in the SCJP cert. I decided to just go and try my luck with the cert exam. I admitted I should have been more prepared before taking the exam.&lt;br /&gt;&lt;br /&gt;So I flunked it. A long time since I last tasted failure. The last time was when I failed my first attempt for the motorbike.&lt;br /&gt;&lt;br /&gt;The feeling was rather sucky and helpless too.. Well, for now. I guess I should wait out and try for it again after I saved up enough to buy the cert. Maybe after this degree or after end of year.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Hope by then, I am more focused and determined to get it.&lt;br /&gt;&lt;br /&gt;And also, the exam is very tough and confusing. They deliberately confused you with the naming for the variables. Haha.&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/6353712786153645565-4138708481349227375?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/4138708481349227375/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=4138708481349227375' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/4138708481349227375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/4138708481349227375'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/09/long-waited-bittersweet-taste-of.html' title='A Long Waited Bittersweet Taste Of Failure'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-2945825392915177401</id><published>2007-09-02T09:29:00.000+08:00</published><updated>2007-09-02T09:50:02.928+08:00</updated><title type='text'>Life will never be easy again</title><content type='html'>Say goodbye to August. Here come September.&lt;br /&gt;&lt;br /&gt;Life is pretty much dull for me in August. Work had been getting more challenging and stressful. And I must say that this job is not as easy as I thought. My woes at work came from the web pages instead of the logic behind the pages. And that is a real surprise.&lt;br /&gt;&lt;br /&gt;Been working on the whoIs script, the domain audit script, and the CIP raised by Val recently. Although things does get done. But I felt that my speed is too slow.. Maybe this is my own expectation or maybe the expectation from Tes. But I hope I can get better and faster at my work.&lt;br /&gt;&lt;br /&gt;My creativity had not been working and my brain had seem to slow down alot. I wonder if this is due to the work fatigue and the study stress that had been a hugh burden for me at the moment.&lt;br /&gt;&lt;br /&gt;Currently at work, the CIP is a real pain. Because I'm maintaining the previous programmer codes. I must say that the person left a mess and extending his/her code is horrible. I can only hope that I better get this done before Tes question me..&lt;br /&gt;&lt;br /&gt;I realized that being prepare to meet the boss is a difficult task that I need to master. Because I had been getting told off several time when I met Tes.&lt;br /&gt;&lt;br /&gt;I need to stop misinterpreting the task requirements too!!&lt;br /&gt;&lt;br /&gt;Learned some new stuffs over the week. Time to log them down here!&lt;br /&gt;&lt;br /&gt;In the jsp pages, out.println("some string") or out.print will render the the string as html code.&lt;br /&gt;Here is an example:&lt;br /&gt;&lt;br /&gt;out.println("&lt;td&gt;Here is a example&lt;/td&gt;");&lt;br /&gt;&lt;br /&gt;And also, the conditional tags like &lt;logic:equal&gt;&lt;/logic:equal&gt; enclosed the block code (including java scriptlets) within them. Meaning, if the block code won't get executed when the condition is false.&lt;br /&gt;&lt;br /&gt;The source of  confusion for me is because, java scriptlets are executed first when the page load. My question is whether if a java scriptlet is enclosed in the tags, will it get executed regardless the fact that it is enclosed within the tags.&lt;br /&gt;&lt;br /&gt;After some tests, I realized that the tags did their jobs well in skipping block codes (including scriptlets).&lt;br /&gt;&lt;br /&gt;To sum up August, As a person, I need to be more attentive to task requirements. Need to make sure that I get the requirements correct in my dodo head before working on the task. Make sure my task are well tested and always prepare myself before meeting Tes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-2945825392915177401?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/2945825392915177401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=2945825392915177401' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/2945825392915177401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/2945825392915177401'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/09/life-will-never-be-easy-again.html' title='Life will never be easy again'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-8108163098070403836</id><published>2007-08-02T22:20:00.000+08:00</published><updated>2007-08-02T22:32:43.832+08:00</updated><title type='text'>A week of doh!!</title><content type='html'>This week another busy week. Haven been going home early for a while. By the time, I reached home. I simply don't have the energy and interest to study...&lt;br /&gt;&lt;br /&gt;This week, work on the grace period setttings, reserved words and pragmatic queue words settings.&lt;br /&gt;&lt;br /&gt;HW script still giving me hugh problem. Simply don't understand how to solve that problem.&lt;br /&gt;TSSA asked me to amend the user search to add in a new search by role.&lt;br /&gt;And problems arise from the access right methods, causing the navi page to go bonkers... doh.&lt;br /&gt;After a painful process, manage to find a easy way to hide the user mgmt  module.&lt;br /&gt;&lt;br /&gt;A lot of things had been done and some silly mistakes happened..&lt;br /&gt;Working in the wrong DB, not compling the rights files due to the confusion bwt 2 projects..&lt;br /&gt;&lt;br /&gt;Finding a easier way to work around a problem Well, learnt that I am not sure to add the biz logic in the entities classes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-8108163098070403836?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/8108163098070403836/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=8108163098070403836' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8108163098070403836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8108163098070403836'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/08/week-of-doh.html' title='A week of doh!!'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-5355967162146866332</id><published>2007-07-27T21:06:00.000+08:00</published><updated>2007-07-27T21:21:30.526+08:00</updated><title type='text'>MVC, Struts and Scriplets</title><content type='html'>&lt;span style="font-family: verdana;"&gt;This week... New task at work. Was told to design and come with the user management interface for the current project. So excited!! Finally, got to blend in with the rest on the project. The sound of them typing furiously really made me eager to start on the projects too!&lt;br /&gt;&lt;br /&gt;So the first look at the jsp pages gave me the shock of my life. All the scriplets look so alien to me.. OMG. Not good to have scriplets in the pages. Bad! Bad!&lt;br /&gt;&lt;br /&gt;So spent the first 2 days of this week, understanding how struts works, what is MVC all about and not missing out what the scriplets do.&lt;br /&gt;&lt;br /&gt;Finally, I got my fair exposure of struts. Struts works well with the MVC model. The few days of the weeks was a struggle getting the codes to work.&lt;br /&gt;&lt;br /&gt;Understand how they compile and how they upload the codes. Knowing where are the packages and what to use. And knowing how the struts form work with jsp and how to debug... All these finally got into my head!!&lt;br /&gt;&lt;br /&gt;Now, working is much easier as I had understood how things work around in the office. But definitely things can get better. Like using SVN for change management, the use of jstl and custom tags to make the page maintainable. A proper way to keep track of the session variable in the codes. There are a lot of improvements and I think I should compile into a report and pass to Tessa one day.&lt;br /&gt;&lt;br /&gt;Muz thks eunike for the great help in guiding me with my work.&lt;br /&gt;&lt;br /&gt;Well, this user management module is small yet I am so slow. But I will definitely get better as days goes by.&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/6353712786153645565-5355967162146866332?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/5355967162146866332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=5355967162146866332' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/5355967162146866332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/5355967162146866332'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/07/mvc-struts-and-scriplets.html' title='MVC, Struts and Scriplets'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-4609161775715983066</id><published>2007-07-22T17:37:00.000+08:00</published><updated>2007-07-22T18:22:04.848+08:00</updated><title type='text'>Another Checkpoint Of My Life</title><content type='html'>&lt;span style="font-family:verdana;"&gt;Life have never been sweeter.&lt;br /&gt;&lt;br /&gt;Recently, a wrong job have awakened my senses. And I decided to leave that job just after one week. Sad but this is real. I realized that I should pursue my dream job as a programmer. To be what I am good at. Discover my talent is one thing. Putting it to good use is another.&lt;br /&gt;&lt;br /&gt;So after a long patient nerve wrecking wait and endlness job applications, finally I got my dream job!!!&lt;br /&gt;&lt;br /&gt;I am now working in IP Mirror Pte Ltd, a singapore based domain name registrar.&lt;br /&gt;&lt;br /&gt;2 weeks had passed and life is definitely getting busy.&lt;br /&gt;&lt;br /&gt;But a very bad incident had happened  recently. I had mistakenly delete the whole dir /etc of my company test server. Oh NO!!!!&lt;br /&gt;&lt;br /&gt;Hell broke loose soon after. I felt real bad for my mistake as I had been working in Unix environment for a while. And this mistake is really unacceptable.&lt;br /&gt;&lt;br /&gt;The inconvenience caused by me is so unnecessary.&lt;br /&gt;&lt;br /&gt;Well, the damage is done and nothing can reverse its effect. My carelessness had cost the company $2K. Man, this is really a painful lesson for me.&lt;br /&gt;&lt;br /&gt;From now onward, I should be careful and such mistakes should not happen at all.&lt;br /&gt;&lt;br /&gt;Well enough of the unhappy incident, I had wrote a java program to validate domain name information, 1 Perl script to perform domain name dir update and a modification to read from a properties file for a few Perl scripts.&lt;br /&gt;&lt;br /&gt;For now, I will working with Struts, a framework from Apache to ease the complexity of MVC in my company web application.&lt;br /&gt;&lt;br /&gt;I will strive to do my best in my new job. I cant afford another silly mistake to jeopardizes my prospect with IPMirror anymore.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PS: And I also have great colleagues! Yeah!&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/6353712786153645565-4609161775715983066?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/4609161775715983066/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=4609161775715983066' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/4609161775715983066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/4609161775715983066'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/07/another-checkpoint-of-my-life.html' title='Another Checkpoint Of My Life'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-691784173981515591</id><published>2007-05-16T12:37:00.000+08:00</published><updated>2007-05-16T12:45:25.702+08:00</updated><title type='text'>HDD Failure</title><content type='html'>Recently, there is a HDD failure for the server. All data in the HDD are been wiped out.&lt;br /&gt;Must do constant updated backup for data. Do not backup to the same HDD. Also provide redundancy using Raid 1.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-691784173981515591?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/691784173981515591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=691784173981515591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/691784173981515591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/691784173981515591'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/05/hdd-failure.html' title='HDD Failure'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-3170005894205903822</id><published>2007-04-25T21:03:00.000+08:00</published><updated>2007-04-25T21:10:05.261+08:00</updated><title type='text'>File Sharing With Win Server 2003  &amp; Password Authetication when mapping network drive</title><content type='html'>How to set a file server with win server 2003 -&lt;a href="http://www.windowsnetworking.com/articles_tutorials/File_Server_Windows_2003.html"&gt; http://www.windowsnetworking.com/articles_tutorials/File_Server_Windows_2003.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To get rid of password authetication once mapping network drive in windows. Do the below:&lt;br /&gt;&lt;br /&gt;Computer Management -&gt; User Management -&gt; Enable the Guest Account in windows.&lt;br /&gt;&lt;br /&gt;That's it. It's done.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-3170005894205903822?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/3170005894205903822/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=3170005894205903822' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/3170005894205903822'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/3170005894205903822'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/04/file-sharing-with-win-server-2003.html' title='File Sharing With Win Server 2003  &amp; Password Authetication when mapping network drive'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-8625502022287987624</id><published>2007-04-23T01:17:00.000+08:00</published><updated>2007-04-23T01:21:42.278+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Good Links'/><title type='text'>April - Good Links</title><content type='html'>&lt;a href="http://www.linuxjournal.com/article/8301" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.linuxjournal.com&lt;wbr&gt;/article/8301&lt;/a&gt; - How to choose a suitable CMS?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.serverwatch.com/tutorials/article.php/3658506" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.serverwatch.com&lt;wbr&gt;/tutorials/article.php/3658506 &lt;/a&gt; - What is a proxy, reverse proxy, its purposes?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sourceforge.net/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://sourceforge.net/ &lt;/a&gt; - open source development of programs - Keep a lookout for interesting open source software!!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Load_balancing_%28computing%29" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://en.wikipedia.org/wiki&lt;wbr&gt;/Load_balancing_(computing)&lt;/a&gt; - What is load balancing?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ittraining.iu.edu/flash/file_per.swf" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://ittraining.iu.edu/flash&lt;wbr&gt;/file_per.swf&lt;/a&gt; - a good flash on file permission (eg: chmod 700)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.serverwatch.com/hreviews/article.php/3484731" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.serverwatch.com&lt;wbr&gt;/hreviews/article.php/3484731&lt;/a&gt; - server migration tips&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.100best-free-web-space.com/articles44.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.100best-free-web&lt;wbr&gt;-space.com/articles44.html&lt;/a&gt; - the difference between shared and dedicated IP&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.xensource.com/xen/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.xensource.com/xen/&lt;/a&gt; - a open source virtual private server (multiple virtual server in 1 physical server) run on linux.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.psoft.net/HSdocumentation/admin/dns_records.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.psoft.net/HSdocument&lt;wbr&gt;ation/admin/dns_records.html&lt;/a&gt; - DNS Record Types and their uses&lt;br /&gt;&lt;br /&gt;&lt;a href="http://computer.howstuffworks.com/nat.htm" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://computer.howstuffworks&lt;wbr&gt;.com/nat.htm&lt;/a&gt; - What is Network Address Translation?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.qmailrocks.org/smtpauth.htm" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.qmailrocks.org&lt;wbr&gt;/smtpauth.htm&lt;/a&gt; - the difference between "pop before smtp" &amp; smtp auth&lt;br /&gt;&lt;br /&gt;&lt;a href="http://resources.hostdime.com/resources/shared/ssl/ssl_explained.php" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt; http://resources.hostdime.com&lt;wbr&gt;/resources/shared/ssl/ssl&lt;wbr&gt;_explained.php &lt;/a&gt; - difference between dedicated ssl and shared ssl&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.smallbusinesscomputing.com/webmaster/print.php/3293481" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.smallbusinesscomputi&lt;wbr&gt;ng.com/webmaster/print.php&lt;wbr&gt;/3293481 &lt;/a&gt; - how to connect 2 pcs together?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.pcstats.com/articleview.cfm?articleid=1501&amp;amp;page=2" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.pcstats.com/articlev&lt;wbr&gt;iew.cfm?articleid=1501&amp;amp;page=2&lt;/a&gt; - Reset BIOS passwords&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-8625502022287987624?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/8625502022287987624/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=8625502022287987624' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8625502022287987624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8625502022287987624'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/04/httpwww.html' title='April - Good Links'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-2749811727973487101</id><published>2007-04-01T23:31:00.000+08:00</published><updated>2007-04-01T23:51:17.598+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Network Cabling'/><title type='text'>Cat 5 Cable Stripping Sequence</title><content type='html'>Here is the standard CAT 5 stripping sequence that I learned previously.&lt;br /&gt;Useful for making the CAT 5 cables.&lt;br /&gt;&lt;br /&gt;Stripe Orange  Orange  Stripe Green  Blue  Stripe Blue  Green  Stripe Brown  Brown&lt;br /&gt;&lt;br /&gt;The standard cabling -&lt;a href="http://www.incentre.net/incentre/frame/ethernet.html"&gt;http://www.incentre.net/incentre/frame/ethernet.html&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="body"&gt;&lt;span class="body"&gt;&lt;p&gt;For example, the following connections will typically require a crossover cable:   &lt;/p&gt;&lt;ul&gt;&lt;li&gt;computer to computer &lt;/li&gt;&lt;li&gt;computer to uplink port &lt;/li&gt;&lt;li&gt;computer to print server &lt;/li&gt;&lt;li&gt;uplink port to uplink port (hub/switch) &lt;/li&gt;&lt;li&gt;normal port to normal port (hub/switch) &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;Whereas in these situations you would use a straight-through cable:   &lt;/p&gt;&lt;ul&gt;&lt;li&gt;computer to residential gateway/router &lt;/li&gt;&lt;li&gt;computer to normal port (hub/switch) &lt;/li&gt;&lt;li&gt;access point to normal port (hub/switch) &lt;/li&gt;&lt;li&gt;print server to normal port (hub/switch) &lt;/li&gt;&lt;li&gt;uplink port to normal port (hub/switch) &lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="body"&gt;&lt;span class="body"&gt; Identifying a straight-through cable from a crossover cable is actually simple. The main way to tell the difference is to compare the wiring order on the ends of the cable. If the wiring is the same on both sides, it is a straight-through cable. If one side has the opposite wiring, meaning that the cables in pin positions 1, 2, 3 and 6 have been crossed over, then it's a crossover cable — hence the name.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-2749811727973487101?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/2749811727973487101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=2749811727973487101' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/2749811727973487101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/2749811727973487101'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/04/cat-5-cable-stripping-sequence.html' title='Cat 5 Cable Stripping Sequence'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-6882504476527754750</id><published>2007-03-19T15:40:00.000+08:00</published><updated>2007-03-19T16:05:32.693+08:00</updated><title type='text'>My thought on servers...</title><content type='html'>Recently, I had been working on configuring a storage server and a mail relay server. After a while of meddling with the setup. I had a better understanding of servers.&lt;br /&gt;&lt;br /&gt;So I decided to log it down here based on my opinion of servers. Basically, servers are just normal computers that we use daily. The special thing about server is in its name itself. Servers are computers that server a purposeful service.&lt;br /&gt;&lt;br /&gt;Examples like a DNS server will provide of resolving a domain name into an IP address. A mail server will receive mails from other computers and route the mails to the correct destination computers accordingly. A storage server will serve by providing allocated storage space for other computers. So there are many types of servers in this world.&lt;br /&gt;&lt;br /&gt;Computers which use the services aka functions provided by the server are known as host computers. Host computers request for the service. This process is also called making a request&lt;br /&gt;&lt;br /&gt;A question may come across your mind. Why not bundle a whole lots of function into a computer and make it a multi purpose server? The truth is this is possible but it will be rather taxing on the server. The available resources in the servers will not be enough for the bundle of functions.&lt;br /&gt;&lt;br /&gt;If you are dealing with only ten or less computers, maybe the server you conjured might be able to handle the requests. But what if the server is going to handle millions...&lt;br /&gt;&lt;br /&gt;So for such situations, we will need a dedicated server - a server that is powerful in specs and solely provide a service.&lt;br /&gt;&lt;br /&gt;Don't expect to see lots of fanciful GUI. Server is a boring computer with few programs that needed to provide the service and nothing else. Maybe some program tools to ease administration of the server.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So to prepare and set up a server will be:&lt;br /&gt;&lt;br /&gt;Get a computer with the specs that suit the load of requests it need to handle.&lt;br /&gt;Next, install the OS&lt;br /&gt;Set up the RAID - to improve the data reliability in case of data corruption and etc&lt;br /&gt;Download and install the packages necessary to provide the service&lt;br /&gt;&lt;br /&gt;After all the setup is done, we will need to do testing. Here is the hard part. How to test?&lt;br /&gt;What to test for? Even at this point, I am not sure on how to test.&lt;br /&gt;&lt;br /&gt;But I think the direct way to test will be sending a request to see if the server perform its job.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-6882504476527754750?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/6882504476527754750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=6882504476527754750' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/6882504476527754750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/6882504476527754750'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/03/my-thought-on-servers.html' title='My thought on servers...'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-8995554963296070988</id><published>2007-02-22T15:00:00.000+08:00</published><updated>2007-03-22T10:20:48.538+08:00</updated><title type='text'>Some good links to learn about computer hardwares</title><content type='html'>Here is a good link to how RAID works.&lt;br /&gt;&lt;a href="http://www.hardwaresecrets.com/article/393"&gt;http://www.hardwaresecrets.com/article/393&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A good link to knowing more about hardwares&lt;br /&gt;&lt;a href="http://www.hardwaresecrets.com/"&gt;http://www.hardwaresecrets.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A good link to difference between hard link and soft link of Unix FS&lt;a href="http://linuxgazette.net/105/pitcher.html"&gt;&lt;br /&gt;http://linuxgazette.net/105/pitcher.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-8995554963296070988?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/8995554963296070988/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=8995554963296070988' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8995554963296070988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8995554963296070988'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/02/some-good-links-to-learn-about-computer.html' title='Some good links to learn about computer hardwares'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-65585455146710460</id><published>2007-02-12T21:31:00.000+08:00</published><updated>2007-02-12T00:40:37.924+08:00</updated><title type='text'>Setting Up For Multiple Access Points</title><content type='html'>Situation:&lt;br /&gt;&lt;br /&gt;To install and configure 3 wireless AP for client.&lt;br /&gt;&lt;br /&gt;Here is the situation over the client's network.&lt;br /&gt;&lt;br /&gt;The existing network is a wired network. All host coms are in the subnet of 192.168.0.xxx.&lt;br /&gt;&lt;br /&gt;The wireless AP have the default IP of 192.168.1.245.&lt;br /&gt;User: blank Password: admin&lt;br /&gt;&lt;br /&gt;If just using any host com of the 192.168.0.xxx will not be able to connect to the web interface of the AP which is in the 192.168.1.xxx.&lt;br /&gt;&lt;br /&gt;To resolve this small issue, I will use the wireless connection to connect up to the web interface.&lt;br /&gt;So, I set a static ip of 192.168.1.2 to the host com that I use to establish the connection to the web interface.&lt;br /&gt;&lt;br /&gt;This is possible as I have set this host com in the same subnet as the AP. Remember only in the correct subnet, host com can communicate with the router, modem, firewall, etc.&lt;br /&gt;&lt;br /&gt;So in the correct subnet, I use the host com to config the AP with the web interface.&lt;br /&gt;Setting the SSID, change the admin password, set the security key...&lt;br /&gt;&lt;br /&gt;Next,  install the next AP. Here is a  small problem. Because the 2nd AP  and 3rd AP share the same IP.&lt;br /&gt;So to prevent IP conflict, I set the 2nd AP to 192.168.2.245 and the 3rd AP to 192.168.3.245.&lt;br /&gt;&lt;br /&gt;All 3 AP can now support a range of 2 to 244 host com each. 192.168.1.xxx for AP1/ 192.168.2.xxx for AP2. 192.168.3.xxx for AP3.&lt;br /&gt;&lt;br /&gt;Then client ask about how to restrict external customer PC from remembering network setting like the WEP key. But sad to say, I have not find a solution to this yet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-65585455146710460?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/65585455146710460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=65585455146710460' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/65585455146710460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/65585455146710460'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/02/setting-up-for-multiple-access-points.html' title='Setting Up For Multiple Access Points'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-8788903941522795320</id><published>2007-02-12T00:17:00.000+08:00</published><updated>2007-02-08T02:20:53.679+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Network Checklist'/><title type='text'>A Network Troubleshooting Checklist</title><content type='html'>After a painful day of figuring out what is the problem in the network, think it is time to create&lt;br /&gt;a network checklist.&lt;br /&gt;&lt;br /&gt;1.  Check if the hardware connection is correct.&lt;br /&gt;&lt;br /&gt;2. Check if the host's gateway IP is the router's Lan IP.&lt;br /&gt;&lt;br /&gt;3. Check if the router's way is the firewall's Lan IP.&lt;br /&gt;&lt;br /&gt;4. Check the firewall's rules. See if HTTP, DNS, TCP and etc are allowed to pass through.&lt;br /&gt;&lt;br /&gt;5. From host com, ping to the router's Lan IP.&lt;br /&gt;&lt;br /&gt;6. From host com, ping to the firewall's Lan IP.&lt;br /&gt;&lt;br /&gt;7. Check if DNS is working. Ping Google.com and its IP address.&lt;br /&gt;&lt;br /&gt;8. Check the DNS Server of the host com, router, firewall.&lt;br /&gt;&lt;br /&gt;9. Check if the firewall boot program if it is corrupt&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-8788903941522795320?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/8788903941522795320/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=8788903941522795320' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8788903941522795320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8788903941522795320'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/02/network-troubleshooting-checklist.html' title='A Network Troubleshooting Checklist'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-7454279106845379026</id><published>2007-02-08T01:18:00.000+08:00</published><updated>2007-02-08T02:20:53.809+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Firewall'/><title type='text'>Firewall not working!!!</title><content type='html'>Problem:&lt;br /&gt;&lt;br /&gt;The firewall is not working well, with the other network peripherals, causing the network to be down.&lt;br /&gt;&lt;br /&gt;The whole network configuration will be:&lt;br /&gt;&lt;br /&gt;Modem connect to the firewall. firewall connect to the router, router connected to the switch.&lt;br /&gt;&lt;br /&gt;The modem will have 2 IP addresses. one for dealing with the Internet, another for acting as gateway for the firewall.&lt;br /&gt;&lt;br /&gt;The firewall also have 2 IP addresses. one for routing to the gateway for the firewall (the modem). Another for acting as gateway for the router.&lt;br /&gt;&lt;br /&gt;The router also have 2 IP addresses. One for routing to the gateway for the router (the firewall).&lt;br /&gt;Another IP address to act as gateway for the switch.&lt;br /&gt;&lt;br /&gt;There is a difference between using DHCP and static IP for the assigning of the IP to the network peripherals.&lt;br /&gt;&lt;br /&gt;If using DHCP, we will need to boot up the network peripherals in order, starting with in this order:&lt;br /&gt;modem, firewall, router, switch&lt;br /&gt;&lt;br /&gt;This is because when modem is boot up, it use DHCP to auto assign an IP address for itself. Once it is ready, we will boot up the firewall, DHCP will take over and auto assign IP for the firewall, this goes on until all network peripherals are boot up and auto assigned an IP.&lt;br /&gt;&lt;br /&gt;As for static IP, there is no need for the boot up in order process. But using static IP need more planning than DHCP. So it is up to individual preference.&lt;br /&gt;&lt;br /&gt;Ok, enough of the sidetrack...&lt;br /&gt;&lt;br /&gt;The firewall didn't work...&lt;br /&gt;&lt;br /&gt;To isolate the network problem, remove the firewall from the network connection. connect up the modem to the router. reboot the network peripherals, PCs and check if there is a connection to the Internet. This test will tell you straight away if the problem lies at the firewall or not.&lt;br /&gt;&lt;br /&gt;If the problem lies with the firewall. There are 2 ways to check the firewall setting.&lt;br /&gt;&lt;br /&gt;Using a serial cable, connecting to the PC to talk with the firewall. a console program to see the booting process.&lt;br /&gt;&lt;br /&gt;Using a cross cable connected to the PC, go to the IP in the browser, this will access the web interface.&lt;br /&gt;&lt;br /&gt;The former will see the boot process, providing more info about where could go wrong. Normally, we will use the web interface in the latter.&lt;br /&gt;&lt;br /&gt;Use the former when the firewall boot up program is corrupt. How we know it is corrupt?&lt;br /&gt;If the web interface cannot be access using the cross cable, there is high chance it is corrupt.&lt;br /&gt;&lt;br /&gt;What should we do if the firewall program is corrupt.&lt;br /&gt;&lt;br /&gt;Well, we need to get an image of the boot program for the firewall website. &lt;span style="font-weight: bold;"&gt;Then we will need to find a program that burn the image into the memory of the firewall&lt;/span&gt;. In my case, my memory comes as a CF.&lt;br /&gt;&lt;br /&gt;With the image to be burn into, the CF itself, a card reader,  the program that do the burning, we burn the image to the CF using the program.&lt;br /&gt;&lt;br /&gt;Afterwards, the CF contains the boot program of the firewall once more. The firewall should be ok by now.&lt;br /&gt;&lt;br /&gt;Next, we will fix back the CF into the firewall, boot it up, access its web interface.&lt;br /&gt;Here, we will configure the firewall settings - firewall rules.&lt;br /&gt;&lt;br /&gt;Here is some protocols we need to allow. HTTP, HTTPS, FTP, POP3, SMTP, IMAP, DNS and etc.&lt;br /&gt;&lt;br /&gt;As for the DNS server address.. DHCP will do the job fine. (Not very sure)&lt;br /&gt;&lt;br /&gt;We need to set the firewall IP addresses. Remember, there are 2 IP address.&lt;br /&gt;After setting up the firewall IP, we will reboot the whole network connection. Remember the DHCP and static IP difference.&lt;br /&gt;&lt;br /&gt;The firewall should work now. Hopefully.. &gt;&lt;crossing&gt;&lt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-7454279106845379026?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/7454279106845379026/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=7454279106845379026' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/7454279106845379026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/7454279106845379026'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/02/firewall-not-working.html' title='Firewall not working!!!'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-5445935953064350399</id><published>2007-01-25T19:56:00.000+08:00</published><updated>2007-01-25T20:36:24.068+08:00</updated><title type='text'>Can't write to my ext hdd</title><content type='html'>Problem:&lt;br /&gt;&lt;br /&gt;Plug in my ext hdd.&lt;br /&gt;There is no problem detecting the hdd, accessing and reading the hdd&lt;br /&gt;Can't write to my ext hdd.&lt;span class="down" style="display: block;" id="formatbar_Italic" title="Italic" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 4);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;br /&gt;What I did:&lt;br /&gt;&lt;br /&gt;I checked the /etc/fstab to see the information about the various filesystems.&lt;br /&gt;Read up for fstab man: &lt;a href="http://man.he.net/?topic=fstab&amp;section=all"&gt;http://man.he.net/?topic=fstab&amp;amp;section=all &lt;/a&gt;&lt;br /&gt;Read up for fstab mount options: &lt;a href="http://man.he.net/man8/mount"&gt;http://man.he.net/man8/mount&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;There is no record in the fstab about my ext hdd.&lt;br /&gt;&lt;br /&gt;I checked the /etc/mtab to list what device is mounted.&lt;br /&gt;Fair enough, my ext hdd appeared in this file. That's why I can read my hdd.&lt;br /&gt;&lt;br /&gt;I search Google for more info and finally, i found out the reason to my woe.&lt;br /&gt;&lt;br /&gt;My conclusion:&lt;br /&gt;&lt;br /&gt;NTFS is only read only in Linux. This has been the reason why I can't write to my ext hdd.&lt;br /&gt;My ext hdd filesystem is NTFS.&lt;br /&gt;&lt;br /&gt;I also found out that to change ownership of file - chown&lt;br /&gt;I found out to change group ownership of file - chgrp&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-5445935953064350399?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/5445935953064350399/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=5445935953064350399' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/5445935953064350399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/5445935953064350399'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/01/cant-write-to-my-ext-hdd.html' title='Can&apos;t write to my ext hdd'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-8590069940913916034</id><published>2007-01-24T18:26:00.000+08:00</published><updated>2007-01-31T11:18:03.379+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Using Ubuntu For The first time</title><content type='html'>Problem:&lt;br /&gt;&lt;br /&gt;No Internet access&lt;br /&gt;cannot access root.&lt;br /&gt;&lt;br /&gt;What I did:&lt;br /&gt;&lt;br /&gt;For the access of root, I realized only the users in admin group can use the following command to change the root password.&lt;br /&gt;&lt;br /&gt;"sudo passwd" - this command can change the root password. (Only for admin group users)&lt;br /&gt;&lt;br /&gt;/etc/group - the file that control users is in which group&lt;br /&gt;&lt;br /&gt;So, I use "sudo passwd" to alter the root password.&lt;br /&gt;Now, I can access as root.&lt;br /&gt;&lt;br /&gt;chmod [a,u,g,o][-,+][r,w,x] filename - alter file permission.&lt;br /&gt;&lt;br /&gt;a - all user                            - - remove permission       r - read&lt;br /&gt;u - user(owner)                + - add permission                w - write&lt;br /&gt;g - group                                                                                           x - execute (for .exe files)&lt;br /&gt;o - other member&lt;br /&gt;&lt;br /&gt;I resolve the issue about the partitions with the help of the partition tools. Convert the Linux swap (primary) to logical partition. This will allow me to convert my unallocated space into logical partition.&lt;br /&gt;&lt;br /&gt;So,&lt;br /&gt;&lt;br /&gt;1 primary NTFS partition, 1 primary ext2 partition&lt;br /&gt;1 logical NTFS partition, 1 logical ext3 partition&lt;br /&gt;1 logical Linux swap partition&lt;br /&gt;&lt;br /&gt;I found out the difference between ext2 and ext3 is ext3 has a new technique call journaling - improve reliability and recoverability.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-8590069940913916034?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/8590069940913916034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=8590069940913916034' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8590069940913916034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/8590069940913916034'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/01/using-ubuntu-for-first-time.html' title='Using Ubuntu For The first time'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-987238903892247771</id><published>2007-01-24T16:24:00.000+08:00</published><updated>2007-01-24T18:25:24.660+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OS'/><title type='text'>Can't boot up OS after split the partition</title><content type='html'>Problem:&lt;br /&gt;&lt;br /&gt;1.    Can't boot up my partition after splitting of partition failed.&lt;br /&gt;&lt;br /&gt;2.    Install Linux and Windows on the hdd.&lt;br /&gt;&lt;br /&gt;What I did:&lt;br /&gt;&lt;br /&gt;Since I can't start XP from the partition after the split process is failed. I format my partition and into 2 partitions. One for XP. Another for Linux.&lt;br /&gt;&lt;br /&gt;I create an image of my notebook image. Took 1 whole day to complete creation.&lt;br /&gt;Try to restore the image on the partition intend for windows. Took 24 hrs, but the process hanged.&lt;br /&gt;&lt;br /&gt;So I decide to do my way. Installed XP on the first partition. Then use my ext hdd to copy the important files over.&lt;br /&gt;&lt;br /&gt;Done for XP part!&lt;br /&gt;&lt;br /&gt;Next, I boot up Linux Ubuntu installation disk.&lt;br /&gt;Run memtest. (Not sure if necessary)&lt;br /&gt;The second partition is unallocated. i.e: free to install OS on it.&lt;br /&gt;Run install on the Ubuntu CD.&lt;br /&gt;&lt;br /&gt;Time for a little bit of complexity.&lt;br /&gt;&lt;br /&gt;gParted is use to do the partitioning for the hdd.&lt;br /&gt;&lt;br /&gt;hda1 - the system files for XP (ntfs)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;hda2 - this extended partition is giving me trouble. will fix it later&lt;/span&gt;&lt;br /&gt;hda3 - the partition root resides in&lt;br /&gt;hda4 - swap space&lt;br /&gt;&lt;br /&gt;I set 5 gib for hda3. (Something about gib, 1024mb = 1024mib = 1 gb = 1gib)&lt;br /&gt;I set 2 gib for hda4.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The rest of the unallocated and hda2 I will fix later.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;GRUB is the bootloader that Ubuntu use to dual boot OS.&lt;br /&gt;&lt;br /&gt;Lesson Learned:&lt;br /&gt;&lt;br /&gt;Opt the simpler and faster way to restore the desktop. Save time and effort.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6353712786153645565-987238903892247771?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/987238903892247771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=987238903892247771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/987238903892247771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/987238903892247771'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/01/cant-boot-up-os-after-split-partition.html' title='Can&apos;t boot up OS after split the partition'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6353712786153645565.post-263550663969296796</id><published>2007-01-24T16:10:00.000+08:00</published><updated>2007-01-24T16:23:37.517+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='The first step'/><title type='text'>The Pig is back!</title><content type='html'>&lt;div style="text-align: left; color: rgb(204, 204, 204);"&gt;&lt;span style="text-decoration: underline;"&gt;This blog serves as a storage to my past experiences with computer woes.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="text-decoration: underline; color: rgb(204, 204, 204);"&gt;I will log in my experience and the knowledge gained from the process.&lt;br /&gt;&lt;br /&gt;As times goes, this blog serve as a knowledge base for the solutions to similar computer problems.&lt;br /&gt;&lt;br /&gt;I think that is all from the introduction. Let the logging begin.&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/6353712786153645565-263550663969296796?l=panggd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://panggd.blogspot.com/feeds/263550663969296796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6353712786153645565&amp;postID=263550663969296796' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/263550663969296796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6353712786153645565/posts/default/263550663969296796'/><link rel='alternate' type='text/html' href='http://panggd.blogspot.com/2007/01/pig-is-back.html' title='The Pig is back!'/><author><name>Ian</name><uri>http://www.blogger.com/profile/11783296372904638509</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
