10.6

Tag: 10.6

FileMaker Pro

FileMaker Custom Function for File Path to @Dropbox

From the second version of my first database (back in 2002) I have used my FileMaker databases to control the creation of a structured folder system to enable the efficient and uniform storing of structured data for each of the businesses I have worked with.

Early on in my development of FileMaker systems I stumbled across the fantastic plugins offered by Troi Automatisering, in particular their File Plugin, now at version 5, which I will be creating this custom function to use.

This plugin enables me to create, with relative ease, a series of fields and scripts that allowed the automatic creation and opening of folders and files straight from the database. Relatively simple if you’re running FileMaker in a closed network, but it starts to get more complicated very quickly.

I’ve had the good fortune to design almost exclusively for Mac only networks (phew) although I have had to deal with mixed environments where my customers are still in transition from PCs to Macs so I’ve had to ensure that any system is compatible with both.

The Preparation

Determining the Windows System Version:

Since the route to the Documents folder hasn’t ever changed in Mac OS X I don’t need to worry about the version used, however, this is not the case in Windows where there is a different file path to the “My Documents” folder on Windows XP and the new versions Vista and Windows 7.

So I need to use the Get ( SystemVersion ) Function to determine whether or not the user is using Windows XP or a newer version. According to the FileMaker help the function returns the following information for Windows:

5.1 for Windows XP SP2

6.0 for Windows Vista

So I needed a test for which version of Windows is running. I did attempt to design my own custom function to determine this, but perhaps because I was unwell I wasted a good deal of time messing around with this before I came to my senses and looked at Matt’s github page.

His os.versionName custom function (which I’ve renamed as os.versions) is a quick and easy solution to this problem, which can go well beyond my needs, but will achieve what I want by returning the name of the Mac or Windows OS running on the users system.

It returns a simple easy to interpret name from the Get ( SystemVersion ) so the 5.1 response from the function is returned as “Windows XP” or 6.0 is returned as “Windows Vista”.

Dealing with Windows Folder Path Separators:

Windows file paths use the “\” separator. For some reason you can’t easily use these in FileMaker calculations (if someone knows why please let me know in the comments). So I’ve taken the easy step of creation of new global variable $$windowsnetworksymbol to contain the “\” separator.

n.b. To ensure this variable is set each time the FileMaker file is launched I’ve added it to a script called “Set Global Variables”, which I run as part of my start-up script.

Dealing with Mac Folder Path Separators

Mac file paths used by the plugin are formatted with the “:” separator. The only other thing you need to worry about is that a file path starts without any separator.

Get (DocumentsPath) Function

It is the product of this function that we have been working towards editing. The basic idea is to be able to call the Get ( DocumentsPath ) Function and then edit it’s product to point instead to the location of the Dropbox folder (assuming it is installed in the default location).

The Get ( DocumentsPath ) Function will return the following:

\C:\Documents and Settings\YourUserName\My Documents\ in Windows XP

\C:\Users\Your User Name\Documents\ in Vista or Windows 7

And we know from my earlier blog post: Default @Dropbox File Paths that the default file paths for Dropbox are:

\C:\Documents and Settings\YourUserName\My Documents\My Dropbox\ in Windows XP

\C:\Users\YourUserName\Documents\Dropbox\ in Vista or Windows 7

/Macintosh HD/Users/YourUserName/Dropbox/ in Mac OS X

So now we have all the building blocks in place it’s time to construct our custom function:

The path.dropbox Function

The function itself is relatively simple once we have done the above preparation. It has no parameters and is made up of a simple Case Statement which asks two questions:

1. Is the user running a version of Windows XP?

2. Is the user running either Windows Vista or Windows 7?

If both these questions are negative we will assume that the use is running Mac OS X.

Once we have determined which OS the user is using we will then grab the documents file path using the Get ( DocumentsPath ) Function and then reformat it to be compatible with the Troi File Plugin.

Formatting for Windows

We use the Replace Function to make this assessment:

Replace ( Get ( DocumentsPath ); 1; 3; “” )

This will replace the “\C:” part of the resulting Get ( DocumentsPath ) with simply “”.

We encase this Replace Function within a Substitute Function so that we can substitute the “/” separator for the “\” separator contained within our $$windowsnetworksymbol and get a properly formatted Windows file path for the Troi Plugin. So we get:

Substitute ((Replace (Get(DocumentsPath); 1; 3; “”)); [“/”; $$windowsnetworksymbol])

With both Windows File Paths to the Dropbox we then simply need to append the correct location which we can easily do by adding:

