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

<channel>
	<title>McGelligot on the Spot</title>
	<atom:link href="http://www.mcgelligot.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mcgelligot.com</link>
	<description>Thoughts of a Web Publisher</description>
	<lastBuildDate>Fri, 13 Apr 2012 01:16:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>PHP Cookie Comboes</title>
		<link>http://www.mcgelligot.com/2012/04/12/php-cookie-comboes/</link>
		<comments>http://www.mcgelligot.com/2012/04/12/php-cookie-comboes/#comments</comments>
		<pubDate>Fri, 13 Apr 2012 01:16:27 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[Php Coding]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=524</guid>
		<description><![CDATA[I have been working a lot with PHP lately. Today I had an unmerciful time with cookies. I was almost done with a script when cookie trouble led me to go back and tear the whole script apart. It turns out that my problem lie in an imperfect understanding of how cookies work. First, you [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working a lot with PHP lately. Today I had an unmerciful time with cookies. I was almost done with a script when cookie trouble led me to go back and tear the whole script apart. It turns out that my problem lie in an imperfect understanding of how cookies work. First, you should know that they can not be created after any output. This is well known, however there is more to it. I made up the following test script to illustrate the possibilities.</p>
<blockquote><p>//Just set a cookie.<br />
setcookie(&#8216;test1cook&#8217;, &#8216;testval1&#8242;, time()+3600);</p>
<p>//Set a cookie and set it again.<br />
setcookie(&#8216;test2cook&#8217;, &#8216;testval2&#8242;, time()+3600);<br />
//setcookie(&#8216;test2cook&#8217;, &#8216;testval2redux&#8217; time()+3600); will throw a parse error.</p>
<p>//Set a cookie unset it, and reset.<br />
setcookie(&#8216;test3cook&#8217;, &#8216;testval3&#8242;, time()+3600);<br />
setcookie(&#8216;test3cook&#8217;, &#8216;testval3&#8242;, time()-3600);<br />
setcookie(&#8216;test3cook&#8217;, &#8216;testval3reset&#8217;, time()+3600);</p>
<p>//Set a cookie and use the unset function.<br />
setcookie(&#8216;test4cook&#8217;, &#8216;testval4&#8242;, time()+3600);<br />
unset($_COOKIE['test4cook']);</p>
<p>//Set a cookie and attempt to change its contents.<br />
setcookie(&#8216;test5cook&#8217;, &#8216;testval5&#8242;, time()+3600);<br />
$_COOKIE['test5cook'] = &#8216;tesval5_overwritten&#8217;;</p>
<p>//Print before setting a cookie.<br />
print &#8221; &#8220;;<br />
setcookie(&#8216;test6cook&#8217;, &#8216;testval6&#8242;, time()+3600);</p></blockquote>
<p>Run this script and then run the following directly after:</p>
<blockquote><p>print &#8216;&lt;br /&gt;test1cook = &#8216;;<br />
print $_COOKIE['test1cook'];<br />
print &#8216;&lt;br /&gt;test2cook = &#8216;;<br />
print $_COOKIE['test2cook'];<br />
print &#8216;&lt;br /&gt;test3cook = &#8216;;<br />
print $_COOKIE['test3cook'];<br />
print &#8216;&lt;br /&gt;test4cook = &#8216;;<br />
print $_COOKIE['test4cook'];<br />
print &#8216;&lt;br /&gt;test5cook = &#8216;;<br />
print $_COOKIE['test5cook'];<br />
print &#8216;&lt;br /&gt;test6cook = &#8216;;<br />
print $_COOKIE['test6cook'];</p></blockquote>
<p>The results will look something like this on your browser:</p>
<p>test1cook = testval1<br />
test2cook = testval2<br />
test3cook = testval3reset<br />
test4cook = testval4<br />
test5cook = testval5<br />
test6cook =</p>
<p>As you can see in number 2, directly reseting the cookie does not change it in fact it throws an error. It must first be unset as in number three. Simply using the &#8220;unset()&#8221; function does nothing as illustrated in number 4. Rewriting the cookie variable also does nothing. And, of course, outputing anything before a cookie is made will result in no cookie.</p>
<p>Now the results here deserve another looksee. Because if a subsequent script runs some of these lines there will be some changed results:</p>
<blockquote><p>//Set a cookie and set it again.<br />
setcookie(&#8216;test2cook&#8217;, &#8216;testval2&#8242;, time()+3600);</p>
<p>//Set a cookie and use the unset function.<br />
unset($_COOKIE['test4cook']);</p>
<p>//Set a cookie and attempt to change its contents.<br />
$_COOKIE['test5cook'] = &#8216;tesval5_overwritten&#8217;;</p></blockquote>
<p>With the same print statements as above run concurrently, note these results:</p>
<p>test1cook = testval1<br />
test2cook = testval2<br />
test3cook = testval3reset<br />
test4cook =<br />
test5cook = tesval5_overwritten<br />
test6cook =</p>
<p>Notice that now there is no error on number 2.  On number 4 the cookie is shown as unset, and number five is overwritten where it was not in the first go round, because the cookie is not available in the same run in which it is created.</p>
<p>Interestingly enough, another running of the print statement nets the following.</p>
<p>test1cook = testval1<br />
test2cook = testval2<br />
test3cook = testval3reset<br />
test4cook = testval4<br />
test5cook = testval5<br />
test6cook =</p>
<p>This shows that the changes to the cookie array in 4 and 5 were only within the script. They did not effect the information stored on the browser, which can only be changed by first destroying the cookie and then recreating it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/04/12/php-cookie-comboes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The mySQl FROM_DAYS Function</title>
		<link>http://www.mcgelligot.com/2012/03/09/the-mysql-from_days-function/</link>
		<comments>http://www.mcgelligot.com/2012/03/09/the-mysql-from_days-function/#comments</comments>
		<pubDate>Fri, 09 Mar 2012 15:30:46 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=519</guid>
		<description><![CDATA[I find it interesting how seldom-used functions are often poorly documented. In the course of my research on SQL I have run across several of these types of functions. In this case we have the FROM_DAYS() function. This is what I wrote for the desk reference: The FROM_DAYS() function can only be used for dates after [...]]]></description>
			<content:encoded><![CDATA[<p>I find it interesting how seldom-used functions are often poorly documented. In the course of my research on SQL I have run across several of these types of functions. In this case we have the FROM_DAYS() function. This is what I wrote for the desk reference:</p>
<blockquote><p>The FROM_DAYS() function can only be used for dates after the year 1582 (in most of Europe, but not England or Russia) because it was this year the Gregorian Calendar came into effect. The date adjustment made on that date is not taken into account in this function. This is meant to take the number of days since the date represented by 0000-00-00, or the first day <em>anno domini</em>. What is strange about it is that input less than 365 returns simply “0000-00-00”, but numbers of days after that will act properly. Example:</p>
<p>SELECT FROM_DAYS(367)</p>
<p>will result in the date “0001-00-02”.</p></blockquote>
<p>Not sure why the function does not work for numbers less than 365. I tested the function for negative numbers as well, and there was no go there either. I suppose the creator of this function assumed that people would only be using it for dates after the Gregorian calendar was put into place. He is probably correct in this regard. Still, I was surprised to see it. Also, many examples on the web, especially the one on the oracle site for mySQL actually have incorrect output in their example when compared with the output I found in testing. Their results were exactly seven years off. Probably a typo.</p>
<blockquote></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/03/09/the-mysql-from_days-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mySQL DAYNAME() Function</title>
		<link>http://www.mcgelligot.com/2012/02/27/mysql-dayname-function/</link>
		<comments>http://www.mcgelligot.com/2012/02/27/mysql-dayname-function/#comments</comments>
		<pubDate>Mon, 27 Feb 2012 18:12:24 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=516</guid>
		<description><![CDATA[It is easy to get the current date time in mySQL. The simple function is NOW(). This function can be used inside of many other functions including the DAYNAME function which returns the day of the week. The DAYNAME() function returns the name of the day of the week for a particular date. Example: SELECT [...]]]></description>
			<content:encoded><![CDATA[<p>It is easy to get the current date time in mySQL. The simple function is NOW(). This function can be used inside of many other functions including the DAYNAME function which returns the <a href="http://www.indepthinfo.com/weekdays/">day of the week</a>.</p>
<p>The DAYNAME() function returns the name of the day of the week for a particular date. Example:</p>
<p>SELECT DAYNAME(&#8217;2012-05-15&#8242;)</p>
<p>will yield “Tuesday”. The function requires a parameter. Simply calling the function will not return the current day. To get the day today in mySQL the following will work:</p>
<p>SELECT DAYNAME(NOW())</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/02/27/mysql-dayname-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The MID() Function in SQL</title>
		<link>http://www.mcgelligot.com/2012/02/15/the-mid-function-in-sql/</link>
		<comments>http://www.mcgelligot.com/2012/02/15/the-mid-function-in-sql/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 20:59:33 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=511</guid>
		<description><![CDATA[Okay, you are given the MAX () function which finds the largest item in a column. You get a hold of the MIN() function which finds the lowest number in a column. Now, you are handed the MID() function as an SQL programmer. What does the MID() function do? Trick question, I know. You are [...]]]></description>
			<content:encoded><![CDATA[<p>Okay, you are given the MAX () function which finds the largest item in a column. You get a hold of the MIN() function which finds the lowest number in a column. Now, you are handed the MID() function as an SQL programmer. What does the MID() function do? Trick question, I know. You are right it does NOT find the middle number in a column.</p>
<p>The MID() function in SQL is used to extract a substring from a larger string. Syntax:</p>
<p>MID(column_or_string, beginning_position, length)</p>
<p>The column or string parameter is the string to be looked at. The beginning position is where to start. Each character position will have a number beginning with 1 (other languages in similar functions will often begin at zero). The length is optional; it tells how many characters, including the first one, are to be included in the substring to be extracted. The length parameter is optional. If left off, the beginning position through the remainder of the string will be the result. This function would be a good way to, for example, come up with the last four digits of a credit card number. For example:</p>
<p>SELECT MID(&#8217;1234567890654321&#8242;, 13, 4)</p>
<p>Will render: &#8220;4321&#8243;.</p>
<p>What a handy <a href="http://www.indepthinfo.com/sql-functions/">SQL function</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/02/15/the-mid-function-in-sql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quote Marks in Parameters in SQL</title>
		<link>http://www.mcgelligot.com/2012/02/02/quote-marks-in-parameters-in-sql/</link>
		<comments>http://www.mcgelligot.com/2012/02/02/quote-marks-in-parameters-in-sql/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 15:14:56 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=506</guid>
		<description><![CDATA[Often in SQL examples you will see quote marks around a string that is being operated upon. Generally, a straight string is not often used in general practice. It is more likely to be a variable and more likely yet to be a column. Having or not having quote marks can make a huge difference in [...]]]></description>
			<content:encoded><![CDATA[<p>Often in SQL examples you will see quote marks around a string that is being operated upon. Generally, a straight string is not often used in general practice. It is more likely to be a variable and more likely yet to be a column. Having or not having quote marks can make a huge difference in the results given by a function. We will use the LEFT() function as an example. The left function is a way to get the leftmost characters from a<br />
string.</p>
<p><strong>SELECT LEFT(&#8216;string&#8217;, number_of_characters)</strong></p>
<p>To get the 7 left-most characters from a specific column in every row of a table the following would work:</p>
<p><strong>SELECT LEFT(name, 7) FROM </strong><strong>fict_chars</strong></p>
<p>It should be noted for this and for other functions that if the string is in single quotes that SQL will see it as a literal string. If it is not, SQL will see it as a column. Thus, had we used &#8216;name&#8217;, the result would have been “name” <em>for each row</em>, and not the actual name drawn from the specified column.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/02/02/quote-marks-in-parameters-in-sql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL: INSERT Statement vs. INSERT() Function</title>
		<link>http://www.mcgelligot.com/2012/02/01/sql-insert-statement-vs-insert-function/</link>
		<comments>http://www.mcgelligot.com/2012/02/01/sql-insert-statement-vs-insert-function/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 20:39:47 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=498</guid>
		<description><![CDATA[Generally I am a fan of SQL and how it works, but there is a function that I find irritating. Not because of what it does, but because of its name, &#8220;INSERT()&#8221;. Why, oh why would you give a function the same name as a statement that already exists? I am sure there is a story behind this and [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_502" class="wp-caption alignleft" style="width: 210px"><a href="http://www.mcgelligot.com/wp-content/uploads/2012/02/twins.png"><img class="size-full wp-image-502" title="Twins - not" src="http://www.mcgelligot.com/wp-content/uploads/2012/02/twins.png" alt="Twins they are not." width="200" height="156" /></a><p class="wp-caption-text">Just because they look alike...</p></div>
<p>Generally I am a fan of SQL and how it works, but there is a function that I find irritating. Not because of what it does, but because of its name, &#8220;INSERT()&#8221;. Why, oh why would you give a function the same name as a statement that already exists? I am sure there is a story behind this and it probably goes back to family squabbles occuring in the 10th century AD, or at least to the 1970s when Chamberlin and Boyce first conceived RDBMS. Suffice it to say that it could cause confusion when quickly glancing over code or when newcomers are learning the language.</p>
<p>Just know that the two are different. The statement is the familiar, much used <a href="http://www.indepthinfo.com/sql/insert-into-sql.php">instruction to the database to add a row to a table</a>.</p>
<p><strong>INSERT INTO table (column1, column2, etc.)</strong><br />
<strong>VALUES(&#8216;value1&#8242;, &#8216;value2&#8242;, &#8216;etc.&#8217;)</strong></p>
<p>Meanwhile, the INSERT() function is designed to replace text within a string. It does this using the following syntax:</p>
<p><strong>INSERT(&#8216;string&#8217;, position, length, &#8216;inserted_string&#8217;)</strong></p>
<p>The first parameter is the string to be operated upon. The position is where the insertion should begin. Length defines how many characters should be replaced. The fourth parameter is the string to be injected.</p>
<p>A simple example:</p>
<p><strong>SELECT INSERT(&#8216;Jane Porter was the heroine in Harry Potter.&#8217;, 32, 12, &#8216;Tarzan&#8217;)</strong></p>
<p>Our result, &#8220;Jane Porter was the heroine in Tarzan.&#8221; Note that the character specified in the second parameter is over-written as are the subsequent 11 characters, 12 characters in all.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/02/01/sql-insert-statement-vs-insert-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The SQL FIELD() Function</title>
		<link>http://www.mcgelligot.com/2012/01/31/the-sql-field-function/</link>
		<comments>http://www.mcgelligot.com/2012/01/31/the-sql-field-function/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 20:12:22 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=496</guid>
		<description><![CDATA[The FIELD() function is, in a sense, the inverse of ELT() in that ELT will return a string from a specific numbered position in an array of strings, while FIELD() returns the field position that matches (not the same as &#8220;contains&#8221;) the string listed as the first parameter. Syntax: SELECT FIELD(&#8216;string_to_match&#8217;, &#8216;string1&#8242;, &#8216;string2&#8242;, &#8216;etc.&#8217;) Here [...]]]></description>
			<content:encoded><![CDATA[<p>The FIELD() function is, in a sense, the inverse of ELT() in that ELT will return a string from a specific numbered position in an array of strings, while FIELD() returns the field position that matches (not the same as &#8220;contains&#8221;) the string listed as the first parameter. Syntax:</p>
<p><strong>SELECT FIELD(&#8216;string_to_match&#8217;, &#8216;string1&#8242;, &#8216;string2&#8242;, &#8216;etc.&#8217;)</strong></p>
<p>Here is the field function in action:</p>
<p><strong>SELECT FIELD(&#8216;Scarlet&#8217;, &#8216;Melanie&#8217;, &#8216;Rhett&#8217;, &#8216;Scarlet&#8217;, &#8216;Ashley&#8217;, &#8216;Scarletta&#8217;)</strong></p>
<p>This will return &#8220;3&#8243;. Though 5 contains &#8220;Scarlet&#8221;, it is not equivalent to &#8220;Scarlet&#8221;. Had position 5 also been equivalent to &#8220;Scarlet&#8221; the result would still have been only &#8220;3&#8243;. Later matches are ignored.</p>
<p>Both FIELD() and ELT() are a kind of test. They can be used when you are looking for one item out of a group of alternatives. The result can be cranked through a series of if/then statements or switch/case to determine a course of action. This is another place where some of the work done by the server can be taken on by the database.</p>
<p><a href="http://www.indepthinfo.com/sql-functions/">Read more about SQL Functions.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/01/31/the-sql-field-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EXPORT_SET() SQL Function, Why?</title>
		<link>http://www.mcgelligot.com/2012/01/30/export_set-sql-function-why/</link>
		<comments>http://www.mcgelligot.com/2012/01/30/export_set-sql-function-why/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 01:29:40 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=493</guid>
		<description><![CDATA[In the course of writing my book on SQL, I had the opportunity to explore a function I had not heard of before, the EXPORT_SET() function. In my investigations about this function, I discovered that I am not the only person dubious about it. The thing is, every explanation I could find for it was [...]]]></description>
			<content:encoded><![CDATA[<p>In the course of writing my book on SQL, I had the opportunity to explore a function I had not heard of before, the <a href="http://www.indepthinfo.com/sql-functions/export-set-function-sql.php">EXPORT_SET() function</a>. In my investigations about this function, I discovered that I am not the only person dubious about it. The thing is, every explanation I could find for it was nearly word for word the same down to the examples. This was a good indication that the authors were just parroting each other. When I write about a function I try to use it. At least I will go to the mySQL interface and try out a few variations on it. In this way I get a more intimate knowledge than is possible just reading something someone else has written, especially when that something else is incomplete.</p>
<p>My problem with the EXPORT_SET() function is that I was having trouble figuring out what I could do with it. So I investigated this aspect for an hour or two, surfing here and there I found nothing that would explain why you would ever want to use a function that basically returns an array of bits that comprise a number and lists them in reverse order. Obviously someone wrote this function for a vital purpose. I thought the purpose mignt be found in the name. EXPORT is a clue. After thorough investigation I see it has been used to port data between applications. A few thought experiments made me realize it could also be used in security as a means of encrypting data. I am sure there is more to it.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/01/30/export_set-sql-function-why/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Internet Security: Why Log Out?</title>
		<link>http://www.mcgelligot.com/2012/01/26/internet-security-why-log-out/</link>
		<comments>http://www.mcgelligot.com/2012/01/26/internet-security-why-log-out/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 17:09:55 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=488</guid>
		<description><![CDATA[You know why it is important to log into your account on your various secure destinations.  First, you can&#8217;t access your info unless you do! But more importantly no one else can access the info unless he or she can get your user name and password.  So your account is safe right? Wrong, there are devious ways [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_491" class="wp-caption alignleft" style="width: 260px"><a href="http://www.mcgelligot.com/wp-content/uploads/2012/01/security-shield.png"><img class="size-full wp-image-491" title="security-shield" src="http://www.mcgelligot.com/wp-content/uploads/2012/01/security-shield.png" alt="Security Shield" width="250" height="285" /></a><p class="wp-caption-text">Be Secure...LOG OUT!</p></div>
<p>You know why it is important to log into your account on your various secure destinations.  First, you can&#8217;t access your info unless you do! But more importantly no one else can access the info unless he or she can get your user name and password.  So your account is safe right?</p>
<p>Wrong, there are devious ways of getting your user name and password. One easy way is through packet sniffing. I am convinced that packet sniffing is a routine operation around hotels, restaurants, etc. I have had my servers broken into TWICE while I was on vacation. Both times it was after I logged into an FTP account. Malware was installed both times and it was alot of work to get things straightened out, not to mention the fact that all that time spent trying to fix the problem put a damper on my vacations.</p>
<p>Well, there is no better learned lessons than those acquired in the school of hard knocks. I put my servers on SSH. That was just the start. I reviewed all php code and forms on the site. I created software to monitor changes to vulnerable pages and severely limited access to website code. Any suspicious onsite changes are logged and I am notified by email. That was two or three years ago, and I have been unassaulted since. However, without taking further precautions, I could still have been vulnerable to attack. In fact we are always vulnerable to attack, even with seemingly secure accounts especially if we go about getting into accounts while using publicly provided internet. Because through packet sniffing (someone watching the flow of traffic on a particular hub) doesn&#8217;t always need a password and a user name. They can simply piggy-back their way into your account by mimmicking your authentication process and headers. As long as your account is open a hacker could theoretically operate inside your account. The way to preclude or at least foreshorten this possibility is to LOG OUT!</p>
<p>I presume you are already savy enough to know that you must log out of accounts and close the browser on public computers so the next user can&#8217;t access your account.</p>
<p>For the user taking advantage of a &#8220;hotspot&#8221;, the best policy, especially in a public place is to make sure to have a secure connection (look for the green bar on the Url at the top of the page), know what you want to do when you log into your account, get your business done, and don&#8217;t forget to log out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/01/26/internet-security-why-log-out/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google AdSense Does NOT Appear on Kindle Fire</title>
		<link>http://www.mcgelligot.com/2012/01/25/google-adsense-does-not-appear-on-kindle-fire/</link>
		<comments>http://www.mcgelligot.com/2012/01/25/google-adsense-does-not-appear-on-kindle-fire/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 01:37:46 +0000</pubDate>
		<dc:creator>mcgelligot</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[Statistics]]></category>

		<guid isPermaLink="false">http://www.mcgelligot.com/?p=485</guid>
		<description><![CDATA[I just got a Kindle Fire. I decided that I should take a look at my own websites just to see how they looked on the 7 inch screen. The sites appeared okay, but much to my wondering eyes did NOT appear&#8230; well there was no miniature sleigh or eight tiny reindeer, but neither were [...]]]></description>
			<content:encoded><![CDATA[<p>I just got a Kindle Fire. I decided that I should take a look at my own websites just to see how they looked on the 7 inch screen. The sites appeared okay, but much to my wondering eyes did NOT appear&#8230; well there was no miniature sleigh or eight tiny reindeer, but neither were there any Adsense ads.</p>
<p>What to do? What to do? I could write an application that would change it to a different ad, maybe Chitika, when a Kindle browser shows up. In fact, I probably will do that for one or two of my sites, but so far Kindle web traffic is not high enough to worry about it too much. I have not seen too much traffic thus far from the fire, but it is sure to grow the way the item has been selling. On the other hand it seems to be a device more in tune with selling books, mags, music, and movies. The internet side will probably grow slowly. No doubt the situation can change as well.</p>
<p>In any case, I find Amazon&#8217;s approach interesting and also disturbing. Blocking ads on my websites is like stealing content from me. It is amazing how the big boys never play by the rules. The only way I can continue to create content is to get paid for doing so. Meanwhile I am sure the boys at Amazon think they are only tweaking Google.</p>
<p>It&#8217;s just one more development to react to.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcgelligot.com/2012/01/25/google-adsense-does-not-appear-on-kindle-fire/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

