Wednesday, August 04, 2004

Cocoa Tutorial: Currency Converter

After learning the pretty easy scripting language : AppleScript. now is Cocoa's turn.
By searching the ADC website for some resources, there's a tutorial thats available on both the ADC site aswell as the O'Reilly book that the AUC supplied - the currency converter.

After going through the step-by-step tutorial using Xcode and Interface Builder, the currency converter was made... but it doesnt work... and I still don't get the hang of Cocoa. Probably since I havent learn C or C++ before. But hopefully it will sink in as times goes by and more practices are done.

Tuesday, June 29, 2004

Tuesday WWDC2004

On receiving an email by Apple, they offered WWDC attendees an opportunity to win an Apple Powerbook 15" and a 15GB iPod, through entering a competition in the designing of gadgets. Gadgets are objects that offers a lightweight means to convinience utilities such as Calculators, Sticky Notes, mini iTunes and Address Book. The program that holds these gadgets is called the 'Dashboard', which forms a part of Expose in the Tiger version of Mac OS X.

Another email from Apple announced that attendees of the WWDC2004 can go into the Sun JavaOne Conference Pavilion for free, which brings a highly practical dimension to the conference, as Borland, IBM, BEA, HP, Sun and many other companies are holding exhibition stalls at the Pavilion.

440 Widget Development
Due to the above competition, the first session we attended on Tuesday was overpacked with people. However, Apple organised a repeat of that session later in the afternoon, which also nearly filled the whole conference room.

The Dashboard is basicly based on the Webkit, and offers developers the flexibility and simplicity to build gadgets using HTML and javascript. It is also possible to use a Cocoa plug-in to enhance the gadgets functionality, through linking it through AppleScript etc. However one important point that should be stressed about was the use of plug-ins within gadgets would breech security issues, and would require it to be owned by 'root' to be accessible.

One bug we found through experimenting the Widget was the 'multi-session' function would not function properly, if you launch a few instances of the same gadgets before it complete loading up. We also built a gadget to be entered into the competition, namely 'SafariBar', which serves as a shortcut to the URL bar and Google search function. This launch bar is simple, yet very functional, and easy to use, allowing users to access web resources at their finger tips. Unfortunately it didn't win the competition, but valuable experiences were gained.


303 Automator Development
This session presents Automator, the new way of automating process on Mac, as an easy to use, yet powerful tool for the normal day-to-day users. It follows a linear workflow to automate processes and eliminates the coding that is required using AppleScript. The Automator is a great tool to link several applications to work together, however it is only available in the Tiger distrubution.


734 H.264 3G to High Definition
This session addresses a new video standard encoding - the H.264 MPEG4 10. The H.264 is a new emerging standard that offers a range of video encoding codecs, ranging from low resolution 3GGP mobile videos to high definition DVD screenings. It's size is about 1/4 of the current MPEG4 and offers similar or better quality than its preceedor. A preview of this codec is available in the Tiger Seed - Quicktime / Export. It is used currently within iChatAV (Tiger), enabling up to three people in one single video conference.


304 Introduction to XCode
This session introduces the new features of XCode (1.5 Panther, 2.0 Tiger). These versions run faster through the indexing of files, and includes additional features such as enhanced Webkit for online application development. The XCode team also implemented three more ways that developers could view their XCode interface, and the addition of custom shortcut keys also improves the usability of XCode from the previous version.

Java and Cocoa Java is now fully supported by XCode, and while there are other new features supporting the development, deployment and debugging of the development process, it would take time to explore and take full advantages to the new changes.


The Sun JavaONE Conference (The Pavilion)
For the fifth session of the day, we visited the Sun JavaOne Pavilion, which is an exhibition which holds more than 50 stalls. Through walking through these stalls and attending the JavaOne 'Cook Competition', we were able to learn the available development tools that are on the market, as well as some mind blowing software/proof of concept. This includes the 'Looking Glass' project, which was a 3D desktop environment, enabling a highly interactive user experience. This project was intended to be the Sun Java OS' next desktop environment, however, at this point of time, it can be only considered as a proof-of-concept. Another interesting project that the Java One hosted, was the 'Cell Phone FireTruck', which is essentially a toy FireTruck that can be controlled by a Cell Phone (aka Mobile Phone) through GPRS technology. Other stalls such as Parasoft and KwikEdit offered software to test or optimise code for both the Mac/Java and Windows/.Net platform.


Apple Design Awards
The Apple Design Awards was presented to various contestants, which included ATI for their PipeDream (a music application). There are three categories associating to the Apple Design Awards, which includes the following categories: Application Software, Quicktime Content and Performance Software, Student Projects. The winning projects are ones that we should learn from, while incorporating these new reflections to our own projects, better results could be achieved.


Stump the Experts
This is an evening event which offered a very fun experience on 'stumping the experts'. Which is essentially an informal competition between the "Experts" (Apple Enggineers) and the attendees. There were three methods of competition:
1. Guess songs' names that were played before the session started.
2. Answer questions from the slides.
3. Challenge experts with questions.
This game associates to the history of the Apple computing culture, and developement questions of current or past technologies.
One of the challenging questions from the crowd showed the power of the Experts, whereby an attendee asked for the most expensive product on iTunes, and the Experts contacted the manager of iTunes and used a SQL query to find the most expensive product in the iTunes store.
At the end, although the crowd won, but everyone had a great time and learnt some interesting questions about Apple computing.

