search
top

Obj-C: performSelector instead of NSTimer

Often times I just want to delay a single call by a number of seconds. I don’t really want to loop it.

Previous I had used NSTimer to create the call, then I had to remove the time when the call was made. This was less than ideal, and more code that I would have liked. However, I’ve since discover the excellent ‘PerformSelector’:

To use:

[self performSelector:@selector(method) withObject:nil afterDelay:5.0];

To cancel:

[NSRunLoop cancelPreviousPerformRequestsWithTarget:self];

For more information, check out apples docs here: apple docs

What to do with all this time?

I used to, and in fact still do, feel a lot of pressure to get things done quickly. So much so that in fact, I just don’t do many things properly first time around, I don’t go in to them prepared. I’m frantic. Much less now, than in my 20s, but nonetheless, way to much pressure on myself.

What came to mind recently, is how much time I have until I’m 80 years old. Really I don’t have much planned before I’m 80. All the things I’ve got planned could be done in comparatively no time at all.

This being the case, why rush? Take the time I’ve obviously got, relax, and take the time to do the things that I plan to do, properly.

This may be conventional wisdom or common sense to some. But it’s something, I for one, haven’t realised in a long time.

( I plan to read this post a lot, to remind myself :) )

Blast from the Past

I found some links recently, of work I did when I was 20/21 years old (2000/2001). Full of believe that anything can be done, and keen to convince people that it’s worthy to do.

Nothing’s changed. Just a bit older and some more solid portfolio than my ideas at the time :)

Here are some of the screenshots:
[popeye]

Obj-C: StringWithFormat tokens

This is a quick reference for NSString StringWithFormat format specifiers or tokens, as I’m often trying to remember them myself.

Specifier Description
%@ Objective-C object, printed as the string returned by descriptionWithLocale: if available, ordescription otherwise. Also works with CFTypeRef objects, returning the result of theCFCopyDescription function.
%% '%' character
%d%D,%i Signed 32-bit integer (int)
%u%U Unsigned 32-bit integer (unsigned int)
%hi Signed 16-bit integer (short)
%hu Unsigned 16-bit integer (unsigned short)
%qi Signed 64-bit integer (long long)
%qu Unsigned 64-bit integer (unsigned long long)
%x Unsigned 32-bit integer (unsigned int), printed in hexadecimal using the digits 0–9 and lowercase a–f
%X Unsigned 32-bit integer (unsigned int), printed in hexadecimal using the digits 0–9 and uppercase A–F
%qx Unsigned 64-bit integer (unsigned long long), printed in hexadecimal using the digits 0–9 and lowercase a–f
%qX Unsigned 64-bit integer (unsigned long long), printed in hexadecimal using the digits 0–9 and uppercase A–F
%o%O Unsigned 32-bit integer (unsigned int), printed in octal
%f 64-bit floating-point number (double)
%e 64-bit floating-point number (double), printed in scientific notation using a lowercase e to introduce the exponent
%E 64-bit floating-point number (double), printed in scientific notation using an uppercase E to introduce the exponent
%g 64-bit floating-point number (double), printed in the style of %e if the exponent is less than –4 or greater than or equal to the precision, in the style of %f otherwise
%G 64-bit floating-point number (double), printed in the style of %E if the exponent is less than –4 or greater than or equal to the precision, in the style of %f otherwise
%c 8-bit unsigned character (unsigned char), printed by NSLog() as an ASCII character, or, if not an ASCII character, in the octal format \\ddd or the Unicode hexadecimal format \\udddd, where d is a digit
%C 16-bit Unicode character (unichar), printed by NSLog() as an ASCII character, or, if not an ASCII character, in the octal format \\ddd or the Unicode hexadecimal format \\udddd, where d is a digit
%s Null-terminated array of 8-bit unsigned characters. %s interprets its input in the system encoding rather than, for example, UTF-8.
%S Null-terminated array of 16-bit Unicode characters
%p Void pointer (void *), printed in hexadecimal with the digits 0–9 and lowercase a–f, with a leading 0x
%L Length modifier specifying that a following aAeEfFg, or G conversion specifier applies to a long double argument
%a 64-bit floating-point number (double), printed in scientific notation with a leading 0x and one hexadecimal digit before the decimal point using a lowercase p to introduce the exponent
%A 64-bit floating-point number (double), printed in scientific notation with a leading 0X and one hexadecimal digit before the decimal point using a uppercase P to introduce the exponent
%F 64-bit floating-point number (double), printed in decimal notation
%z Length modifier specifying that a following dioux, or X conversion specifier applies to a size_t or the corresponding signed integer type argument
%t Length modifier specifying that a following dioux, or X conversion specifier applies to a ptrdiff_tor the corresponding unsigned integer type argument
%j Length modifier specifying that a following dioux, or X conversion specifier applies to a intmax_tor uintmax_t argument

