Showing posts with label Mac. Show all posts
Showing posts with label Mac. Show all posts

Friday, April 18, 2008

Mac tips for the switcher: Print Screen

I was in need of capturing the current window (for the last post actually) to store as an image. I went to press Alt + PrnScrn. Ah. Where's the print screen? So after doing a bit of research, here are all the ways you can do a screen capture in OSX.

Capture All
Press Command + Shift + 3

This will place a document in pdf format on the desktop. You can then open and Save As...

Capture selected Window
Press Command + Shift + 4 + Space. This will turn the cursor into a camera and you then click the window you want to capture. Again it will save to the desktop in PDF

Select Area to Capture
Press Command + Shift + 4. This will turn the cursor into cross hairs which you then select what you want captured.

While these are useful, what if you want to save to the clipboard instead of saving to the desktop? Well Apple has thought of that too - just press the Cntrl key with all the combos above.

Wednesday, March 12, 2008

iPhone SDK. Initial Impressions

I have been playing with the iPhone SDK over the past few days. BTW they need a better name than that I think, it's not just for the iPhone. I think there will be just as many iPod touch users. Anyway I digress.

After the intial hiccup of the download server being over loaded, I managed to down the SDk a couple of days after the release. It's a whopping 2.1Gb which includes the actual SDK and other tools including an update to XCode to 3.1. That's a post in itself, but the code editor seems to be a lot nicer with inline error messages, code folding (that may have been in since 3.0 not sure) and little things like brace matching animations etc.

The actual SDK is broken in 4 layers. They are: Core OS, Core Services, Media and Cocoa Touch. I won't go into detail here but the main layer is the Cocoa Touch layer which includes the UIKit framework which handles UI and UI events such as gestures etc.

More info HERE

Initial Thoughts
First off, I am a hobbiest Objective-C programmer at best. While I am a very experienced C# developer, Objective-C is a little different. Having said that, I had an iPhone app running pretty quickly. Admittedly, the app only displayed a TableView and then on touch of a cell loaded another view, but it was easy. A few lines of code easy.
The SDK would be an impressive effort on a full blown desktop, but packing all the animation and UI features into a device the size of a phone is nothing short of amazing. The features the iPhone exposes through the SDK is nothing short of game changing. As a long suffering Windows Mobile developer, to say the iPhone is a generation ahead from a developers point of view is an understatement.

I think the clearest thing I can say is that a developer with a good idea isn't limited by the device. Except...

Issues
There are a couple. First off, your iPhone app exists in a "sandbox" mode. It can't access resources from other applications or files from outside it's realm.
Also, only one application can be running at once, and if the phone rings for example, your application will simply quit.
The last issue is syncing. There isn't at this stage inbuilt syncing functionality. There are a couple of options to get over this mostly involving communicating with a network layer or webservice. So your desktop app will have to expose it's data either locally or over the internet via a webservice. This does give the option of having a Windows app serving the data, but it would be nice to have a desktop syncing mechanism ala Active Sync.

The thing to remember is this is a Beta so hopefully some of the issues can be addressed before official release, but even so this is going to be big. I mean think of the games potiential alone. With the motion detection on the devices, it has the potiential to take hand held games to another level.

So as a conclusion to this ramble, I had great hopes for the SDK, and they have been met in almost every way.