<?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:blogger='http://schemas.google.com/blogger/2008' 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-8088248820456220052</id><updated>2024-08-30T08:03:38.867-07:00</updated><title type='text'>Journey...</title><subtitle type='html'>&#39;The Journey&#39; is all about the different tastes and flavours.... wandering among the virtual streets...different Paths and Destinations... from Technology to Gadgets... from Humor to Practical Lessons...from Truth to Fictions... from current issues to market conditions... and wat&#39;s not...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>29</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-2482512922269231654</id><published>2009-01-31T15:41:00.000-08:00</published><updated>2009-06-05T20:03:26.557-07:00</updated><title type='text'>जो बीत गई सो बात गई</title><content type='html'>&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;जो&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;बीत&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;गई&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;सो&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;बात&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;गई&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;जीवन मे एक सितारा &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;था&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;माना वह बेहद  प्यारा  था&lt;br /&gt;वो डूब गया  तोउ डूब गया &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;अम्बर के आगन को देखो&lt;br /&gt;कितने इसके तारे टूटे &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;इतने इसके प्यारे &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;छूटे&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;पअर &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;बोलो टूटे तारों पर&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;कब अम्बर शोक मनाता हैं &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;जो बीत गयी सो बात गयी ...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;जीवन मे  था  वो एक कुसुम&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;थे उस  पे नित्य  नयोचावार  तुम&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;वो सूख गया तोउ सूख गया&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;मधुवन की &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;छाती को देखो &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;सूखी कितनी इसकी कलियाँ &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;जो मुरझाई फिर कहाँ खिली &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;पर बोलो सूखी फूलों &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;पे&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;कब मधुवन शोक मनाता हैं ?&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;जो&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;बीत&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;गयी&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;सो&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;बात&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;गयी&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; ...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;जीवन मे  मधु  का प्याला था&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;तुमने तन मन दे  डाला था&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;वो टूट गया तोउ टूट गया&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;मदिराली का आगन  देखो&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;कितने प्याले हिल  जाते  हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;गिर मिटटी में मिल जाते हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;जो गिरते हैं कब उठते हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;पर बोलो टूटे प्यालों मे कब मदिरालय पछताता हैं ?&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;जो&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;बीत&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;गयी&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;सो&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;बात&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;गयी&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; ...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;मृदु मिटटी के है  bane हुए&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;मधु घाट फूटा ही करतें हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;लघु जीवन लेके आए हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;प्याले टूटा ही करते हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;फिर भी &lt;span&gt;मदिरालय &lt;/span&gt;के अन्दर&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;मधु के घाट मधु के प्याले  हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;जो मादकता के मारे हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;वो मधु लूटा ही करते   हैं&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;वो कच्चा पीने वाला  है&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;जिसकी ममता घाट प्यालों  पर&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;जो सच्चे मधु से जला  हुआ&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;कब रोता हैं चिल्लाता हैं ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;जो&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;बीत&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;गयी&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;सो&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;बात&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt;गयी&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot;&gt; ...&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 102);&quot; class=&quot;&quot;&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/2482512922269231654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/2482512922269231654?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/2482512922269231654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/2482512922269231654'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2009/01/blog-post.html' title='जो बीत गई सो बात गई'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-3812996033305855256</id><published>2009-01-08T22:03:00.000-08:00</published><updated>2009-02-17T17:25:33.703-08:00</updated><title type='text'>Why Humans emotionally hurts</title><content type='html'>... to be continued..&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/3812996033305855256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/3812996033305855256?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3812996033305855256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3812996033305855256'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2009/01/why-humans-emotionally-hurts.html' title='Why Humans emotionally hurts'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-507744555301864401</id><published>2008-10-09T18:02:00.000-07:00</published><updated>2008-10-09T18:05:47.221-07:00</updated><title type='text'>Fingerprint biometrics</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-size:180%;&quot;&gt;&lt;em&gt;Principles of fingerprint biometrics&lt;/em&gt; &lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span style=&quot;font-family:verdana;font-size:130%;&quot;&gt;A fingerprint&lt;/span&gt; is made of a a number of ridges and valleys on the surface of the finger. Ridges are the upper skin layer segments of the finger and valleys are the lower segments. The ridges form so-called minutia points: ridge endings (where a ridge end) and ridge bifurcations (where a ridge splits in two). Many types of minutiae exist, including dots (very small ridges), islands (ridges slightly longer than dots, occupying a middle space between two temporarily divergent ridges), ponds or lakes (empty spaces between two temporarily divergent ridges), spurs (a notch protruding from a ridge), bridges (small ridges joining two longer adjacent ridges), and crossovers (two ridges which cross each other).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The uniqueness of a fingerprint can be determined by the pattern of ridges and furrows as well as the minutiae points. There are five basic fingerprint patterns: arch, tented arch, left loop, right loop and whorl. Loops make up 60% of all fingerprints, whorls account for 30%, and arches for 10%.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;em&gt;Issues with fingerprint systems&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;The tip of the finger is a small area from which to take measurements, and ridge patterns can be affected by cuts, dirt, or even wear and tear. Acquiring high-quality images of distinctive fingerprint ridges and minutiae is complicated task.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;People with no or few minutia points (surgeons as they often wash their hands with strong detergents, builders, people with special skin conditions) cannot enroll or use the system. The number of minutia points can be a limiting factor for security of the algorithm. Results can also be confused by false minutia points (areas of obfuscation that appear due to low-quality enrollment, imaging, or fingerprint ridge detail).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Note: There is some controversy over the uniqueness of fingerprints. The quality of partial prints is however the limiting factor. As the number of defining points of the fingerprint become smaller, the degree of certainty of identity declines. There have been a few well-documented cases of people being wrongly accused on the basis of partial fingerprints.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;em&gt;Benefits of fingerprint biometric systems&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;Easy to use&lt;br /&gt;Cheap&lt;br /&gt;Small size&lt;br /&gt;Low power&lt;br /&gt;Non-intrusive&lt;br /&gt;Large database already available&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;em&gt;Applications of fingerprint biometrics&lt;br /&gt;&lt;/em&gt;&lt;/strong&gt;Fingerprint sensors are best for devices such as cell phones, USB flash drives, notebook computers and other applications where price, size, cost and low power are key requirements. Fingerprint biometric systems are also used for law enforcement, background searches to screen job applicants, healthcare and welfare. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Fingerprints are usually considered to be unique, with no two fingers having the exact same dermal ridge characteristics.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;em&gt;How does fingerprint biometrics work&lt;br /&gt;&lt;/em&gt;&lt;/strong&gt;The main technologies used to capture the fingerprint image with sufficient detail are optical, silicon, and ultrasound.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt;&lt;span style=&quot;color:#000099;&quot;&gt;There are two main algorithm families to recognize fingerprints: &lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt;&lt;br /&gt;&lt;/em&gt;&lt;/strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Minutia matching compares specific details within the fingerprint ridges. At registration (also called enrollment), the minutia points are located, together with their relative positions to each other and their directions. At the matching stage, the fingerprint image is processed to extract its minutia points, which are then compared with the registered template. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Pattern matching compares the overall characteristics of the fingerprints, not only individual points. Fingerprint characteristics can include sub-areas of certain interest including ridge thickness, curvature, or density. During enrollment, small sections of the fingerprint and their relative distances are extracted from the fingerprint. Areas of interest are the area around a minutia point, areas with low curvature radius, and areas with unusual combinations of ridges. &lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/507744555301864401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/507744555301864401?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/507744555301864401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/507744555301864401'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/10/fingerprint-biometrics.html' title='Fingerprint biometrics'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-8626478277314689143</id><published>2008-10-09T17:44:00.000-07:00</published><updated>2008-10-09T17:58:02.931-07:00</updated><title type='text'>Biometrics</title><content type='html'>&lt;a class=&quot;dsphead&quot; onclick=&quot;dsp(this)&quot; href=&quot;javascript:void(0)&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-size:130%;color:#000099;&quot;&gt;What is “biometrics”?&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:lucida grande;font-size:180%;&quot;&gt;Biometrics&lt;/span&gt; is a field of security and identification technology based on the measurement of unique physical characteristics such as fingerprints, retinal patterns, and facial structure. To verify an individual&#39;s identity, biometric devices scan certain characteristics and compare them with a stored entry in a computer database. While the technology goes back years and has been used in highly sensitive institutions such as defense and nuclear facilities, the proliferation of electronic data exchange generated new demand for biometric applications that can secure electronically stored data and online transactions.&lt;br /&gt;&lt;br /&gt;Biometrics is the practice of automatically identifying people by one or more physical characteristics.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;strong&gt;TYPES OF BIOMETRIC SYSTEMS&lt;/strong&gt;&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;FINGERPRINTS.&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;Fingerprint-based biometric systems scan the dimensions, patterns, and topography of fingers, thumbs, and palms. The most common biometric in forensic and governmental databases, fingerprints contain up to 60 possibilities for minute variation, and extremely large and increasingly integrated networks of these stored databases already exist. The largest of these is the Federal Bureau of Investigation&#39;s (FBI) Automated Fingerprint Identification System, with more than 630 million fingerprint images.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;FACIAL RECOGNITION.&lt;br /&gt;&lt;/strong&gt;Facial recognition systems vary according to the features they measure. Some look at the shadow patterns under a set lighting pattern, while others scan heat patterns or thermal images using an infrared camera that illuminates the eyes and cheekbones. These systems are powerful enough to scope out the minutest differences in facial patterns, even between identical twins. The hardware for facial recognition systems is relatively inexpensive, and is increasingly installed in computer monitors.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;EYE SCANS.&lt;br /&gt;&lt;/strong&gt;There are two main features of the eye that are targeted by biometric systems: the retina and the iris. Each contains more points of identification than a fingerprint. Retina scanners trace the pattern of blood cells behind the retina by quickly flashing an infrared light into the eye. Iris scanners create a unique biological bar code by scanning the eye&#39;s distinctive color patterns. Eye scans tend to occupy less space in a computer and thus operate relatively quickly, although some users are squeamish about having beams of light shot into their eyes.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;VOICE VERIFICATION.&lt;br /&gt;&lt;/strong&gt;Although voices can sound similar and can be consciously altered, the topography of the mouth, teeth, and vocal cords produces distinct pitch, cadence, tone, and dynamics that give away would-be impersonators. Widely used in phone-based identification systems, voice-verification biometrics also is used with personal computers.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;HAND GEOMETRY.&lt;br /&gt;&lt;/strong&gt;Hand-geometry biometric systems take two infrared photographs—one from the side and one from above—of an individual&#39;s hand. These images measure up to 90 different characteristics, such as height, width, thickness, finger shape, and joint positions and compare them with stored data.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;KEYSTROKE DYNAMICS.&lt;br /&gt;&lt;/strong&gt;A biometric system that is tailor-made for personal computers, keystroke-dynamic biometrics measures unique patterns in the way an individual uses a keyboard—such as speed, force, the variation of force on different parts of the keyboard, and multiple-key functions—and exploits them as a means of identification.&lt;br /&gt;&lt;br /&gt;These things are indeed very interesting, and it would be better if I would explain each and every types in details to all of you...&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/8626478277314689143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/8626478277314689143?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/8626478277314689143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/8626478277314689143'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/10/biometrics.html' title='Biometrics'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-3997466009014285775</id><published>2008-05-13T08:37:00.000-07:00</published><updated>2008-05-13T08:42:40.918-07:00</updated><title type='text'>BitTorrent (Protocol)</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style=&quot;font-size:180%;color:#000099;&quot;&gt;&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span style=&quot;font-size:180%;&quot;&gt;Bit&lt;/span&gt;Torrent is a protocol designed for transferring files. It is peer-to-peer in nature, as users connect to each other directly to send and receive portions of the file. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;BitTorrent is a method of distributing large amounts of data widely without the original distributor incurring the entire costs of hardware, hosting, and bandwidth resources.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;However, there is a central server (called a tracker) which coordinates the action of all such peers. The tracker only manages connections, it does not have any knowledge of the contents of the files being distributed, and therefore a large number of users can be supported with relatively limited tracker bandwidth. The key philosophy of BitTorrent is that users should upload (transmit outbound) at the same time they are downloading (receiving inbound.) In this manner, network bandwidth is utilized as efficiently as possible. BitTorrent is designed to work better as the number of people interested in a certain file increases, in contrast to other file transfer protocols.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Instead, when data is distributed using the BitTorrent protocol, each recipient supplies pieces of the data to newer recipients, reducing the cost and burden on any given individual source, providing redundancy against system problems, and reducing dependence on the original distributor.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The most common method by which files are transferred on the Internet is the client-server model. A central server sends the entire file to each client that requests it -- this is how both http and ftp work. The clients only speak to the server, and never to each other. The main advantages of this method are that it&#39;s simple to set up, and the files are usually always available since the servers tend to be dedicated to the task of serving, and are always on and connected to the Internet. However, this model has a significant problem with files that are large or very popular, or both. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Namely, it takes a great deal of bandwidth and server resources to distribute such a file, since the server must transmit the entire file to each client. Perhaps you may have tried to download a demo of a new game just released, or CD images of a new Linux distribution, and found that all the servers report &quot;too many users,&quot; or there is a long queue that you have to wait through. The concept of mirrors partially addresses this shortcoming by distributing the load across multiple servers. But it requires a lot of coordination and effort to set up an efficient network of mirrors, and it&#39;s usually only feasible for the busiest of sites.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Another method of transferring files has become popular recently: the peer-to-peer network, systems such as Kazaa, eDonkey, Gnutella, Direct Connect, etc. In most of these networks, ordinary Internet users trade files by directly connecting one-to-one. The advantage here is that files can be shared without having access to a proper server, and because of this there is little accountability for the contents of the files. Hence, these networks tend to be very popular for illicit files such as music, movies, pirated software, etc. Typically, a downloader receives a file from a single source, however the newest version of some clients allow downloading a single file from multiple sources for higher speeds.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;A BitTorrent client is any program that implements the BitTorrent protocol. Each client is capable of preparing, requesting, and transmitting any type of computer file over a network, using the protocol. A peer is any computer running an instance of a client.&lt;br /&gt;To share a file or group of files, a peer first creates a small file called a &quot;torrent&quot; (e.g. MyFile.torrent). This file contains metadata about the files to be shared and about the tracker, the computer that coordinates the file distribution. Peers that want to download the file first obtain a torrent file for it, and connect to the specified tracker, which tells them from which other peers to download the pieces of the file.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Though both ultimately transfer files over a network, a BitTorrent download differs from a classic full-file HTTP request in several fundamental ways:&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;BitTorrent makes many small data requests over different TCP sockets, while web-browsers typically make a single HTTP GET request over a single TCP socket. BitTorrent downloads in a random or in a &quot;rarest-first&quot;[2] approach that ensures high availability, while HTTP downloads in a sequential manner. Taken together, these differences allow BitTorrent to achieve much lower cost, much higher redundancy, and much greater resistance to abuse or to &quot;flash crowds&quot; than a regular HTTP server. However, this protection comes at a cost: downloads can take time to rise to full speed because it may take time for enough peer connections to be established, and it takes time for a node to receive sufficient data to become an effective uploader. As such, a typical BitTorrent download will gradually rise to very high speeds, and then slowly fall back down toward the end of the download. This contrasts with an HTTP server that, while more vulnerable to overload and abuse, rises to full speed very quickly and maintains this speed throughout.&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/3997466009014285775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/3997466009014285775?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3997466009014285775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3997466009014285775'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/05/bittorrent-protocol.html' title='BitTorrent (Protocol)'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-8603722088128673319</id><published>2008-05-12T01:58:00.000-07:00</published><updated>2008-05-12T02:14:21.772-07:00</updated><title type='text'>The Types of Caching in ASP.NET</title><content type='html'>&lt;strong&gt;&lt;span style=&quot;font-size:130%;color:#000099;&quot;&gt;Introduction&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The main benefits of caching are performance-related: operations like accessing database information can be one of the most expensive operations of an ASP page&#39;s life cycle. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;If the database information is fairly static, this database-information can be cached.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;When information is cached, it stays cached either indefinitely, until some relative time, or until some absolute time. Most commonly, information is cached for a relative time frame. That is, our database information may be fairly static, updated just a few times a week. Therefore, we might want to invalidate the cache every other day, meaning every other day the cached content is rebuilt from the database. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Caching in classic ASP was a bit of a chore, it is quite easy in ASP.NET. There are a number of classes in the .NET Framework designed to aid with caching information. In this article, I will explain how .NET supports caching and explain in detail how to properly incorporate each supported method into Web-based applications. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;u&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Caching Options in ASP.NET&lt;/strong&gt;&lt;/span&gt;&lt;/u&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;ASP.NET supports &lt;em&gt;three types&lt;/em&gt; of caching for Web-based applications:&lt;br /&gt;&lt;strong&gt;Page Level Caching (called Output Caching)&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Page Fragment Caching (often called Partial-Page Output Caching)&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Programmatic or Data Caching &lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Output Caching:&lt;/strong&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Caches the output from an entire page and returns it for future requests instead of re-executing the requested page.&lt;br /&gt;&lt;strong&gt;Fragment Caching:&lt;/strong&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Caches just a part of a page which can then be reused even while other parts of the page are being dynamically generated.&lt;br /&gt;&lt;strong&gt;Data Caching:&lt;/strong&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Programmatically caches arbitrary objects for later reuse without re-incurring the overhead of creating them. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In Detail:&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;font-size:130%;color:#000099;&quot;&gt;Output Caching&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Output caching&lt;/strong&gt; is the simplest of the caching options offered by ASP.NET. It is useful when an entire page can be cached as a whole and is analogous to most of the caching solutions that were available under classic ASP. It takes a dynamically generated page and stores the HTML result right before it is sent to the client. Then it reuses this HTML for future requests bypassing the execution of the original code. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Telling ASP.NET to cache a page is extremely simple. You simply add the OutputCache directive to the page you wish to cache. &lt;%@ OutputCache Duration=&quot;30&quot; VaryByParam=&quot;none&quot; %&gt;&lt;br /&gt;The resulting caching is similar to the caching done by browsers and proxy servers, but does have one extremely important difference... you can tell a page which parameters to the page will have an effect on the output and the caching engine will cache separate versions based on the parameters you specify. This is done using the VaryByParam attribute of the OutputCache directive. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;This is illustrated by a very simple example of output caching. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;OutputCache Duration=&quot;30&quot; VaryByParam=&quot;test&quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;%@ Page Language=&quot;C#&quot; %&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;%@ Page Language=&quot;VB&quot; %&gt;&lt;%@ OutputCache Duration=&quot;30&quot; VaryByParam=&quot;test&quot; %&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;%= Now() %&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;This piece of code will cache the result for 30 seconds. During that time, responses for all requests for the page will be served from the cache.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;font-size:130%;color:#000099;&quot;&gt;Fragment Caching&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Sometimes it&#39;s not possible to cache an entire page. For example, many shopping sites like to greet their users by name. It wouldn&#39;t look very good if you went to a site and instead of using your name to greet you it used mine! In the past this often meant that caching wasn&#39;t a viable option for these pages. ASP.NET handles this by what they call fragment caching. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;More often than not, it is impractical to cache entire pages. For example, you may have some content on your page that is fairly static, such as a listing of current inventory, but you may have other information, such as the user&#39;s shopping cart, or the current stock price of the company, that you wish to not be cached at all. Since Output Caching caches the HTML of the entire ASP.NET Web page, clearly Output Caching cannot be used for these scenarios: enter Partial-Page Output Caching. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Partial-Page Output Caching, or page fragment caching, allows specific regions of pages to be cached. ASP.NET provides a way to take advantage of this powerful technique, requiring that the part(s) of the page you wish to have cached appear in a User Control. One way to specify that the contents of a User Control should be cached is to supply an OutputCache directive at the top of the User Control. That&#39;s it! The content inside the User Control will now be cached for the specified period, while the ASP.NET Web page that contains the User Control will continue to serve dynamic content. (Note that for this you should not place an OutputCache directive in the ASP.NET Web page that contains the User Control - just inside of the User Control.) &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;font-size:130%;color:#000099;&quot;&gt;Data Caching&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;This is the most powerful of the caching options available in ASP.NET. Using data caching you can programmatically cache anything you want for as long as you want. The caching system exposes itself in a dictionary type format meaning items are stored in name/value pairs. You cache an item under a certain name and then when you request that name you get the item back. It&#39;s similar to an array or even a simple variable. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In addition to just placing an object into the cache you can set all sorts of properties. The object can be set to expire at a fixed time and date, after a period of inactivity, or when a file or other object in the cache is changed. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The main thing to watch out for with data caching is that items you place in the cache are not guaranteed to be there when you want them back. While it does add some work (you always have to check your object exists after you retrieve it), this scavenging really is a good thing. It gives the caching engine the flexibility to dispose of things that aren&#39;t being used or dump parts of the cache if the system starts running out of memory. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Sometimes, more control over what gets cached is desired. ASP.NET provides this power and flexibility by providing a cache engine. Programmatic or data caching takes advantage of the .NET Runtime cache engine to store any data or object between responses. That is, you can store objects into a cache, similar to the storing of objects in Application scope in classic ASP. (As with classic ASP, do not store open database connections in the cache!)&lt;br /&gt;Realize that this data cache is kept in memory and &quot;lives&quot; as long as the host application does. In other words, when the ASP.NET application using data caching is restarted, the cache is destroyed and recreated. Data Caching is almost as easy to use as Output Caching or Fragment caching: you simply interact with it as you would any simple dictionary object. To store a value in the cache, use syntax like this: &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Cache[&quot;Nikky&quot;] = bar; // C#&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;To retrieve a value, simply reverse the syntax like this: &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;bar = Cache[&quot;Nikky&quot;]; // C#&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Note that after you retrieve a cache value in the above manner you should first verify that the cache value is not null prior to doing something with the data. Since Data Caching uses an in-memory cache, there are times when cache elements may need to be evicted. That is, if there is not enough memory and you attempt to insert something new into the cache, something else has gotta go! The Data Cache engine does all of this scavenging for your behind the scenes, of course. However, don&#39;t forget that you should always check to ensure that the cache value is there before using it. This is fairly simply to do - just check to ensure that the value isn&#39;t null/Nothing. If it is, then you need to dynamically retrieve the object and restore it into the cache.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/8603722088128673319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/8603722088128673319?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/8603722088128673319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/8603722088128673319'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/05/types-of-caching-in-aspnet.html' title='The Types of Caching in ASP.NET'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-245030232875886462</id><published>2008-05-08T20:39:00.000-07:00</published><updated>2008-05-08T20:45:40.798-07:00</updated><title type='text'>&#39;A Leader Should Know How to Manage Failure&#39;</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;(&lt;span style=&quot;font-size:85%;&quot;&gt;Former President of India APJ Abdul Kalam at Wharton India Economic forum , Philadelphia, March 22,2008&lt;/span&gt;)&lt;br /&gt;&lt;span style=&quot;font-size:78%;&quot;&gt;Kalam was asked&lt;/span&gt;:&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Could you give an example, from your own experience, of&lt;strong&gt;  &#39; How Leaders Should Manage Failure&#39; ? &lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-size:78%;&quot;&gt;Kalam answered it like that&lt;/span&gt;:&lt;br /&gt;Let me tell you about my experience. In 1973 I became the project director of India&#39;s satellite launch vehicle program, commonly called the SLV-3. Our goal was to put India&#39;s &quot;Rohini&quot; satellite into orbit by 1980. I was given funds and human resources -- but was told clearly that by 1980 we had to launch the satellite into space. Thousands of people worked together in scientific and technical teams towards that goal.&lt;br /&gt;&lt;br /&gt;By 1979 -- I think the month was August -- we thought we were ready. As the project director, I went to the control center for the launch. At four minutes before the satellite launch, the computer began to go through the checklist of items that needed to be checked. One minute later, the computer program put the launch on hold; the display showed that some control components were not in order. My experts -- I had four or five of them with me -- told me not to worry; they had done their calculations and there was enough reserve fuel. So I bypassed the computer, switched to manual mode, and launched the rocket. In the first stage, everything worked fine. In the second stage, a problem developed. Instead of the satellite going into orbit, the whole rocket system plunged into the Bay of Bengal. It was a big failure.&lt;br /&gt;That day, the chairman of the Indian Space Research Organization, Prof. Satish Dhawan, had called a press conference. The launch was at 7:00 am, and the press conference -- where journalists from around the world were present -- was at 7:45 am at ISRO&#39;s satellite launch range in Sriharikota [in Andhra Pradesh in southern India]. Prof. Dhawan, the leader of the organization, conducted the press conference himself. He took responsibility for the failure -- he said that the team had worked very hard, but that it needed more technological support. He assured the media that in another year, the team would definitely succeed. Now, I was the project director, and it was my failure, but instead, he took responsibility for the failure as chairman of the organization.&lt;br /&gt;&lt;br /&gt;The next year, in July 1980, we tried again to launch the satellite -- and this time we succeeded. The whole nation was jubilant. Again, there was a press conference. Prof. Dhawan called me aside and told me, &quot;You conduct the press conference today.&quot; I learned a very important lesson that day. When failure occurred, the leader of the organization owned that failure. When success came, he gave it to his team.&lt;br /&gt;&lt;br /&gt;The best management lesson I have learned did not come to me from reading a book; it came from that experience.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/245030232875886462/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/245030232875886462?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/245030232875886462'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/245030232875886462'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/05/leader-should-know-how-to-manage.html' title='&#39;A Leader Should Know How to Manage Failure&#39;'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-2954756833761326866</id><published>2008-04-19T20:48:00.000-07:00</published><updated>2008-04-19T20:53:35.502-07:00</updated><title type='text'>What is Sharepoint</title><content type='html'>&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Overview&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;font-size:180%;color:#000099;&quot;&gt;A&lt;/span&gt;&lt;span style=&quot;font-size:100%;color:#000099;&quot;&gt; SharePoint page is built by combining the web parts into a web page, to be accessed using a browser. Any web editor supporting ASP.NET can be used for this purpose, even though Microsoft Office SharePoint Designer is the preferred editor. The extent of customization of the page depends on its design.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;color:#000099;&quot;&gt;SharePoint is a web-based collaboration and document management platform from Microsoft. It can be used to host web sites which can be used to access shared workspaces and documents, as well as specialized applications such as wikis, blogs and many other forms of applications, from within a browser. SharePoint functionality is exposed as web parts, such as a task list, or discussion pane. These web parts are composed into web pages, which are then hosted in the SharePoint portal. SharePoint sites are actually ASP.NET applications, which are served using IIS and use a SQL Server database as data storage backend.The term &#39;SharePoint&#39; is commonly used to refer to one of the following two products:Windows SharePoint Services (WSS) Microsoft Office SharePoint Server 2007 (MOSS) In addition, previous versions of this software used different names (SharePoint Portal Server for example) but are referred to as &quot;SharePoint&quot;.The SharePoint family also includes the Microsoft Office SharePoint Designer (SPD).&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;WSS pages are ASP.NET applications, as such SharePoint web parts use the ASP.NET web parts infrastructure, and using the ASP.NET APIs, web parts can be written to extend the functionality of WSS. In terms of programmability, WSS exposes an API and object model to programmatically create and manage portals, workspaces and users. In contrast, the MOSS API is more geared towards automation of tasks and integration with other applications.[1] Both WSS and MOSS can use the web parts API to enhance the end user functionality. In addition, WSS document libraries can be exposed over ADO.NET connections to programmatically access the files and revisions in them.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;At the web server level, WSS configures IIS to forward all requests, regardless of file and content types, to the ASP.NET session hosting the WSS web application, which either makes a certain revision of a certain file available from the database or takes other actions. Unlike regular ASP.NET applications, the .aspx which contains the WSS (and MOSS) application code, resides in SQL Server databases instead of the filesystem. As such, the regular ASP.NET runtime cannot process the file. Instead, WSS plugs a custom Virtual Path Provider component[2] into the ASP.NET pipeline, which fetches the .aspx files from the database for processing. With this feature, introduced with WSS 3.0, both the WSS application as well as the data it generates and manages, could be stored in a database.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;/span&gt;&lt;a name=&quot;History&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The first version, called SharePoint Team Services (usually abbreviated to STS), was released at the same time as Office XP and was available as part of Microsoft FrontPage. STS could run on Windows 2000 Server or Windows XP.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Windows SharePoint Services 2.0 was marketed as an upgrade to SharePoint Team Services, but was in fact a completely redesigned application[citation needed]. SharePoint Team Services stored documents in ordinary file storage, keeping document metadata in a database. Windows SharePoint Services 2.0 on the other hand, stores both the document and the metadata in a database, and supports basic document versioning for items in Document Libraries. Service Pack 2 for WSS added support for SQL Server 2005 and the use of the .NET Framework 2.0.&lt;br /&gt;Windows SharePoint Services 3.0 was released on November 16, 2006 as part of the Microsoft Office 2007 suite and Windows Server 2008. In fact, Windows Server 2008 supports a separate server role for SharePoint services. WSS 3.0 is built using .NET Framework 2.0 and .NET Framework 3.0 Windows Workflow Foundation to add workflow capabilities to the basic suite. By the beginning of 2007 WSS 3.0 was made available to the public. Windows 2000 Server is not supported by WSS 3.0, nor is SQL Server 2000.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name=&quot;Features&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The WSS 3.0 wiki allows RSS export of content and, when viewed in Internet Explorer, provides a WYSIWYG editor. As with MediaWiki, it produces hyperlinks with a double square bracket but unlike MediaWiki it uses HTML for markup. An enhanced wiki is available for SharePoint on Codeplex and is free to download and install.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;SharePoint solves four main problems:&lt;br /&gt;&lt;/strong&gt; ·         It’s difficult to keep track of all the documents in even a small office&lt;br /&gt; ·         Email isn’t a great way to share files&lt;br /&gt; ·         We work all over the place&lt;br /&gt; ·         It’s hard to create/maintain web sites on your own&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;SharePoint is a web-based collaboration and document management platform from Microsoft. It can be used to host web sites which can be used to access shared workspaces and documents, as well as specialized applications such as wikis, blogs and many other forms of applications, from within a browser. SharePoint functionality is exposed as web parts, such as a task list, or discussion pane. These web parts are composed into web pages, which are then hosted in the SharePoint portal. SharePoint sites are actually ASP.NET applications, which are served using IIS and use a SQL Server database as data storage backend.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;The term &#39;SharePoint&#39; is commonly used to refer to one of the following two products:&lt;br /&gt;Windows SharePoint Services (WSS)&lt;br /&gt;Microsoft Office SharePoint Server 2007 (MOSS)&lt;/strong&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In addition, previous versions of this software used different names (SharePoint Portal Server for example) but are referred to as &quot;SharePoint&quot;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The SharePoint family also includes the Microsoft Office SharePoint Designer (SPD)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The SharePoint Family&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;a name=&quot;Windows_SharePoint_Services_.28WSS.29&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Windows SharePoint Services (WSS)&lt;br /&gt;Windows SharePoint Services (WSS)&lt;/strong&gt; is a free add-on to Windows Server. WSS offers the base collaborative infrastructure, supporting HTTP and HTTPS based editing of documents, as well as document organization in document libraries, version control capabilities, wikis, and blogs. It also includes end user functionality such as workflows, to-do lists, alerts and discussion boards, which are exposed as web parts to be embedded into SharePoint pages. WSS was previously known as SharePoint Team Services. Though workflows can be created for WSS in SharePoint Designer or VS.NET unlike with MOSS no workflows come installed out-of-the box.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name=&quot;Microsoft_Search_Server&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Microsoft Search Server&lt;br /&gt;Microsoft Search Server (MSS)&lt;/strong&gt; is an enterprise search platform from Microsoft, based on the search capabilities of Microsoft Office SharePoint Server.[2] MSS shares its architectural underpinnings with the Windows Search platform for both the querying engine as well as the indexer. MOSS search provides the ability to search metadata attached to documents.&lt;br /&gt;Microsoft Search Server has been made available as Search Server 2008, which was released on March 2008. A free version, Search Server Express 2008 is also available. The express edition features the same feature-set as the commercial edition, including no limitation on the number of files indexed; however, it is limited to a stand-alone installation and cannot be scaled out to a cluster.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name=&quot;Microsoft_Office_SharePoint_Server_.28MO&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Microsoft Office SharePoint Server (MOSS)&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Microsoft Office SharePoint Server (MOSS)&lt;/strong&gt; is a costed component of the Microsoft Office server suite. MOSS is built on top of WSS and adds more functionality to it, including better document management, enterprise search functionality, navigation features, RSS support, as well as features from Microsoft Content Management Server. The Enterprise edition of MOSS also includes features for business data analysis such as Excel Services and the Business Data Catalog. MOSS also provides integration with Microsoft Office applications, such as project management capabilities with Microsoft Project Server and the ability to expose Microsoft Office InfoPath forms via a browser.[4] It can also host specific libraries, such as PowerPoint Template Libraries provided the server components of the specific application are installed. MOSS was previously known as SharePoint Server and SharePoint Portal Server.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a name=&quot;Microsoft_SharePoint_Designer_.28SPD.29&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Microsoft SharePoint Designer (SPD)&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Microsoft Office SharePoint Designer (SPD)&lt;/strong&gt; is a WYSIWYG HTML editor, which is primarily aimed at designing SharePoint sites and end-user workflows for WSS sites. It shares its rendering engine with Microsoft Expression Web, its general web designing sibling, and Microsoft&#39;s Visual Studio 2008 IDE.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Windows SharePoint Services (WSS)&lt;/strong&gt; or&lt;strong&gt; Windows SharePoint&lt;/strong&gt; is the basic part of SharePoint, offering collaboration and document management functionality by means of web portals, by providing a centralized repository for shared documents, as well as browser-based management and administration of them. It allows creation of Document libraries, which are collections of files that can be shared for collaborative editing. SharePoint provides access control and revision control for documents in a library.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;It also includes a collection of web parts, which are web widgets that can be embedded into web pages to provide a certain functionality. SharePoint includes web parts such as workspaces and dashboards, navigation tools, lists, alerts (including e-mail alerts), shared calendar, contact lists and discussion boards. It can be configured to return separate content for Intranet, Extranet and Internet locations. It uses a similar permissions model to Microsoft Windows, via groups of users. Active Directory groups can be added to SharePoint groups to easily tie in permissions. Alternatively, other authentication providers can be added through HTML Forms authentication.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/2954756833761326866/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/2954756833761326866?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/2954756833761326866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/2954756833761326866'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/what-is-sharepoint.html' title='What is Sharepoint'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-4933397827394103286</id><published>2008-04-18T11:13:00.000-07:00</published><updated>2008-04-18T11:16:53.982-07:00</updated><title type='text'>Assemblies Overview (.NET, C# )</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Environment:  C#, .NET&lt;br /&gt;&lt;/strong&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;What is Assembly in .NET?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size:180%;&quot;&gt;An&lt;/span&gt; assembly is a file that is automatically generated by the compiler upon successful compilation of every .NET application. It can be either a Dynamic Link Library or an executable file. It is generated only once for an application and upon each subsequent compilation the assembly gets updated. The entire process will run in the background of your application; there is no need for you to learn deeply about assemblies. However, a basic knowledge about this topic will help you to understand the architecture behind a .NET application.&lt;br /&gt;&lt;br /&gt;An Assembly contains Intermediate Language (IL) code, which is similar to Java byte code. In the .NET language, it consists of metadata. Metadata enumerates the features of every &quot;type&quot; inside the assembly or the binary. In addition to metadata, assemblies also have a special file called Manifest. It contains information about the current version of the assembly and other related information.&lt;br /&gt;&lt;br /&gt;In .NET, there are two kinds of assemblies, such as Single file and Multi file. A single file assembly contains all the required information (IL, Metadata, and Manifest) in a single package. The majority of assemblies in .NET are made up of single file assemblies. Multi file assemblies are composed of numerous .NET binaries or modules and are generated for larger applications. One of the assemblies will contain a manifest and others will have IL and Metadata instructions.&lt;br /&gt;&lt;br /&gt;The main benefit of Intermediate Language is its power to integrate with all NET languages. This is because all .NET languages produce the same IL code upon successful compilation; hence, they can interact with each other very easily. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;However, .NET is not yet declared as a platform-independent language; efforts are on at Microsoft to achieve this objective. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;As of today, .NET applications are equipped to run only on Windows.&lt;br /&gt;&lt;br /&gt;An Assembly contains Intermediate Language (IL) code, which is similar to Java byte code. In the .NET language, it consists of metadata. Metadata enumerates the features of every &quot;type&quot; inside the assembly or the binary. In addition to metadata, assemblies also have a special file called Manifest. It contains information about the current version of the assembly and other related information.&lt;br /&gt;&lt;br /&gt;In .NET, there are two kinds of assemblies, such as Single file and Multi file. A single file assembly contains all the required information (IL, Metadata, and Manifest) in a single package. The majority of assemblies in .NET are made up of single file assemblies. Multi file assemblies are composed of numerous .NET binaries or modules and are generated for larger applications. One of the assemblies will contain a manifest and others will have IL and Metadata instructions.&lt;br /&gt;&lt;br /&gt;The main benefit of Intermediate Language is its power to integrate with all NET languages. This is because all .NET languages produce the same IL code upon successful compilation; hence, they can interact with each other very easily. However, .NET is not yet declared as a platform-independent language; efforts are on at Microsoft to achieve this objective. As of today, .NET applications are equipped to run only on Windows.&lt;br /&gt;&lt;br /&gt;An assembly is a fundamental building block of any .NET Framework application. For example, when you build a simple C# application, Visual Studio creates an assembly in the form of a single portable executable (PE) file, specifically an EXE or DLL.&lt;br /&gt;&lt;br /&gt;Assemblies contain metadata that describe their own internal version number and details of all the data and object types they contain. For more information see Assembly Manifest.&lt;br /&gt;&lt;br /&gt;Assemblies are only loaded as they are required. If they are not used, they are not loaded. This means that assemblies can be an efficient way to manage resources in larger projects.&lt;br /&gt;&lt;br /&gt;Assemblies can contain one or more modules. For example, larger projects may be planned in such a way that several individual developers work on separate modules, all coming together to create a single assembly. For more information on modules, see the topic How to: Build a Multifile Assembly.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Assemblies have the following properties:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Assemblies are implemented as .exe or .dll files.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;You can share an assembly between applications by placing it in the &lt;strong&gt;Global Assembly Cache&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Assemblies must be strong-named before they can be placed in the Global Assembly Cache. For more information, see Strong-Named Assemblies.&lt;br /&gt;&lt;br /&gt;Assemblies are only loaded into memory if they are required.&lt;br /&gt;&lt;br /&gt;You can programmatically obtain information about an assembly using reflection. For more information, see the topic Reflection.&lt;br /&gt;&lt;br /&gt;If you want to load an assembly only to inspect it, use a method such as ReflectionOnlyLoadFrom.&lt;br /&gt;&lt;br /&gt;You can use two versions of the same assembly in a single application. For more information, see extern alias.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Strong-Named Assemblies&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;A strong name consists of the assembly&#39;s identity—its simple text name, version number, and culture information (if provided)—plus a public key and a digital signature. It is generated from an assembly file (the file that contains the assembly manifest, which in turn contains the names and hashes of all the files that make up the assembly), using the corresponding private key. Microsoft® Visual Studio® .NET and other development tools provided in the .NET Framework SDK can assign strong names to an assembly. Assemblies with the same strong name are expected to be identical.&lt;br /&gt;&lt;br /&gt;You can ensure that a name is globally unique by signing an assembly with a strong name. In particular, strong names satisfy the following requirements:&lt;br /&gt;&lt;br /&gt;Strong names guarantee name uniqueness by relying on unique key pairs. No one can generate the same assembly name that you can, because an assembly generated with one private key has a different name than an assembly generated with another private key.&lt;br /&gt;&lt;br /&gt;Strong names protect the version lineage of an assembly. A strong name can ensure that no one can produce a subsequent version of your assembly. Users can be sure that a version of the assembly they are loading comes from the same publisher that created the version the application was built with.&lt;br /&gt;&lt;br /&gt;Strong names provide a strong integrity check. Passing the .NET Framework security checks guarantees that the contents of the assembly have not been changed since it was built. Note, however, that strong names in and of themselves do not imply a level of trust like that provided, for example, by a digital signature and supporting certificate.&lt;br /&gt;&lt;br /&gt;When you reference a strong-named assembly, you expect to get certain benefits, such as versioning and naming protection. If the strong-named assembly then references an assembly with a simple name, which does not have these benefits, you lose the benefits you would derive from using a strong-named assembly and revert to DLL conflicts. Therefore, strong-named assemblies can only reference other strong-named assemblies.&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/4933397827394103286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/4933397827394103286?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/4933397827394103286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/4933397827394103286'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/assemblies-overview-net-c.html' title='Assemblies Overview (.NET, C# )'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-7233945818924049518</id><published>2008-04-18T09:36:00.000-07:00</published><updated>2008-04-18T09:42:29.799-07:00</updated><title type='text'>A Kiss of Love</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span style=&quot;font-size:180%;&quot;&gt;&lt;strong&gt;A &lt;/strong&gt;&lt;/span&gt;married couple was in a terrible accident where the  man&#39;s face was severely burned.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The doctor told the  husband that they couldn&#39;t graft any skin from his body Because he was too skinny. So the wife offered to some of her own skin.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;However, the only skin on her body  , that the doctor felt was suitable would have to come           From her buttocks. The husband and wife agreed that they  would tell no one about where the skin came from, and they requested that the doctor also honor their secret. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;After All, this was a very delicate matter. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;After the surgery was completed, everyone was astounded at the man&#39;s new face. He looked more handsome than he ever had before! &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;All friends and relatives just went on and on about his youthful  Beauty! One day, he was alone with his wife, and he overcome with emotion at her sacrifice. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;He said, &quot;Dear,  I just want to thank you for everything you did for me.  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;How can I possibly repay you?&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt; &quot;My darling,&quot; she replied, &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt; &quot;I get all the thanks I need every time I see your mother       Kiss you on your cheeks.&quot;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/7233945818924049518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/7233945818924049518?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/7233945818924049518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/7233945818924049518'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/kiss-of-love.html' title='A Kiss of Love'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-2927653565885691100</id><published>2008-04-10T09:24:00.000-07:00</published><updated>2008-04-10T09:45:05.208-07:00</updated><title type='text'>The Frame Buffer</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Overview:&lt;/strong&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;&lt;strong&gt;Rasterization&lt;/strong&gt; generates a stream of source pixels from graphic primitives, which are combined with destination pixels in the frame buffer. The term frame buffer originates from the early days of raster graphics and referred to a bank of mem- ory that contained a single image, or frame. As computer graphics evolved, the term came to encompass the image data as well as any ancilliary data needed during graphic rendering.&lt;br /&gt;&lt;br /&gt;In Direct3D, the frame buffer encompasses the currently selected render target surface and depth/stencil surfaces. If mul- tisampling is used, additional memory is required but is not explicitly exposed as directly manipulable surfaces.&lt;br /&gt;&lt;br /&gt;After rasterization, each source pixel contains an RGB color, an associated transparency value in its alpha channel, and an associated depth in the scene in its Z value. The Z value is a ¯xed-point precision quantity produced by rasterization. Fog may then be applied to the pixel before it is incorporated into the render target. The application of fog mixes the pixel&#39;s color value, but not its alpha vlaue, from rasterization with a fog color based on a function of the pixel&#39;s depth in the scene.&lt;br /&gt;&lt;br /&gt;Fog, also referred to as depth cueing, can be used to diminish the intensity of an object as it recedes from the camera, placing more emphasis on objects closer to the viewer.&lt;br /&gt;&lt;br /&gt;After fog application, pixels can be rejected on the basis of their trans- parency, their depth in the scene, or by stenciling operations. Stencil operations allow arbitrary regions of the frame buffer  to be masked away from rendering, among other things. Unlike the associated alpha and depth produced for each pixel during rasterization, the stencil value associated with the source pixel is obtained from a render state.&lt;br /&gt;&lt;br /&gt;Double buffering is a concept you need to be familiar with before moving on. When data goes through the rendering pipeline, it does not exit the other end to you screen. As you know, the rendering pipeline takes in 3D data, and outputs pixels. These pixels are outputted to a rectangular grid of pixels, known as the &lt;strong&gt;“frame buffer”.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Eventually, the &lt;strong&gt;frame buffer&lt;/strong&gt; is displayed on the monitor. Now the problem with this is that the displaying of the frame buffer to the monitor is not completely in your control. Imagine you want to draw a scene of a town with a few people roaming around. You need various different 3D models to create a believable town scene. A few buildings, some houses, some shops, different people models, maybe a few props like benches and lamp posts, and then the model of the ground to put all the stuff on. Now you’re happily sending data to your graphics card and everything is going fine, you send it house one, house two, the shop, a few people, but then before you can send in the data that represents another person, your graphics card decides to give the frame buffer to the monitor.&lt;br /&gt;&lt;br /&gt;And what do you get on the screen?&lt;br /&gt;&lt;br /&gt;You get a scene of a town that has a few people displayed, a few buildings, half a human (because the frame buffer was sent to the monitor before you finished sending the entire data for the human figure you were rendering) and no streets (because you haven’t sent that data in yet) or props.&lt;br /&gt;&lt;br /&gt;This is obviously no good for business. So we need a way to counter this problem. This is where double buffering comes in. The trick is to have two frame buffers. One called the front buffer, and the second one called the &lt;strong&gt;back buffer&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;The &lt;strong&gt;front buffer&lt;/strong&gt; is the one that is always displayed on your screen, not the back buffer. The back buffer is used as the rectangular grid that the rendering pipeline outputs the pixels to. So all your rendering goes straight to the back buffer. Only when you tell D3D to move the back buffer to the front buffer will your scene be displayed on the monitor. And by the time you tell D3D to move the back buffer to the front, you would’ve already finished rendering the entire scene. So using the example above, when you are sending the data for the human 3D model and your system displays the frame buffer – instead of seeing an incomplete scene, you will see whatever is on the front buffer (which is nothing at this time).&lt;br /&gt;&lt;br /&gt;Then you can continue rendering the rest of the scene to the back buffer and move the back buffer to the front buffer when you’re done. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5187654544072007794&quot; style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 419px; CURSOR: hand; HEIGHT: 133px; TEXT-ALIGN: center&quot; height=&quot;106&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisDYakETg8wca8YK7lcnbJSerkQRZKGHQ4a8IM4pC4kQG1WxOCvYXNvI8uDZNvW9fbH_LxCqwsxDW0YXsXsnrZy0AMxRmpDepBJD3glvmdqg1kHIFSCDqjd3S33UpGz7dnhODIJFcBBkQ/s320/3.10&quot; width=&quot;171&quot; border=&quot;0&quot; /&gt;&lt;br /&gt;The figure above shows this process. You keep on sending data through the pipeline and it outputs pixels to the back buffer at the other end. Only when you tell D3D to switch the buffers will D3D take the data that is in the back buffer and put it in the front buffer.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Depth Buffers&lt;/span&gt;&lt;/strong&gt; :&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;This depth-buffer is also known as a z-buffer, because the z-axis usually represents “depth”. A depth buffer usually has a certain level of accuracy associated with it. Just like in C++ you can have a “float” data type which allows for 32 bits of floating-point precision, or you can have a “double” data type which allows for 64 bits of floating-point precision. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;When we talk about “16” or “32” bits per pixel for a depth buffer, we are discussing the accuracy of the device for determining how to arrange our objects. The higher the bit depth, the more accurate this arrangement is. This accuracy can also come at a cost of performance though, so make sure you try to test the scene using both. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/2927653565885691100/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/2927653565885691100?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/2927653565885691100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/2927653565885691100'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/frame-buffer.html' title='The Frame Buffer'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisDYakETg8wca8YK7lcnbJSerkQRZKGHQ4a8IM4pC4kQG1WxOCvYXNvI8uDZNvW9fbH_LxCqwsxDW0YXsXsnrZy0AMxRmpDepBJD3glvmdqg1kHIFSCDqjd3S33UpGz7dnhODIJFcBBkQ/s72-c/3.10" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-1539997395874638099</id><published>2008-04-10T07:12:00.000-07:00</published><updated>2008-04-10T07:24:50.825-07:00</updated><title type='text'>Big and Little Endian</title><content type='html'>&lt;span style=&quot;font-size:100%;color:#000099;&quot;&gt;Basic Memory Concepts &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In order to understand the concept of big and little endian, you need to understand memory. Fortunately, we only need a very high level abstraction for memory. You don&#39;t need to know all the little details of how memory works. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;All you need to know about memory is that it&#39;s one large array. But one large array containing what? The array contains bytes. In computer organization, people don&#39;t use the term &quot;index&quot; to refer to the array locations. Instead, we use the term &quot;address&quot;. &quot;address&quot; and &quot;index&quot; mean the same, so if you&#39;re getting confused, just think of &quot;address&quot; as &quot;index&quot;. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Each address stores one element of the memory &quot;array&quot;. Each element is typically one byte. There are some memory configurations where each address stores something besides a byte. For example, you might store a nybble or a bit. However, those are exceedingly rare, so for now, we make the broad assumption that all memory addresses store bytes. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;I will sometimes say that memory is byte-addresseable. This is just a fancy way of saying that each address stores one byte. If I say memory is nybble-addressable, that means each memory address stores one nybble.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Storing Words in Memory&lt;/strong&gt;&lt;br /&gt;We&#39;ve defined a word to mean 32 bits. This is the same as 4 bytes. Integers, single-precision floating point numbers, and MIPS instructions are all 32 bits long. How can we store these values into memory? After all, each memory address can store a single byte, not 4 bytes.&lt;br /&gt;The answer is simple. We split the 32 bit quantity into 4 bytes. For example, suppose we have a 32 bit quantity, written as 90AB12CD16, which is hexadecimal. Since each hex digit is 4 bits, we need 8 hex digits to represent the 32 bit value.&lt;br /&gt;So, the 4 bytes are: 90, AB, 12, CD where each byte requires 2 hex digits.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Big Endian :&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In big endian, you store the most significant byte in the smallest address. Here&#39;s how it would look: &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Address  1000    1001   1002   1003   &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Value        93         AB      12       CD&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Little Endian &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In little endian, you store the least significant byte in the smallest address. Here&#39;s how it would look: &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Address  1000    1001   1002   1003  &lt;br /&gt;Value        CD         12       AB       93&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Which Way Makes Sense?&lt;/strong&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;color:#000099;&quot;&gt;Different ISAs use different endianness. While one way may seem more natural to you (most people think big-endian is more natural), there is justification for either one. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;For example,&lt;/strong&gt; DEC and IBMs(?) are little endian, while Motorolas and Suns are big endian. MIPS processors allowed you to select a configuration where it would be big or little endian. &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Why is endianness so important?&lt;/strong&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;color:#000099;&quot;&gt;Suppose you are storing int values to a file, then you send the file to a machine which uses the opposite endianness and read in the value. You&#39;ll run into problems because of endianness. You&#39;ll read in reversed values that won&#39;t make sense.&lt;br /&gt;Endianness is also a big issue when sending numbers over the network. Again, if you send a value from a machine of one endianness to a machine of the opposite endianness, you&#39;ll have problems. This is even worse over the network, because you might not be able to determine the endianness of the machine that sent you the data. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The solution is to send 4 byte quantities using network byte order which is arbitrarily picked to be one of the endianness (not sure if it&#39;s big or little, but it&#39;s one of them). If your machine has the same endianness as network byte order, then great, no change is needed. If not, then you must reverse the bytes.  &lt;/span&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/1539997395874638099/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/1539997395874638099?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/1539997395874638099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/1539997395874638099'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/big-and-little-endian.html' title='Big and Little Endian'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-6876762228358954514</id><published>2008-04-08T09:20:00.000-07:00</published><updated>2008-04-08T09:26:04.648-07:00</updated><title type='text'>Scientists - After Death in Heaven</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span style=&quot;font-family:verdana;font-size:180%;&quot;&gt;O&lt;/span&gt;nce all the scientists die and go to heaven. They decide to playhide-n-seek.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Unfortunately Einstein is the one who has the den.........&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;..He is supposed to count upto 100...and then start searching... ..&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Everyone starts hiding except Newton...... &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;...Newton just draws a square of 1 meter and stands in it right in front ofEinstein.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Einstein&#39;s counting 1,2,3......97, 98,99.... .100..... ...&lt;br /&gt;He opens hiseyes and finds Newton standing in front....... .&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Einstein says &quot;newton&#39;s out..newton&#39;s out.....&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&quot;Newton denies and says &quot;I am not out........I am not Newton......&quot;All the scientists come out to see how he proves that he is not Newton.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Newton says &quot;I am standing in a square of area 1m squared..... &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;That makes me Newton per meter squared..... . since one Newton per meter squared isone Pascal, I&#39;m Pascal.....&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Therefore Pascal is OUT.......! &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Howwwwwwwwwwwwzzzzzzzzzzzz That !!!!!!!!!!!&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/6876762228358954514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/6876762228358954514?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/6876762228358954514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/6876762228358954514'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/scientists-after-death-in-heaven.html' title='Scientists - After Death in Heaven'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-1927657499312580533</id><published>2008-04-05T07:57:00.000-07:00</published><updated>2008-04-05T09:04:25.259-07:00</updated><title type='text'>Linux\UNIX Commands</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;In earlier post I have explained how to do debugging in the Linux environment. Here I am exploring some important commands which is required to be comfortable with Linux operating system.&lt;br /&gt;&lt;br /&gt;Providing some commands and besides that the explaination of the same.&lt;br /&gt;&lt;br /&gt;Again, below is a listing of the Unix / Linux commands and a brief explanation of what each command does. Tried to sorted it, alphabetically.&lt;br /&gt;&lt;br /&gt;I bet it is going to be very very useful and you would able to get all the content in one place collectively.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Command Description&lt;/strong&gt;&lt;br /&gt;ac :: Prints statistics about users&#39; connect time.&lt;br /&gt;alias ::Create a name for another command or long command string.&lt;br /&gt;at :: Command scheduler.&lt;br /&gt;&lt;br /&gt;base :: name Deletes any specified prefix from a string.&lt;br /&gt;bash :: Command Bourne interpreter&lt;br /&gt;bc :: Calculator.&lt;br /&gt;bdiff :: Compare large files.&lt;br /&gt;bfs :: Editor for large files.&lt;br /&gt;bg :: Continues a program running in the background.&lt;br /&gt;biff :: Enable / disable incoming mail notifications.&lt;br /&gt;break:: Break out of while, for, foreach, or until loop.&lt;br /&gt;bye :: Alias often used for the exit command.&lt;br /&gt;&lt;br /&gt;cal :: Calendar&lt;br /&gt;calendar :: Display appointments and reminders.&lt;br /&gt;cancel :: Cancels a print job.&lt;br /&gt;cat :: View and/or modify a file.&lt;br /&gt;cc :: C compiler.&lt;br /&gt;cd :: Change directory.&lt;br /&gt;chdir :: Change directory.&lt;br /&gt;checkeq :: Language processors to assist in describing equations.&lt;br /&gt;checknr :: Check nroff and troff files for any errors.&lt;br /&gt;chfn :: Modify your own information or if super user or root modify another users information.&lt;br /&gt;chgrp :: Change a groups access to a file or directory.&lt;br /&gt;chkey :: Change the secure RPC key pair.&lt;br /&gt;chmod :: Change the permission of a file.&lt;br /&gt;chown :: Change the ownership of a file.&lt;br /&gt;chsh :: Change login shell.&lt;br /&gt;cksum :: Display and calculate a CRC for files.&lt;br /&gt;clear :: Clears screen.&lt;br /&gt;cls :: Alias often used to clear a screen.&lt;br /&gt;cmp :: Compare files.&lt;br /&gt;col :: Reverse line-feeds filter.&lt;br /&gt;comm :: Compare files and select or reject lines that are common.&lt;br /&gt;compress :: Compress files on a computer.&lt;br /&gt;continue :: Break out of while, for, foreach, or until loop.&lt;br /&gt;cp :: Copy files.&lt;br /&gt;cpio :: Creates archived CPIO files.&lt;br /&gt;crontab :: Create and list files that you wish to run on a regular schedule.&lt;br /&gt;csh :: Execute the C shell command interpreter&lt;br /&gt;csplit :: Split files based on context.&lt;br /&gt;ctags :: Create a tag file for use with ex and vi.&lt;br /&gt;cu ::Calls or connects to another Unix system, terminal or non-Unix system.&lt;br /&gt;curl :: Transfer a URL.&lt;br /&gt;cut :: Cut out selected fields of each line of a file.&lt;br /&gt;&lt;br /&gt;date :: Tells you the date and time in Unix.&lt;br /&gt;dc :: An arbitrary precision arithmetic package.&lt;br /&gt;df :: Display the available disk space for each mount.&lt;br /&gt;deroff ::Removes nroff/troff, tbl, and eqn constructs.&lt;br /&gt;diff :: Displays two files and prints the lines that are different.&lt;br /&gt;dig ::DNS lookup utility.&lt;br /&gt;dircmp :: Lists the different files when comparing directories.&lt;br /&gt;dirname :: Deliver portions of path names.&lt;br /&gt;dmesg :: Print or control the kernel ring buffer.&lt;br /&gt;dos2unix :: Converts text files between DOS and Unix formats.&lt;br /&gt;dpost :: Translates files created by troff into PostScript.&lt;br /&gt;du :: Tells you how much space a file occupies.&lt;br /&gt;&lt;br /&gt;echo ::Displays text after echo to the terminal.&lt;br /&gt;ed ::Line oriented file editor.&lt;br /&gt;egrep :: Search a file for a pattern using full regular expressions.&lt;br /&gt;elm ::Program command used to send and receive e-mail.&lt;br /&gt;emacs :: Text editor.&lt;br /&gt;enable :: Enables / Disables LP printers.&lt;br /&gt;env :: Displays environment variables.&lt;br /&gt;eqn :: Language processors to assist in describing equations.&lt;br /&gt;ex Line- :: editor mode of the vi text editor.&lt;br /&gt;exit :: Exit from a program, shell or log you out of a Unix network.&lt;br /&gt;expr :: Evaluate arguments as an expression.&lt;br /&gt;&lt;br /&gt;fc :: The FC utility lists or edits and re-executes, commands previously entered to an interactive sh.&lt;br /&gt;fg :: Continues a stopped job by running it in the foreground&lt;br /&gt;fgrep :: Search a file for a fixed-character string.&lt;br /&gt;file :: Tells you if the object you are looking at is a file or if it is a directory.&lt;br /&gt;find :: Finds one or more files assuming that you know their approximate filenames.&lt;br /&gt;findsmb :: List info about machines that respond to SMB name queries on a subnet.&lt;br /&gt;&lt;br /&gt;fmt :: Simple text formatters.&lt;br /&gt;fromdos :: Converts text files between DOS and Unix formats.&lt;br /&gt;fsck :: Check and repair a Linux file system.&lt;br /&gt;ftp :: Enables ftp access to another terminal.&lt;br /&gt;&lt;br /&gt;getfacl :: Display discretionary file information.&lt;br /&gt;gprof :: The gprof utility produces an execution profile of a program.&lt;br /&gt;grep :: Finds text within a file.&lt;br /&gt;groupadd :: Creates a new group account.&lt;br /&gt;groupdel :: Enables a super user or root to remove a group.&lt;br /&gt;groupmod :: Enables a super user or root to modify a group.&lt;br /&gt;gunzip :: Expand compressed files.&lt;br /&gt;gview :: A programmers text editor.&lt;br /&gt;gvim ::A programmers text editor.&lt;br /&gt;gzip :: Compress files.&lt;br /&gt;&lt;br /&gt;halt :: Stop the computer.&lt;br /&gt;hash :: Remove internal hash table.&lt;br /&gt;hashstat :: Display the hash stats.&lt;br /&gt;head :: Displays the first ten lines of a file, unless otherwise stated.&lt;br /&gt;help :: If computer has online help documentation installed this command will display it.&lt;br /&gt;history :: Display the history of commands typed.&lt;br /&gt;&lt;br /&gt;ifconfig :: Sets up network interfaces.&lt;br /&gt;ifdown :: take a network interface down&lt;br /&gt;ifup :: bring a network interface up&lt;br /&gt;&lt;br /&gt;join :: Joins command forms together.&lt;br /&gt;&lt;br /&gt;keylogin :: Decrypt the user&#39;s secret key.&lt;br /&gt;kill :: Cancels a job.&lt;br /&gt;ksh :: Korn shell command interpreter.&lt;br /&gt;&lt;br /&gt;ld :: Link-editor for object files.&lt;br /&gt;ldd :: List dynamic dependencies of executable files or shared objects.&lt;br /&gt;less :: Opposite of the more command.&lt;br /&gt;lex :: Generate programs for lexical tasks.&lt;br /&gt;link :: Calls the link function to create a link to a file.&lt;br /&gt;ln :: Creates a link to a file.&lt;br /&gt;locate :: List files in databases that match a pattern.&lt;br /&gt;login :: Signs into a new system.&lt;br /&gt;logname :: Returns users login name.&lt;br /&gt;logout :: Logs out of a system.&lt;br /&gt;lp :: Prints a file on System V systems.&lt;br /&gt;lpadmin :: Configure the LP print service.&lt;br /&gt;lpc :: Line printer control program.&lt;br /&gt;lpq :: Lists the status of all the available printers.&lt;br /&gt;lpr :: Submits print requests.&lt;br /&gt;lprm :: Removes print requests from the print queue.&lt;br /&gt;lpstat :: Lists status of the LP print services.&lt;br /&gt;ls :: Lists the contents of a directory.&lt;br /&gt;&lt;br /&gt;mach :: Display the processor type of the current host.&lt;br /&gt;mail :: One of the ways that allows you to read/send E-Mail.&lt;br /&gt;mailcompat :: Provide SunOS 4.x compatibility for the Solaris mailbox format.&lt;br /&gt;mailx :: Mail interactive message processing system.&lt;br /&gt;make :: Executes a list of shell commands associated with each target.&lt;br /&gt;man :: Display a manual of a command.&lt;br /&gt;mesg :: Control if non-root users can send text messages to you.&lt;br /&gt;mkdir :: Create a directory.&lt;br /&gt;mkfs :: Build a Linux file system, usually a hard disk partition.&lt;br /&gt;more :: Displays text one screen at a time.&lt;br /&gt;mount :: Disconnects a file systems and remote resources.&lt;br /&gt;mt :: Magnetic tape control.&lt;br /&gt;mv :: Renames a file or moves it from one directory to another directory.&lt;br /&gt;&lt;br /&gt;nc :: TCP/IP swiss army knife.&lt;br /&gt;neqn :: Language processors to assist in describing equations.&lt;br /&gt;netstat :: Shows network status.&lt;br /&gt;newalias :: Install new elm aliases for user and/or system.&lt;br /&gt;newform :: Change the format of a text file.&lt;br /&gt;newgrp :: Log into a new group.&lt;br /&gt;nice :: Invokes a command with an altered scheduling priority.&lt;br /&gt;niscat :: Display NIS+ tables and objects.&lt;br /&gt;nischmod :: Change access rights on a NIS+ object.&lt;br /&gt;nischown :: Change the owner of a NIS+ object.&lt;br /&gt;nischttl :: Change the time to live value of a NIS+ object.&lt;br /&gt;nisdefaults :: Display NIS+ default values.&lt;br /&gt;nisgrep :: Utilities for searching NIS+ tables.&lt;br /&gt;nismatch :: Utilities for searching NIS+ tables.&lt;br /&gt;nispasswd :: Change NIS+ password information.&lt;br /&gt;nistbladm :: NIS+ table administration command.&lt;br /&gt;nmap :: Network exploration tool and security / port scanner.&lt;br /&gt;nohup :: Runs a command even if the session is disconnected or the user logs out.&lt;br /&gt;nroff :: Formats documents for display or line-printer.&lt;br /&gt;nslookup :: Queries a name server for a host or domain lookup.&lt;br /&gt;&lt;br /&gt;on :: Execute a command on a remote system, but with the local environment.&lt;br /&gt;onintr :: Shell built-in functions to respond to (hardware) signals.&lt;br /&gt;optisa :: Determine which variant instruction set is optimal to use.&lt;br /&gt;pack Shrinks file into a compressed file.&lt;br /&gt;&lt;br /&gt;pagesize :: Display the size of a page of memory in bytes, as returned by getpagesize.&lt;br /&gt;passwd :: Allows you to change your password.&lt;br /&gt;paste :: Merge corresponding or subsequent lines of files.&lt;br /&gt;pax :: Read / write and writes lists of the members of archive files and copy directory hierarchies.&lt;br /&gt;pcat :: Compresses file.&lt;br /&gt;pg :: Files perusal filters for CRTs.&lt;br /&gt;pgrep :: Examine the active processes on the system and reports the process :: IDs of the processes&lt;br /&gt;pine :: Command line program for Internet News and Email.&lt;br /&gt;ping :: Sends ICMP ECHO_REQUEST packets to network hosts.&lt;br /&gt;pkill :: Examine the active processes on the system and reports the poweroff :: Stop the computer.&lt;br /&gt;pr :: Formats a file to make it look better when printed.&lt;br /&gt;printf :: Write formatted output.&lt;br /&gt;ps :: Reports the process status.&lt;br /&gt;pwd :: Print the current working directory.&lt;br /&gt;&lt;br /&gt;quit :: Allows you to exit from a program, shell or log you out of a Unix network.&lt;br /&gt;&lt;br /&gt;rcp :: Copies files from one computer to another computer.&lt;br /&gt;reboot :: Stop the computer.&lt;br /&gt;red :: Line oriented file editor.&lt;br /&gt;rehash :: Recomputes the internal hash table of the contents of directories listed in the path.&lt;br /&gt;remsh :: Runs a command on another computer.&lt;br /&gt;repeat :: Shell built-in functions to repeatedly execute action(s) for a selected number of times.&lt;br /&gt;rgview :: A programmers text editor.&lt;br /&gt;rgvim :: A programmers text editor.&lt;br /&gt;rlogin :: Establish a remote connection from your terminal to a remote machine.&lt;br /&gt;rm :: Deletes a file without confirmation (by default).&lt;br /&gt;rmail :: One of the ways that allows you to read/send E-Mail.&lt;br /&gt;rmdir :: Deletes a directory.&lt;br /&gt;rn :: Reads newsgroups.&lt;br /&gt;route :: Show / manipulate the IP routing table.&lt;br /&gt;rpcinfo :: Report RPC information.&lt;br /&gt;rsh :: Runs a command on another computer.&lt;br /&gt;rsync :: Faster, flexible replacement for rcp.&lt;br /&gt;rview :: A programmers text editor.&lt;br /&gt;rvim :: A programmers text editor.&lt;br /&gt;&lt;br /&gt;s2p :: Convert a sed script into a Perl script.&lt;br /&gt;sag :: Graphically displays the system activity data stored in a binary data file by a previous sar run.&lt;br /&gt;sar :: Displays the activity for the CPU.&lt;br /&gt;script ::Records everything printed on your screen.&lt;br /&gt;sdiff :: Compares two files, side-by-side.&lt;br /&gt;sed :: Allows you to use pre-recorded commands to make changes to text.&lt;br /&gt;sendmail :: Sends mail over the Internet.&lt;br /&gt;set :: Set the value of an environment variable.&lt;br /&gt;setenv :: Set the value of an environment variable.&lt;br /&gt;setfacl :: Modify the Access Control List (ACL) for a file or files.&lt;br /&gt;settime :: Change file access and modification time.&lt;br /&gt;sftp :: Secure file transfer program.&lt;br /&gt;sh :: Runs or processes jobs through the Bourne shell.&lt;br /&gt;shred :: Delete a file securely, first overwriting it to hide its contents.&lt;br /&gt;shutdown :: Turn off the computer immediately or at a specified time.&lt;br /&gt;sleep :: Waits a x amount of seconds.&lt;br /&gt;slogin :: OpenSSH SSH client (remote login program).&lt;br /&gt;smbclient :: An ftp-like client to access SMB/CIFS resources on servers.&lt;br /&gt;sort :: Sorts the lines in a text file.&lt;br /&gt;spell :: Looks through a text file and reports any words that it finds in the text file that are not in the dictionary.&lt;br /&gt;split :: Split a file into pieces.&lt;br /&gt;stat :: Display file or filesystem status.&lt;br /&gt;stop :: Control process execution.&lt;br /&gt;strip :: Discard symbols from object files.&lt;br /&gt;stty :: Sets options for your terminal.&lt;br /&gt;su :: Become super user or another user.&lt;br /&gt;sysinfo :: Get and set system information strings.&lt;br /&gt;sysklogd :: Linux system logging utilities.&lt;br /&gt;&lt;br /&gt;tabs :: Set tabs on a terminal.&lt;br /&gt;tail :: Delivers the last part of the file.&lt;br /&gt;talk :: Talk with other logged in users.&lt;br /&gt;tac :: Concatenate and print files in reverse.&lt;br /&gt;tar :: Create tape archives and add or extract files.&lt;br /&gt;tbl :: Preprocessor for formatting tables for nroff or troff.&lt;br /&gt;tcopy :: Copy a magnetic tape.&lt;br /&gt;tcpdump :: Dump traffic on a network.&lt;br /&gt;tee :: Read from an input and write to a standard output or file.&lt;br /&gt;telnet :: Uses the telnet protocol to connect to another remote computer.&lt;br /&gt;time :: Used to time a simple command.&lt;br /&gt;timex :: The timex command times a command; reports process data and system activity.&lt;br /&gt;todos :: Converts text files between DOS and Unix formats.&lt;br /&gt;top :: Display Linux tasks.&lt;br /&gt;touch :: Change file access and modification time.&lt;br /&gt;tput :: Initialize a terminal or query terminfo database.&lt;br /&gt;tr :: Translate characters.&lt;br /&gt;traceroute :: Print the route packets take to network host.&lt;br /&gt;troff :: Typeset or format documents.&lt;br /&gt;&lt;br /&gt;ul ::Reads the named filenames or terminal and does underlining.&lt;br /&gt;umask :: Get or set the file mode creation mask.&lt;br /&gt;unalias :: Remove an alias.&lt;br /&gt;unhash :: Remove internal hash table.&lt;br /&gt;uname :: Print name of current system.&lt;br /&gt;uncompress :: Uncompressed compressed files.&lt;br /&gt;uniq :: Report or filter out repeated lines in a file.&lt;br /&gt;unmount :: Crates a file systems and remote resources.&lt;br /&gt;unpack :: Expands a compressed file.&lt;br /&gt;untar :: Create tape archives and add or extract files.&lt;br /&gt;until :: Execute a set of actions while/until conditions are evaluated TRUE.&lt;br /&gt;useradd :: Create a new user or updates default new user information.&lt;br /&gt;userdel :: Remove a users account.&lt;br /&gt;usermod :: Modify a users account.&lt;br /&gt;&lt;br /&gt;vacation :: Reply to mail automatically.&lt;br /&gt;vedit :: Screen-oriented (visual) display editor based on ex.&lt;br /&gt;vgrind :: Grind nice program listings&lt;br /&gt;vi :: Screen-oriented (visual) display editor based on ex.&lt;br /&gt;vim :: A programmers text editor.&lt;br /&gt;view :: A programmers text editor.&lt;br /&gt;&lt;br /&gt;w :: Show who is logged on and what they are doing.&lt;br /&gt;wait :: Await process completion.&lt;br /&gt;wc :: Displays a count of lines, words, and characters in a file&lt;br /&gt;whereis :: Locate a binary, source, and manual page files for a command.&lt;br /&gt;while :: Repetitively execute a set of actions while/until conditions are evaluated TRUE.&lt;br /&gt;which ::Locate a command.&lt;br /&gt;who ::Displays who is on the system.&lt;br /&gt;whois :: Internet user name directory service.&lt;br /&gt;write ::Send a message to another user.&lt;br /&gt;&lt;br /&gt;X :: Execute the X windows system.&lt;br /&gt;xfd ::Display all the characters in an X font.&lt;br /&gt;xlsfonts :: Server font list displayer for X.&lt;br /&gt;xset ::User preference utility for X.&lt;br /&gt;xterm :: Terminal emulator for X.&lt;br /&gt;xrdb :: X server resource database utility.&lt;br /&gt;&lt;br /&gt;yacc :: Short for yet another compiler-compiler, yacc is a compiler.&lt;br /&gt;yes :: Repeatedly output a line with all specified STRING(s), or &#39;y&#39;.&lt;br /&gt;yppasswd :: Changes network password in the NIS database.&lt;br /&gt;&lt;br /&gt;zcat :: Compress files.&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/1927657499312580533/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/1927657499312580533?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/1927657499312580533'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/1927657499312580533'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/linuxunix-commands.html' title='Linux\UNIX Commands'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-3537354509383344838</id><published>2008-04-05T04:06:00.000-07:00</published><updated>2008-04-05T07:52:36.563-07:00</updated><title type='text'>Debugging with LINUX environment</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Linux environment generally used the GNU debugger, or gdb to the shell. Gdb lets you see the internal structure of a program, print out variable values, set breakpoints and single step through source code. It makes an extremely powerful tool for fixing problems in program code. In this article , Let&#39;s discuss how to use the .&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;The Linux development environment has several debugging alternatives. This&lt;br /&gt;article I also explore debugging tools available for debugging applications, ranging&lt;br /&gt;from simple print-statement to specialized tools (e.g. memory-debugging).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Print statements&lt;br /&gt;&lt;/strong&gt;Addition of printf() statements to your code is a traditional and time-honored way&lt;br /&gt;to debug code. Downside is that you will need to modify and recompile the code&lt;br /&gt;whenever you want more or less debug information.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Strace utility&lt;br /&gt;&lt;/strong&gt;Strace will output all the kernel calls that the application does and is a great way to find&lt;br /&gt;e.g. what file the program is trying to access and whether it succeeded. For instance&lt;br /&gt;calls to read() and write() will show how much data program tried to read/write and&lt;br /&gt;how much actually was transferred, it also shows the beginning of the data in question.&lt;br /&gt;You can use this without recompilations and it works on any program which you can&lt;br /&gt;run.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Ltrace utility&lt;br /&gt;&lt;/strong&gt;Ltrace will output all the dynamic library function calls that the application does. It&lt;br /&gt;can also show system calls like ’strace’.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Using GDB debugger&lt;br /&gt;&lt;/strong&gt;With gdb debugger you can examine all the symbols in the program and program runtime&lt;br /&gt;state and follow program function calls. If trace utilities and the source code don’t&lt;br /&gt;give you enough information to solve the problem, debugger is the next step. Gdb is&lt;br /&gt;a console tool, but there are some nice debugging GUIs available that work on top of&lt;br /&gt;gdb. One such is ddd.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Gdb can help with debugging programs written in C, C++, Fortran, Java, Chill, assembly&lt;br /&gt;and Modula-2. You need to have compiled these programs with the gnu compiler&lt;br /&gt;collection (gcc) tools.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Besides supporting multiple languages gdb also supports multiple hardware architectures,&lt;br /&gt;including several embedded hardware architectures. It’s also possible to compile&lt;br /&gt;a special version of GDB for debugging (Linux) kernel code.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;R&lt;/span&gt;&lt;/strong&gt;&lt;a name=&quot;h1&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;unning gdb&lt;/strong&gt; &lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Gdb is run from the shell with the command &#39;gdb&#39; with the program name as a parameter, for example &#39;gdb file, or you can use the file command once inside gdb to load a program for debugging, for example &#39;file file. Both of these assume you execute the commands from the same directory as the program. Once loaded, the program can be started with the gdb command &#39;run&#39;.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Preparing for GDB use&lt;br /&gt;&lt;/strong&gt;You need to compile all the C/C++ code you want to debug with debugging information&lt;br /&gt;included into the binary (use ’-g’ and do not use ’-fomit-frame-pointer’ option when&lt;br /&gt;compiling the code) and the code may not be stripped of symbols (do not use ’-s’ flag&lt;br /&gt;in the compilation). Note that all the libraries used by the program should also be&lt;br /&gt;compiled this way as missing stack frame pointer can confuse GDB.&lt;br /&gt;It’s better if you use static linking (e.g. use ’-static’ option in your Makefile) because&lt;br /&gt;that way gdb won’t have trouble finding the symbols for the libraries program uses (for&lt;br /&gt;example if you use different libraries with your program than what your compilation&lt;br /&gt;machine normally uses).&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Before you can get started, the program you want to debug has to be compiled with debugging information in it. This is so gdb can work out the variables, lines and functions being used. To do this, compile your program under gcc (or g++) with an extra &#39;-g&#39; option:&lt;br /&gt;gcc -g file.cpp -o file&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Using GDB&lt;br /&gt;&lt;/strong&gt;There are two ways to use a debugger:&lt;br /&gt;- Using debugger to examine the code runtime behavior. You start ’gdb’ with the&lt;br /&gt;program binary (’gdb &lt;app&gt;’) in the program directory. Then you can either&lt;br /&gt;run the program inside the gdb with ’run &lt;program&gt;’ or attach to an&lt;br /&gt;already running instance of the program with ’attach &lt;pid&gt;’. Latter is handy&lt;br /&gt;when you don’t have working gdb inside the debugging environment. Then you&lt;br /&gt;can set breakpoints, examine the code, variables, stack etc and call the program&lt;br /&gt;functions.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- Using debugger to examine a process post-mortem ’core’ dump. You start ’gdb’&lt;br /&gt;with the program binary and core dump (’gdb &lt;app&gt; &lt;core&gt;’) in the program&lt;br /&gt;code directory. You can examine where the program crashed and what was the&lt;br /&gt;state of all the program variables. If your program crashes, but doesn’t produce&lt;br /&gt;a core file, check ’ulimit -a’ to see whether your environment allows core files&lt;br /&gt;and fix it with ’ulimit -c unlimited’.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;The downside of debugger approach is that debug versions of the binaries are large and&lt;br /&gt;statically linked debug ones are huge. If the target doesn’t have enough memory for&lt;br /&gt;this, you can use ’gdbserver’ and stripped binaries on the target. On the host on which&lt;br /&gt;you do the debugging, you use gdb with ’target remote’ option and give the host gdb&lt;br /&gt;the binary with all the debugging symbols.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Short introduction to use of gdb&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;You get back to GDB prompt when your program either:&lt;br /&gt;- Crashes.&lt;br /&gt;- Code execution reaches a breakpoint.&lt;br /&gt;- You suspend or otherwise send a signal to the program.&lt;br /&gt;&lt;br /&gt;On latter two cases you can use ’cont’ to continue the program execution.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;In the GDB prompt you can do one of the following:&lt;br /&gt;- Set a breakpoint with ’break &lt;function&gt;’. You can delete breakpoint by&lt;br /&gt;saying ’delete &lt;breakpoint&gt;’.&lt;br /&gt;- Examine current program execution trace with ’bt’, which will show you where&lt;br /&gt;the program execution was interrupted (see above), how it got there and what&lt;br /&gt;were the function arguments.&lt;br /&gt;- Move up and down in the execution stack frame by typing ’up’ or ’down’.&lt;br /&gt;- Examine program state with either ’info locals’ which shows you the state of&lt;br /&gt;variables in the current context (function) or use ’print &lt;c&gt;’ to show&lt;br /&gt;you a value of given variable or function. Any valid C expression can be used,&lt;br /&gt;even function calls!&lt;br /&gt;- View your program code with ’list &lt;function&gt;’ which will list code of the&lt;br /&gt;given function.&lt;br /&gt;You can ’step’ through the program code with following commands:&lt;br /&gt;- ’step’ will execute the current line and go to next command. If code line is a&lt;br /&gt;function call, step will enter the function.&lt;br /&gt;- ’next’ works like ’step’ but function calls are executed as single instruction.&lt;br /&gt;- ’finish’ will execute to the end of current scope (function).&lt;br /&gt;- ’cont’ will continue program execution.&lt;br /&gt;Typing return will repeat the previous command. Gdb can also complete function and&lt;br /&gt;variable names with TAB key.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Gdb problems&lt;br /&gt;&lt;/strong&gt;When optimization is used in code compilation, variable values shown by gdb may&lt;br /&gt;sometimes be valid only for variables used on the line that program executed lastly 1,&lt;br /&gt;not for the whole scope in where the variables are declared. Use of inlines especially&lt;br /&gt;in C++ code (e.g. methods with their body in the header file) may confuse gdb so that&lt;br /&gt;it shows either a wrong filename or line for the fault.&lt;br /&gt;In these cases it’s better not to optimize the code so much, use only ’-O’ optimization&lt;br /&gt;flag, and forbid inlining completely with the ’-fno-default-inline’ compilation flag.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/3537354509383344838/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/3537354509383344838?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3537354509383344838'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3537354509383344838'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/debugging-with-linux-environment.html' title='Debugging with LINUX environment'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-5305341288701817312</id><published>2008-04-04T09:06:00.000-07:00</published><updated>2008-04-04T10:08:10.582-07:00</updated><title type='text'>Frequently asked interview question in Unix</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;Most commonly asked Questions in Unix.&lt;br /&gt;&lt;br /&gt;I bet if any one would get prepared with these questions . One would have win the half of the battle of Interview war.&lt;br /&gt;&lt;br /&gt;1) Advantages/disadvantages of script vs compiled program.&lt;br /&gt;&lt;br /&gt;2) Name a replacement for PHP/Perl/MySQL/Linux/Apache and show main differences.&lt;br /&gt;&lt;br /&gt;3) Why have you choosen such a combination of products?&lt;br /&gt;&lt;br /&gt;4) Differences between two last MySQL versions. Which one would you choose and when/why?&lt;br /&gt;&lt;br /&gt;5) Main differences between Apache 1.x and 2.x. Why is 2.x not so popular?&lt;br /&gt;Which one would you choose and when/why?&lt;br /&gt;&lt;br /&gt;6) Which Linux distros do you have experience with?&lt;br /&gt;&lt;br /&gt;7) Which distro you prefer? Why?&lt;br /&gt;&lt;br /&gt;8) Which tool would you use to update Debian / Slackware / RedHat / Mandrake / SuSE ?9)&lt;br /&gt;You&#39;re asked to write an Apache module. What would you do?&lt;br /&gt;&lt;br /&gt;10) Which tool do you prefer for Apache log reports?&lt;br /&gt;&lt;br /&gt;11) What does &#39;route&#39; command do?&lt;br /&gt;&lt;br /&gt;12) Differnces between ipchains and iptables.&lt;br /&gt;&lt;br /&gt;13) What&#39;s eth0, ppp0, wlan0, ttyS0, etc.&lt;br /&gt;&lt;br /&gt;14) What are different directories in / for?&lt;br /&gt;&lt;br /&gt;15) Partitioning scheme for new webserver. Why?&lt;br /&gt;&lt;br /&gt;16) What is a Make file?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;17) Could you tell something about the Unix System Kernel?&lt;br /&gt;&lt;br /&gt;18) Difference between the fork(), exec() and system() . system calls?&lt;br /&gt;&lt;br /&gt;19)How can you tell what shell you are running on UNIX system?&lt;br /&gt;&lt;br /&gt;20)What is ‘the principle of locality’?What are conditions for a machine to support Demand Paging?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;21)What are conditions on which deadlock can occur while swapping the processes?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;22)What are the processes that are not bothered by the swapper? Give Reason.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;23)How the Swapper works?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;23)What do you mean by u-area (user area) or u-block?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;24)What is a Region?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;25)What scheme does the Kernel in Unix System V follow while choosing a swap device among the multiple swap devices?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;26)What is the main goal of the Memory Management?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;27)What is the difference between Swapping and &lt;/span&gt;?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;28)List the system calls used for process management?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;29)How do you change File Access Permissions?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Refer the sites...&lt;br /&gt;http://www.geekinterview.com/Interview-Questions/Operating-System/UNIX&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/5305341288701817312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/5305341288701817312?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/5305341288701817312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/5305341288701817312'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/frequently-asked-interview-question-in.html' title='Frequently asked interview question in Unix'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-5469072483196352213</id><published>2008-04-02T08:31:00.000-07:00</published><updated>2008-04-02T08:56:59.293-07:00</updated><title type='text'>UML</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Unified Modeling Language?&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Here I have tried to simplify the keyword UML. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In software engineering, whenever the pictorial graphical representation is required, as process document or some application architecture or design need to be elaborated, then it is done with the help of UML. Simply defining,  the Unified Modeling Language (UML) is a standardized visual specification language for object modeling.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Defining in other terms , UML is a general-purpose modeling language that includes a graphical notation used to create an abstract model of a system, referred to as a UML model.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Going into bit detail description, UML is officially defined at the Object Management Group (OMG) by the UML metamodel, a Meta-Object Facility metamodel (MOF). Like other MOF-based specifications, the UML metamodel and UML models may be serialized in XML. UML was designed to specify, visualize, construct, and document software-intensive systems. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;To understand more about the language, I have just framed and complied some general FAQ sort. I believe just going thru these answered questions, is enough to develop the basic understanding of the UML. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;First of all, in the layman termed, basic query. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;What is UML?&lt;/strong&gt;&lt;br /&gt;- Unified Modeling Language (UML) is the industry-standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems. Using UML, programmers and application architects can make a blueprint of a project, which, in turn, makes the actual software development process easier.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;What can I use UML for?&lt;/strong&gt;&lt;br /&gt;- UML was designed with these primary purposes in mind:&lt;br /&gt;· Business process modeling with use cases&lt;br /&gt;· Class and object modeling&lt;br /&gt;· Component modeling&lt;br /&gt;· Distribution and deployment modeling &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;What&#39;s the actual need of UML, isn&#39;t it enough to write some thing about our application&#39;s design and architecture, somewhere in documentation, without using the pictorial symbols of UML?&lt;/strong&gt;&lt;br /&gt;- While it&#39;s certainly possible to describe interrelated processes and code architecture in words, many people prefer to use a diagram to visualize the relationship of elements to one another. UML is a standard way to create these diagrams. As a result, it makes it easier for programmers and software architects to communicate.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Different types of diagrams available in UML?&lt;/strong&gt;&lt;br /&gt;- UML provides many different models of a system. The following is a list of then:&lt;br /&gt;1) The Use Case Diagrams - A use case is a description of the system&#39;s behavior from a user&#39;s viewpoint.&lt;br /&gt;2) The Class Diagrams - &quot;What objects do we need? How will they be related?&quot;&lt;br /&gt;3) Collaboration Diagrams - &quot;How will the objects interact?&quot;&lt;br /&gt;4) Sequence Diagrams - &quot;How will the objects interact?&quot;&lt;br /&gt;5) State Diagrams - &quot;What state should our object be in&quot;&lt;br /&gt;6) Package Diagrams - &quot;How are we going to modularize our development?&quot;&lt;br /&gt;7) Component Diagrams - &quot;How will our software components be related?&quot;&lt;br /&gt;8) Deployment Diagrams - &quot;How will the software be deployed?&quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;What is a &quot;use case&quot;?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- A complete end-to-end business process that satisfies the needs of a user.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;What are different categories of use cases?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- Detail Level: - High level / ExpandedTask Level: - Super / Sub (Abstract; Equal Alternatives; Complete v. Partial)Importance: - Primary / Secondary (use Secondary for exceptional processes)Abstraction: - Essential / Real&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;What is the difference between a real and essential use case?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- Essential - describes the &quot;essence&quot; of the problem; technology independent real - good for GUI designing; shows problem as related to technology decisions.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In a System Sequence Diagram, what is a System Event?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- It is from the expanded use case. It is an actor action the system directly responds to.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Give an example of a situation which a State Diagram could effectively model.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- Think of a cake and its different stages through the baking process: dough, baked, burned.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;For what are Operations Contracts written?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- System Events.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In an Operations Contract&#39;s postconditions, four types of activities are specified. What are they?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- They are:&lt;br /&gt;· Instances created&lt;br /&gt;· Associations formed&lt;br /&gt;· Associations broken&lt;br /&gt;· Attributes changed&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;What does an Operations Contract do?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;-Provides a snapshot of the System&#39;s state before and after a System Event. It is not interested in the Event&#39;s specific behavior.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;What does a Collaboration Diagram (or Sequence Event, depending on the process) model?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- A System Event&#39;s behavior.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;How does one model a class in a Collaboration Diagram? An instance?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- A box will represent both; however, a class is written as MyClass whereas an instance is written as myInstance:MyClass.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;What are the three parts of a class in a Class Diagram?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- Name, Attributes, Methods.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In Analysis, we are interested in documenting concepts within the relevant problem domain. What is a concept?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- A person, place, thing, or idea that relates to the problem domain. They are candidates for objects.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Does a concept HAVE to become a class in Design?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- No.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In a Class Diagram, what does a line with an arrow from one class to another denote?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- Attribute visibility.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;What are the four types of visibility between objects?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- Local&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Parameter&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Attribute&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Global.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;When do you use inheritance as opposed to aggregation?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- An aggregation is a &quot;has a&quot; relationship, and it is represented in the UML by a clear diamond.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;When would I prefer to use composition rather than aggregation?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- Composition is a stronger form of aggregation. The object which is &quot;contained&quot; in another object is expected to live and die with the object which &quot;contains&quot; it. Composition is represented in the UML by a darkened diamond. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Is the UML a process, method, or notation?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;- It is a notation. A process is Objectory, Booch, OMT, or the Unified Process. A process and a notation together make an OO method.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/5469072483196352213/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/5469072483196352213?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/5469072483196352213'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/5469072483196352213'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/04/uml.html' title='UML'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-8334042084225126714</id><published>2008-03-28T07:24:00.000-07:00</published><updated>2008-03-28T22:07:30.978-07:00</updated><title type='text'>Design Patterns in OOPs</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Introduction:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For starting with Design Patterns, pre-requiste is one should aware with the Object oriented concepts.&lt;br /&gt;&lt;br /&gt;Here, we will try to simplify the term and purpose of the Design Pattern.&lt;br /&gt;&lt;br /&gt;First normal and very common query could be, What is Design Patterns, why they are used?&lt;br /&gt;&lt;br /&gt;In a simple layman term, a design pattern is a general reusable solution to a commonly occurring problem in software design.&lt;br /&gt;&lt;br /&gt;Defining Design Patterns more descriptively...&lt;br /&gt;&lt;br /&gt;In software engineering, a design pattern is a general repeatable solution to a commonly occurring problem in software design. A design pattern isn&#39;t a finished design that can be transformed directly into code.&lt;br /&gt;&lt;br /&gt;It is a simply a description for how to solve a problem that can be used in many different situations.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Design patterns&lt;/strong&gt; is used to speed up the development process by providing tested, proven development methods or paradigms. Effective software design requires considering issues that may not become visible until later in the implementation.&lt;br /&gt;&lt;br /&gt;Reusing design patterns helps to prevent subtle issues that can cause major problems, and it also improves code readability for coders and architects who are familiar with the patterns.&lt;br /&gt;Digging into depth,&lt;br /&gt;Design Pattern is categoried in three different sub patterns.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Creational Patterns&lt;br /&gt;Structural Patterns&lt;br /&gt;Behavioral Patterns.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Creation Patterns&lt;br /&gt;&lt;/strong&gt;This design pattern is all about class instantiation.&lt;br /&gt;&lt;br /&gt;This pattern can be further divided into class-creation patterns and object-creational patterns.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Abstract Factory&lt;/strong&gt; : Creates an instance of several families of classes&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Factory&lt;/strong&gt; : Creates an instance of several derived classes&lt;br /&gt;&lt;strong&gt;Builder&lt;/strong&gt; : Separates object construction from its representation &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Prototype&lt;/strong&gt; : A fully initialized instance to be copied or cloned&lt;br /&gt;&lt;strong&gt;Singleton&lt;/strong&gt; : A class of which only a single instance can exist&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Structural patterns&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;This design patterns is all about Class and Object composition. Structural class-creation patterns use inheritance to compose interfaces. Structural object-patterns define ways to compose objects to obtain new functionality.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Adaptor&lt;/strong&gt; : Match interfaces of different classes&lt;br /&gt;&lt;strong&gt;Bridge&lt;/strong&gt; : Separates an object’s interface from its implementation&lt;br /&gt;&lt;strong&gt;Decorator&lt;/strong&gt; : Add responsibilities to objects dynamically&lt;br /&gt;&lt;strong&gt;Facade&lt;/strong&gt; : A single class that represents an entire subsystem&lt;br /&gt;&lt;strong&gt;Proxy&lt;/strong&gt; : An object representing another object&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Behavioral patterns&lt;/strong&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;This design patterns is all about Class&#39;s objects communication. Behavioral patterns are those patterns that are most specifically concerned with communication between objects.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Chain of responsibilty&lt;/strong&gt; : A way of passing a request between a chain of objects&lt;br /&gt;&lt;strong&gt;Command&lt;/strong&gt; : Encapsulate a command request as an object&lt;br /&gt;&lt;strong&gt;Interpreter&lt;/strong&gt; : A way to include language elements in a program&lt;br /&gt;&lt;strong&gt;Iterator&lt;/strong&gt; : Sequentially access the elements of a collection&lt;br /&gt;&lt;strong&gt;Observer&lt;/strong&gt; : A way of notifying change to a number of classes&lt;br /&gt;&lt;strong&gt;State&lt;/strong&gt; : Alter an object&#39;s behavior when its state changes&lt;br /&gt;&lt;strong&gt;Visitor&lt;/strong&gt; : Defines a new operation to a class without change &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Now we will pick the popular and commonly used design pattern and explain in detail.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Staring with the Factory Pattern.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;What is a &quot;factory&quot; and why would you want to use one?&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;A factory, in this context, is a piece of software that implements one of the &quot;factory&quot; design patterns introduced . In general, a factory implementation is useful when you need one object to control the creation of and/or access to other objects. By using a factory in RMI, you can reduce the number of objects that you need to register with the RMI registry. &lt;/p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;Examples of Factories in the Real World:&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;The Bank&lt;br /&gt;The Library&lt;br /&gt;These two example is sufficient to understand the actual process of the Factory Patterns. These examples are from the real life.&lt;br /&gt;&lt;br /&gt;Let&#39;s take the&lt;strong&gt; example&lt;/strong&gt;, commonly &lt;strong&gt;illustrated &lt;/strong&gt;in the text book,&lt;strong&gt; GoF&lt;/strong&gt;.&lt;br /&gt;&lt;strong&gt;Widgets in a GUI Environment.&lt;/strong&gt;&lt;br /&gt;This example explains , how an Abstract Factory can be used to create widgets for a GUI environment. By designing the client to use the Abstract Factory interface, different factories can be created to generate different sets of widgets without requiring changes to the clients. This example is not intended to illustrate a useful implementation of Abstract Factory, as Java&#39;s AWT and Swing do the work for you, but it does show how easily design patterns can be implemented in RMI.&lt;br /&gt;One other point to notice is how the pattern is split between client and server. This split was arbitrarily chosen, and with RMIs object-oriented nature you could decide to make the split in the pattern elsewhere.&lt;br /&gt;&lt;br /&gt;In General , this pattern consists of two class hierarchies, one of Products, and one of Creators. Each ConcreteCreator class creates instances of specific ConcreteProduct classes using a factory method.&lt;br /&gt;&lt;br /&gt;The factory pattern can help solve your application issues. For example, developers often must reply to users based on each user’s machine, creating multiple hardware issues. The factory pattern can streamline the process. The concept is simple, but the solutions created with the factory pattern are powerful.&lt;br /&gt;&lt;br /&gt;For more understanding, let&#39;s take one more example.&lt;br /&gt;&lt;strong&gt;Communications breakdown&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Consider the example&lt;/strong&gt; of a data collection application where various field devices supply data to the application via TCP/IP sockets. The application was originally written to communicate with one device but was expanded when the company produced a newer version. Unfortunately, this new hardware did not speak the same language as the previous version. Marketing required the application to support both hardware versions, since customers might buy new units and install them in tandem with older units. The factory pattern eased the burden of supporting multiple device types.&lt;br /&gt;&lt;br /&gt;In short and effective explanation of fatory pattern is :&lt;br /&gt;=&gt; if we have a super class and n sub-classes, and based on data provided, we have to return the object of one of the sub-classes, we use a factory pattern.&lt;br /&gt;&lt;br /&gt;Now, we will focus on the positive and negative points on using the Factory Patterns.&lt;br /&gt;&lt;strong&gt;Positives:&lt;/strong&gt;&lt;br /&gt;-Eliminates the need to bind application-specific classes into your code&lt;br /&gt;-Provides hooks for subclassing. Creating objects inside a class with a factory method is always more flexible than creating an object directly. This method gives subclasses a hook for providing an extended version of an object.&lt;br /&gt;-Connects parallel heirarchies. Factory method localises knowledge of which classes belong together. Parallel class heirarchies result when a class delegates some of its responsibilities to a separate class.&lt;br /&gt;&lt;strong&gt;Negatives:&lt;/strong&gt;&lt;br /&gt;-Clients might have to subclass the Creator class just to create a particular Concreate object.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;span style=&quot;font-size:78%;&quot;&gt;&lt;if&gt;&gt;&lt;/span&gt;&lt;br /&gt;&lt;/em&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;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/8334042084225126714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/8334042084225126714?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/8334042084225126714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/8334042084225126714'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/03/design-patterns-in-oops.html' title='Design Patterns in OOPs'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-3952323970758023672</id><published>2008-03-25T07:23:00.000-07:00</published><updated>2008-03-26T07:08:45.964-07:00</updated><title type='text'>Fear About US Recession.. Impact on Jobs</title><content type='html'>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg71w_NPp3SfF40HXwfV8X4_Hgd_dyJAK9OdvmlhNYk5jij6wzaA7kbOHzBTLFsWmCMBqW62_mggUANkOeJnF9DO3u8g_U5F2gkBrAlp4vpmpZeFDLaqZGzZRW_Re1WHeeKZmuf8QEOq-g/s1600-h/0908-biz-JOBS.gif&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5181691736905888210&quot; style=&quot;FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg71w_NPp3SfF40HXwfV8X4_Hgd_dyJAK9OdvmlhNYk5jij6wzaA7kbOHzBTLFsWmCMBqW62_mggUANkOeJnF9DO3u8g_U5F2gkBrAlp4vpmpZeFDLaqZGzZRW_Re1WHeeKZmuf8QEOq-g/s320/0908-biz-JOBS.gif&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;US market recession is almost declared, till now it was just a fear about the condition, by the time Mr. &lt;/span&gt;Warren Buffett&lt;span style=&quot;color:#000099;&quot;&gt; admitted in his recent Interview and accepted about the chances of recession in US, and it could go even worst till ever happened.&lt;br /&gt;&lt;br /&gt;Since US market is &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_1&quot;&gt;predominately&lt;/span&gt; considerable and play a major role all over the world&#39; s economy, in all trades and businesses. So it&#39;s quite obvious to get scared from this situation.&lt;br /&gt;Being an IT professional it&#39;s an &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_3&quot;&gt;obvious&lt;/span&gt; concern and worry to look into and know what is the scenario. To know, the fact and figures why are the people really scared about.&lt;br /&gt;&lt;br /&gt;Curiously and &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_5&quot;&gt;sacredly&lt;/span&gt; I tried to &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_6&quot;&gt;compile&lt;/span&gt; the &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_7&quot;&gt;scenarios&lt;/span&gt;, which is I am sharing with . Most of the &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_8&quot;&gt;data&lt;/span&gt; I have taken the &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_9&quot;&gt;reference&lt;/span&gt; with &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_10&quot;&gt;nytimes&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;The job market took a serious and unexpected turn for the worse in August, raising fears that the risks of a recession are greater than many economists had believed.&lt;br /&gt;&lt;br /&gt;According to &quot;The New York Times&quot; , the economy shed 4,000 jobs between July and August, with industries that are connected to the housing market — like construction and manufacturing — making the deepest cuts, the Labor Department reported today. It was the first employment decline since 2003, when the job market was still struggling to emerge from a long slump in the wake of the 2001 recession.&lt;br /&gt;&lt;br /&gt;The unemployment rate held steady at 4.6 percent in August, which economists said was likely a statistical fluke as more people stopped looking for work and were therefore not counted by the government as unemployed.&lt;br /&gt;&lt;br /&gt;“If the economy is not headed toward recession, it is very close to one,” said Mark &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_11&quot;&gt;Zandi&lt;/span&gt;, chief economist in one of the .com site interview.&lt;br /&gt;&lt;br /&gt;Stocks fell broadly and sharply, as investors digested the idea that the economy had been weakening significantly even before the mortgage crisis hit financial markets last month. The Dow Jones industrial average closed down almost 250 points, or 1.9 percent.&lt;br /&gt;The jobs report all but guarantees that the Federal Reserve will cut its benchmark short-term interest rate when its policy-making committee meets on Sept. 18. A quarter-point reduction to 5 percent remains the most probable move, although a half-point cut now cannot be ruled out, economists said.&lt;br /&gt;&lt;br /&gt;The weakness of the employment data seemed to change the terms of the debate over the health of the economy. The chances of a recession over the next year now seem to be somewhere between one-quarter and one-half, economists interviewed today said.&lt;br /&gt;“I think at least people need to start thinking about the housing market not just as some ring fence problem which is off on its own, and the rest of the economy is doing just fine,” said Nigel &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_12&quot;&gt;Gault&lt;/span&gt;, chief United Economist with Global Insight, an economic research firm in Lexington, Mass. “They need to start worrying about the health of the broader economy.”&lt;br /&gt;&lt;br /&gt;The Bush administration tried to defuse concerns that the weak jobs numbers hinted at a wider economic slowdown.&lt;br /&gt;&lt;br /&gt;In an interview , the Treasury secretary, said the report was “not totally surprising.”&lt;br /&gt;“There will be news that &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_13&quot;&gt;isn&lt;/span&gt;’t always good news,” he said. “But I feel quite strongly that we have a resilient economy.”&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For months, Fed officials and Wall Street forecasters have been predicting that the housing slump would slow the economy, but that other strengths — like corporate earnings, growth in other countries and strong wage growth — would keep the slowdown from being severe. That could still happen; in both the 1980s and 1990s economic expansions, employment fell at least once before quickly reversing course.&lt;br /&gt;&lt;br /&gt;“The financial turmoil and extended problems in housing put the risks for the economy clearly to the downside — no question,” said Mickey Levy, chief economist for &lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Bank of America&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;. “But there are also factors that suggest a longer period of slower growth, but not recession.”&lt;br /&gt;&lt;br /&gt;One of the most worrisome signs in the jobs report was the government’s revision to its employment data for June and July. The new numbers show just under 70,000 jobs created in each of the two months, down from an average of almost 110,000 according to its initial estimates.&lt;br /&gt;&lt;br /&gt;In 2005 and 2006, the average monthly job growth was slightly above 200,000.&lt;br /&gt;The sharp slowdown this year suggests that some employers have already begun to see a downturn in their business and others believe that one is on the way. With falling house prices in most of the country and rising oil prices, consumer spending has slowed modestly in recent months.&lt;br /&gt;&lt;br /&gt;State and local government agencies, many of them dealing with budget shortfalls connected to the housing slump, have also cut an average of 27,000 jobs a month over the last three months. But economists said the declines in government employment, especially in schools, may have reflected seasonal quirks that made the job market look worse last month than it truly was.&lt;br /&gt;Hospitals, doctors’ offices, restaurants and retailers all added jobs in August.&lt;br /&gt;&lt;br /&gt;But the bright spots were few and far between. Employment in the finance sector — which includes real estate agencies and accounts for about 8.5 million of the country’s 138 million jobs — was flat in August, which could be a sign that the government numbers have not yet captured some of the mortgage-related job cuts now occurring.&lt;br /&gt;&lt;br /&gt;The surveys that made up the Labor Department report measured employment from Aug. 12 to Aug. 18, when the credit squeeze and subsequent stock market turmoil were under way but not fully felt. Since then, some large lenders like Countrywide and &lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Lehman Brothers&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt; have continued to lay off workers. And just today, &lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_14&quot;&gt;IndyMac&lt;/span&gt; &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_15&quot;&gt;Bancorp&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;, a large mortgage lender, said it would be cutting about 1,000 jobs over the next several months.&lt;br /&gt;&lt;br /&gt;“There probably was not that much influence in the data from the credit shock,” said Richard &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_16&quot;&gt;Berner&lt;/span&gt;, chief United States economist at &lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Morgan Stanley&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;. “So I think more weakness in the economy is likely. The economy is clearly losing momentum.”&lt;br /&gt;&lt;br /&gt;The extent to which the economy continues to lose momentum will determine the Fed’s course of action. The price of a futures contract tied to Fed policy shows that the central bank will probably cut the benchmark rate, now at 5.25 percent, to 4.5 percent by the end of the year. But a growing number of economists are saying that might not be soon enough.&lt;br /&gt;&lt;br /&gt;Mr. &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_17&quot;&gt;Gault&lt;/span&gt; of Global Insight, who is forecasting a half-point cut on Sept. 18, said it would send “an important message that the Fed sees there are real problems here, there’s a real threat, and it needs to have a response that’s commensurate to that threat.”&lt;br /&gt;&lt;br /&gt;Although the unemployment rate held steady at 4.6 percent, the percentage of adults with jobs fell to 62.8 percent, from 63 percent in July and a peak of 63.4 percent in December. The number of people who were neither working nor looking for work — and thus considered neither employed nor unemployed by the government — rose by almost 600,000 in August.&lt;br /&gt;&lt;br /&gt;“That’s a sign of economic weakness,” Mr. Anderson, of &lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Wells Fargo&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;, said. “Perhaps people just gave up trying to find jobs.”&lt;br /&gt;The number of people with part-time jobs who said they would prefer to full time has also been rising in recent months. In August, the Labor Department classified 4.5 million workers as “part time for economic reasons,” up from 4.3 million in July.&lt;br /&gt;&lt;br /&gt;Wage growth, which often lags behind job growth, did continue at roughly its recent pace. Average hourly earnings for rank-and-file workers — who make up about four-fifths of the work force — have increased 3.9 percent over the last year, to $17.50. Inflation has been running at about 2.5 percent a year.&lt;br /&gt;&lt;br /&gt;Wall Street had eagerly awaited the jobs report because it was the most significant economic data released since financial markets began to tumble in early August. If the jobs report had been merely lackluster, it might have been welcomed by investors as a sign that a Fed rate cut all but certain and the economy was still growing at a healthy pace.&lt;br /&gt;&lt;br /&gt;The reversal in job growth, however, was far different from the gain of roughly 100,000 jobs that Wall Street was expecting, raising worries that corporate profits will weaken as the market upheaval moves beyond the housing and financial sectors.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;&lt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;em&gt;All these data, statistics and above figure stats, I have complied through internet sites and other sources.&gt;&gt;&lt;/em&gt;&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/3952323970758023672/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/3952323970758023672?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3952323970758023672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3952323970758023672'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/03/fear-about-us-recession-impact-on-jobs.html' title='Fear About US Recession.. Impact on Jobs'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg71w_NPp3SfF40HXwfV8X4_Hgd_dyJAK9OdvmlhNYk5jij6wzaA7kbOHzBTLFsWmCMBqW62_mggUANkOeJnF9DO3u8g_U5F2gkBrAlp4vpmpZeFDLaqZGzZRW_Re1WHeeKZmuf8QEOq-g/s72-c/0908-biz-JOBS.gif" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-3338083766131799668</id><published>2008-03-21T11:26:00.000-07:00</published><updated>2008-03-21T14:17:38.190-07:00</updated><title type='text'>DON&#39;T CHALLENGE MECHANICAL FOR IT...</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;General Motors REPLY TO BILL GATES...&lt;/strong&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;span style=&quot;font-family:lucida grande;font-size:180%;&quot;&gt;A&lt;/span&gt;t a recent computer expo (COMDEX), Bill Gates reportedly compared the computer industry with the auto industry and stated, &quot;If GM had kept up with technology like the computer industry has, we would all be driving $25.00 cars that got 1,000 miles to the gallon.&quot; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;In response to Bill&#39;s comments, General Motors issued a press release Stating: &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&quot;If GM had developed technology like microsoft, we would all be driving cars with the following characteristics (and I just love this part, esp 7th point and 10&#39;th point):&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;1. For no reason whatsoever, your car would crash twice a day.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;2. Every time they repainted the lines in the road, you would have to buy a new car. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;3. Occasionally your car would die on the freeway for no reason. You would have to pull to the side of the road, close all of the windows, shut off the car, restart it, and reopen the windows before you could continue. For some reason you would simply accept this. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;4. Occasionally, executing a maneuver such as a left turn would cause your car to shut down and refuse to restart, in which case you would have to reinstall the engine.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;5. Macintosh would make a car that was powered by the sun, was reliable, five times as fast and twice as easy to drive - but would ! run on only five percent of the roads.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;6. The oil, water temperature, and alternator warning lights would all be replaced by a single &quot;This Car Has Performed an Illegal Operation&quot; warning light. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;7. The airbag system would ask &quot;Are you sure?&quot; before deploying. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;8. Occasionally, for no reason whatsoever, your car would lock you out and refuse to let you in until you simultaneously lifted the door handle, turned the key and grabbed hold of the radio antenna. (Read CTR-ALT-DEL)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;9. Every time a new car was introduced car buyers would have to learn how to drive all over again because none of the controls would operate in the same manner as the old car. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;10. You&#39;d have to press the &quot;Start&quot; button to turn the engine off. &quot;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/3338083766131799668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/3338083766131799668?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3338083766131799668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/3338083766131799668'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/03/dont-challenge-mechanical-for-it.html' title='DON&#39;T CHALLENGE MECHANICAL FOR IT...'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-4917988400146030948</id><published>2008-03-21T10:07:00.000-07:00</published><updated>2008-03-21T10:19:28.030-07:00</updated><title type='text'>Are you Serial Killer!!!</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Test your self...&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;A woman, while at the funeral of her own mother, met a guy whom she did not know. She thought this guy was amazing.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;She believed him to be her dream guy so much, that she fell in love with him right there, but never asked for his number and could not find him.&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color:#000099;&quot;&gt;A few days later she killed her sister.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;em&gt;Question:&lt;/em&gt;&lt;/strong&gt; What is her motive for killing her sister?&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/4917988400146030948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/4917988400146030948?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/4917988400146030948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/4917988400146030948'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/03/are-you-serial-killer.html' title='Are you Serial Killer!!!'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-6020127247154674515</id><published>2008-03-21T09:32:00.000-07:00</published><updated>2008-03-21T14:16:59.795-07:00</updated><title type='text'>Management Lesson...</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family:lucida grande;&quot;&gt;Big John doesn&#39;t pay!&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family:lucida grande;font-size:180%;&quot;&gt;O&lt;/span&gt;&lt;/strong&gt;ne fine day, a bus driver went to the bus garage, started his bus, and drove off along the route. No problems for the first few stops - a few people got on, a few got off, and things went generally well. At the next stop, however, a big hulk of a guy got on. Six feet eight, built like a wrestler, arms hanging down to the ground. He glared at the driver and said, &quot;&lt;em&gt;&lt;strong&gt;Big John doesn&#39;t pay&lt;/strong&gt;!&lt;/em&gt;&quot; and sat down at the back.&lt;br /&gt;&lt;br /&gt;Did I mention that the driver was five feet three, thin, and basically meek? Well, he was. Naturally, he didn&#39;t argue with Big John, but he wasn&#39;t happy about it. The next day the same thing happened - Big John got on again, made a show of refusing to pay, and sat down. And the next day, and the next! .&lt;br /&gt;&lt;br /&gt;This grated on the bus driver, who started losing sleep over the way Big John was taking advantage of him. Finally he could stand it no longer. He signed up for body building courses, karate, judo, and all that good stuff.&lt;br /&gt;&lt;br /&gt;By the end of the summer, he had become quite strong; what&#39;s more, he felt really good about himself. So on the next Monday, when Big John once again got on the bus and said, &quot;&lt;strong&gt;&lt;em&gt;Big John doesn&#39;t pay!&lt;/em&gt;&lt;/strong&gt;&quot;&lt;br /&gt;&lt;br /&gt;The driver stood up, glared back at the passenger, and screamed, &quot;And why not?&quot; With a surprised look on his face, Big John replied, &quot;&lt;strong&gt;&lt;em&gt;Big John&lt;/em&gt;&lt;/strong&gt; has a bus pass.&quot;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;Management Lesson :&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&quot;Be sure there is a problem in the first pla ce before working hard to solve one.&quot;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/6020127247154674515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/6020127247154674515?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/6020127247154674515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/6020127247154674515'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/03/management-lesson.html' title='Management Lesson...'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-6474822462371645404</id><published>2008-03-08T08:29:00.000-08:00</published><updated>2008-03-21T09:09:30.611-07:00</updated><title type='text'>What is ESP, Do you believe in?</title><content type='html'>&lt;span style=&quot;color:#000099;&quot;&gt;&quot;ESP,&lt;span style=&quot;color:#ff6666;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;font-family:arial;color:#000099;&quot;&gt;&lt;strong&gt;&lt;em&gt;extra-sensory perception&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;, is most commonly called the &quot;sixth sense.&quot; ESP is an ability beyond the normal.&lt;br /&gt;It means you have experiences with spirits, future events, and psychic dreams. ESP is an ability that most cant control, but a lot of people are gaining knowledge, and warnings from it. So ESP is what it says: Extra Sensory &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_0&quot;&gt;Precept ion&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;I personally believes in; there is some super natural happening that is beyond our control. There is something which is controlling ourselves. I strongly believe in &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_1&quot;&gt;palmistry&lt;/span&gt; , astrology, numerology and the behaviour psychology of humans studies . There could be any future predictions can be done on the combination of all these and that too very accurate.&lt;br /&gt;&lt;br /&gt;There would be &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_2&quot;&gt;&lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_0&quot;&gt;many&lt;/span&gt;&lt;/span&gt; who disagree with me, in this context.&lt;br /&gt;&lt;br /&gt;I believe every one is having some sixth sense or ESP , which could clearly indicate about the good or bad happenings , in the form of different omens . Everyone is having the ability, whether or not its just sensing things, or dreaming things. Whether the &lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_3&quot;&gt;&lt;span class=&quot;blsp-spelling-error&quot; id=&quot;SPELLING_ERROR_1&quot;&gt;people&lt;/span&gt;&lt;/span&gt; believe it or not, this is having all of us.&lt;br /&gt;It&#39;s just a matter of sensing and concentrating over.&lt;br /&gt;&lt;br /&gt;There are many evidences which is helpful in demonstrating that ESP does exist. I was going through some forum or some book, that ESP cannot be explained or quantified by physical laws; and furthermore, that the mind (consciousness) and the brain are two separate entities. Simultaneously, research in quantum physics points to the existence of a second, &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_2&quot;&gt;non material&lt;/span&gt; universe. So, the time is fast approaching when Western scientists must come to terms with the Eastern mystical concept: &quot;that an extrasensory force exists in another realty, and intersects and integrates with the physical world.&quot;&lt;br /&gt;&lt;br /&gt;There are much more studies or the &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_3&quot;&gt;believing&lt;/span&gt; which could be framed in this categories , like&lt;br /&gt;if someone can tell a lot about you without knowing you. This is known as cold reading, and it&#39;s based upon observing the way you look and act. Like it can easily be guessed , the way you dress tells a lot about your social standing, and there are lots of other little things to look for. This I guess we can develop the ability using Human &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_4&quot;&gt;Psychology&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;One more thing I am interested in is Aura. Aura is an energy around you. Studies evolves around energy colors like : Blue, green, red, black, white, orange, yellow, sky blue.&lt;br /&gt;&lt;br /&gt;But I don&#39;t know much details about this , and &lt;span class=&quot;blsp-spelling-corrected&quot; id=&quot;SPELLING_ERROR_4&quot;&gt;definitely&lt;/span&gt; would like to know much about Aura. That how these energy color impact on us positively or negatively . How we can make the maximum benefits of these color energies.&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/6474822462371645404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/6474822462371645404?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/6474822462371645404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/6474822462371645404'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/03/what-is-esp-do-you-believe-in.html' title='What is ESP, Do you believe in?'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-1538020958286138332</id><published>2008-03-08T03:28:00.000-08:00</published><updated>2008-03-21T13:10:35.265-07:00</updated><title type='text'>Thailand</title><content type='html'>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqlIXrAmqY04ggIK4sF-nWDxkd85ozwCG0w-HiBT1vEaa4sFO7N2eojRwOvnxhybLlZVYmBqcHeehhezQQgnrhiiHrDs_0-poi9PmmZA7cahp_wfHodAZ7HZ1cAybB96H8ddGBQFneWas/s1600-h/DSC01387.JPG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5175332708772431442&quot; style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqlIXrAmqY04ggIK4sF-nWDxkd85ozwCG0w-HiBT1vEaa4sFO7N2eojRwOvnxhybLlZVYmBqcHeehhezQQgnrhiiHrDs_0-poi9PmmZA7cahp_wfHodAZ7HZ1cAybB96H8ddGBQFneWas/s320/DSC01387.JPG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Another beautiful destination of southeast destination... Thailand. Captital is Bangtok &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;It is having rich natural beauty, inspiring temples, and famous for the it;s hospitality. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/1538020958286138332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/1538020958286138332?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/1538020958286138332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/1538020958286138332'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/03/thailand.html' title='Thailand'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqlIXrAmqY04ggIK4sF-nWDxkd85ozwCG0w-HiBT1vEaa4sFO7N2eojRwOvnxhybLlZVYmBqcHeehhezQQgnrhiiHrDs_0-poi9PmmZA7cahp_wfHodAZ7HZ1cAybB96H8ddGBQFneWas/s72-c/DSC01387.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8088248820456220052.post-5386006425245840026</id><published>2008-03-08T02:29:00.000-08:00</published><updated>2008-03-21T13:09:50.828-07:00</updated><title type='text'>Taiwan</title><content type='html'>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicSEcUG2ASdJTvF9n83adWosCFoG0nJ6BCfAZA61KNAWT5f5dIa96qboHjQ9Zvo7kjqzhFP89JSx1F_9zRCGx9QaXkP2LekNrFOHZvxkJCTAyjXT6nUs-qsaBT7JeC4njTHqG2nm_iymA/s1600-h/DSC01439.JPG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5175320420870997490&quot; style=&quot;FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 502px; CURSOR: hand; HEIGHT: 240px&quot; height=&quot;240&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicSEcUG2ASdJTvF9n83adWosCFoG0nJ6BCfAZA61KNAWT5f5dIa96qboHjQ9Zvo7kjqzhFP89JSx1F_9zRCGx9QaXkP2LekNrFOHZvxkJCTAyjXT6nUs-qsaBT7JeC4njTHqG2nm_iymA/s320/DSC01439.JPG&quot; width=&quot;436&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;strong&gt;&lt;span style=&quot;font-size:180%;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;&lt;span style=&quot;font-size:180%;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;&lt;span style=&quot;font-size:180%;&quot;&gt;Amazing Taiwan...&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;&lt;span style=&quot;font-size:180%;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Taiwan is located in Southeast Asia, to the southwest of to the west is the Taiwan Strait beyond which is China.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Taipei, is the capital to this small Island. Taiwan is having it&#39;s own repo and identity in Southend Asia.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;Taiwan is like a small, crowded island filled mostly with electronic factories, and if you stay in Taipei or along the west coast you might indeed maintain the illusion, but the island has some surprisingly lofty peaks and it&#39;s definitely worthwhile to explore the mountains and national parks of interior. &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;It&#39;s so beautiful hitech small and enchanting country.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDjW2GsPxH741vcFDHJrAU-UKt7fLvVgzaVBewoFof_W5QNhdIk1cfefwDrGn4y7QiTH2E3JIqNDKl9MMAUC6KPVnw-jLSAQdvqkPV0J1PEywuKWWA15kdYHBvP3pP1aeB5hsCsscg0xM/s1600-h/DSC01431.JPG&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5175325905544234498&quot; style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDjW2GsPxH741vcFDHJrAU-UKt7fLvVgzaVBewoFof_W5QNhdIk1cfefwDrGn4y7QiTH2E3JIqNDKl9MMAUC6KPVnw-jLSAQdvqkPV0J1PEywuKWWA15kdYHBvP3pP1aeB5hsCsscg0xM/s320/DSC01431.JPG&quot; border=&quot;0&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQkBZBQH3rojO803lMpL_Fh1KThg05PJ8AKC4U0x1qvYgi4NYU7USR3WgExEooNY1M4qRRXfhCynLNWlLUESg0OzudAzlSC9kcbhyphenhyphenO_hgjWISxY7dEiNsN9gVRRkb6DnCKksX89yOnLKQ/s1600-h/DSC01432.JPG&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5175325918429136402&quot; style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQkBZBQH3rojO803lMpL_Fh1KThg05PJ8AKC4U0x1qvYgi4NYU7USR3WgExEooNY1M4qRRXfhCynLNWlLUESg0OzudAzlSC9kcbhyphenhyphenO_hgjWISxY7dEiNsN9gVRRkb6DnCKksX89yOnLKQ/s320/DSC01432.JPG&quot; border=&quot;0&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-ILXlUmdENJLVOXM0mhChfDHXYJe4WJ34u6kbcnKcvTxHHmQuoXSKrfdE52-Kfc9xobNjdntbK7ZtnQtdYAdQ35BeFCMpY2GXJAYWGJCUwSflcXl1MN9RYKCk9lGkUqUBQztgMw2yiKU/s1600-h/DSC01433.JPG&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5175325922724103714&quot; style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-ILXlUmdENJLVOXM0mhChfDHXYJe4WJ34u6kbcnKcvTxHHmQuoXSKrfdE52-Kfc9xobNjdntbK7ZtnQtdYAdQ35BeFCMpY2GXJAYWGJCUwSflcXl1MN9RYKCk9lGkUqUBQztgMw2yiKU/s320/DSC01433.JPG&quot; border=&quot;0&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2IC_vKu6xteR-BimMlgzcL47Ktye0zhmC0utHgKNVHSL6MJs3f-SKdU0kSqBW5Sj4Ucp40f-y96Rhmo5F-X3F-iqCx3cwvZUkXK3tK7b1PV-Cbxb-3gEPTixDYrcNV1Osu2pf_RXwtCU/s1600-h/DSC01436.JPG&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5175325931314038322&quot; style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2IC_vKu6xteR-BimMlgzcL47Ktye0zhmC0utHgKNVHSL6MJs3f-SKdU0kSqBW5Sj4Ucp40f-y96Rhmo5F-X3F-iqCx3cwvZUkXK3tK7b1PV-Cbxb-3gEPTixDYrcNV1Osu2pf_RXwtCU/s320/DSC01436.JPG&quot; border=&quot;0&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-7654507722723127&quot;;
/* 110x32, created 4/18/08 */
google_ad_slot = &quot;1765398427&quot;;
google_ad_width = 110;
google_ad_height = 32;
google_cpa_choice = &quot;&quot;; // on file
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://awaitedfriend.blogspot.com/feeds/5386006425245840026/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8088248820456220052/5386006425245840026?isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/5386006425245840026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8088248820456220052/posts/default/5386006425245840026'/><link rel='alternate' type='text/html' href='http://awaitedfriend.blogspot.com/2008/03/taiwan.html' title='Taiwan'/><author><name>Nikky</name><uri>http://www.blogger.com/profile/10797037652081285914</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicSEcUG2ASdJTvF9n83adWosCFoG0nJ6BCfAZA61KNAWT5f5dIa96qboHjQ9Zvo7kjqzhFP89JSx1F_9zRCGx9QaXkP2LekNrFOHZvxkJCTAyjXT6nUs-qsaBT7JeC4njTHqG2nm_iymA/s72-c/DSC01439.JPG" height="72" width="72"/><thr:total>0</thr:total></entry></feed>