December 12, 2005

Business & marketing for the Mac Developer

The Apple Developer Connection website has added a new section that provides, among other useful tips, a collection of Business & Marketing Frequently Asked Questions, information about specific markets (like education, science & technology...).

I think it's worth a read if you are a Mac developer.

Business & Marketing for the Mac Developer

November 26, 2005

How to write unmaintenable code

And old link, that I lost, and that I found again yesterday. I love the opening quote: " Never ascribe to malice, that which can be explained by incompetence"

A funny read: how to write unmaintenable code

November 23, 2005

[Cocoa] Memory management and exceptions

In languages like Java and actionscript, the "runtime" manages memory, using what is called a garbage collector, that reclaims the memory occupied by an object once it determines that object is no longer accessible. In Objective-C, the programmer must release the resources that he or she has previously allocated to be used by the program.

Memory management is not difficult by itself, because the developer must follow only a few rules, but it is the source of many memory leaks, specially when the program behaves in an unexpected way.

So, what happens when we need to throw exceptions?. How can we be sure that we are not producing memory leaks?. Chris Hanson writes about it in Cocoa memory management & exceptions

November 01, 2005

Design patterns poster

I am sure you have heard about the Head First series and about the Head First Design Patterns book, because it is probably the best introductory book to understand design patterns.

Last week I was browsing amazon when I found this item: Head First Design Patterns Poster.


As its name says, it is a poster (a big one, in fact) that contains a graph (taken from the original book), not an UML diagram but a graph that explains the pattern and also the page number of the pattern in both the Gang of four and Head First Design Patterns.

It visually summarizes 18 patterns, and it is attached to the wall in front of my computer right now...

(By the way, all the links in this post will NOT earn me a comission).

August 04, 2005

An example of the memento pattern ( the java version )

Conquering the world is not easy. You and me both know it. And Professor Coupling knows it too.

He has the knowdlege, he has a plan, he has the skills, and he has even the looks, but there are a lot of little details to care for before he can finally conquer the world!!.

In previous posts, be have seen how he has implemented the prototype pattern ( to create his army of clones –hey, I’ve just noticed the joke- ), the extension objects pattern ( to assign their roles ), the command pattern ( to assign them their orders ) and the observer pattern ( to implement a communications system ). It seems that Professor Coupling has had a lot of work, but was it enough?. NO!! ( muhahahahahahaha ).

Continuar leyendo "An example of the memento pattern ( the java version )" »

July 20, 2005

Apple drops Cocoa-Java

The last update of the ADC technical documentation says "Important: Features added to Cocoa in Mac OS X versions later than 10.4 will not be added to the Cocoa-Java programming interface. Therefore, you should develop Cocoa applications using Objective-C to take advantage of existing and upcoming Cocoa features.".

It says it loud and clear. If you want to develop powerful applications, you will have to forget about Java.

In theory, it was possible to develop Cocoa applications both in Objective-C or in Java, altough the performance of the Java applications was far behind the performance of those written in Objective-C. From now on, there's only one choice.

The link to the document: here

Via OSNews

June 11, 2005


I guess this post will not mean too much to the experienced Java developers out there, but this is something that I've found interesting. has posted an article about Prevailer. Prevailer is a framework that provides a prevalence layer for Java applications. But what does that mean?.

Instead of using a database or the native serialization mechanism, a prevalent system will take periodic screenshots of its state, and serialize them. Also, it will use command objects to perform the transactions that change the system state, and serialize them. That way, it ensures that the system is consistent.

Anyway, the article by Jim Paterson provides a complete example of implementation:

Prevalence: Transparent, Fault-Tolerant Object Persistence

June 02, 2005

An example of the Observer pattern (the java version)

Be aware!. Professor Coupling and his army of clones are ready!.The final attack is going to be launched quite soon!. And their weapons are actionScript and design patterns! In the previous posts, we’ve seen how Professor Coupling is able to clone any animal, and how he’s able to assign different roles to those clones. Oh, and he has also found the way to assign any animal its orders. Muhahahahahaha

Continuar leyendo "An example of the Observer pattern (the java version)" »

April 26, 2005

An example of the Command Pattern ( the Java Version )

Everything is ready. The sheeps and the cows are cloned, and their roles have been assigned. It’s time for Professor Coupling to launch the final attack. It’s time to conquer the world!!!.

But how will Professor Coupling give his troops the order to launch the attack?.

Continuar leyendo "An example of the Command Pattern ( the Java Version )" »

April 06, 2005

An example of the Extension Objects pattern ( the java version )

Do you remember Professor Coupling?. Do you remember his evil plans to conquer the world?.

Today, we’ll see how the Extension Objects pattern ( or “how to change the interface that a class implements at runtime” ) has helped Professor Coupling. It won’t be an easy task, because this is a complex pattern, but who said that being an evil genius was easy?.

Continuar leyendo "An example of the Extension Objects pattern ( the java version )" »

March 29, 2005

An example of the Prototype Pattern ( the Java version )

Professor Coupling is a Spanish scientific that is planning to conquer the world. Do you want to read about the problems he encountered, and how he solved them using the prototype pattern?

Continuar leyendo "An example of the Prototype Pattern ( the Java version )" »