Mac
Snow Leopard to Lion; The painless way
Conclusion first!
Let me save you a few minutes (and perhaps hours of suffering on your Mac) and tell you the end of the story in the beginning. Upgrading has been always a tricky way of installing a new operating system. Granted it is smooth enough on a Mac but it comes with its own cons, like wasted disk space and unused files here and there.
So backup your files, which you need to do anyway, and go for a fresh install. Don’t be lazy, it just needs one more hour of your time.
Here is how you do it:
1. Go to Mac App Store (Run the application on your Mac)
2. (Purchase and) download Mac OS X Lion. It’s a big file (almost 4GB), so refilling your coffee won’t hurt.
3. Once the download is complete, open the Applications folder on your Mac and find Install Mac OS 10 Lion icon.
4. Right-click on the file and select Show Package Contents.
5. In the folder find Contents/Shared Support/InstallESD.dmg.
6. Right-click on InstallESD.dmg and select Open with > Disk Utility.
7. Insert a blank DVD and click Burn on the toolbar. Another coffee or maybe even dinner will fill the void.
8. Voila! You now have a bootable DVD of Mac OS X Lion.
9. Boot the system with DVD in the drive while holding the Option key (that is, on your keyboard).
10. After a few seconds you’ll be presented with 2 icons on the display, a hard drive and the Mac OS DVD.
11. Select the DVD (click on the arrow key below it) and follow the instructions. The system will start installing the 12. new operating system
Warning: This process will delete all data that existed on the disk prior to install. Backup your files on an external device first.
Now the story
It’s been more or less a month since Mac OS Lion is out in the wild. As with all new releases of operating systems people react to it very differently. From blind love to pure hate, and well, that’s not quite informative.
One of the best reviews I read about Lion was from Ars Technica, written by John Siracusa. I’d be lying if I say I read it all; it’s a friggin’ book. But I enjoyed the unbiased view of the author and learned stuff too. You might be wondering why do I just woke up from the rock I was living under and started writing about installing Lion.
First of all, it’s not that very safe to upgrade to a new OS the moment it is available for download. The irrationale joy and excitement of a hot-from-the-oven product might burn you. The very early adopters usually share invaluable information about their first impressions and sufferings. Then I didn’t think my old (late 2007 , yes 2007!) MacBook Pro seem to be a bonafide candidate for the job. So I waited until I buy a new laptop, which was 2 days ago. A Core i7 MacBook Pro. It’s a descent machine and I quite like it.
About upgrading to Lion; the laptop came with Snow Leopard installed on it and a free download code for Lion. Instead of just upgrading to Lion I chose to run a fresh install on it to have the peace of mind that no old file will be left abandoned on the system and no library will conflict with a new one. Time will tell.
Now if you excuse me I have to go finish installing the apps I need on daily basis. You can refer to conclusion (top) for a quick tutorial on fresh-installing Lion.
Adding easy to use sorting features to Objective-C arrays
Apart from how powerful and flexible NSArray in Objective-C is, there are times that you need to sort many arrays throughout the projects.
The standard way of sorting arrays in Objective-C is to use one of:
- sortedArrayHint
- sortedArrayUsingFunction:context:
- sortedArrayUsingFunction:context:hint:
- sortedArrayUsingDescriptors:
- sortedArrayUsingSelector:
(See the official documentation)
But what if all you need is just a simple sort, available in different classes and across many projects?
Using sortedArrayUsingSelector:, for example, will need you to type in something like this as many times as you want to sort an array:
NSArray *array = [[NSArray alloc] initWithObjects: @"Sally", @"Jake", @"Alex", @"Tim", @"Tammy", nil]; NSArray *sortedArray = [array sortedArrayUsingSelector: @selector(caseInsensitiveCompare:)];
To make your life easier, Apple has made categories available for you to simply extend the functionality of a any class (NSArray in here) visible to the entire project. As you might wonder, you don’t even need to have access to the source code of the class you are extending.
Getting Started
To keep things clean an tidy, add a new Objective-C class to your project (File > New File…) and call it Categories. Make sure you create the .h file too.
Then replace the interface with this code:
@interface NSArray (NSArraySortExtensions) - (NSArray *)sortAscending; @end
And the implementation with this code:
#import "Categories.h" @implementation NSArray(NSArraySortExtensions) - (NSArray *)sortAscending { return [self sortedArrayUsingSelector: @selector(caseInsensitiveCompare:)]; } @end
Now go back to your class, where you want to use sorted arrays and first import the newly made class:
#import "Categories.h"Now you can easily sort an array by sending a very short message to NSArray:
NSArray *array = [[NSArray alloc] initWithObjects: @"Sally", @"Jake", @"Alex", @"Tim", @"Tammy", nil]; NSArray *sortedArray = [array sortAscending];
or even:
NSArray *array = [[[NSArray alloc] initWithObjects: @"Sally", @"Jake", @"Alex", @"Tim", @"Tammy", nil] sortAscending];
You can add more methods to the category and make NSArray even more powerful.
Cloud is better off without Flash
With the emergence of the iPad, there are many trends changing and many ideas developing around an old but finally well-developed phenomenon: the tablet computer.
Although I am somehow late giving my opinion on the subject, I think it is worth the try.
One of the areas cloud computing can be very useful and extremely capable is on the thin clients. Despite the fact that definition of a thin client nowadays is quite different than few years ago (take iPad and compare it to any of the “revolutionary” J2ME enabled devices) they are still far less capable than conventional computers, i.e. laptops and desktops.
iPad (as a good example and so far the best in the segment) is fairly powerful by itself and offers decent performance in doing resource-intensive tasks like 3D game rendering. But there are times that its processing power and storage capacity is not sufficient for certain tasks. You might say, well turn to a more powerful computer then. The price of such move could be sacrificing the super cool and useful features like ultra-portability and modern human user interface of the iPad.
Mix like a DJ on your Mac with Djay
This article is originally posted on Shufflegazine.
If you are a music fan (who isn’t?) you might have dreamed about mixing some tunes and added new grooves to your favorite tracks. Macs are famous for their music production tools and you don’t need to be a professional DJ to create cool stuff.
There are a lot of DJing and music production tools (GarageBand, Logic Studio, Reason, etc.), but for a hassle-free mixing experience, Djay can be your best friend. No matter if it’s your first time (like me) or you are a pro, you can make wonders with this nifty application.
Read the full story from Shufflegazine.

