Remember to Freeze the Window

Read an interesting post by Chad Novotny at the Support Group this morning (read it here), which pointed out something I have never considered, but I suppose had frequently noticed.

It’s changed the way I think about Looping through Records and is a simple, quick and easy way to improve performance whilst using the Loop Script Step in FileMaker.

So as well as remembering to always click the “Exit after Last” option whilst performing the Go To Next Record/Request/Page:

Exit After Last
Always remember to click the Exit After Last Check Box!

You should also remember to insert a Freeze Window step into the script so that the visual element is turned off as your database loops through a couple of thousand or tens of thousands of records.

A simple easy tip that’ll no doubt save you plenty of time!

Oh and if you’re thinking of other performance gains you can get he also recommends:

1. Performing Loops on a Form View

2. Consider using a dedicated Layout if you’re using Script Triggers.

So you want a little more privacy when browsing the Internet

The leaks by Julian Asange of Wikileaks were a dominant theme of 2010 and it got me thinking that perhaps, in some cases, a little more privacy could be desirable when browsing the internet, which is certainly unusual for a me as I rather agree with Zuckerberg that privacy is largely dead, so is it possible to browse privately nowadays?

After following the trials and tribulations of the Iranian Presidential Election in 2009 I became aware of the Tor Project for Anonymity Online which was developed to help people in oppressed regimes gain access to the internet without being able to be easily traced by their governments. They describe the project as:

Tor protects you by bouncing your communications around a distributed network of relays run by volunteers all around the world: it prevents somebody watching your Internet connection from learning what sites you visit, and it prevents the sites you visit from learning your physical location. Tor works with many of your existing applications, including web browsers, instant messaging clients, remote login, and other applications based on the TCP protocol.

Sounds excellent no? And it has the added benefit of allowing you to setup a node on your computer, so that whilst you benefit from anonymity as you browse you can help others in much more difficult situations be protected to. There are easy to follow instructions here and packages for all flavours of Windows, Mac and Linux.

But you might not want to just browse the internet anonymously all the time. I certainly haven’t spent years actively sharing my web browsing habits with google’s web history to loose it’s benefit now. So I wanted a way to just be able to turn it off and on as I felt like it. If you’re using Google Chrome this is as simple as installing an extension: the Proxy Switcher to be exact.

You can find an excellent tutorial here to guide you through the process of linking Proxy Switcher to Tor, all of which shouldn’t take you more than 15 minutes of your time (courtesy of the eminently helpful Lifehacker.com) and then you’ll be able to browse privately to your hearts content without the fear of Big Brother  breathing down your neck (or read Wikileaks if you’d prefer to be secretive).

Making your Mac Safe to Sell

So. You’ve upgraded your Mac and you’ve decided to sell your old Mac. Just how do you go about removing all your personal data?

Erase Everything! (The Nuclear Option)

If you’re not worried about leaving Apps on for the lucky purchaser or free beneficiary of your new Mac then the best method is the Nuclear option:

1. Boot from the Recovery Disks

2. Open up Disk Utility and select your Hard Drive

3. Pick Erase from the options and then click on “Security Options”

4. You should be fine with selecting the First Option and then hitting Erase

5. But if you want to be MORE secure then options get safer down the list, but…

6. Just remember the more Secure the erase the longer it’ll take, especially for large disks!

A More “select” Erase (The Precision Bombing Option)

If you’re running a newer version of Mac OS than came with your Mac and/or you don’t want the hassle of erasing the disk and then reinstalling the software then this might be the

How To Securely Empty the Trash

First we’ll want to make sure that when we delete stuff Finder is not just removing it’s file location (which makes files easily recoverable for those in the know) but that it’s securely deleting the files by writing over them with gobbledygook.

To do this once all you need to do is add the files to the trash and then go to the Finder Menu and select “Secure Empty Trash…”:

Secure Delete from the Finder Menu
Secure Delete from the Finder Menu

But as we’re probably going to be doing a lot of deleting it’s probably best to go to Finder and set this as the default preference. So if you click on “Preferences” instead of  “Secure Empty Trash…” it’ll bring up this window:

Advanced Finder Preferences
Advanced Finder Preferences

Where you should make sure that the box labelled “Empty Trash Securely” is ticked and now each time we empty the trash as normal it’ll be deleted securely.

Deleting Apps

Most people who sell or gift their Mac leave some if not all of the applications installed, but if you’re deleting any of the apps then you’ll want to make sure that you do it properly, and there is just the app for that, they’ve even been so bold as to tag it “the Uninstaller Apple Forgot”.

AppZapper

