I am currently the proud owner of an Arduino Mega. I really like the board since it has so many features. The only thing that i am a bit scared of is the ATMega128 thats on it, it is in SMD format and you can do about 10.000 write/erase cycles on the flash memory before it is worn out.
It seems very hard to me to replace this chip when it wears out (since it is SMD)
The actual question is; how do you guys test your code? i currently keep editing my code and reflashing it to the arduino until it works, but i guess it wil wear out the chip soon by high usage.
lol, luckily for you, your problem is a non issue, code can be written to the mega 10,000 that is TEN THOUSAND times, if you uploaded 27 sketches to your arduino a day, everyday of the year, it would take you over three years to "wear it out."
I have been known to debug Arduino code by compiling the code (written so as to be "ok" C/C++ code) under linux with "stubs" for the arduino functions that aren't duplicated in linux (getc replaces serial_getc, etc.)
This way you can use real debuggers, infinite memory (for extra "printf" style debugging) and so on. Obviously this doesn't work for all possible types of arduino program, but it can be very helpful for some of them.