Mac Dev Center: Memory Management Programming Guide for Cocoa: Memory Management Rules
Mac Dev Center: Memory Management Programming Guide for Cocoa: Memory Management Rules
Just a friendly little reminder of the memory management rules in Objective-C, since they seem to always cause so much confusion, despite being so simple:
This is the fundamental rule:
You take ownership of an object if you create it using a method whose name begins with “alloc” or “new” or contains “copy” (for example, alloc, newObject, or mutableCopy), or if you send it a retain message. You are responsible for relinquishing ownership of objects you own using release or autorelease. Any other time you receive an object, you must not release it.
Jan 11, 2010 Read More »
Better Ad-Hoc Builds on the iPhone
Ad-Hoc builds – what a pain. Seriously, Apple has made them much harder than they should be. And that’s after they have been much improved over the past couple of years. But they are very nice to have – especially if you are doing work with clients or if you want to send out builds to your army of testers.
This post is basically what I’ve found that helps in making consistently working Ad-Hoc builds. The consistent part is key. I have had Ad-Hoc builds that work some of the time before, and trust me, nothing is more frustrating than putting together a build, sending off an email, and getting a response saying “doesn’t work for me”.
Jan 11, 2010 Read More »
How to post photos on the internet
Take a boring photo with your 50mm f/1.8 prime wide open, with a small sliver of your subject in focus. Leave large portions of the subject outside of the focal plane, regardless of how important or interesting they are.
Rotate the camera 30 degrees before shooting.
Square-crop.
Oversaturate or slightly desaturate. Tint red to look old. Under no circumstances should you apply a neutral white balance.
Jan 11, 2010 Read More »
Windows Driver Issue on Quad (i5 & i7) iMacs
As you may know, I’ve been having fun with Windows lately – first Vista and then after despair, XP. I thought I had everything going pretty good – except that every time I looked at the Task Manager, I had one CPU core running at 100%. Hmm, that’s odd…
I did a lot of digging around on this one. I was able to figure it out, with the help of a few tools: the excellent Process Explorer, which is a part of the Sysinternals package and the RATTv3 tool which is also available from Microsoft. Using these tools, I was able to find out that the acpi.sys driver was what was taking up all the CPU usage. I had found some suspect advice on the net saying that you could simply suspend the kernel thread for acpi.sys using Process Explorer, and that did indeed work. But that’s only a temporary band-aid fix. I really wanted to know what the problem was being caused by.
Jan 08, 2010 Read More »
I’ve said it before, and I’ll continue to say it until it happens: Microsoft needs a new leader.
iPhone Development: CES Keynote (via quatermain)
Jan 07, 2010 Read More »
(via solipsism)
Jan 07, 2010 Read More »
Sparkfun Free Day
And just like that, it’s over. I wasn’t able to get through to place an order, despite having a shopping cart all ready, an account setup and even getting a page to pick my shipping method. The server load was just too much for them.
I hope that they talk about what happened behind the scenes today – was it all server load as suspected or were there issues with bandwidth as well? It would also be interesting to see where the orders that did make it come from.
Jan 07, 2010 Read More »
Sparkfun’s free day looks to be causing more traffic than they were prepared for. With just an hour left before the sale starts, I wonder how long it will take to hit the $100,000 cap.
Jan 07, 2010 Read More »
Nexus One Phone
Definitely the best Android phone so far. It looks great for an HTC phone, has some great tech specs too, but still leaves some lingering questions:
- Why don’t they support AT&Ts 3G network in the unlocked version? Is this because the unlocked phone is the exact same as the T-Mobile version and T-Mobile didn’t want the phone to work with AT&T’s 3G network? How much would it have cost extra for a separate model that would’ve worked with AT&T’s 3G?
- Besides developers, who is going to want to buy the unlocked version in the US? If you are on T-Mobile already, it probably makes more sense to just get the subsidized version. If you’re not, why are you paying over $500 to get a phone that doesn’t do 3G on your network (i.e, AT&T)?
- Why are they still limiting the internal flash capacity? Currently you can’t install applications from the Android Market onto the microSD card, so you are very limited with 512MB. To contrast, my iPhone 3GS currently has 1.9GB of apps installed. It’s only limited by the total amount of storage on the device*.*
- Is this going to be another dead-end Android phone when the next version of the Android OS comes out? So far very little of the Android devices have been upgraded to newest releases. And there are models coming out that are still using pre 2.x releases. As a developer, this has got to be the most frustrating part of targeting Android – there is typically no upgrade path for the existing user base.
I’m looking forward to seeing more Android devices over the next few years, if only to keep everyone else on their toes. I personally can’t wait to see Apple’s next iteration of the iPhone now that Google has raised the bar on the hardware side.
Jan 05, 2010 Read More »
Final Vista (for me) Update
I finally gave up on Vista – the final straw was running out of space on the partition I had created for it. You would think that 60GB would be enough to install an OS onto with all of it’s updates – especially since that’s the size of one of the hard drives in one of my Macs running Snow Leopard.
I have instead switched to XP for Boot Camp. It’s a bit frustrating since XP only sees 3GB out of the 8GB that’s installed, but I guess I’ll have to live with that for now.
Jan 04, 2010 Read More »