AppZapper makes sure that all the little hidden files that an App installs are also deleted. This is especially helpful if you’re uninstalling programs that are available to all users, as these will create preference files, etc, in the root library rather than your user account library. It’s well worth the $12.95 purchase price, and I’m pretty sure that there is a free trial.

I use a version integrated with Hazel that I bought years ago so I haven’t checked).

Don’t Forget System Preferences

If you’ve installed any custom system preferences then to remove them simply launch System Preferences and right-click on the appropriate custom system preference and select “remove preference pane”.

User Files

So you’ve copied all of your user files from the Mac onto a spare hard drive, usb stick or (my personal favourite) your dropbox account and you now want to delete your user data, the best way to do this is to go to Users in System Preferences:

Accounts Preference Pane
Select Accounts Preference Pane
Accounts Preference Settings
Create a New User

and select accounts. Then if it’s locked as in the above picture you’ll have to unlock it before you proceed so click and enter the password. Then you can select the little + button at the bottom of the User Name list to add a new user, which takes you to this window:

Add New User

Make sure you select a new Administrator account (no it’s not the default) so you’ll have to click on the list and select Administrator like below:

Select Account Type
Select Account Type

Then create a new account administrator account, name it as you like and give it an easy to remember password, say “password’, the new owner can always change it to something better.

Once you’ve created your new account, you can safely log out of your current account and into the new account and once in you go straight back to the Accounts section of the System Preferences. And instead of adding a new account, select your old administrator account and click the – instead of the – and delete your old user account.

Oh and make sure you tell it to delete the user home folder. And that you empty the trash securely.

And you’re done. One “pretty clean” Mac.

Notes for the Security Conscious

PS If you want to be extra cautious once you’ve done this you can use Disk Utility to erase the empty space on your Hard Drive, which will give it another good going over.

PPS This method is itself reasonably secure but the only truly secure way is to opt for the Nuclear Option or even better don’t sell your Mac with the Hard Drive.

How to Stop Dates Changing when Cutting and Pasting between Excel Files

So I was moving some old financial records across to a single new excel file in Microsoft Excel 2008 when I noticed that the dates were changing by about four years, perplexed I resorted to a great deal of googling before I came across the reason for this.

In Microsoft Excel 2004 for Mac all Excel files by default used the Microsoft system base date of 01 January 1900 but in Microsoft Excel 2008 for Mac (and onwards) they have changed this to use the Mac system base date of 02 January 1904. Why I’m not sure; standardisation perhaps?

What Microsoft have not done is made this very well known. So if you’re opening an .xls file created in Office for Mac prior to the 2008 version it’ll be using the 1900 base date and if you created an .xls file after this date it’ll be using the the 1904 system. So you’ll have to change it before cutting.

Do in preferences select this setting:

Calculation Preferences Excel for Mac 2008

And then tick this box to use the base 1900 date system:

1904 Base System Date

