Copenhagen Cocoa

Spilling the Beans

Nordic Game Jam 2010 – registration is open

November 27th, 2009


It is now possible to sign-up for Nordic Game Jam 2010.
Copenhagen Cocoa will have a team there, if you want to be part of it, tweet me.

| Permalink |

Writen by: Aron Allen

Reminder: NSCoder Night this evening

November 24th, 2009


Remeber NSCoder Night this evening (24th of November 2009) 19:00 at Café Retro, Knabrostræde 26, 1210 Copenhagen. Bring your Mac and come code with friends.
Please leave a comment below if you are attending.

| Permalink |

Writen by: Aron Allen

20×20 on Friday

November 18th, 2009


This friday Weiden is hosting an event for iPhone entusiasts in Copenhagen, it is a non-ference, which means you can give your own 6.4 minute presentation, consisting of 20 slides.

Sign-up is required, though it is free to attend. I will be there with a #cph.cc presentation.

For more information and signup information visit 20×20′s website.

| Permalink |

Writen by: Aron Allen

Reminder: NSCoder Night this evening

November 17th, 2009


Remeber NSCoder Night this evening (17th of November 2009) 19:00 at Café Retro, Knabrostræde 26, Copenhagen. After you have been at the voting-booths pick up your Mac and head down to Retro. Please leave a comment below if you are attending.

| Permalink | 2 Comments

Writen by: Aron Allen

C64 is back on the App Store

November 10th, 2009


It appears that C64 has returned to the App Store, I just want to congratulate manomio, for their achievement. I am convinced all prior drama will increase sales, if it stays up this time.

| Permalink |

Writen by: Aron Allen

CocoaHeads Øresund tonight

November 10th, 2009


Remember CocoaHeads Øresund tonight 19:00, in Copenhagen, for more detalis visit the Google Group, where you can singup.

| Permalink |

Writen by: Aron Allen

Nordic Game Jam 2010

November 6th, 2009


Next years Game Jam is getting close, and signup will soon be open, I thought it would be fun to have a #cph.cc team, do you want to be part of it?

Game Jam is a coding contest that takes place in January — world wide.
The Danish iteration will be held in Copenhagen, for more information visit Nordic Game Jam’s website.

Leave a comment below if you want to be part of the team.

| Permalink |

Writen by: Aron Allen

Programing a checkers-engine in C

November 5th, 2009


As some of you might know I am currently working on a checkers-engine written in ansi-c, my inital goal was to create an engine that at some point could be run on the iPhone, in a nice user-friendly enviroment.

The engine is far from complete, but I decided to share my findings with the rest of you, and I hope some find it useful. By sharing my desing concepts, I hope to get some great feedback and ideas how to increse engine efficientcy.

Currently my engine can generate a list of all posible jumps, or moves, from any given position. My next challenge is to work on the ai.

This first chapter will cover the concept of bit-boards, and the design pattern I used, to define my game.

A standard american checkers board, consists of 8×8 squares, though since pieces only move diagonaly, half of the squares are inaccessable, this gives us a total of 32 squares. 32 is the exact amount of bits in a standard integer, this means we can represent our whole game with three ints, a int representing all the black pieces, one representing all the white pieces, and at last one representing the crowned pieces, also known as kings.

Storing our game in a memory efficient way demands special code to decompress and present the game in an understandable way. Finding jumps and moves is a lot faster though, and can be done efficiently with bit rotations and very few exceptions, if you choose the right bitboard layout.

Doing some research on the Internet, I found a very nice article explaining different bitboard layouts, I set on the one showed below (on the lefthand side), since it has the fewest exceptions which will be very convenient when we need to find movers and jumpers later.

Bitboards

Bitboards


The greatest advantage of the layout I chose is that any bit rotation <<7 (seven to the left) results in a north-westren move, and likewise any <<1 (one to the left) results in a north-eastren move.
To minimize confusion I defined an array containing single bits, so I can locate a bit based on its real position, as an example bitBoardforRealPosition[2] = 0x80000000 this bitboard can then be and'ed to another bitboard to filter out the specefic location, and check if there is anything there.

Challenge: Find your a way to represent a bitboard and write a function that can print a character based board from a struct of three ints (black, white, and kings). The end result should look something like this.

00|{ }[ ]{ }[ ]{ }[ ]{ }[ ]
04|[w]{ }[ ]{ }[ ]{ }[ ]{ }
08|{ }[ ]{ }[W]{ }[ ]{ }[b]
12|[ ]{ }[ ]{ }[ ]{ }[b]{ }
16|{ }[ ]{ }[b]{ }[ ]{ }[ ]
20|[ ]{ }[ ]{ }[ ]{ }[ ]{ }
24|{ }[ ]{ }[ ]{ }[b]{ }[b]
28|[B]{ }[ ]{ }[ ]{ }[ ]{ }

If you have any questions please leave a comment below.

| Permalink |

Writen by: Aron Allen

CCDC Applications – Seeds

November 3rd, 2009


One more developer story from ccdc, from the Seeds team.

At ccdc all the applications had to be connected to green technology or the upcoming climate conference in some way.
After deciding to promote public transportation the team realized that the worst part of commuting was the implicit boredom. The first idea was to encourage for some kind of interaction between passengers, but since the Danish mentality does not encourage strangers to start talking to other passengers in the bus, they decided to go with some sort of indirect interaction.

They found that it would be interesting to let people “plant seeds” in the urban landscape.
Seeds are like graffiti, anyone can write anything they want eg. tags, stories, comments, poems etc.
Seeds can also represent other media such as pictures and videos. The seeds can be rated by other users, thereby increasing their life-span.

The Seeds app is much like Twitter, though its focus is geo-tagged media.
All Seeds are public, therefor you do not need a long friends-list to get started.
Seeds is communication in a new dimension encouraging indirect interaction.

A video of the Application in action can be found here

| Permalink |

Writen by: Aron Allen

Reminder: NSCoder Night this Tuesday

November 2nd, 2009


Remeber NSCoder Night this Tuesday (3rd of November 2009) 19:00 at Café Retro, Knabrostræde 26, Copenhagen. Bring your Mac and come code with friends.
Please leave a comment below if you are attending.

| Permalink |

Writen by: Aron Allen