memory

The Web Means the End of Forgetting – NYTimes.com

Objective-C Memory Management & Garbage Collection

Dealloc

Last week there was a bit of a Twitter in-fight in the iOS community over the “right” way to release your instance variables in dealloc. I think Rob actually started it, to be honest, but I probably shouldn’t be bringing that up.

Basically, several developers were claiming that there’s never a reason to set an instance variable to nil in dealloc, while others were arguing that you should always do so.

To me, there didn’t seem to be a clear and compelling winner between the two approaches. I’ve used both in my career. However, since we’re in the process of trying to decide which approach to use in the next edition of Beginning iPhone Development, I reached out to Apple’s Developer Tools Evangelist, Michael Jurewitz, to see if there was an official or recommended approach to handling instance variables in dealloc.

Other than the fact that you should never, ever use mutators in dealloc (or init, for that matter), Apple does not have an official recommendation on the subject.

However, Michael and Matt Drance of Bookhouse Software and a former Evangelist himself, had discussed this issue extensively last week. They kindly shared their conclusions with me and said it was okay for me to turn it into a blog post. So, here it is. Hopefully, I’ve captured everything correctly.

Read more on Dealloc…

Solving the JavaScript Memory Management Problem

JavaScript has some real problems. Anyone who has programmed for the web can attest to that. And anyone familiar with what we’re doing with Cappuccino will recognize that we’re not afraid to tackle those problems head on. When we created Objective-J we set out to create a set of true enhancements to the JavaScript language that would add powerful new dynamic features to the language, like advanced automatic dependency resolution, truly dynamic message passing, and familiar classical inheritance. By all accounts it has been a tremendous success.

Read more on Solving the JavaScript Memory Management Problem…

Want to Remember Everything You’ll Ever Learn? Surrender to This Algorithm

SuperMemo is based on the insight that there is an ideal moment to practice what you've learned. Practice too soon and you waste your time. Practice too late and you've forgotten the material and have to relearn it. The right time to practice is just at the moment you're about to forget. Unfortunately, this moment is different for every person and each bit of information. Imagine a pile of thousands of flash cards. Somewhere in this pile are the ones you should be practicing right now. Which are they?
Fortunately, human forgetting follows a pattern. We forget exponentially. A graph of our likelihood of getting the correct answer on a quiz sweeps quickly downward over time and then levels off. This pattern has long been known to cognitive psychology, but it has been difficult to put to practical use. It's too complex for us to employ with our naked brains.

Read more on Want to Remember Everything You’ll Ever Learn? Surrender to This Algorithm…

30 Days to a Better Man-Day 10: Memorize “If”

Before Google and the internet, people memorized stuff. When your grandpa went to school, memorization was the main method of learning, and he had to commit things like the Gettysburg Address and sonnets by William Shakespeare to memory. Decades ago, rote leaning went entirely out of fashion amongst educators, in favor of helping students think creatively and problem solve. Yet, the pendulum swung a bit too far, and the baby got chucked out with the bathwater. For in truth, there are many advantages to memorizing information. After all, while it’s important to be able to think and apply knowledge, if you don’t have any knowledge to apply, knowing how to apply it is pretty useless. This is where memorization comes in.

Read more on 30 Days to a Better Man-Day 10: Memorize “If”…

Google Author link