-----------------------------------------------------
Tuesday: 09:00-23:30 (14.5hrs)
At the end of Tuesday, I was all tired and not too ready for Wednesday.
But anyway, it was a heap of learning and experiencing (which is good :) )

Monday, June 28, 2004

Monday WWDC2004

Here I am, arriving at the Moscone West Convention Centre, where the Apple WWDC2004 is held. On arrival to the conference, I registered at the front desks and got my name badge and other freebies from apple, inclusive of a Conference Guide. One very special thing I noticed, was the Mini Coopers and BMW's that were parked at the foyers/lobby, and had iPod integrated into the in-car entertainment system.

Keynote address
The first session was Steve Job's keynote, which was broadcasted over all of the conference rooms in the building. Through the session, Steve introduced Mac OS X Tiger - the next generation of the Mac Operating System. New features of Tiger includes: Dashboard, Core technologies, QtKit, enhanced Webkit, enhanced iLife, enhanced video compression - H.264 MPEG4 10, multisession iChatAV, 30" LCD Screens, iPod Mini, AirTunes/Airport Express etc... This kicked off the conference with new and interesting issues to explore. The Tiger Seed CD was handed out after this session.

300 Development Technologies Overview
This session addressed the new Xcode 2.0 Preview for MacOSX Tiger, which has is optimised for faster operations. It also introduced Webkit and QtKit as new development technologies. The new Safari 2.0 Preview also offered developers a way to preview the code they wrote using Webkit. It also demonstrated the optimisation tools used for developing applications using Xcode, such as Shark. This session offered broad content intended for all developers of the Mac OS X.

204 Graphics and Media State of the Union
This session started off the week with the new Graphics and Media architecture in the preview of Mac OS X Tiger, where Apple changed its multimedia architecture from being a horizontal approach to a more virtical approach, having Quicktime as the top layer, which bases on Quatz 2d, OpenGL. Apple also introduced CoreImage and CoreVideo along with other 'Core' technologies in the release of the new Mac OS X Tiger.

-By the end of Monday, I was tired. -

San Francisco, here I come!

As part of the AUC WWDC 2004 scholarship I got, this will be my first time to the Apple WWDC2004. I will be expecting to learn a lot of new knowledge there, and meet with lots of new contacts that will enhance my Apple experience in San Francisco - the Moscone Centre.

Two delays cause me to miss the first day of the conference, hence, the student Sunday. The first delay was my expired passport, which ended up renewing it in a matter of 2 days. The second delay was caused by the overbooking of United Airlines seats from SYD to SFO, and that delayed me for one night. However, the upgrade to business class was nice, and it made the trip to SFO less tiring.

By Monday morning 10am, I finally arrived at SFO, and checked in at the Pickwick hotel.

Thursday, April 08, 2004

QT java

Have a look, a way to capture iSight footages using java. Quicktime for Java, but only works on cocoa-java for some reason. Doesnt work with USB webcam either.

Monday, April 05, 2004

PC Flash // Mac Flash .. wots wrong?

There's something weird that Macromedia did to Flash in Windows and Flash on Mac. The exported swf files arent compatible on both platform when executed outside a brower...

I guess there's not much hope on using Flash as the interface anymore... seems like java would be more reliable cross-platform wise. Dropping two weeks of works on Flash would make us fall behind the project by a large step.

Monday, March 29, 2004

Paquet Visuel aka Packet Visuel

Since I've finally got my hands on a Mac (my first one ever), I've convinced my project group at UQ to base our project on the Mac platform. The project is about email with video, well there's already these kind of things out there (ie. plug-in for MS outlook), but there's no program that uses video as the primary medium to communication asyncrhonously. This will be the first one, and probably the first one on a Mac using iSight.

Our plan
Using Flash as the interface and using a Java backend. (Cocoa is an option, but seems difficult and there's not much time to complete this project, better stick with something we are familiar with.)

Wednesday, March 10, 2004

what about Apple Scripting ... ?

Finally got the hang of Mac OS X. Easy to use, but very different (in terms of programming for it) with Windows. Trying to programme something to work with the iApps (iCal in particular) and the first thing I notice: AppleScript :) seems quite easy to ready this scripting language. However, I still bought a book to learn about it (after all I'm not familiar with this computerised humane language) - AppleScript for Dummies.

AppleScript here I come!
(but can I make an application out from AppleScript? the answer lies ahead)

Saturday, January 31, 2004

Java Spiking

It seems like java is really similar to those on all other platform. Successfully trialed out some basic java on the Mac (which is good). Also discovered that the Swing interface would turn 'mac-like' even if it is written on a PC ~ cool. However, the Java IDE that I'm using seems to be very slow on this iBook (Borland JBuilder X).

Java - the Cross-platform solution.

Thursday, January 22, 2004

Spiking for the CTMS

Collaborative Time Management System (CTMS)

As I have received my AUDF seeding grant from AUC, it seems to be time to plan how the CTMS should be done.

Initial spiking would take a longer period of time, as both the Operating platform and Development platform is new for me. Through this spiking process, a number of technologies is identified for which the CTMS will be based on. The following are a list of technologies to spike:

- Java (on a Mac)
- Cocoa-Java
- Cocoa
- AppleScript
- iCal plugins and standards
- Rendezvous