Programming Challenges for Mac Developers
Carlos Camacho writes "iDevGames, a Macintosh Game Developer's Site has started issuing small programming challenges to Mac developers. The first challenge just wrapped up and the result is two nifty apps. The source code for both apps, and all apps entered into the programming challenges, will be released as open source. The next challenge has added an extra day, so developers have 72 hours. The focus is on creating an application to demonstrate 'A* pathfinding.'"
Is 48-hours too short? Would 72 hours be better? Or is 48-hours about right? Please vote. If you don't mind, I would like to announce the next challenge. (At some point, I will take everyone's suggestions for other Challenges.)
OK, here is the challenge:
* You may use ObjectiveC, C, C++, or Java only
* Create an application to demonstrate how A* Pathfinding works.
* You don't need to use fancy sprites. Simple circles, or stick figures is of course fine.
* Your world can be 2D, 2.5D, or 3D.
Outside of the main objective, there are many extras you can put into your app to set it apart from others. I won't mention them because it is great to see people discover them on their own. The goal is this challenge is that we will be able to show newbies how A* works, and give them code to learn from.
Kinda sounds like they are wanting to get other people to do their work.
First Contest: Develop a Cocoa program that will calculate the distance between two spots on the globe. (given latitude and longitude. ) There were only two submissions. Second Contest: Develop a graphical representation of the A* algorithm using Java, C, or Objective-C. (This one will be 72 hours.) No prizes, only bragging rights... for a site that noone even goes to. Yipee! Have fun.
Perhaps they are hoping to get a variety of examples so newbies can see more than one implementation? Also, perhaps they want to give their readers something "fun" to do... I can see how some people would enjoy having a little mini-challenge every now and then, and they will enter the contest; and other people are too busy or would rather spend their free time in other ways, and so they won't enter the contest... And that's fine.
zach
People need to think about their headlines before they submit them. I thought this was about the difficulties Mac programmers face in today's world.
I'll tell ya the hardships of mac programming, as a newbie (myself) trying to figure out that you have to hold ctrl or shift or cmd and drag a line from one MDI window to another on your acctual forms to make it 'connect' .. thats hard.. I've been reading this damn Cocoa book for a month and i still have no idea how anyone would ever learn to do anything 'radical' or new without explicit instructions of the odd interface of Xcode and its buddy Interface builder. but i'm just a newb so i'm prolly riding on -1 Troll or something, anyways, back to finding out how many combintations there are for menu items, such as cmd-backspace-shift-ctrl just to save a file.. woot!
and somehow.. i still like the ol' mac..
it's like drugs, fun for the end-user, hard as hell for the chemist.
Too bad their site doesn't display the body text in Safari. If they're a Mac site, they just *might* want to fix that one.
Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
prefixing every software package name with an i
Get working on porting OpenOffice.org to Aqua! The current ETA is 2005
It'd save me *so* much time having to run around ensuring people don't have illegal copies of MS Office on their macs.
At least with my PC users:
a) The OpenOffice.org interface isn't glaringly different
b) They can't just copy the MS office folder between machines.
-Yarn - Rio Karma: Excellent
Aaron Hillegass's most excellent Cocoa introduction Cocoa Programming for Mac OS X
When you're done with that one, skip on over and check out my defacto Cocoa bible, Cocoa Programming. Just a fantastic book, application design reference and compilation of knowlege from many years of working with these frameworks.
O'Reilly's Cocoa in a Nutshell, the API listing you've been yearning for.
Always remember to include Apple's own Cocoa developer pages.
And of course, the recursive version that leads to an exclamation of surprise...
eieio
"She's furniture with a pulse"
Cool, I'll have to submit my old college AI homework. Hope it still compiles.
That's rather like calling Slashdot lazy for trying to get their readers to write news articles for them. It completely misses the point of the site.
iDG is a community of Mac game developers. Some of them are hobbyists. Some of them are professionals. The developers there encourage each other, help each other out, compete against each other on small challenges like this one, or larger ones like the uDevGame contest which attracted $27,000 in donated prizes to encourage Mac game developers.
The 48- and 72-hour challenges are an experiment introduced very recently. Developers at the site wanted a fun, low-key alternative to the intense 3-month contest we run every year. The contest may also allow the site to collect smaller, less intimidating code examples than the ones generated by the 3-month contest.
The editor/founder of iDevGames works very hard to run the site and serve the developer community. Lazy is the last word you'd use to describe him. Nor has he any use for an A* algorithm.
Stop throwing rocks at things you don't understand.
No you didn't. :-) In all likelihood the version of "A*" you wrote assumed that your heuristic was monotonic. And $10 says that neither of the apps that "won" this "contest" actually implemented real (nonomonotonic) A* either.
A* is a complex beast, with lots and lots of pointers you have to keep track of, and an ugly updating procedure which often requires exotic data structures to do efficiently. The college textbook version we teach is a little baby version which assumes monotonicity to keep things simple.
pardon my ignorance.
FRIEND: Behind on your homework? Brilliant!
ME: No, not brilliant. Hey, I've got an idea.
FRIEND: Brilliant!! ME: Hear the idea first! OK, so I've got an assignment due on A* pathfinding. Sooo, I'm gonna hold a programming competition and have everyone submit A* pathfinding programs to ME!
FRIEND: Get unsuspecting programmers to write your homework for you??