Database Errors after 1and1 upgrade to PHP 5.4

I switched my global PHP version to 5.4 and then had problems with various software including WordPress, and Concrete connecting to my mysql database. I found that just going into database administration (after switching the PHP version to 5.4) and updating the mysql password (to the same as before) caused it to use the new hashing mechanism/library… and now the database connections work correctly.

Missing Rules and Alerts in Outlook 2003

If you are missing option “Rules and Alerts” in the tools menu of Outlook 2003, make sure that you have a email account created.  I discovered today, that the option isn’t available until you have an email account setup.

Other options that I tried, that didn’t work, but might be useful:

  • Run the “Detect and Repair” for Outlook
  • View->Toolbars->Customize, and then try to add the option back to the menu by looking for “Rules and Alerts” under Commands tab, Tools

So if you don’t have the “Rules and Alerts” option available to you, try one of these suggestions.

Re-center (move) content after resizing stage in Flash

When you have your flash application 90% developed and then a new requirement is presented that requires you to enlarge the stage size, you will find that it puts the additional space on the bottom and right sides of your document.  I haven’t found a way to specify where the additional space is placed, but I was able to find a way to move all my existing content (symbols, tweens, etc) intact together to a new location on the larger stage.

Edit Multiple Frames Screenshot

If you click on the edit multiple frames button (arrow pointing to it in screenshot) below the timeline you will get two brackets above the timeline (in the frame numbers, circled in screenshot), put the [ at frame 1, and the ] at the last frame of your timeline and then do a select-all.  This will select everything in every frame within the brackets.  Then you can drag or use the arrow keys to reposition everything.  When you are finished moving the content, just unclick the edit multiple frames to return to the typical editing mode.

Get parameters to HTML page with JavaScript

If you have a static HTML page that you need to pass a parameter so that it can be updated easily or work in different instances, this post will show you how to get the parameters via the URL into JavaScript without the use of a backend server.

document.URL contains the entire address bar of the browser, and you can parse this to get the parameters and do something useful with it.

Below is the snippet of code I worked up to do this for a mockup/demo that we were working on for work.  Specifically, we wanted to have a single HTML page that would load the same Flex player with different parameters (and wanted to pass those parameters in via the URL) so that we could test with current and future streams/video sources.

        function pageLoaded() {
            var qAt = document.URL.indexOf("?");
            var params = document.URL.substr(qAt+1);
            // Use params as needed (parse, or pass along to flash swf):
            alert(params);  // just echoing in this example.
<body onload="pageLoaded()">

Windows 7 and Symantec Endpoint Protection

Symantec released on Monday, Sept 21, 2009, the update to Symantec Endpoint Protection (SEP) that supports Windows 7 RTM.  If you are a corporate account you can download the software at their updates site:

You will need your serial number to get access to the product download. 

SEP version 11.0.5 has official support for Windows 7 and Windows Server 2008 R2.

I experienced the following error message while attempting to install the update:

“Pending system changes that require a reboot have been detected” 

Rebooting didn’t resolve this issue.  However, I did find on Symantec’s website a Knowledge Base article that explains the issue and a resolution.

  1. Locate the following registry key:
    HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\
  2. Locate the PendingFileRenameOperations registry value in the right pane.
    Note: If you do not find the PendingFileRenameOperations value in the location above, this error message can be generated if there are pending changes in:
    Note: This value may be hidden. Make sure that your user account has permissions to this key.
  3. Delete the value date from the pendingfilerenameoperations registry value.
  4. Attempt to install the SEP client again.

After clearing my PendingFileRenameOperations registry value, I was able to complete the installation of SEP v11.0.5 on my Windows 7 computer.

iPhone leaving POP3 lock on mail server until powered off

Yesterday, I had a new iPhone user complain that they were getting a message about a POP3 lock when attempting to get new messages from the mail server after checking email on their iPhone.  I have been doing this for sometime and never noticed this issue, but decided to investigate further when I had time.

This morning, I ran a number of tests and was able to easily reproduce the lock message when attempting to check email after the iPhone had checked the POP3 server for email.  This is typical behavior that I have experienced when using multiple computers and one POP3 account.  The lock file is used to ensure that only one computer is updating the mailbox at one time (since typical POP3 behavior is to download messages AND remove them from the server). 

What I was surprised to find was that after I exited the Mail application on the iPhone and left it at the Home screen… the lock persisted on the mail server.  I waited a minute, and was still getting the message about the lock existing on my POP3 mail server.

I found through trial and error that it appears the iPhone continues to maintain the lock on the POP3 server until the phone is powered off.  In our case, 15secs after the iPhone is powered off, the lock is removed from the mail server (or at least allows the desktop mail client to download mails from that POP3 account).

After finding this, I realized that my common behavior would have never caused this to appear (for me).  My typical use case is that I check emails while out-and-about, or in a meeting.  When I have checked messages, I power off the phone.   I return to my computer and press Send/Receive (or Get Messages) and the new emails come down without an issue.  I guess I have never checked my email on my iPhone and while the phone is still on try to check them from my computer.

Limited user rights should be viable for everyone

While reading the March 2, 2009 issue of eWEEK, I enjoyed the commentary by Andrew Garcia in “Windows in the way? UAC is not a reason to reject Vista or Windows 7“.

“Alas, I admit I have been complicit in furthering these bad practices with shortcomings in my own testing and analysis for eWEEK. Therefore, I make this pledge — from here on, in my reviews, I will ensure all software I test designed to run on Windows desktops operates as advertized with only limited user rights. And I will call out those that fail this litmus test.”

Kudos to Andrew for championing the ability for users to run Windows software under limited user rights. With magazines and technology analysts documenting the shortcomings of various software packages, we have a chance of getting Windows software that works better for all of us. I look forward to seeing these details included in future reviews in eWEEK.

Web Development Tools and Wikis

I recently did a couple of presentations work, as part of my new role as Manager of Web Technologies. These presentations were focused on sharing knowledge and help them be more productive with these technologies.

In July (2008), the presentation was on Web Development tools. Background: The company has been using web interfaces (and Ajax) for more aspects of its products and more software engineers are being asked to know something about the User Interface development/functionality. Since I was one of the key UI developers, I was asked to share some of the tools that I use regularly that makes the job easier.

The slides will not have the same impact as it did when presented, because a large portion of the time was used in examples or discussion of ways each tool is helpful. The lunch-time presentation lasted about 1.5 hrs.

Slides: Web Development Tools

This past Friday (Jan-16-2009), I also presented on Wikis. Background: A number of engineers had tried using wikis without much success. However, each attempt had been aimed at a very narrow use-case (maybe one project, or one product). Our VP of Engineering had become interested in trying to make it work on a larger scale (all of Engineering, or further). So this presentation was intended to provide the entire engineering staff with an introduction to the internal wiki, and enough training to get started building the wiki.

The first half of the presentation covers a general explanation of what a Wiki is and Good/Bad uses of them. And the second half covers how to create pages and use the Wiki. This lunch-time presentation also lasted about 1.5 hrs.

Slides: Wikis