Last week I gave a talk at the Des Moines CocoaHeads (Google Groups link) on how Quartz works in Cocoa and an intro to the C Based Core Graphics API's. Some of the topics I got started on was based off of Scott Stevenson's topics raised on Intro to Quartz Part I and II on Cocoa Dev Central and a couple of the Core Graphics examples were based off of samples from the Quartz book written by people in Apple. All in all the meeting covered the following
* How Quartz does hardware accelerated drawing
* When you would use Core Graphics API's over Cocoa's route to Quartz
* A basic intro on to how views work
* Basic Cocoa/Quartz Data Structures
* Basic Core Graphics Data Structures
* How coordinates in Views work
* Cocoa Convenience Methods
* How to draw Alpha (Transparency)
* How paths, strokes and filling works
* Using Images in your views
* Using PDF's in your views
* How to scale images/pdf's non/uniformly
* A brief discussion on the Cocoa/Core Foundation Bridge
* Places to learn about Quartz
Additionally at the meeting we got into some small discussions on how Quartz works on a much deeper level, problems that arise during drawing with floating point widths, etc. The Keynote file from the presentation (for iWork 08) as well as a pdf from the keynote and all the source code examples are available for download below from the Des Moines CocoaHeads Google Groups page:
Intro to Quartz Keynote Presentation
Intro to Quartz Presentation (Compressed PDF form)
Source code from projects demoed
Update Updated links from Google Groups Page - if you can't download the files here they are located on the Des Moines Cocoaheads page @ http://groups.google.com/group/des-moines-cocoaheads
Monday, October 15, 2007
An Intro to Quartz and the Core Graphics API's (Updated Links)
Posted by
Colin Wheeler
at
12:50 PM
2
comments
Wednesday, October 03, 2007
Des Moines CocoaHeads: All about Quartz
The next CocoaHeads meeting will be close to home in Ames @ Iowa State University. I will be giving a presentation about Quartz and specifically using it with Cocoa. Once the meeting is up I will post the Keynote presentation and source code so you can download it. Reposted from http://cocoaheads.org/us/DesMoinesIowa/index.html
The next CocoaHeads: Thursday October 11, 2007 07:00 PM CST at Howe Hall, Room 1246 - Iowa State University Campus. Directions: Howe Hall is located on the north-west corner of Bissell Rd and Marston Ct Ames, IA 50014 [map] "[Howe] is a big building, glass front, you can't miss it". Parking is available in lots north or south of Howe. [parking options] Agenda: Intro to Quartz: a discussion of the more advanced drawing routines available in Cocoa. And as always, general Cocoa geekyness.
Posted by
Colin Wheeler
at
9:50 AM
0
comments
Monday, September 10, 2007
Des Moines CocoaHeads in Ankeny & Contact Info
Info reposted from http://cocoaheads.org/us/DesMoinesIowa/index.html Schedule: The next CocoaHeads: Thursday September 13, 2007 07:00 PM CST at Kirkendall Public Library. Directions: 1210 NW Prairie Ridge Dr Ankeny, IA 50023 [map] Note that this is a new location as Panera was a bit noisy. Internet access is available, but the librarians tell me it can be "spotty" in the room we'll be in. Agenda: We'll be building a very basic app with XCode and Project Builder to get those who are a little green to the process some idea on how to start. This will undoubtedly progress into Advance tips and tricks as well as a discussion on Objective-C's finer points. We should also have time to discuss any issues people may be having or have overcome (I'm looking at you, Colin:) And as always, general Cocoa geekyness. You can also find the Des Moines CocoaHeads @ http://groups.google.com/group/des-moines-cocoaheads ============== Also wanted to let you know that i've setup a GMail account for e-mail regarding questions of things on this blog, general cocoa topics,etc. The address is on the sidebar to the right. You can email me at cocoasamurai@gmail.com.
Posted by
Colin Wheeler
at
7:27 PM
0
comments
Wednesday, August 22, 2007
An Open Letter to Apple
Every time Apple releases a new version of Mac OS X, Developers get shafted a little bit. We develop the apps that complement and enhance Mac OS X and make it great and what do we get for this? Releases of Mac OS X about a month after everybody else. It’s no secret that with paid ADC accounts we get a free copy of Mac OS X as it’s stated clearly on the ADC Site ( http://developer.apple.com/products/ ), which is why anybody who knows they are getting a free copy wouldn’t buy one. Well I am not here to endlessly bitch about it, I am here to provide an easy to implement solution... certificates. I propose instead of letting developers sit by waiting for Leopard to come a month late and let everybody else get a copy of Mac OS X Leopard when it comes out right away, let developers sign up on the ADC site for certificates for a specific Apple store if you want it. Instead of mass mailing out these certificates to every developer (wether they will be at a Apple store or not, thus potentially leading to some abuse of the system) open a form on the ADC site that checks our credentials (knowing if we have an account with a free copy of Mac OS X (Select, Premier or Student ) or not), and then lets say the form can contain the Apple Store we plan to go to and then give us a printable (or mailed to us) certificate that when we go to the Apple store on Leopards launch date we can redeem for a copy of Leopard. I am guessing that due to the close time frame of Leopard in October it’s probably too late to create this so that certificates are mailed to us. So I suggest this
- Create a Section on the ADC site that lets developers sign up for a printable certificate (optionally with a serial code pattern unique to the particular apple store) to be redeemed at a specific Apple Store for Mac OS X Leopard
- This form validates our ADC account and when it’s all submitted sends this information to the specific Apple store.
- When Mac OS X Leopard launches developers print this certificate out and go to the Apple store
- When at the apple store the employees scan a barcode on the certificate or enter in some unique serial number/code and in combination with a simple thing like our drivers license for ID, validates us and takes the full price off of leopard and thus developers get a copy of Mac OS X 10.5 Leopard! :D
Posted by
Colin Wheeler
at
6:24 PM
11
comments
Wednesday, July 18, 2007
CocoaHeads starting up in Des Moines!
Bout time! :D The first meeting of CocoaHeads chapter in Des Moines, Iowa is starting up. Im planning on attending and if your in the area come on by! When: August 2 @ 7-9pm Where: Panera Bread on 86th in Urbandale Google Maps Link Why: Meet local Cocoa developers like you who want to know more about Cocoa and voice your opinion about what you'd like to learn about in future meetings
Posted by
Colin Wheeler
at
3:57 PM
1 comments
Thursday, June 07, 2007
Make the most of your time @ WWDC
Well I am not going to WWDC this time around. But chances are if you are reading this you are... or at least you just wanna know what all the fuss is about. Scott Stevenson posted his thoughts on CocoaDevCentral and as a first time attendee I thought i’d give you some tips from things I learned at WWDC 06.
Students
Generally speaking students get the Sunday before the Keynote to go through a few general sessions by some guest speakers, followed by a Dinner and Job Fair. But lets get the ugly out of the way.
Get there Saturday with a good amount of time to get the lay of the land. I don’t know about WWDC 07 but in 2006 the Student session was at a hotel and not at the Moscone center. So you’ll need to know where the student session is at and how to get there. If you can print out as many copies of your resume (assuming your going to the career fair) before leaving on the trip, or find a copy place on Saturday and save yourself some time. You should have a good amount of time on Sunday before the career fair to do this, but I would rather have spent the time relaxing. Also you’ll need to get your badge you wear all around WWDC on Saturday at the Student Registration. You can always get this later, but I would really recommend getting your badge on Saturday.
When you start out Student Sunday feel free to bring your MacBook/Pro to take notes, etc. Then you’ll have your sessions as well as lunch then the Career Fair. Many students ask about the attire you wear to the career fair. In general most people going wear formal clothes, but you are totally free to chose what you want. Your not required to go formal.
The Keynote and First Day
Again for the rest of the WWDC attendees, get your badges ahead of time before Monday. Just trust me, it’ll save you lots of time and effort later on.
Scott was right about the Keynote comparison between WWDC and MacWorld. I woke up at 6 am and got there 7 am and the line was from the front of the building and wrapped around roughly a block. When I finally got in to the keynote room, I got a spot only a few rows back from the frontmost spot the average attendee could get. In comparison I read about how people camped out the night before MacWorld. Overall get there at whatever time you want, but if you want a really good spot then get there at around 6-7 am, if you want any decent spot I wouldn’t get there more than a couple hours after that.
Then you can watch the keynote and break for lunch. After that you’ll go through a couple State of the Union sessions followed by dinner at a reception there.
The Sessions
Apple makes a list of sessions available ahead of time, but many of them are blank for unannounced sessions. All I can offer you here is mark out which sessions you’d like to go to ahead of time. When they finally do announce all the sessions, all you need to do is compare your selection against the newly announced sessions and make your choice.
You can always go for a session in something your interested in learning vs learning how something has improved in the next Mac OS. Personally i’d always go for something new if you can as they paid off big for me, but again it’s all your choice. If say your job revolves around some particular feature/topic then certainly go to the sessions on that. You can always watch the video of the session later on.
Hands on Sessions
Whereas most sessions are like listening to a lecture/guide to how something works, the hands on sessions are more tutorial-like than anything else. The one hand on session I went to was nice, but at the same time it’s wasn’t required you even follow along to enjoy it. Apple will probably provide code ahead of time on the WWDC attendee site. If you are even thinking of going to these sessions I’d personally take the time and download the code/files for the sessions ahead of time so you have them in case you go to the session.
Labs
Labs are a nice time to get some one on one time with apple engineers to get answers to your tough problems. If you intend to go to these have your laptop with you and a list of things you are trying to get help on. In many sessions you are attending you should pay attention to any mentions of specific times for a lab on that subject so that you can make the maximum use of your time at WWDC.
Feedback Forums
Feedback Forums are a very loosely structured meeting. Basically key people from Apple that work on whatever the forum is focused on are on stage and take your feedback on that subject wether it’s good or bad, or if you just want to offer advice on things you think apple really needs to include/improve in whatever the forum is focused on.
These sessions are ok, but aren’t really that useful to you unless you really want to give apple some feedback.
Special Events
There are 3 special events definitely worth attending at WWDC. The first being the Apple Design Awards where developers get recognized for producing some amazing apps. Each time this is held the competition keeps growing in size.
The other event is stump the experts. This one is an event they even encourage you to take all the pictures you want. It’s overall a very good time to be had trying to solve the puzzles they put up and all the questions. Too bad theres no video of this on the ADC on iTunes.
The last event is the Bash on Apples Campus. If you want to get a decent spot, be sure to line up early. Me and my friends did and we got to be among the first to get in line for the Apple Store there and it still took a while to get in there. If you get there and see a long line it may not be worth it to even try and get in. They have plenty of food and drinks there as well as a musical guest of some sort. WWDC 06 featured a DJ, it sounds like 05 featured a band ( Jimmy Eat World.)
Meals
Everyday Apple has Breakfast and Lunch for all attendees as well as dinner on a few nights. It seemed to me that there was generally plenty to eat there at any given time. There was even enough laying around just before the keynote to make a decent breakfast.
As for lunch, I can’t speak to everybody’s taste, but I found there was a decent variety. Usually there are a few options at any meal and I believe there was some vegetarian meals, but I didn’t pay much attention to them while I was there.
As always there are options for meals around you in San Francisco, but mostly they seem a bit expensive and so most of my meals were at the Moscone Center.Also there is always (and I mean ALWAYS) a ton of free drinks in the commons area of each floor (except the 1st floor.) By drinks I mean lemonade, water, etc.
Overall
Overall just relax and have a good time there. Unless you really need help at the labs with specific topics just go with what seems interesting to you and never second guess yourself, you can always watch the video of the session you couldn’t go to later on when Apple puts it up for download on iTunes. Enjoy yourself at WWDC! Also let me know if there was anything else you thought was important from your experiences at WWDC.
Posted by
Colin Wheeler
at
3:32 PM
1 comments
Monday, June 04, 2007
OMG iPhone SDK!!!
Well the Mac News & Rumor sites are abuzz with news of a potential iPhone SDK at WWDC 07. Personally I never know what to trust when these types of rumors come out. I do believe though that there is usually an element of truth behind the rumors. Since writing my original iPhone SDK analysis shortly after Steve’s keynote i’ve had some time to reflect on this and I must say I still stand by it. To quickly recap here are some observations I made
- There are no Windows in the iPhone, the entire system appears to revolve around presenting and animating views
- The sheets that animate onto existing views appear to only come from the bottom-up as seen in the keynote
- all views and layers appear to have the ability to become partially transparent including the toolbars and topmost statusbar
- The iPhone shows the same cocoa controls we know with some sporting some theming to blend in with
- the iPhone UI, these controls include NSButton, NSSegmentedControl, NSSearchField, NSToolbar, etc
- The keyboard sheet will probably be a standard sheet you can call for input from any app, gone will be the days where we simply assume users can type something at any time
Posted by
Colin Wheeler
at
1:28 PM
4
comments

