Wednesday, April 7, 2010

New blog

Being a tinkerer, I just had to install my own blog. So please go to mythiclogos.com/blog for my recent posts.

Sunday, March 14, 2010

iPad ?

Today I bought an iPad. Cost: 666 Ominous? Yes. Costly? Yes. Aweomse? Oh yeah.

I can’t wait to get it. Not only for development purposes, but just the idea of being able to consume media (even simple books) easily and beautifully.

My 27’’ iMac (scarMac) has been amazing to have and use. And I think This will be as well.

This works. Another?

Thursday, January 7, 2010

Tools of the trade

Technologies of use:
  • iPhone Resources
  • GoogleApps
  • cocos2d An iPhone 2D game engine. Pretty sweet so far.
    Useful resources (pre 0.9): cocos2d home, tutorials: (start/help, rocks), class overview
  • jQuery
  • DTerm This a MacOSX program that opens a terminal command line at the location. It uses cmd-shift-return to open, esc to close. It is great for doing something to a directory such as updating a git, tarring, cp, or even opening a full terminal by pressing cmd-return for a command.
  • GIT A version control system.
  • iSimulate Allows for controlling the simulator with iPhone. Awesome.
  • Chipmunk A 2D physics engine that comes with cocos2d.
  • Blank Templates

Tuesday, December 22, 2009

Web setup

Working on learning iPhone programming (Cocoa), Google App Engine (scalable backend web apps), Python (goes with App and traditional server), html, css, jquery. Mastering all of these technologies should give a full toolkit for developing all of the web apps one needs. Dashcode can also be useful for quick webpage production.

The idea is that most functionality is in the browser, achieving cross platform, computer independent living with a separate, but correlated development for mobile web browsers and iphone apps. This should pretty much be what one needs to reach everyone. While I may develop on MacOS programs for fun, I think there is little profit in desktop publishing.

Learning parsing techniques on all the platforms is probably a must as well as data storage and interface issues.

Cocoa Objects

Objective-C is a fairly straightforward language (main thing is to be aware of memory leaks for inline creation;usage;discard idioms that should be avoided or mitigated with autorelease pools).

But there is a little of learning to do with the built in object types. For example NSArray (and mutable version) has to everything be an object. So one can use NSNumber to store numbers, NSValue for other types, NSNull for nil. Another facet is using NSEnumeration to go over objects or better to use NSFastEnumeration protocol to do a for (Buttons* b in buttons) { or one can do [buttons reverseObjectEnumerator] to traverse backwards.

It is a lot to take in. I guess one should just embrace the documentation, maybe trying to get pattern matching.

Monday, December 7, 2009

Webserver and Mac

Well, I got a fully functional web environment going. I figured out how to get Apache and Python to work with each other on ScarMac. So now, I can develop as if I am on my webserver, but just locally. Then I upload to my website.

One thing is that the python scripts have to be made executable and as far as I can tell, that is command line.

I have also just started looking at Google App Engine, which works with Python. It sounds interesting.

Friday, November 20, 2009

iPhone Dev

Working on getting into iPhone dev. Started it a couple of months ago and got distracted. Now I am back. Working through, chapter by chapter, Dudney and Adamson. I like it so far.

It is a fairly neat development system (I have just been working with text editors up to now, so...) Essentially, you create a project, then define the interface headers, use interface builder to connect up GUI elements to code objects. Then write the code to do some action. It does not take much to get a functional app.

A little bit tricky to get the provisioning profiles and stuff. I had to get a private key from the old system (export from keychain), get the development certificate and install it, then each app, create an app id (or use a * for a suite of apps), then get provisioning profile, then load that, then compile it after telling the project what appid it is to use and provision profile. Then load it on to iPod. Soon I will be uploading an app to the store.

One key thing to be aware of is the memory management. Any item created with alloc or init must be released. There are also autorelease features, retain features.... Mastering this is important since doing it wrong will not be immediately apparent. Memory needs to be consumed because of the leaks before you will find out the problem. And even then, you need to know about it.

There are certificates that need to be installed into keychain along with a the private key. Development is for creating provisional, distribution is for adhoc and app store.