What hardware do I need for this project?

This is my first post on this forum. Please move the topic if I put it in the wrong section.

I'm looking to build a little keyboard with 14 buttons. Each button will be connected to a arduino board and the software in the board will detect each keypress and store it in a memory.

The board must be extremely small. It needs to have at least 128MB of flash memory to store data in. I need to connect 14 buttons to it.

I have never done anything with arduino or avr before but I'm a experienced c++ programmer.

Do you have any suggestions what hardware I might need? Any information that might help me with this project?

Use an sd card, that will give you Gb's of storage space, making an breaduino in a veroboard will be pretty small, maybe smaller than the buttons.

Please give me more info about this.

What type of board and what equipment i will need.

Can you give us a dimension of how small (width, height) you're looking to achieve? Do you mean the dimension of all buttons be small or all buttons plus the arduino together need be small?

Tell us what it is for that may help us help you.

For buttons, will this keypad help? http://www.sparkfun.com/commerce/product_info.php?products_id=8871

I need to be able to place my buttons freely around because the keypad is already finished… so each button must have a cable.

I’m talking as small as possible- It should be really thin and small.

like max 2x4 cm in size.

If you can show me some random board I might need + the equipment needed to connect 14 buttons then I can look around.

An Arduino Mini would fit that form factor. 2 x 4 x 2 cm or so should be enough space.

There is plenty of information on data logging with an Arduino to SD.

Where does your electricity come from?
How do you expect to extract the data?

You will likely want to arrange your switches in a 4 x 4 matrix. Will it be necessary to correctly detect multiple simultaneous switch closures? If you need to be able to get every combination decoded you will need some extra diodes.