Unfortunately I am yet to discover a way to change this permanently. :-(

Navigate Multi-Page PDFs in Container Fields

So if you’ve read my last post, you’ll know I had been searching for and had found the right syntax for adding a QuickTime Movie to a Container Field via a Set Field Script Step, but why was I looking to do this?

Well it’s not because I wanted to store movies in a Container Field, not at all, despite using the “macmovie:/” file path to force the import of my file as a QuickTime Movie, I was in fact importing a .pdf. But why?

Well if you import a .pdf file using this syntax it allows you to view multiple pages of a .pdf rather than just the first page you can see if you import it either as a file or an image.

Now this is really handy if you need to go through some 3,500 invoices to record data from them into a database as you can have the .pdf you’re entering from adjacent to the fields you’re entering data into.

It’s a win-win solution.

Import Quicktime into Container Fields via a Set Script Step

I had some problems finding the correct syntax for this process, so now I have successfully found it I thought I’d share it:

On a Mac: moviemac:/path_to_your_file

On Windows: moviewin:/path_to_your_file

Oh and why might you want to do this? Because if you use the Insert File, Insert Picture or Insert Quicktime Script steps you have to specify a file path manually rather than doing so via a calculation, which is very inconvenient if you need to import say: 3,500 files as needed to.

If you use the Set Field Script Step and specify the appropriate Container Field, with the new contents being your Calculated File Path Field then you can effectively side step this problem. I only need to do this as a temporary measure so it’ll work just fine for my purposes.

If you’re looking for something more permanent you’d have to think about whether or not it stores the file as reference or actually inserts it, which makes a big difference and the answer to which I don’t know (if you DO know or find out please tell us in the comments).

Upgrading FileMaker Pro from a Trial Version

So over the weekend I needed to install FileMaker Pro 11 to a customer’s new computer, unfortunately they had misplaced the CD, but total disaster was averted as they had emailed me the serial number when I had first installed FileMaker for them on the old computer.

So my main problem was how to locate a copy of the software so I could install it. I thought this would be relatively simple as I had a .cdr copy of the installation disk stored on one of my hard drives. So I dropboxed it and gave it a couple of hours before I returned.

On my return I discovered how difficult it is to get Windows 7 to deal with certain file types. So .cdr was out, .iso was is. I used one of my customer’s Macs to run the conversion and dropboxed it back to the new PC. Ah, but Windows 7 can’t automatically mount an .iso.

So off to google, found a great little program called PowerISO which will allow you to mount a .iso and more importantly, will do it for free. (Mind you’ll have to note that it created CD Drive mapped to D: which caused us quite a bit of confusion later on…)

So once I had my .iso of FileMaker created and mounted, I discovered to my irritation that I could only find the .mkpg and no .exe. Oh where oh where was the .exe? Despite searching high and low I couldn’t for the life of me find it.

So it was back to the drawing board. And then it occurred to me why not just install the trial version and upgrade it? So off it was to filemakertrial.com to download the Windows trial version. Ten minutes later I had the copy in the downloads folder and ran the installer.

But where to upgrade the trial to full version? Oh wait there is no simple way to do it? Really FileMaker? You couldn’t make it a little easier than buying the full version, downloading it,  uninstalling the trial and re-installing the full copy?

I was sure that there must be an easier way. Especially as I already had a licence but simply no available copy of the Windows version of FileMaker. And I was right. Although FileMaker definitely did not make it easy to find.

So here are the instructions you’ll need: “Converting FileMaker Pro Trial” but remember that you’ll have to uninstall the trial version first and if you need to install more than one copy you’ll have to change the serial number each time before running the setup.exe

Other than that the only thing I think worth pointing out is that I could have downloaded and installed a cracked version of the software in a fraction of the time it took me to figure this out and that is largely due to the truly atrocious FileMaker site search.

Record Count in Portal Fields

I used to use this very simple calculation to display a record count in all my solutions:

c_Record_Status

“Record ” & Get(RecordNumber) & ” of ” & Get(FoundCount) & ” ( ” &  Get(TotalRecordCount) & ” total )”

and though it still works in my main layouts in FileMaker 11 it seems to have stopped working in portals, so I had to come up with a new solution and thanks to a post by Daniele Raybaudi over at FileMaker Forums I found a much easier solution:

c_Found_Count_Portal

Get(FoundCount)

which I then compliment on the layout by using the layout shortcut for Get Record Number Symbol or Get Portal Number Symbol: @@. So it is rendered on the page as:

@@  of <<JOIN_Addresses_Companies::c_Found_Count_Portal>>

Which is in itself a much more elegant solution. Oh and remember to set the calculated field to un-stored.

Error Uploading Photos to Google Places

Claiming your Google Places listing is an important part of establishing your presence for local searches. Before you go ahead and add your listing you should always check if Google Places already has a listing for you, which you can do simply by going to Google Maps and performing a search, if you can’t find it then you can add one yourself by going here.

One of the most frustrating parts of dealing with Google Places is the process for uploading your own photographs (you can add up to 10 photos), as in typical Google fashion the error message they give you is not helpful at all:

Google Places Image Upload ErrorAs you can see this gives you no additional information and if you click on the link it takes you to a submissions guideline page, which further refers you to individual submission policies for both Google Maps (for images) and YouTube (for video). The Google Maps submission policy doesn’t give you anymore information as to the types of images, their dimensions and maximum sizes.

So it was off to Google (Search that is) to find some answers and low behold with this query: “maximum size for uploading photographs to google places” the first listing was for a similar question in the Google Places discussion forum. Midway down the page I found a link to an answer to my question provided by Lance Mayhew, who had clearly done a great deal more googling.

So the link is here, but if you want the short answer you can upload the following types of images, dimensions and file sizes:

When adding a photo to your listing, keep in mind the following guidelines:

  • Each photo must be smaller than 1MB.
  • Each photo must be under 1024 x 1024 pixels.
  • Photos must be in one of these formats: JPG, GIF, PNG, TIFF, BMP

Why Google can’t add such helpful information to their Google Places page when a the submission of a photograph fails is beyond me. Oh and this is what success looks like:

Google Places Successful Photograph SubmissionThis helped me, I hope it helps you too.

FileMaker Custom Messages for Validation Errors

Sometimes you can’t see something because it’s straight in-front of your eyes. So if you’re looking for how to display a custom validation message when validating a field then it’s right at the bottom of the validation pane for that field:

Validation Pane with Custom Notification DialogueAnd yup I had to google to find this out. This is what happens when you have been focusing on your database design for too long!

Unfortunately there is not too much space. So you’re validation message will have to be short but sweet.