Tuesday, April 23, 2013
Visual Studio 2010 Microsoft.Data.Entity.Design.BootstrapPackage.BootstrapPackage 10.0.0.0
Sunday, November 11, 2012
Parrot Bluetooth MKi Series Remote Control Functions
I made the following diagram to show the functions of the remote. Now you be the judge:
Would you like a PDF with this graphic in higher resolution so you can learn to use your remote? I created one here for you to download.
Wednesday, August 22, 2012
How to Flatten a Folder Structure in AppleScript
You can skip this introduction if you already understand the problem and are trying to solve the same issue. Just start at Describing the Solution.
Ok, so recently I was given a large archive of files. These were old automated backups that I had nothing to do with in the past. They were stored in individual directories. The directories each had a name that indicated the date the backup was run. Inside the directories were one or more files that indicated a time that the backup was started. It looked a bit like this:
Now I had to run a batch application on every .bkp file to create a summary of each change for audit purposes. This application could take an entire directory of .bkp files and generate the needed report. It had one shortcoming though, it could take a single directory as its input and would look for every .bkp file but it was not recursive. Meaning it would not check subdirectories. That means I could manually point it to each "date" directory such as "02-03-2010" but not to the top level "archive" directory. As there were over 500 "date" directories I really didn't want to have to do that manually.
Describing the Solution
What I needed was a way to move every .bkp file stored under a date directory up one level so the files were under the top level "archive" directory. Then I could just point the batch application to the "archive" directory and it would run though every file.
However, in moving the files that only had the time as their name such as "11-00-00" out of its sub directory I would lose what date it was created on. I'd rather not lose that information.
Even worse you can see several .bkp files have the same name so they could not all be moved into the top level directory without name conflicts.
What I needed was to prepend the subdirectory name such as "02-03-2010" to the .bkp filename so the filename was actually "02-03-2010_11-00-00.bkp" (in this case I used an underscore "_" character as a separator between the folder and the file name.) Then I could move the file up to the top level directory and not worry about name conflicts or files being overwritten.
Searching the Web for a Solution
Since I'm on a Mac this seemed like a perfect job for AppleScript. As a good engineer never reinvents the wheel I figured I'm not the first person to run into this problem so I could probably find a solution out there and just reuse it.
I found this first: Flatten folder structure via AppleScript | Macworld
This script basically worked but it didn't solve the problem of duplicate named files being moved into the same directory. I needed something a bit more advanced.
I also found this: Mac OS X Hints
But that didn't seem to work and still didn't address the naming issues.
Unfortunately I didn't find any workable solutions.
Creating Our Own Solution
Ok, so here's the solution. Looking at some of the code for the two links I listed above I wrote the following script.
You should be able to copy and past this into the AppleScript Editor. Then go into the Finder and select your top level folder. Go back to the Script Editor and click Run. If you trust the script uncomment the delete line and it will remove the empty subdirectories when it is done moving the files. Good luck!
PS
I've received a couple of emails that this can be useful in preparing to batch process videos with Handbrake if you don't want to use the Handbrake CLI (Command Line Interface.) I added a mention here so if anyone searches specifically on Handbrake folders in Mac OS X they will find this entry.
PPS
I was not able to figure out how to do this using the more simple Automator in Mac OS X. I realize you can use Automator to call an AppleScript but that defeats the point here. If anyone can implement this logic using Automator I'd love to hear from you.
Tuesday, June 12, 2012
Comparing Verizon shared data pricing
You can view the Verizon shared data plan details yourself here.
Monday, June 04, 2012
When Naming a Group on Facebook, don't use & (an ampersand)
Let's say, for example, you created a new Facebook group or page called: "A and B - Sales & Service"
Then you typed the exact phrase "A and B - Sales & Service" into Facebook's search field. You would be disappointed to find the search results are 0.
You see, the & is a valid character in a group or page name on Facebook, however, it breaks the Facebook search routine. So, continuing with this example, if you instead typed "A and B - Sales" It would find your group successfully.
Something to keep in mind when naming your next product or interest on Facebook.
Tuesday, August 02, 2011
EDID Reader for Windows that Works
Monday, September 06, 2010
Applications Allowed in Parental Controls don't Show Up


- I recommend selecting the Applications folder and doing a Get Info (either command I or File->Get Info). You should see permissions similar to those shown on my Preview application consisting of system, admin, and everyone.
- Now click the lock in the lower corner of the Info window for the Applications folder so you can make changes. I show it circled in red in the picture below. It should ask for your admin password.
- After that you should have access to the permission settings. We don’t want to change the permissions for this folder but we do want to use a feature here.
- Now click on the Gear icon at the bottom of the same window. I show it circled in green in the picture below. A drop down menu should appear with an option called “Apply to enclosed items…” Go ahead and select that.
- Now on my computer applying that setting took several minutes so be prepared to let it run until it is finished. You’ve really solved the problem at this point.

