Oh...I just read an article (yes, still with the magnifying glasses hiked on top of my regular glasses) about Steve Demeter. He developed the puzzle game, "Trism," for the iPhone. In the article he mentioned that he had a working prototype up of his game in 10 days. 1o DAYS! He knew nothing about the iPhone SDK, or Objective-C e'der. Now, how much of a working prototype do I believe he had in 10 days, I'm skeptical, but I love a good challenge. So, I'm challenging myself to have something up in running on the iPhone simulator, since I don't currently own an iPhone or iTouch, in the next 10 days. Since I started my research into iPhone development, last Friday (Decemeber 5th) that means I'm already 3 days behind, and now have 7 days to get something up and running.
So, for those not familiar with Mac OSX development that means I have to learn a new IDE (XCode), Objective-C, and the iPhone SDK, in 7 days in order to get something up on the screen. Ahhh...I like a good challenge.
Hmmmn...I've got a bunch of American Express bonus points that I've never used. I just did not want to spend 400K points on a calculator. However, I did see in their last catalog an iTouch. I will use the majority of my accumulated points on it (thus a free iTouch). I already own a 17" MacBook Pro (purchased 3 years ago to edit my 40 min. short film - which did get into 2 film festivals I brag...no need in being humble, that sh$t was hard work my friend, so I pat myself on the back every chance I get). So, I have to upgrade my OSX, $130. I'll stop by the Apple Store on the way home, and pick that up.
Thus my schedule of tasks stays the same (see below), with the caveat of my having little test program up and running by next Monday (keep in mind I have a day job -and we must all count our blessings for that, in this economy-) so you know I'll be scrambling.
Tasks/Status
1) Learn the iPhone Tech
* Download/install iPhone SDK
* Upgrade Mac OS $130
* Join iPhone Dev $99
* Read iPhone Docs/Samples
** iPhone OS Technology Overview
** Cocoa Fundamentals Guide
** iPhone Application Programming Guide
** iPhone Human Interface Guidelines
** iPhone Development Guide
** The Objective-C 2.0 Programming Language
** Write little test programs to learn the iPhone Capabilities (memory allocation, file I/O, iPhone audio, WiFi, graphics, etc...) - by Dec. 15th
2) Test my game concepts out on the iPhone
3) Build tool(s) if needed
4) Solidify Game Design
5) Architect the game code
6) Develop game w/ scratch art
7) Drop in real assets
8) Test/Debug
9) Ship It
Sad news...I was following Noel Llopis (game developer, author, biz owner) blog "Power Of Two Games," he and his friend where embarking on making a game w/ just the 2 of them. Sadly they have shut it down after about 2 years, and what do I read he's doing on his old/new blog, "Games From Within," iPhone game development.
Well, off to do my day job, and can't wait to get home this evening...10 DAYS! 10 DAYS! "Don't bully me, Daniel!"
Monday, December 8, 2008
Sunday, December 7, 2008
ZZZZZzzzzzzzzzzz
I've got a headache and my eyes hurt. The pain isn't from the iPhone studying, no, so far, I like what I'm reading (halfway through the Cocoa Fundamentals Guide). My headache and eyes hurting are from the fact that I'm waiting on my new glasses to come in on Thursday, so right now in order to read, I have a pair of those cheap magnifying glasses you get from the drug store, propped up over my current eye glasses to try and make the text bigger. The strain on my eyes is now palpable.
Well, it has been a good weekend start to my iPhone game development. As I type the iPhone commercial with the games just aired...must be a sign. :)
Good night.
Well, it has been a good weekend start to my iPhone game development. As I type the iPhone commercial with the games just aired...must be a sign. :)
Good night.
Click, click, click
Click, click, click, that's the sound of me adjusting the view lense even tighter, zooming in closer on one of the bullets I listed under "Learn the iPhone Tech." I am talking about "Read iPhone Docs/Samples," after doing some reading last night and jumping from one topic to the next, iPhone Dev, Cocoa, Objective C, UKit Framework, blah, blah, blah. I decided that it was going to require a planned and detailed directions, so as to eliminate wasted sight-seeing on this journey. Believe me there's lots of cool sites and fascinating things to see, but I'm going to try and do them in order, and not break from the path, "oh look, look at that!," that way I'll be able to get where I'm trying to go in better time.
So, the breakdown of "Read iPhone Docs/Samples," is to read the docs in following order;
* iPhone OS Technology Overview
* Cocoa Fundamentals Guide
* iPhone Application Programming Guide
* iPhone Human Interface Guidelines
* iPhone Development Guide
* The Objective-C 2.0 Programming Language
I will keep a running status for myself here on the blog of what is currently being worked on or done (highlited in green), what's been accomplished (highlighted in red), and the remaining tasks will be listed.
I am a little neurotic about logging what I'm doing, I won't do it here, but at work I keep a digital logger, that I log everything I'm doing (dated & timed), so there are entries like every 10 minutes. It comes in handy when something stops working or I have forgotten something, I can quickly search my logs and viola, I'm usually saved.
Tasks/Status
1) Learn the iPhone Tech
* Download/install iPhone SDK
* Upgrade Mac OS $130
* Join iPhone Dev $99
* Read iPhone Docs/Samples
** iPhone OS Technology Overview
** Cocoa Fundamentals Guide
** iPhone Application Programming Guide
** iPhone Human Interface Guidelines
** iPhone Development Guide
** The Objective-C 2.0 Programming Language
** Write little test programs to learn the iPhone Capabilities (memory allocation, file I/O, iPhone audio, WiFi, graphics, etc...)
2) Test my game concepts out on the iPhone
3) Build tool(s) if needed
4) Solidify Game Design
5) Architect the game code
6) Develop game w/ scratch art
7) Drop in real assets
8) Test/Debug
9) Ship It
Off to read...
So, the breakdown of "Read iPhone Docs/Samples," is to read the docs in following order;
* iPhone OS Technology Overview
* Cocoa Fundamentals Guide
* iPhone Application Programming Guide
* iPhone Human Interface Guidelines
* iPhone Development Guide
* The Objective-C 2.0 Programming Language
I will keep a running status for myself here on the blog of what is currently being worked on or done (highlited in green), what's been accomplished (highlighted in red), and the remaining tasks will be listed.
I am a little neurotic about logging what I'm doing, I won't do it here, but at work I keep a digital logger, that I log everything I'm doing (dated & timed), so there are entries like every 10 minutes. It comes in handy when something stops working or I have forgotten something, I can quickly search my logs and viola, I'm usually saved.
Tasks/Status
1) Learn the iPhone Tech
* Download/install iPhone SDK
* Upgrade Mac OS $130
* Join iPhone Dev $99
* Read iPhone Docs/Samples
** iPhone OS Technology Overview
** Cocoa Fundamentals Guide
** iPhone Application Programming Guide
** iPhone Human Interface Guidelines
** iPhone Development Guide
** The Objective-C 2.0 Programming Language
** Write little test programs to learn the iPhone Capabilities (memory allocation, file I/O, iPhone audio, WiFi, graphics, etc...)
2) Test my game concepts out on the iPhone
3) Build tool(s) if needed
4) Solidify Game Design
5) Architect the game code
6) Develop game w/ scratch art
7) Drop in real assets
8) Test/Debug
9) Ship It
Off to read...
Saturday, December 6, 2008
iPhone Dev. Step 1
Okay, so "it begins." First things first, I've mapped out a temporary task/schedule list, that I've broken out into 9 key steps. Each step I will later redefine into even smaller tasks that I can easily track down to hourly tasks. I start out high, and then zero down. The following are the 9 high level steps.
1) Learn the iPhone Tech
2) Test my game concepts out on the iPhone
3) Build tool(s) if needed
4) Solidify Game Design
5) Architect the game code
6) Develop game w/ scratch art
7) Drop in real assets
8) Test/Debug
9) Ship It
So, breaking step 1, into some smaller tasks...
Learn the iPhone Tech
* Download/install iPhone SDK
* Upgrade Mac OS $130
* Join iPhone Dev $99
* Read iPhone Docs/Samples
* Write little test programs to learn the iPhone Capabilities (memory allocation, file I/O, iPhone audio, WiFi, graphics, etc...)
These are my step 1 tasks, and as I go along I will try to give updates of what I'm working on and what has been accomplished. So stay tuned...
1) Learn the iPhone Tech
2) Test my game concepts out on the iPhone
3) Build tool(s) if needed
4) Solidify Game Design
5) Architect the game code
6) Develop game w/ scratch art
7) Drop in real assets
8) Test/Debug
9) Ship It
So, breaking step 1, into some smaller tasks...
Learn the iPhone Tech
* Download/install iPhone SDK
* Upgrade Mac OS $130
* Join iPhone Dev $99
* Read iPhone Docs/Samples
* Write little test programs to learn the iPhone Capabilities (memory allocation, file I/O, iPhone audio, WiFi, graphics, etc...)
These are my step 1 tasks, and as I go along I will try to give updates of what I'm working on and what has been accomplished. So stay tuned...
On Fire
Okay...last time I posted I said I hadn't had time to do Nintendo DS programming, so I filled you in on my day time job work. Well, I am here to tell you that I have been inspired and back to working on a game in the evenings. However, not for the DS, but, for the iPhone.
Okay...even though I don't own an iPhone or iTouch at this moment I've been designing the game I want to do for it, and in the process of upgrading my Mac OS so that I can do the development. So, since this blog is the "RealityOfDreams," I propose to blog about my journey from idea, to final product. I will inform you of the decisions I am making and the code/architectural design directions that I am moving in. Hopefully, this will chronicle my steps, and provide some insight to some on what goes into making a game (even on a small scale).
Now, one thing I will not do in this blog is say what the game is or show screen shots, until it is near completion, yeah...that's right...I'm paranoid. "Dude! I could program that dumb idea of yours in 20 minutes!" I'm glad you can, so go do it, and dream up your own idea.
So, lets get to it...
This is going to be pretty much a "one man," project. However, I'm still going to employ software "Best Practices," as best I can. So, I am going to employ the development process, flesh out requirements, architect using GoF patterns, TDD (test driven development), see if I can implement some automated testing, build a "Tinderbox," (project builder, that grabs on specified time, latest checked in code, smoke tests, and builds the project, thus notifying if the build succeeded or not).
I will use quick and dirty artwork to verify my design, game play, and tech decisions...when all is finalized I will then employ an artist I know to render the real artwork, assets needed. The same goes for the music, and sound FFX in the game. I will not do any early users play testing/feedback, iterative process. Why? After you read the next paragraph, you will know why.
How did I arrive here, at this decision, "at this defining moment," (my man Obama, said that)...this game has been eating at me for some years now. In fact, I actually programmed it years ago for the PC, and folks played it and liked it. This will tell you how long ago that was, my oldest son (now 14 played), played the game when he was 4 years old. I programmed the game in 6 months, along with a great artist, and had users play and respond on the game play. Doing this in an iterative process I was able to tweak the game and make it fun. So, back to the previous paragraph, this is why I won't be getting feedback while I work, I am confident in the "fun factor," of the game. Arrogance, conceit, stupidity...no grasshopper, I have felt the pebbles of this path before. So, if it was sooo much fun, why haven't I heard of it, why can't I play the previous version?
To make a long story short, I did the cardinal sin, I never made a back up of the game (well...I believe that I did, but never could find it), and one day I came home and the code was wiped off the hard-drive, someone who will go nameless, removed the game to make room, to install some other bullsh&t on the computer. So, the despair, and anger I felt lasted for some time, and its always, been itching at me to re-do it. After looking at the iPhone, I decided that it is the perfect machine to recreate my game on.
Thus, for the past two days I've been "on fire," writing down my ideas, re-designing the game, making notes, jotting questions for myself to figure out, etc...I feel "alive," again. The creative sparks are flowing. Of course this is how we all begin...a ball of excitement and momentum, but can it be sustained, well, we'll see what happens..."The journey is the reward," (my man Steve Jobs, said that).
Okay...even though I don't own an iPhone or iTouch at this moment I've been designing the game I want to do for it, and in the process of upgrading my Mac OS so that I can do the development. So, since this blog is the "RealityOfDreams," I propose to blog about my journey from idea, to final product. I will inform you of the decisions I am making and the code/architectural design directions that I am moving in. Hopefully, this will chronicle my steps, and provide some insight to some on what goes into making a game (even on a small scale).
Now, one thing I will not do in this blog is say what the game is or show screen shots, until it is near completion, yeah...that's right...I'm paranoid. "Dude! I could program that dumb idea of yours in 20 minutes!" I'm glad you can, so go do it, and dream up your own idea.
So, lets get to it...
This is going to be pretty much a "one man," project. However, I'm still going to employ software "Best Practices," as best I can. So, I am going to employ the development process, flesh out requirements, architect using GoF patterns, TDD (test driven development), see if I can implement some automated testing, build a "Tinderbox," (project builder, that grabs on specified time, latest checked in code, smoke tests, and builds the project, thus notifying if the build succeeded or not).
I will use quick and dirty artwork to verify my design, game play, and tech decisions...when all is finalized I will then employ an artist I know to render the real artwork, assets needed. The same goes for the music, and sound FFX in the game. I will not do any early users play testing/feedback, iterative process. Why? After you read the next paragraph, you will know why.
How did I arrive here, at this decision, "at this defining moment," (my man Obama, said that)...this game has been eating at me for some years now. In fact, I actually programmed it years ago for the PC, and folks played it and liked it. This will tell you how long ago that was, my oldest son (now 14 played), played the game when he was 4 years old. I programmed the game in 6 months, along with a great artist, and had users play and respond on the game play. Doing this in an iterative process I was able to tweak the game and make it fun. So, back to the previous paragraph, this is why I won't be getting feedback while I work, I am confident in the "fun factor," of the game. Arrogance, conceit, stupidity...no grasshopper, I have felt the pebbles of this path before. So, if it was sooo much fun, why haven't I heard of it, why can't I play the previous version?
To make a long story short, I did the cardinal sin, I never made a back up of the game (well...I believe that I did, but never could find it), and one day I came home and the code was wiped off the hard-drive, someone who will go nameless, removed the game to make room, to install some other bullsh&t on the computer. So, the despair, and anger I felt lasted for some time, and its always, been itching at me to re-do it. After looking at the iPhone, I decided that it is the perfect machine to recreate my game on.
Thus, for the past two days I've been "on fire," writing down my ideas, re-designing the game, making notes, jotting questions for myself to figure out, etc...I feel "alive," again. The creative sparks are flowing. Of course this is how we all begin...a ball of excitement and momentum, but can it be sustained, well, we'll see what happens..."The journey is the reward," (my man Steve Jobs, said that).
Thursday, October 30, 2008
New Direction
Okay...I don't even know who has been reading and who hasn't, but since my day job has completely stopped me from being able to hack the Nintendo DS, what I have decided to do is post what I am doing on my real job for now, and perhaps get back to DS hacking at some time.
What is your real job, Rod?
I hear you asking. Well, I work for a start up, Secure Command, LLC, and we are/have developed an application, Internet Cleanroom. Internet Cleanroom, works on virtual machine technology. My boss, Dr. Anup Ghosh, a leading researcher in computer security has taken his research and has made it a commercial product. I am the lead developer of the application.
What is Internet Cleanroom, Rod?
I thought you might ask that. Well, Internet Cleanroom, allows you to go anywhere, do anything on the Net without having to worry about malicious code, or infections. IC (Internet Cleanroom) is a preemptive measure, instead of running virus scans after the fact, to see if your machine has been infected, IC will let you know immediately, while it is taking place, more on that later. IC runs your designated applications in the safe, secure enviornment of a virtual machine.
A Virtual Machine?
Yes, if you are unfamiliar with virtual machine technology I can blog on that next time, but for now just imagine it as another computer (a separate desktop environment running your operating system) on your computer. This VM (virtual machine) is now where you work and do whatever you wish to do on the Net with no worries (hakuna matata). The IC, VM works like a whiteboard, do what you wish, download what you like, go where you like, do whatchalike (ahhh...my name is Humpty, pronounced with an Umpty...okay, okay, got a little jiggy there). So, back to the white board concept.
Imagine you go to some site, I don't know, www.hotparticleaccelerators.com, those leptons, quarks, and gluons, sure are sexy, anyway, you download some super-string theory article, and BOOM, the recreation of the Big-Bang theory has just blue screened your computer, or worse, some Bekenstein-Hawking radiation has slowly creeped onto your machine, and stealthily and systematically, is opening a black hole onto your computer. "There's no need to fear, IC is here!" You don't panic, you actually smirk at the intruder, and like a white board, you take out your eraser, wipe it away, and go on your merry way.
You are in the safe confines of a VM so all you do is hit the revert button on the application and poof, you have a new pristine environment.
That's it?
Yes, that's it, but wait, there's more...tell them what else they get Rod. IC allows you to see the culprits in action, with our technology will call "WebCanary," (like the canary in the coal mine). When you are working in a VM, and something spurious takes place, we immediately pop up a dialog box and inform you that an infection attempt is taking place, you can just revert the machine, but if you are like me, and curious, then you can click the button on the dialog, that allows you to see what the culprit is doing live. The WebCanary is a forensic tool that allows you to see all that the malicious software is doing, all the goodies, url redirection, buffer overflow attempts, renaming of files, registry writes, hidden file attempts, spawning of processes, etc... The processes the malicious software writes and launches, we capture and take a MD5 hash snapshot of it and we can verify if it is legit or not, and the most important thing to you is we capture the URL of the culprit. Actually, with the WebCanary, it is fun to try and find malicious sites, because now you can see exactly what the hackers are trying to do to your machine, its like holding a glass jar with angry hornets inside, and you can just watch, gaze up close, and if you are a little devilish, shake the jar around and watch them get angrier (hee hee hee).
Well, there is some other cool stuff IC does, but I've got to get back to work. Perhaps, I post some screen shots, or you can go to www.securecommand.com for more info. There is a beta on the site, that allows you to run a secure browser, but it doesn't include the WebCanary, but you can get an idea of the power and safety of working in the VM.
Until next time...be safe out there, its a crazy Web.
What is your real job, Rod?
I hear you asking. Well, I work for a start up, Secure Command, LLC, and we are/have developed an application, Internet Cleanroom. Internet Cleanroom, works on virtual machine technology. My boss, Dr. Anup Ghosh, a leading researcher in computer security has taken his research and has made it a commercial product. I am the lead developer of the application.
What is Internet Cleanroom, Rod?
I thought you might ask that. Well, Internet Cleanroom, allows you to go anywhere, do anything on the Net without having to worry about malicious code, or infections. IC (Internet Cleanroom) is a preemptive measure, instead of running virus scans after the fact, to see if your machine has been infected, IC will let you know immediately, while it is taking place, more on that later. IC runs your designated applications in the safe, secure enviornment of a virtual machine.
A Virtual Machine?
Yes, if you are unfamiliar with virtual machine technology I can blog on that next time, but for now just imagine it as another computer (a separate desktop environment running your operating system) on your computer. This VM (virtual machine) is now where you work and do whatever you wish to do on the Net with no worries (hakuna matata). The IC, VM works like a whiteboard, do what you wish, download what you like, go where you like, do whatchalike (ahhh...my name is Humpty, pronounced with an Umpty...okay, okay, got a little jiggy there). So, back to the white board concept.
Imagine you go to some site, I don't know, www.hotparticleaccelerators.com, those leptons, quarks, and gluons, sure are sexy, anyway, you download some super-string theory article, and BOOM, the recreation of the Big-Bang theory has just blue screened your computer, or worse, some Bekenstein-Hawking radiation has slowly creeped onto your machine, and stealthily and systematically, is opening a black hole onto your computer.
You are in the safe confines of a VM so all you do is hit the revert button on the application and poof, you have a new pristine environment.
That's it?
Yes, that's it, but wait, there's more...tell them what else they get Rod. IC allows you to see the culprits in action, with our technology will call "WebCanary," (like the canary in the coal mine). When you are working in a VM, and something spurious takes place, we immediately pop up a dialog box and inform you that an infection attempt is taking place, you can just revert the machine, but if you are like me, and curious, then you can click the button on the dialog, that allows you to see what the culprit is doing live. The WebCanary is a forensic tool that allows you to see all that the malicious software is doing, all the goodies, url redirection, buffer overflow attempts, renaming of files, registry writes, hidden file attempts, spawning of processes, etc... The processes the malicious software writes and launches, we capture and take a MD5 hash snapshot of it and we can verify if it is legit or not, and the most important thing to you is we capture the URL of the culprit. Actually, with the WebCanary, it is fun to try and find malicious sites, because now you can see exactly what the hackers are trying to do to your machine, its like holding a glass jar with angry hornets inside, and you can just watch, gaze up close, and if you are a little devilish, shake the jar around and watch them get angrier (hee hee hee).
Well, there is some other cool stuff IC does, but I've got to get back to work. Perhaps, I post some screen shots, or you can go to www.securecommand.com for more info. There is a beta on the site, that allows you to run a secure browser, but it doesn't include the WebCanary, but you can get an idea of the power and safety of working in the VM.
Until next time...be safe out there, its a crazy Web.
Tuesday, May 13, 2008
What?
Okay, okay, so blogging means you have to keep it up. :) Well, my day job has been keeping me very busy. We are trying to get our product out the door, and I've been in mad bug fixing phase. I really don't know when I'm going to get back to my DS programming, but I do hope soon.
On a more serious note, I'd like to share some information with you. Please check out this site. I'd like to raise your awareness to the mistreatment of Baha'i' students in Iran...
http://iran.bahai.us/iranian-bahai-school-children
Thanks...I hope to get back to DS programming soon.
Till then happy coding and gaming.
On a more serious note, I'd like to share some information with you. Please check out this site. I'd like to raise your awareness to the mistreatment of Baha'i' students in Iran...
http://iran.bahai.us/iranian-bahai-school-children
Thanks...I hope to get back to DS programming soon.
Till then happy coding and gaming.
Subscribe to:
Posts (Atom)