Wednesday, September 30, 2009

More iPhone 3 Development Update

Today, I teased my Twitter followers with this and this. I thought it would only be fair to elucidate a little bit.The first half of More iPhone 3 Development has been a struggle to write. In the first half of the book, we create a navigation-based application using Core Data. Although the chapters are primarily intended to teach different aspects of Core Data, I also wanted to set a good example design-wise. If you've ever written a table-based detail editing view, you know that's a challenge. Even Apple's sample code uses kludgey, hard-to-maintain techniques because the table view architecture simply wasn't designed primarily for creating this type of view; it was designed to display values from a collection or list not for displaying or editing different attributes of a single object.My...

PatrickJ Interviews Loren Brichter

An interesting and apparently amicable end to the Twitter 2 controversy? It sorta looks that way. Not everyone will agree, but I think now people have a better understanding of the situation Loren was in and the reasons he made the decision he ma...

Critical Thinking from Critical Thought

This is an excellent blog post by David Whatley of Critical Thought Games. I was already bummed about not being at 360 iDev (the first was awesome), but I really would have liked to have been in the audience for David's talk, especially to watch the crowd's reaction.I've been known to grouse about things from time to time, but I also try to keep a sense of perspective and not lose sight of just how amazing this thing that Apple has enabled with the App Store and iPhone SDK is. David does it better. Well worth a few minutes of your time to read th...

Tuesday, September 29, 2009

Comments are Broken

Note: No word from Blogger.com yet, but the comments to this post seems to be okay, it's just the original post that's not working, so the discussion has started back up in the comments to this post.Yes, I'm aware of the problem. I've posted the error code and information to Blogger's tech support forums and am hoping for more information sometime today. It is a shame, though, the Just Another iPhone Blog author I linked to in my last post wants to respond to my post, and can't. We've tweeted back and forth a bit, and I think the discussion will be both interesting and fruitful and, believe it or not, civil.As several C4 attendees became painfully aware this past weekend, the way our words are received are not always the way they were intended when written. It's altogether possible that I...

Monday, September 28, 2009

A Sense of Entitlement: Tweetie 2

For the most part, I stay out of discussions about App Store pricing. The so-called "race to the bottom" is, I think, somewhat blown out of proportions in many discussions held between iPhone developers, who have a very personal and one-sided view of the market. There's a lot of competition and prices are lower than traditional software markets, but there's also a large volume of buyers (2 billion applications sold so far and counting according to Apple), which means you can still make a living charging relatively low rates. If EA or Infinity Ward can make a profit selling a game for $49.99 that takes a team of literally hundreds of people two years to create, it seems like 1-5 person iPhone development shops should be able to make a profit at a much lower amount if the program is marketed...

The Grass on the Other Side of the Fence

Here is an short account of the experiences of one of the earliest Palm Pre developers. Be warned, though: The neon green on black is a little hard on the eyes.Not intending to pass judgment here, just think it's interesting to see what life is like developing for other mobile platforms. I think keeping a little in touch with what's going on in the Palm and Android development world helps us keep a sense of perspective when we get frustrated with the App Store and iPhone development proce...

Two Billion and Counting

Today, Apple announced that they have reached another milestone: two billion applications have been downloaded from the App Store. Other numbers from the press release include the fact that there are 85,000 applications available in the store, and 125,000 registered iPhone developers. The App Store is currently available in 77 countries and allows you to reach 50 million potential customers.Holy hell, those are some big numbers.via Michael Jurew...

Saturday, September 26, 2009

Read for You, Write for Me, Right?

Properties are a way to expose data to other classes. Because they make memory management more convenient on the iPhone and in non-GCC Cocoa apps when you declare them retain, many of us also use properties within our class. When we use synthesized instance variables, we don't have a choice, because the underlying instance variables created by the runtime aren't available even to our own class, and we have to use the accessors and mutator or dot notation to use them.What happens, however, when you want a property to be read-only to other objects, but you also want to be able to use the synthesized mutator within your own class to assign new values? In other words, what do you do when you want a property to be read-only to the rest of the world, but read/write within your own class?Extensions...

Thursday, September 24, 2009

Barcode Generator Application