& “My Dropbox” & $$windowsnetworksymbol in Windows XP

& “Dropbox” & $$windowsnetworksymbol in Vista or Windows 7

Formatting for Mac

We again use Replace Function to remove the leading “/” and as before encase this within a Substitute Function so that we can substitute the “/” separator for the “:” separator. So we get:

Substitute ((Replace (Get(DocumentsPath); 1; 1; “”)); [“/”; “:”]; [“Documents:”; “”])

As you’ll notice we have also added to the Substitute Function a statement to replace the “Documents:”, which will strip back the Mac File Path to the User so we can then append:

& “Dropbox” & “:”

which will get us to the default location for the Dropbox on the Mac.

The Final Function:

Case (

os.version = “Windows XP 64-Bit” or “Windows XP”; Substitute ((Replace (Get(DocumentsPath); 1; 3; “”)); [“/”; $$windowsnetworksymbol]) & “My Dropbox” & $$windowsnetworksymbol;
os.version = “Windows 7” or “Windows Vista”; Substitute ((Replace (Get(DocumentsPath); 1; 3; “”)); [“/”; $$windowsnetworksymbol]) & “Dropbox” & $$windowsnetworksymbol;
Substitute ((Replace (Get(DocumentsPath); 1; 1; “”)); [“/”; “:”]; [“Documents:”; “”]) & “Dropbox” & “:”

)

Please note that I have not yet had the opportunity to test this on a Windows system, but I’ve followed paths that worked in the past. As soon as I have had the opportunity to test it I will post any corrections here.

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk

Default @Dropbox File Paths

So I needed to know the default file paths for dropbox on the Mac and different versions of Windows for a Filemaker Custom Function I’m building and couldn’t find a simple listing anywhere on the internet so if you’re interested here they are:

Default Dropbox location on Mac OS X:

Macintosh HD/Users/YourUserName/Dropbox/ or more quickly ~/Dropbox

Default Dropbox location on Windows XP:

C:\Documents and Settings\YourUserName\My Documents\My Dropbox\

Default Dropbox location on Windows Vista & 7:

C:\Users\YourUserName\Documents\Dropbox\

Source

I found these from the otherwise helpful dropbox Wiki. Check it our here.

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk

This is the sound of silence…

Tap, tap, tap… That’s all I can hear. Yes the sound on my year old MBP has disappeared and all I can here is my own forceful tapping on the keyboard.

Unfortunately this is not the first time this has happened. The first time it drove me nuts. I eventually shut down the computer (which I do rarely) and it solved the problem.

The actual fix is quicker and more simple. Just insert your headphones into the socket and remove them and like magic it seems to kick start the system. Phew. Now you know what to do if it happens to you too.

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk

Mac Word 2008

Where is my lost word document?

So. I’m frequently called by people who have lost documents in Microsoft Word. They’ve been working on something important but hadn’t got round to saving it and BOOM it’s gone.

Prevention is always the cure in these situations. If they had saved the document when they created and then saved it whilst working on it, they could always revert back to the most recent copy.

Sometimes if this has happened more than once I can’t help but tut to myself that some people never learn. So it was with a great deal of surprise I found myself in the same situation last week.

I had been working for hours on a new Social Media Strategy for a client of mine and low and behold Word crashed and I realised to my horror that I hadn’t saved it. Not once.

I cautiously relaunched word and it auto-recovered the two other documents I had been working on for the same meeting but not the 5,000 word strategy document. I felt very stupid.

So rather than just give up and start again (it was 2 o’clock in the morning and I had to leave for my meeting at 8 o’clock) I switched to google.

Now I was pretty sure that if Word had recovered two out of three documents then it had surely recovered the third, but where to find it?

The Microsoft help page was useless. I looked at numerous other pages, but it was this page from Indiana University that put me on the right track.

So for Microsoft Office 2008 for Mac you can find all your recovered documents by going to:

user – Documents – Microsoft User Data – Office 2008 Autorecovery

and if it’s saved, as mine fortunately was, then it’ll be in this folder with some innocuous name like ‘Autorecovery save of Document2’.

And remember to save your documents on creation! Prevention is better than cure. It’s a lesson I certainly try to keep to in the future.

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk

VLC

VLC downgraded to 32 bit

VLCSo. This was unexpected. In one of my earlier posts on the 64 bit revolution taking place since the introduction of Snow Tabby I mentioned that VLC had been upgraded to version 1.0.1 that was now 64 bit compatible.