Tuesday, June 01, 2010
iPhone forces you to double accept appointments you already accepted in Outlook
Wednesday, May 12, 2010
Unlink YouTube and Google Account or Gmail passwords
Tuesday, March 30, 2010
iPhone heads to Verizon?
Monday, November 16, 2009
My favorite Regular Expression for deleting a line at a time
Monday, November 09, 2009
Snow Leopard Doesn't Support Some Epson Printers
Friday, November 06, 2009
Clicking HTTP URL Links in Outlook 2003 on Windows opens two browser windows in Safari
Wednesday, September 09, 2009
iTunes 9 Released, new version of Fetch Art coming soon
Wednesday, August 26, 2009
Robocopy trumps RichCopy
Tuesday, August 25, 2009
Fixing Printer Sharing in Mac OS X
Unable to get printer status (Forbidden)!
- Turning off and on printer sharing.
- Deleting the printer from the computer I wanted to print from and re-adding it.
- Repairing permissions on the computer sharing the printer
- Printing from another computer that could see the shared printer. It behaved the same from three different computers.
Monday, June 22, 2009
iPhone 3GS, 3G, and original iPhone Comparison
| Original | 3G | 3G S |
| Metal back | plastic back, more curved shape | |
| Recessed headphone jack | standard headphone jack | |
| No stereo Bluetooth headphone support | Stereo Bluetooth headphone support | |
| Edge | 3G (3.6Mb/s HSDPA)* | 3GS (faster 7.2Mb/s HSDPA)** |
| No GPS (simulates using triangulation=very inaccurate and often unavailable) | GPS | GPS + Compass (should allow turn by turn directions in future software) |
| No video | 640x480 30fps video (fixed focus during recording) | |
| 2MP fixed focus Camera | 3MP auto focus camera | |
| Original CPU | Faster CPU | |
| Original graphics | Faster 3D graphics | |
| Powered by old iPod chargers**** | Powered only by newer chargers**** | |
| Supports 1 button inline headphone remote | Supports 3 button inline headphone remote including volume control | |
| No voice dialing | Voice Control | |
| No tethering | Tethering** | |
| No MMS | MMS** | |
| No Nike + iPod | Nike + iPod built in | |
| Original | 3G | 3G S |
| Cut, Copy and Paste | same | same |
| Global Search | same | same |
| Horizontal keyboard in most apps | same | same |
| Voice memos | same | same |
| Notes sync with Mail/Outlook | same | same |
Wednesday, April 29, 2009
How UPnP failed me and Bonjour for Windows saved me.
It might seem strange to be extolling the virtues of Apple software on Windows, and believe me, if the Windows UPnP software worked as it is supposed to, I probably wouldn't be doing this, but if you find yourself in the same situation this article might help you.
We just got a new Axis Q1755 network camera. It supports Universal Plug and Play or UPnP. It also supports Bonjour which it turns out is very lucky for me. I connected the camera to our network. At that point, as a UPnP device it is supposed to show up on my Windows XP computer inside My Network Places. I opened My Network Places, and it wasn't there.
I found an article that said Windows Firewall can interfere with UPnP devices. However, since I'm on an internal network, I have my Firewall turned off.
I found another article that mentioned that by default Windows XP might not have all the needed UPnP software installed. I went into Control Panels->Add or Remove Programs. I clicked the Add/Remove Windows Components button. I clicked Networking Services. Then I clicked Details… I saw that UPnP User Interface was not checked, so I checked it to install it. Clicked OK, then Next, then Finish which installed the UPnP components. Opened My Network Places again, but still nothing.
I found yet another article that said I might need to enable the UPnP discovery service. So I went into Control Panels->Administration Tools->Services and looked for the SSDP Discovery Service. Sure enough, it was disabled. I enabled it and started it. I verified its status changed to Started. Closed the Services control panel. Opened My Network Places again, and still nothing.
Now I've already wasted 10 minutes on something that was supposed to be Plug and Play. Then I noticed in the setup manual of the camera it also supports Bonjour for Mac OS X. Hmmm I know Apple released Bonjour for Windows too. It can't work any worse then this, and if it takes less then 10 minutes it's a more efficient use of my time. So I go to the Apple website and download Bonjour for Windows. It installs a new button on the Explorer Bar in Internet Explorer. I click that button and it immediately finds three devices on my network. Two printers, and my new Axis camera. I click on the camera and have full access to it.
So I gotta' say, I'm liking Bonjour for Windows.
Tuesday, March 17, 2009
iPhone OS 3.0 Adds a lot of features
There were a lot of (what I considered obvious) omissions. Let's review those now that Apple released what they will be adding to the next generation of the iPhone OS in June:
- Stereo Bluetooth headset support (A2DP) (not on first generation iPhone as it lacks some hardware)
- Copy and Paste
- Global search (they let you search contacts now, but not notes or calendars, Palm OS has had this for years!)
- DUN tethering (so I can use the phone as a 3G modem on my laptop either over Bluetooth, or preferably, USB) (They claim they are adding this in 3.0, however, not all the carriers are ready to enable it...)
- Notes syncing (on Windows and Mac OS X)
- MMS (picture messaging, so far they still only support text messaging)
- Chat/IM support for popular chat apps (MSN Live Messenger, AIM, GTalk, etc.) (With push support finally arriving this appears to be solved.)
- API for turn by turn GPS (although Apple will not be supplying maps, so this will have to be 3rd party.)
The following items still won't be added:
- Video recording
- A ToDo app with syncing with Outlook (on Windows) or iCal (on Mac OS X)
- Voice activated dialing
- Syncing music/video/podcasts and calendar data over Bluetooth or WiFi. Why should I have to connect a USB cable just to sync?
- Forward camera and video chat support
- Undo in most apps (something PalmOS apps have had for over a decade)
- Bluetooth support for keyboards and standard devices other then headsets and headphones.



