jwallace.us

tech, tunes, and other stuff

Adobe Ends Flash Support for PPC

If you have a PowerPC based Mac, the last version of Adobe Flash that will run on your computer is version 10.1.102.64. This is because as of version 10.2 (released 08-Feb-11) Adobe will only support Intel Macs from this point forward. You can find the old version in Adobe’s Flash Archives. Specifically, version 10.1.102.64 is here. If you need to find which Flash version is installed on your computer, you can find that out here.

Warning: Unknown: Your Script Possibly Relies on a Session Side-effect…

If you get this error in PHP:

  • Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively in Unknown on line 0*

It is because you have assigned a session variable with a NULL value, and then have assigned a value to a  variable with the same name in the global scope.  For example:

1
2
3
4
5
<?php
   session_start();
   $_SESSION['test'] = NULL;
   $test = "This example will generate an error.";
?>

Developing With Apache in OSX

This works for both Leopard (10.5) and Snow Leopard (10.6).  There are a couple of things you need to do.  First you need to make it so Apache will serve up web  documents from your Sites folder.  Next you need to set up virtual hosting.  Here’s how to do both .

Go into the /etc/apache2/users directory & using sudo create a .conf file for your user account.  If your username is geronimo, then enter this into geronimo.conf:

1
2
3
4
5
6
<Directory "/Users/geronimo/Sites/">
   Options Indexes MultiViews
   AllowOverride None
   Order allow,deny
   Allow from all
</Directory>

Now, in order to add virtual hosting.  Lets assume you want to name your virtual host local.me, add this next:

1
2
3
4
5
NameVirtualHost *:80
<virtualhost *:80>
   DocumentRoot /Users/gerinomo/Sites/local.me
   ServerName local.me
</virtualhost>

Next, you’ll need to edit the /etc/hosts file and add this line:

127.0.0.1       local.me

Thats it.  Just restart apache & you’re done.  You’ll now be able to serve up web docs located in your Sites/local.me folder at http://local.me

Cookie Monster

We need to have cookies enabled in order to do a lot of things we like to do on the web. However, cookies can be a privacy issue. Few people like the concept of an Orwellian “big brother” watching everything they do, and likewise most people don’t want their web browsing behavior tracked by cookies. Setting your browser’s cookie setting to not accept third party cookies is a good precaution. Likewise, periodically clearing out your cookies is another good thing to do. However, would you believe if you declare total war on web cookies by enabling private browsing mode in your browser it might not be enough? Oh it will take care of your standard cookies, but not supercookies.  What, young grasshopper?  You’ve never heard of supercookies?

One type of a supercookie is an evercookie.

evercookie is a javascript API available that produces extremely persistent cookies in a browser. Its goal is to identify a client even after they’ve removed standard cookies, Flash cookies (Local Shared Objects or LSOs), and others.”  Read more  about evercookies here:  evercookies – virtually irrevokable persistent cookies

More information about Flash cookies can be found here: Flash Cookie Researchers Spark Quantcast Change

Instructions on how to clear out your Flash cookies can be found here: Adobe: Global Security Settings panel

More information about supercookies can be found here: New Cookie Technologies: Harder To See And Remove, Widely Used To Track You

So lets declare war on these supercookies:

For Firefox, you can use NoScript, which will provide you with extra protection.  For Safari, you can use Ghostery and  Javascript Blacklist at Apple’s Extensions Gallery.  Ghostery is also avaliable for Chrome, Firefox, and Internet Exploder.  Also available for FireFox is an add-on called RequestPolicy, which can increase your privacy & security by giving you control over cross site requests.

Apart from tracking cookies is using device fingerprinting to track web browsers and other devices.  You can read about that here:

Setting Up PHP to Work With MySQL in OSX SL

In OSX Snow Leopard, you may be seeing errors like these:

Warning: PDO::__construct(): [2002] No such file or directory
(trying to connect via unix:///var/mysql/mysql.sock)
in /Users/john/src/php/dbtest.php on line 5
Failed: SQLSTATE[HY000] [2002] No such file or directory

So, to correct this, first create a my.cnf file in /etc containing the following:

/etc/my.cnf
1
2
3
4
[client]
socket=/var/mysql/mysql.sock
[mysqld]
socket=/var/mysql/mysql.sock

Then create this directory using sudo:

sudo mkdir /var/mysql

Then create a link:

sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

That should fix the problem.

Inside Look: 4th Gen iPod Shuffle

I love my 4th generation iPod Shuffle.  Its so small and easy to use.  Here is what it looks like on the inside:

Inside a 4th gen iPod Shuffle

Resetting a Sleep Number Bed

If your Sleep Number remote displays ERR frequently, then its time to reset the bed. Oddly, the Sleep Number manual does not list the instructions on how to do this, so here they are.

  1. Unplug the pump for at least 10 seconds
  2. Plug the pump back in.  You should hear the pump click a couple of times after plugging it back in.  After this you will have 60 seconds to complete the following instructions.
  3. Wake up the remote by pressing the “R” button.
  4. After pressing “R”, press both the up & down arrow buttons simultaneously and keep them pressed down, after which a countdown should appear going from 10 down to 1.
  5. After the countdown to 1 you should see a “– –” followed by “C1” on the display.
  6. Release the up and down buttons for a second, then push them down again and keep them down.
  7. You will hear the pump click a couple of times followed by a “– –” and then a “1c” code.
  8. At this point both sides of your bed have been reset, and you may now release the up and down arrow buttons.  You are finished.