Monday, October 5, 2009

Research Thus Far

I've been researching the structure of the iphone OS at the Apple Developer Site, and I have found it very extensive and well documented. Apple really does a great job marketing, and providing the tools necessary to create a simple application or a complex one. The ability relies solely on the experience of the developer, because with these tools, the application is only limited by the creativity and the hardware.

The Toolkit apple provides covers 4 areas from high level to the lowest level.

Cocoa Touch
Media
Core Services
Core OS


Cocoa Touch is associated with the UIKit and has the ability to leverage other applications
Media covers anything related to audio, video, and animation 2d/3d.
Core Services works with the media layer
Core OS is the lowest layer and allows access to Bonjour, Network Sockets, C-Based SQlite, POSIX Unix Sockets.

Now, I use to do some basic programming including Java, and Basic. I originally wanted to get into the Computer Science program, but then I came back to reality, and decided I am not really a programmer. I enrolled into network administration and security instead, and that is why for this project I am choosing to go with the high level aspects of the Iphone SDK kit. This means I will be using the Cocoa Touch stack with the UIKit and stick with frameworks that keep programming in objective-c to the very minimum. This does not mean I won't improve to the point I can make a more complex application, it just means that I have to work within my means for the time I have to complete the project. Thanks to built-in templates in xcode (Iphone's coding tool), it will make developing this project less difficult. I do, however, want my application to have some charisma with some graphics. This will require me to read more documentation in xcode and Interface Builder. It is critical to understand the basic design patterns and conventions of the iPhone OS in order to write code for this platform. I am going to need to look into the Cocoa Fundamentals Guide for more guidance, because it covers the objective -c language. I will then have to dive into the Application Programming Guide, which has more specific details of the concepts covered in the fundamental's guide.


Last night, I created my very first application. This application is your typical "Hello World" application, when trying a new programming platform. It is certainly nothing to flaunt about. This application was a result of a Stanford assignment given out in a Computer Programming class specific to the iPhone. I was able to find Stanford lectures for this class open to the public and via iTunes. So far, I have enjoyed going through the slides Stanford provides and the assignments which get my feet wet with the developer tools. I'm going to attempt the second assignment as I finished the first. I figure after going through most of these, I'll be familiar enough with the platform to start creating an application specifically for Forensics. I have already storyboard the graphic design for this application in Photoshop, including the icon that will represent the application on the phone. I also have a good idea about the contect and the layout of the content will be. Hopefully everything will turn out well. Since my professor told me that people in the Forensics field will be viewing my blog. I figure I will get some great insight and suggestions about what else I can add to the application. I'm always open to some solid suggestions!

Iphone Application

I must say I've never been much for blogging, but it does have its place in the world. I was just sitting here thinking today that this is a great cheap way to get information across to others without having to buy and manage your own web server. Since I work in security, blogs such as these have been instrumental along with various security sites to finding out about new exploits or malware out in the wild. I am now using the tool of blogging for my own project, which will involve learning more about the development process of any iphone application. I want to be able to create a iphone application that can help everyone out in the forensics field. I took a quick peak onto the apple application store and did not see anything related to forensics other than a CSI game. The application I'll be working on will be geared towards only digital forensics. I would love to have all kinds of forensics, but that would just take too much time to develope, especially for a class project. This is all I have for now, since I started writing this 15 minutes before class. I will continue writing my progress towards my completion date. Stay tuned!