Archive Page 2

11
Jun

iPhone developer demographics

There’s something really quite interesting about the iPhone-focused sessions we’ve attended here at WWDC; they have a demographic distribution which we have never, ever, seen anything even remotely akin to in over 20 years in  professional programming.

Specifically, as we write this, we’re sitting on the side platform at “Controls, Views, and Animation on iPhone”, which is a pretty solidly geeky session even as the general run here goes, and of the four people immediately adjacent, two, that’s 50%, are women.

Those of you who have never been to a programming conference are, perhaps, thinking “yeah, women are 50% of the population, so they’re 50% of your neighbours, and why would that merit a post?”

On the other hand, those of you who have actually been to a programming conference before — well, you probably just figure we’re flat out lying. That would indeed be the rational response, as normally at these conferences, well, let’s put it this way, the pretend women — not that there’s anything wrong with that! — outnumber the biological women by a significant multiple. WWDC is noticeably less imbalanced than your typical Microsoft conference in that regard, and way less imbalanced than any Linux conference in that regard, but even in our comparatively-enlightened Apple world, the number of women in any engineering session could historically be most accurately quantified as “rounding error”. But here in the iPhone programming sessions, there’s an utterly unprecedented number of women. And generally attractive women, no less.

Looks like The Babe Theory of Political Movements applies to programming platforms as well … it’s just that until the iPhone came along, there never was a platform that qualified. Be interesting to see if these anecdotal observations of ours turn out to portend a statistically significant difference in iPhone programmer demographics from the general industry, won’t it now?

 

09
Jun

Keynote lineup report

So it’s 60 minutes or so to show time. And the tension is can you feel it? palpable in the air over the feverishly enraptured lineup!

Well, ok, it’s more like a collective “I can’t believe that many people got up before I did” bemusement.

At least, unlike most here, we took the time for a good hearty breakfast, so we’re not knifing the others for scraps of Danish over at the snacks table. (Well, ok, I exaggerate, there’s no actual knifings so far, but that’s probably only because the knives are plastic.) And providing further evidence of my long standing theory that if you take a seat at the counter at Mel’s Drive-in the entire Mac community will eventually drop by for a chat, this morning our neighbour was the renowned Aaron Hillegass who, as you really should know already, is the/an author of the two most essential books on OS X programming, Cocoa Programming for Mac OS X and Advanced Mac OS X Programming. Which, if you don’t have the 3rd and 2nd editions of respectively, you should click those links and order, RIGHT NOW. We were planning to get around to doing an actual review of Cocoa 3 Ed. at some point, but we’ll settle for “Yeah, get it now” as being adequate. If you program in Cocoa, you should have it, simple as that. And while we’re on the topic, these books apparently are more or less the course notes from Messr. Hillegass’ Big Nerd Ranch in person training courses. We’re really much more book people than course people ourselves, but different strokes and all that, and if you are you should probably look into those!

07
Jun

Yellow Box Redux?

So we’re just starting to pack for WWDC now, and as our last post for a while probably (since anything that’s actually got us excited next week will probably be under heavy NDA) we’ll just go out on a limb with a rather out there but we think logical prediction for Monday’s keynote. 

See, our Impeccable Sources™ in the Apple world have been dropping hints that there’s something Big And Unexpected up for announcement, which is not directly related to the iPhone in particular nor hardware of any kind in general. If they’re not just teasing to wind up our curiosity to fever pitch — which is hardly inconceivable, we grant you, in which case after the keynote feel free to laugh your head off at how well that worked for them — what could it be? This .mac to .me reworking thing? Naah, we don’t see that qualifying as either particularly Big or in the slightest Unexpected.

Well, after pondering it, we think we just might have an idea. You’ve all heard about this “Snow Leopard” thing, no doubt. Well, we believe there actually is a “Snow Leopard” project, which quite likely will be revealed on Monday, but it’s not going to be 10.6 like most everyone is assuming, because that would be a different cat — there’s no way Apple would not rebrand the OS name for a full point release. For the same marketing-related reasons, we’ll proceed to assume that this code name is not disinformation of any kind. So there’s something bubbling and simmering in Apple’s labs that’s recognizably “Leopard”, but distinctly different enough from the shipping Mac OS X 10.5 to merit a separate yet connected brand.

Right then, the next wide assumption is that the dropping of “Mac” from the “OS X Leopard” posters in Moscone implies that there’s going to be a non-Mac OS X Leopard for generic PCs, and that would be Snow Leopard. We’re pretty sure we can dismiss that one as well. Apple’s revenue numbers just don’t make that idea work, however you slice it. And when even all the PC magazines universally agree that Mac laptops are the best for running Vista, there appears to be no reason to defocus from shipping machines.

