Apple, rejecting Eucalyptus was a mistake.
There’s nothing that I can say that hasn’t already been said, so let’s just leave at this: Apple, you fucked up.
(For those of you that don’t know what I’m talking about: read about it here.)
Xcode plugins you’ll thank me for later
GrowlCode — a plugin for Apple’s Xcode development environment. It provides notifications for all sorts of crap.
Completion Dictionary 4.1.1 — apparently it’s been around forever (4.1.1? that’s older than me!), but it’s a welcome refreshment and hopefully will save a few of us from catching swine flu (ed: carpal tunnel). Be sure to change the default key binding though, cntrl+escape? wtf, give me some of what they were smoking!
xcode-bracket-matcher — an ingenious name for a brilliant plugin, wouldn’t you agree? Not much more needs to be said here. Way to go, Mr. Walsh!
I’m sure there’s more, so post ‘em in the comments.
Standard iPhone Element Sizes (Width x Height)
Core Elements:
Carrier Status bar - 320x20
UIView - 320x460
UINavigationBar - 320x44
UITabBar - 320x49
UISearchBar - 320x44
UIToolBar - 320x44
Data Input:
UIPickerView - 320x216
UIDatePicker - 320x216
UIKeyboard - 320x216
Buttons:
UISegmentedControl - 320x44
UIButton xx37
Fields:
UITextField - xx37
UISwitch 94x27
UISlider - xx23
Indicators:
UIProgressView -xx9
UIActivityIndicatorView - 37x37
UIPageControl - 38x36
3.0 and the app store
Apple is requiring all applications from this point forward to be compatible with 3.0 in order to be reviewed. They’re also going to be going back and testing each application already in the store against 3.0.
I only wish at this point that they’d introduced additional backwards incompatibility, or perhaps even just a simple flag forcing each developer to rebuild and resubmit. We’d probably lose about 10,000 apps.
Testing a code post
1 #import "UINavigationBar+Background.h"
2
3 @implementation UINavigationBar (UINavigationBarCategory)
4
5 - (void) setBackgroundImage:(UIImage*)image withTag:(NSInteger)bgTag{
6 if (image == NULL) {
7 return;
8 }
9
10 UIImageView *aTabBarBackground = [[UIImageView alloc]initWithImage:image];
11 aTabBarBackground.frame = CGRectMake(0, 0, self.frame.size.width, self.frame.size.height);
12 aTabBarBackground.tag = bgTag;
13 [self addSubview:aTabBarBackground];
14 [self sendSubviewToBack:aTabBarBackground];
15 [aTabBarBackground release];
16 }
17
18 /* input: The tag you chose to identify the view */
19 - (void) resetBackground:(NSInteger)bgTag {
20 [self sendSubviewToBack:[self viewWithTag:bgTag]];
21 }
22
23 @end
iphone behavior
An interesting observation: since purchasing my iPhone in, November? of 2007 I’ve moved away entirely from using Google Reader on my laptop. I now read RSS feeds throughout the day — when I wakeup I scan the headlines quickly, while waiting at stoplights, while waiting in the drive thru for food and right before going to sleep. All using the mobile version of Google Reader.
The amount of time that has saved me during my most productive hours easily outweighs the initial cost of the phone itself.
I still don’t care about the “soft” keyboard, but I do miss “push” e-mail. If I’m in the middle of a back-and-forth (almost IM like) email thread, I want to be notified immediately. Not in 15 minutes.