Mac OSX : Tabbing between windows from the same application

It’s all good being able to tab between applications in Mac OSX:

CMD + TAB

But when you’re coding in XCode, Interface Builder or similar applications with many windows, you want to be able to find those windows using shortcut keys.

The way to do that is:

CMD + `

NOTE: This ‘ character shares a key with the tilde (~) character. On my MacBook Pro it’s located above the left CTRL key, and on a full sized keyboard, top left.

Mad Matoto, the Sick Samurai, The King Of Queen Street

This guy has got to be one of the best buskers ever seen on the streets of New Zealand! (he’s playing on Queen Street, Auckland, NZ) He’s got some serious skills, it worth watching the whole video. He’s dressed up a Samurai ( I’m culturally naive here, but I think that’s what he is).

He plays the guitar, one handed, behind his head, hands front and back!

He drew a good crowd, and they LOVED him! No one pulls the crowd like Mad Matoto! :)

‘We Love Apple’ : So say Adobe

Adobe today, making a bold statement in an attempt to correct any potential damage that has be caused by the Flash versus Apple (iPod,iPad,iPhone) debate. Could also help mend some bridges with Apple.

[popeye ids="387"]

Flash on the iPhone?
Adobe have been pushing for some time to get Flash on to the above platforms. Seems really sensible, to have a multiplatform tool that can publish to any number of devices. It works in theory for the developer, because he/she only has one development workflow. It works for the device manufacturers because they need to make their devices as seemingly marketable as possible ( ie. It’s got to do everything!). It also works for Adobe, as they have the best position to push their own creative suite of applications to the market.

What Apple think
Apple however, disagree, and want to maintain control over the flow from developer to customer. Many people feel that this is unfair, that this is ‘a bit Microsoft’. I can see their point, I felt the same.

Apple vs Flash : A Brief History

Steve Jobs is right?

However, if you step back and have a look, you can see the points that Apple make are actually valid. The ones that appeal to me are:

  • Control of UI is retained and thus promotes better usability and better user experience
  • Optimised documented APIs mean battery draining code is kept out, and to a minimum
  • Undocumented APIs can potentially open up security leaks
  • Less bugs, as the closed code source is maintained by one party, and then quickly fixed
  • New features of the iPhone platform, quickly available to market, rather than having to wait for 3rd party development software to support it

I’ve worked with Flash since Flash 4. I created sites in 1998 because I believed I could do better, offer a better web experience to the user. Make things move, flow, add some class to a web page that was sorely lacking in the early. Just check out Yahoo from 1998.

[popeye ids="389"]

Verdict

I believe Apple are trying to attain to a dream, a standard that they have idealised. Personally, I love that approach. It means they care about their end user. They care about the ideal. I’m all for that. For that reason, despite developing in Flash for all these years, I’ll happily move on to the next challenge, and develop applications that give me the power to create software I believe in.

Shoutout: Superlux Studios

Here’s a shout out to an old mate of mine who’s the archetypical mad genius: IAN AXTON!!! :)

Like most artists, he lives on another planet full of banana wearing chimpanzee fighting space aliens from the other side of Galasticus. Probably wearing tuxedos and sporting a shy smile, before they proliferate the planet, with laser firing flowers ( note to self, find out what proliferate means ).

Anyways, I’m proud of his work, as much as I am of him, so check out the attached images, or go to his facebook page!

links

@domnicella admin > setting…

@domnicella admin > settings > writing > formatting > convert emoticons…… simples #wordpress

: #WordPress: Setting up PHP5 …

: #WordPress Setting up PHP5 with .htaccess http://matthewhare.com/2010/05/13/wordpress-setting-up-php5-with-htaccess/

Page 2 of 3123
top