So what, then, is “Snow Leopard”? Well, to answer that, let us put on our thinking caps. What is the one feature that developers were most upset about losing in OS X — before it was actually named OS X, in fact? The feature that Apple has a clear and compelling reason to bring back now, in order to further increase the pool of developers familiar with Mac and iPhone programming concepts? The feature that did, indeed, actually ship from Apple on the Rhapsody DR1/Intel Developer CDs? The feature which if released on Monday would be a perfect fit for the “Snow Leopard” moniker? Well, here’s what we say it is:

Apple Rhapsody Yellow Box for Windows

Yep, that’s our call: “Snow Leopard” is the return of Yellow Box. Except that the point of it this time around is not only, or even mostly, to allow Mac Cocoa programmers to deliver Windows applications — although it’s pretty likely that will be supported — but to let Windows users who for whatever reason can’t get a Mac of their own to develop iPhone programs using the same Cocoa-written toolchain that supports iPhone development on real Macs.

You heard it here first, folks!

POST-KEYNOTE UPDATE:

Hmmmmm. It appears that the only non-NDA’d information y’all who aren’t here is gettin’ is that yes, there actually is a “Snow Leopard” project, His Jobness stated, and us here is gonna hear all about it after lunch, in an NDA’d session. So it’s not completely impossible yet that we’re on to something here — but the smart money is that probably, contrary to all previous practice, the rumours about “Snow Leopard” being simply a rather boring 10.6 version are indeed correct, and the Big Important Thing that had been hinted at was indeed Mobile Me, aka “Exchange that doesn’t suck”. Ah well.

We’re quite sure there’ll be no shortage of people willing to violate their NDAs so you won’t have to wait until tomorrow even to find out the exact specs of “Snow Leopard” somewhere else — but as far as this particular legally correct NDA-respecting space goes, we’ll just have to leave the discussion at “probably a bad guess but we’ll know for sure in an hour.” Ah well. Can’t always have everything you want, and we’re pretty happy with how the iPhone 3G turned out!

POST-WWDC UPDATE:

Well, although this speculation turned out to be completely wrong, we actually were not completely off-base in identifying Apple’s interests and goals we figure; we just weren’t thinking outside the box enough in figuring that resurrecting Yellow Box was how to go about it. See this post for what we’re thinking now!

06
Jun

Free T-shirts @ WWDC!

Yep, start the week off right with a free T-shirt from FastMac:

San Francisco, CA - FastMac today announced 5 T-shirt designs to commemorate WWDC 2008 & Apple’s imminent launch of a new iPhone. The T-shirts use iPhone inspired themes to celebrate the world’s most advanced mobile platform: OS X iPhone 2.0. The T-shirts will be given away for free outside the Moscone Convention Center in San Francisco between 12 AM and 6 AM on June 9th. 

Well, that’s one less day I need to pack a shirt for!

h/t: Macintouch!

04
Jun

WWDC on your iPhone!

If you’re going to be at WWDC — and hey, even if you’re not, there’s other stuff there too — you should be aware of www.iviewr.com, which “provides a unique service to users of Apple’s mobile devices. Users can view handy snapshots of popular destinations and events around the globe.” In this case, it’s WWDC!

iPhone and iPod touch-wielding visitors to next week’s Apple Worldwide Developers Conference (WWDC) in San Francisco can enhance their visit to the show with a handy guide made available by iViewr.com.

A website for iPeople who are going places, www.iViewr.com has introduced its latest event guide aimed at the legion of developers making the pilgrimage to the conference.

Completely free to access, this handy ‘Pod SnapShot’ has the look and feel of a native iPhone application and provides details of all aspects of the show - from Conference Schedules, Lab and Session details, Travel directions, Disabled access, Moscone Center facilities, after hours events and more.

“Like the previous event guides we’ve made available, iViewr provides visitors to the Conference with all of the important information especially formatted for display on their iPhones or iPods” said Rod Cambridge, founder of iViewr. “If you have one of these devices, there’s simply no more need to be carrying around a jumble of papers, map and leaflets when a guide like ours is available.”

Well, hard to argue with that; my Springboarded bookmark of their site has certainly replaced the 2-per-day printouts that I made last year to try and keep track of sessions. An excellent service, and probably worth checking out whatever else is there as well.

h/t: MacSurfer!

02
Jun

SquirrelFish!

What is a “squirrelfish”? Why, this is a squirrelfish!

I’m sure there must be an interesting story as to where that came from, but “SquirrelFish” is the code name of the new WebKit JavaScript interpreter that was just announced. A 1.6 performance improvement over WebKit 3.1, they claim, and over four-fold from WebKit 3.0. And, no doubt, whatever performance improvements are in the WebKit nightlies now will make it to the iPhone sooner or later … and probably sooner.