For grins and giggles, I tried compiling an Xcode project I created back in 2002. Well, technically, it was a Project Builder project created in 2002 that was converted to an Xcode project a couple of years later, but the bulk of the code was written back in 2002. I wanted to see how much work would be involved in taking a project that was written when Puma was the current version of Mac OS and Macs were shipping with PowerPC processors and getting it to compile to work in 32/64 bit mode for Intel Macs.Code changes required? Not a one.There were a bunch of warnings that I would address if this were shipping software, since a couple of methods I used back then have been deprecated. None of them have yet been removed, so the application works...

Wednesday, September 23, 2009

Opacity - Export as Source Code

Okay, I don't ordinarily repost items covered by Daring Fireball since most of you probably read it anyway, but this one's just too cool and too relevant not to include. The vector art program Opacity now has the ability to export your graphic as source code, presumably as CoreGraphics calls that you can use in your Mac and iPhone applications.Now, in most cases, you don't want resources contained in code - you should just store the graphic file as a resource in your application's bundle - but there are times when this would be hugely helpful, like when you want to animate the vector art, or when the specific appearance of the image depends on values only available at runti...

Tuesday, September 22, 2009

More Housecleaning

Here's another category I found while cleaning out my dev folder. It's another bit of Quicktime code for Cocoa. This is a category on QTMovie that makes it easier to deal with standard movies (i.e. ones with one video track and any number of audio tracks). This same category exists in the MovieStepper project, but that version won't compile for 64-bit Cocoa applications because Apple has removed access to the underlying Quicktime data structures like Track and Media. This version uses only QTKit objects to accomplish the same tasks, and thus will compile for both 32-bit and 64-bit applications.QTMovie-Frame.h//// QTMovie-Frame.h// MovieStepper//// These are methods designed to be used on movies that contain only // sequential frame data, e.g. straight movies. These methods make// the...

Monday, September 21, 2009

MV Blackjack - More Dev Folder Housecleaning

Here is an Xcode project for a simple Blackjack program. This is another one that was developed as part of a writing assignment, but then ultimately not used. This shows how you can use Core Animation rather than OpenGL to create a simple game. The cards are "dealt" to both players using the animatable properties of the views, and the effect is quite nice considering how simple it is to impleme...

Dice Poker - Another One from the Dev Folder

Here's another Xcode project from the dusty corners of my dev folder. This is a project I wrote for an article Dave and I were going to write, but we decided on a different application.As usual, typical warnings about not being production-ready, yada ya...

A Look at Android Development

I stumbled across this article on Android development today, and it was a very interesting read. The author gave a very balanced look at the Android platform, saying what he thought was good and bad. It reads like a very honest assessment. I didn't detect any obvious spin.The one area where I don't agree with the author is his statement on Android's Intent/Activity model. This post claims that Android is "a big step ahead of the current iPhone programming model", but I can't help but to be reminded of OpenDoc and CyberDog. This idea of getting "away from monolithic, isolated applications" is not new; it's been floating around at least since the 1990s. If you look at theoretical, rather than practical implementations, it probably goes back much further than that, even.Yet, here we are in 2009...

More Desktop Code

Although my focus for the last 20 months has been the iPhone, I've tried to stay at least in touch with Cocoa for the Mac. As a result, I tend to start a lot of small projects designed to help me learn, re-learn, or brush up on some specific area of functionality. A lot of these projects just end up gathering dust on my hard drive and are never used in any kind of production application, so since I'm doing a little housecleaning, I thought I'd post some of these projects that might be useful to iPhone developers wanting to get into Mac development or for newer Mac developers.I've written several Cocoa applications over the years that work with Quicktime, including Crimson FX, a simple rotoscoping and special effects application. Back when I...

Sunday, September 20, 2009

Some Desktop GL Goodies

No time for a tutorial or lengthy description, but I thought I'd quickly post a few Xcode projects I've got.First is the OpenGL ES icosahedron project from way back in OpenGL ES from the Ground Up, Part 2, only ported to Cocoa for the Mac. This is the very first one, with no lighting. It does show how to set up OpenGL ES on the desktop, including toggling full-screen mode. You can also use the arrow keys to increase or decrease the rotation speed.Second, I've taken Apple's very old NSOpenGLView Full Screen sample code, and updated it to use the modern approach that works nicely with multiple displays and multiple GPUs. You can find the updated Xcode project here.Third, here's another version of NSOpenGLView Full Screen sample code that creates a dedicated full screen app that doesn't support...