Unfortunately the 64 bit version of VLC only made it through one  more itteration, by version 1.0.3 it had reverted to 32 bit only. :-(  The explanation provided by the open source development team was that they don’t have enough developers to focus on it being 64 bit.

This has additional ramifications if you use VLC with Handbreak as it is now 64 bit and apparently the 32 bit and 64 bit codecs don’t play nice together. So if you’re having problems go here to download the 64 bit version. And if you know any developers who can help out with the development then ask them to give a hand!

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk

Handbreak updates to 64bit

Handbreak

Diligent as you may be sparkle is not always reliable for letting you know when an update is available and it was down to the guys and gals over at TUAW to let me know about the release of the new version of Handbreak (0.9.4), which is now 64bit compatible!

If by chance you haven’t heard of Handbreak before, it’s the leading free, open-source video transcoder available for the Mac (as well as PC and Linux platforms). It can take your .avi files or dvds and turn them into sparkling new mp4 files (with default options including encoding for iTunes, the web and the like) or anything else your heart desires.

I can highly recommend it, though running on a newer Intel Core Duo Chip or above is essential as video transcoding takes a surprising amount of time and the slower your processor the longer it takes!

Anyway find the update here.

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk

Psst… Want to Know Some Secrets?

My friend the irresistible @tsmarsh just reminded me of the wonders of custom preference panes for OS X, with this delectable tweet:

@tsmarsh

Sweet! http://tinyurl.com/568fkc Now I can break my mac with the same impunity as the freetards.

I’ve been using Secrets, the preference pane he’s referring to, since March 2008 after I first stumbled across it via the renowned macosxhints.com site shortly after I believe it was released. It is a cheats way to change ‘secret’ settings in both the OS and other programs for those of us who are sometimes too timid to resort to the terminal or just want to be able to tick a box to apply or more importantly sometimes unapply a secret setting.

It’s exactly the sort of program I love: simple, clean, straightforward, and community driven. It’s open source so if you stumble across a new secret whilst browsing an obscure blog, then you can post it to the site and once verified (I presume) it’ll be added to the program forthwith. If you want to refresh your secrets just click the handy update button and off it goes… reporting back new secrets under the new secret option at the top.

Secrets Preference Pane

The fact that Secrets even exists is proof positive for me that many Apple users don’t always believe the Apple way is the right way and want the ability to easily change some basic fundamental settings of their favourite programs to perform the way that is best for them rather than they way Apple or other program writers have decided is best by default.

So let me let you in on a few of my secret preferences (in no particular order)

  • Mail – Send Windows friendly attachments (why this isn’t activated by default beats me!?)
  • Dictionary – Reuse dictionary definition window (I use dictionary alot, so I like not to have dozens of dictionary windows open, just the one…)
  • Dock – Dim hidden apps (absolutely essential, Apple should have added this feature as a default years ago!)
  • Finder – Enable finder quit menu item (yes finder sometimes I’d like to be able to just quit you, especially when my keyboard is not responding :-()
  • Finder – Use .DS_Stores on network (uncheck and bye bye pesky .DS files!)
  • iTunes – Allow half star ratings (for those songs that just don’t quite make a full five stars!)

These are just a fraction of the customisations I’ve activated so trot along to the Secrets website and join the Mac personalisation revolution now!

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk

At last! A Mac Mini Server!

There have been many arguments over the years about Macs being more expensive than PCs and though I have often thought that the arguments justifying this opinion are mostly without base, they seem to have stuck quite firmly in the minds of the consuming public and the business community in particular. In one area though the reverse, since the release of OS X, has always been true: a Mac Server is significantly less expensive than a Windows Server.

However, a Mac Server has generally remained mostly outside of the purchasing range of a small businesses, especially those focused on low-cost, due to the general need to buy a Xserve, a rack, and all the associated costs. Now for those in the know, a Mac Mini accompanied by a copy of OS X Server (10 user version) has for many years been the easy route around this problem, but required a bit of know-how and was certainly not an off the shelf purchase.

Now this has all changed with the release of a new Mac Mini Server by Apple. For the low price of £799 (inc. VAT) you can have your own dual 500GB, 2.53 GHz Intel Core 2 Duo, with 4GB of RAM and an unlimited edition of  OS 10.6 Snow Leopard Server. Now that’s affordable. Even for a small business with only a couple of computers. And off the shelf and with you within 3 working days!

Mac Mini Server

Now for those Borg lovers who are already going blue at the notion that a Mac can be cheaper than a PC I have one reply: it’s the licences stupid. With the Mac Mini server you get an unlimited copy of Apple’s server product, no user restrictions, fully featured, add as much as you dare to the little powerhouse and if you need to add a second cheaply (and no rack required just a 12″ square of desk space).

Now back to the licences. Appleinsider has a great example of the cost comparison between the new Mac Mini Server and a similar SME orientated Windows servers:

mosxs vs sbs

See how cheap? I can’t wait to have an opportunity to install my 1st Mac Mini off the shelf server. If you’d like to read an indepth review I highly recommend the Appleinsider review by Daniel Eran Dilger. Read it here.

Update

Macminiloco has published it’s annual “The State of the Mac Mini”, which gives an excellent breakdown on the new Mac Mini. Read it here.

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk

How many tabs did you have open?

I regularly and bitterly complain about the shortcoming of my browsers. As a prolific internet consumer I have grown into the habit of having many windows open, which have in turn many tabs open. At the time of writing I am running the latest build of webkit as my primary browser, if I ask it to quit (the only way you can find out how many windows and tabs you have open) it reports back:

Yikes! How Many Webpages?
Yikes! How Many Webpages?

(Notice how webkit is reported as Safari (same in the menu bar (which is extra confusing if you happen to have both open at the same time!))

As it happens I recently restarted my computer so I don’t have Safari 4 also open, but that’s the exception rather than the rule. I’ll tend to keep some things running in Safari 4 just in case webkit crashes (which as it’s a nightly build it does quite often, but less frequently than Safari with this many tabs open). I do however have Firefox open, which it turn has five windows, with forty tabs open.

I also have about half a dozen custom Fluid browsers open at any one time to take care of the custom web services I use on a daily basis such as Google Reader (always over 1000+ articles to read… why oh why), Github (which my brother reliably informs me is the Geeks Facebook), Facebook (for us mere mortals), Pivotal Tracker (for my projects); in fact if I tend to use a service everyday I tend to have a fluid browser for it…

It was unsurprising then when I read Sal Cangeloso’s post entitled Why can’t I run 80 tabs in Firefox I experienced an all too familiar sense of déjà vu as he described his problem. My sprawling number of tabs is also generated by the number of ideas I have floating about in my head, a simple query to google to answer a basic problem can often lead to 10-20 tabs on its own, assuming you don’t stumble across anything interesting that is… if so add another 10?

Regular crashes in Safari 4 forced me to try out Webkit nightly builds (which are surprisingly more stable), unlike him I abandoned Firefox as a primary browser a good deal of time ago as I have never found it able to cope with a 100+ tabs  (which I frequently reach by the end of the day) without it becoming unresponsive or crashing; but still I suffer frequent crashes and all the attenuated irritation.

Like Sal I also initially thought that it was perhaps my older system, and before I upgraded earlier this year to a shiny new MBP (2.4 GHz Intel Core 2 Duo, 4GB 1067 MHz DDR3 RAM) it was much worse, but to be frank it’s not much better. Since fleeing from Safari 4 to Webkit Nightly I have tended to restart and reload my browser once a day (having it restore all previously open tabs), which has certainly made things better but not perfect.

It seems to me that there is a significant problem with web browsing on this scale. I have tried to use various web services to organise it efficiently from delicious, where I have thousands of bookmarks (once bookmarked never revisited – usually much quicker to just re-google) to google’s own bookmarking service (useless) to activating the full web history storage. Currently I am finding Safari / Webkit’s coverflow history helpful but its not enough.

Personally I think more and more of us are using the web in this prolific way and whilst I agree with Sal that there is definitely something up with our browsers I think that Google and the major browser developers have failed to adapt quickly enough to this changing phenomenon. Or offer us any tools to make it easier…

For example why in OS X.6 can’t I click on the Safari or Webkit icon in the Dock and see a list of sites I currently have open? When I have 20 tabs open in a single window I won’t necessarily remember which one it is, and so I end up cycling away through innumerable tabs. And though I try to keep them organised, being able to move tabs to different windows has helped, it’s certainly laborious.

The bookmarking tools in Safari / Webkit in particular are laughably basic. I use my menu bar bookmarks for bookmarklets such as my current favourites: Smush.it, TinyURL!, Translate into English, Send to Site Sucker, Google Bookmark… and there we go, googling a source url for Smush.it told me there was a wordpress plugin (which I’ll have to install) and now I have another tab open.

There does not seem to be much innovation in this area and I can reassure Sal that he’s not the only one suffering and that there has to be an improvement or progress in these areas soon (or it might just drive me mad!).

I’m a small business consultant enabling small business owners to achieve sustainable growth, whilst working part-time at Tees Valley Arts. For more about me personally see peterneal.co.uk