There’s a good bit of background info in the announcement post which is probably worth reading if you’re the sort that has any more interest in interpreter implementation than the absolute minimum you could squeeze through your required degree courses without avoiding. And even if you are one of those sorts, there’s some pointers to contemporary introductory material that’s probably worth a gander just for general breadth of knowledge. So here’s the money quotes there:

SquirrelFish is a register-based, direct-threaded, high-level bytecode engine, with a sliding register window calling convention. It lazily generates bytecodes from a syntax tree, using a simple one-pass compiler with built-in copy propagation.

SquirrelFish owes a lot of its design to some of the latest research in the field of efficient virtual machines, including research done by Professor M. Anton Ertl, et al, Professor David Gregg, et al, and the developers of the Lua programming language.

Some great introductory reading on these topics includes:

Read and enjoy!

01
Jun

All about C99

Yep, we’re always on the cutting edge of the latest news and breaking developments here Under The Bridge, so today we’re going to talk about — wait for it — the C99 standard for the C programming language!

Um, you may understandably be thinking, how does ISO/IEC 9899:1999, published 1999-12-01, qualify as a breaking development now exactly?

Well, grasshopper, it’s a breaking development because it has recently come to public light on the xcode-users list that recent versions of Xcode have changed the default C language dialect to C99, apparently deciding that GCC 4.0’s C99 feature support can now be deemed complete. So that means that if you’re using Xcode to target Any New Device Currently Under NDA™, it would behoove you to clue into just what’s changed and different in this “new” version of C. And, conveniently, this fine fellow David Hoerl has put together a reading list for us:

It took a while but I finally did uncover a really good series of articles written by Randy Meyers for the C/C++ Users Journal several years ago. Posting these here in case you have been thinking of doing the same in the near future:

The New C: Introducing C99

The New C: It All Began with FORTRAN

The New C: Integers, Part 1

The New C: Integers, Part 2

The New C: Integers, Part 3

The New C: Declarations & Initializations

The New C: X Macros

The New C: Compound Literals

The New C: Why Variable Length Arrays

The New C: Variable Length Arrays, Part 2

The New C: Variable Length Arrays, Part 3

The New C: Variable Length Arrays, Part 4

The New C: bool, Advice to C and C++ Programmers

The New C: Inline Functions

Statements and Loops

Floating-Point Math

About // Comments

And if you’re not satisfied by all that, there is also available The New C Standard: An Economic and Cultural Commentary, a 1615-page book which annotates the entire standard, sentence by sentence. And it’s completely free, as Addison-Wesley backed out of publishing it once they got a look at it. Probably not a wholly indefensible decision on their part, as it’s not exactly what most people would consider a gripping page-turner, but it is remarkably exhaustive in its coverage. 

h/t: xcode-users!

28
May

iPhone SDK beta 6!

So, start up Software Update and get on board with 10.5.3 if you haven’t already — then go grab that SDK beta 6 goodness!

28
May

Google AJAX CDN

Now this is interesting: Google is now providing a CDN service for certain JavaScript libraries, called ”Google Ajax Libraries API.” So now instead of dealing with libraries yourself, you can just have Google

  • Manage the hosting, caching, and versioning/bugfixes
  • Serve up a minified version, if one is officially supported
  • Serve the same version to anyone else using it

So that’s helpful to anyone writing web pages by reducing code management hassle, but on the bandwidth-limited iPhone browsing over cell networks (3G or not) that last one is a really compelling reason to get on board, since sharing caching with any other page that happens to use that library as well is going to make the user’s experience noticeably better no doubt. Here’s the list of libraries they support right off:

I’d say that narrows right down the list of AJAX libraries we’re even going to consider learning!

h/t: Slashdot!

27
May

iFunding is hard

So it looks like it’s really not that easy to get your hands on that iFund money. Certainly my one submission so far got nothing but the “we have concluded that it is not an opportunity that we are prepared to pursue at this time” form email back, but I wasn’t surprised at that, it was a fairly subtle tweak to an established model with no particularly valuable proprietary IP involved — but hey, it was iPhone-specific, so I figured I’d give it a shot.

However, looks like pretty much everybody is having the same luck! The current stats are two (2) officially funded, and reputedly one (1) more with an offer and ten (10) being considered seriously — out of some 1700 applications. Well, that’s not a high hit rate, is it?

Number 1 is Pelago Whrrl, as we mentioned earlier.

Number 2 is a company called iControl, which if I’m getting the gist of things correctly is basically writing an appliance controller app, like the old school X10 controller software such as Indigo, just better hardware. 

So there you go; now we have double the number of actual examples of what it takes to get iFunded. Put those thinking caps on, people!

h/t: iPodNN!