Saturday, September 19, 2009

App Store Resource Center

If you're part of the iPhone SDK Program, you likely already now about this, but I think it's cool enough to warrant a post. Apple has just opened the App Store Resource Center for Developers. I haven't had the opportunity to go through it exhaustively, but at first glance, it appears to a welcome and pretty awesome tool for third party application develope...

Wednesday, September 16, 2009

Persistence Pays Off

Here's a report that says Microsoft's Bing search engine has captured over 10% of the search market. That's pretty impressive, but when you take into account that Yahoo! search is also powered by Bing, that means the Bing search engine is actually handling 26.7% of search traffic. That's over a quarter of the search traffic being handled by a product that's only existed for four months.Wow.That's impressive, phenomenal growth, and Google should be just a little concerned. It'll be a while before Bing has a chance of knocking Google out of its number one position, but they certainly look like they are going to fight the good fight in search now. I bet this number continues to grow for a while, they look to have momentum and are getting almost exclusively good press.There's no doubt that Bing's...

Multi Core Mobile Chip

It looks like the rumors of a multi-core mobile chip are actually well-founded. Boy, would something like this make for a jaw-dropping future iPhone model that would give us a real need for blocks and GCD.from Bill Dud...

Monday, September 14, 2009

iPhone Dot Net

Here's another interesting project, which allows programming iPhone applications in C# using Mono. It's based on the open source Mono project, but is a commercial product.I have such mixed feelings about projects like this one. On one hand, I have tremendous admiration and respect for the ingenuity and hard work that went into making this work. Yes, it definitely does lower one barrier to entry for a considerable number of people with solid .NET experience, but that's not necessarily a good thing.Tools like this encourage people to become hammer developers, that is to say, developers who use and are comfortable with only one language and framework. I have a very strong belief that being a hammer developer is, to put it bluntly, bad. I'm a strong believer in the importance of cross-training....

More on Blocks

Joachim Bengtsson has a very nice post on using C Blocks, well worth the read, even though we don't have blocks on the iPhone y...

Friday, September 11, 2009

Grand Central Dispatch is Open Source

I find this fascinating.Apple has open-sourced libdispatch, better known to most people as Grand Central Dispatch.Grand Central Dispatch is something that developers - at least those who attend WWDC - have known about for well over two years. It's not something that your typical computer user would get excited over, but from the perspective of a developer, it's a really exciting technology that allows you to leverage the power of all the processing units in a given machine relatively easily.When I saw the GCD demo that Bertrand Serlet gave at WWDC 2008, I was blown away. I looked at it as a game changer for the long term. Until there's a huge breakthrough in chip technology, utilizing multiple cores and multiple processors is the way to improved performance and this looked like something that...

Thursday, September 10, 2009

3.1 OpenGL ES Template

I've had some questions about whether I was going to upgrade my OpenGL ES template any more. I probably will, but it won't be any time soon. I did want to just point out that the iPhone SDK 3.1 is now GM and I can point you to the excellent OpenGL ES Application template in 3.1. I haven't had time to use this template extensively, but it looks to be setup really well for supporting both OpenGL ES 1.1 and OpenGL ES 2.0, so you might want to upgrade if you haven't and check it o...

A Disappointment?

I came across an interesting little rant today about how yesterday's announcement was a "disappointment". I understand that a lot of people were expecting cameras in the iPod Touch, and are let down. But putting things into perspective, I do think the important upgrade to the iPod Touch happened - the move to 600mhz ARM 7 CPU and the PowerVR SGX GPU) happened even though it wasn't explicitly stated.But here's the comment that I found weird:The shocker for me was to see Apple putting a video camera onto the iPod Nano 5th gen along with a bigger LCD and FM Radio w/ live pause. I just don't see the point or appeal here. A video cam is much needed on the iPod Touch. But apparently, Mr. Jobs thinks of the iPod Touch only as a video gaming platform... whatever!I'm not surprised that people are upset...

Page 1 of 12512345Next

 
Design by Wordpress Theme | Bloggerized by Free Blogger Templates | coupon codes