I have been looking into using Facebook Connect for a new web site I am building, however the Facebook API seems to be a little flaky.
The code I have been using is basic, however the example application 'therunaround' suffers from similar issues.
For example, the friends list does not always load, and the logged-in Facebook user is not always detected.
Are these issues purely because I am just starting out?
Yes, the problems you describe are likely just due to not using the API correctly.
Facebook Connect is still very new and does suffer from occasional problems, but in general it is pretty stable and is being implemented by many major sites.
This developer post may be relevant to your problem: (From: http://www.facebook.com/developers/message.php)
Please make sure features are loaded before using Facebook Connect JS APIs Feb 26, 2009 1:35pm
Almost all Facebook Connect's JS APIs are loaded asynchronously after calling FB.init(). Because of the asynchrous nature, the JS APIs are not necessaryly available immediately after making these calls. You should use FB.ensureInit or FB.Bootstrap.requireFeatures to ensure the JS APIs are loaded before using them.
We have a wiki documentation that describes this in more detail. However, we just found out that some Connect apps were calling Connect JS API such as FB.Connect.* and FB.Facebook.* immedidately after calling FB.init. This approach would cause intermittent failures because the functions may not be loaded yet.
Pior to last night's push, we fixed a bug in our FeatureLoader.js.php where it was always automatically staring the asynchourous loading of Connect features. After the bugs is fixed, code that were calling JS API before making they are loaded are more likely to fail. If you noticed that your Connect apps are getting function not defined erros for Connect JS functions, please check your code to make sure it is waiting for features to loaded before using them.