user123: Is there any easy way to upload a program/sketch from an iPad or Android tablet without adding extra an shield (Bluetooth or Wi-Fi)?
If not, can it be done using shield? Which shield is preferred?
Also what are the IDE options available?

user24: Unfortunately Apple doesn't allow apps that implement programming languages. This being said, it is unclear why they would not allow an app that has to do with the Arduino IDE due to the fact that the code doesn't actually run on the Ipad itself. 
See here for more Info.
As far as an Android IDE, I have heard that there are a few people working on different IDEs that sends the code to the Arduino over the internet, although they have not been released yet, and the details are still a bit unclear.
Source:
http://forum.arduino.cc/index.php?topic=61305.0

user62: You can always upload to the Arduino via Bluetooth.

You must have a bluetooth chip/shield (any should do) and a PC that has bluetooth (or a table that can compile, most likely an Android tablet)
You must change the BT baud rate to the same as normal arduino upload, which is 19200 (default BT baud is 9600).
Connect the BT to Pin 0 and 1 so act the same as having a USB cord connected
Connect a wire to the reset pin to allow remote resetting the arduino to statup the bootloader

There must be a delay before
hitting the reset pin as the bootloader must be active when hitting
the upload button.

Enjoy

For a more detailed description please read: http://ame2.asu.edu/staff/kidane/ArdWilessBtProg.pdf

user8: I figured out a way to do this without having to port the compiler to iOS. It only works with the arduino Yún, but the Yún can send code to other arduinos with an spi cable.

Install an SSH app on your device so you can communicate with the arduino
Using that, install Ino on your Yún, a command line arduino compiler
Create a file, put your code in it, then save it
use Ino to upload your code!

kind of confusing, but it could work!

123: <p>Is there any easy way to upload a program/sketch from an iPad or Android tablet without adding extra an shield (Bluetooth or Wi-Fi)?</p>

<p>If not, can it be done using shield? Which shield is preferred?</p>

<p>Also what are the IDE options available?</p>
 24: <p>Unfortunately Apple doesn't allow apps that implement programming languages. This being said, it is unclear why they would not allow an app that has to do with the Arduino IDE due to the fact that the code doesn't actually run on the Ipad itself. </p>

<p>See <a href="http://www.libertypages.com/clarktech/?p=1690" rel="nofollow">here</a> for more Info.</p>

<p>As far as an Android IDE, I have heard that there are a few people working on different IDEs that sends the code to the Arduino over the internet, although they have not been released yet, and the details are still a bit unclear.</p>

<p>Source:
<a href="http://forum.arduino.cc/index.php?topic=61305.0" rel="nofollow">http://forum.arduino.cc/index.php?topic=61305.0</a></p>
 62: <p>You can always upload to the Arduino via Bluetooth.</p>

<ol>
<li>You must have a bluetooth chip/shield (any should do) and a PC that has bluetooth (or a table that can compile, most likely an Android tablet)</li>
<li>You must change the BT baud rate to the same as normal arduino upload, which is 19200 (default BT baud is 9600).</li>
<li>Connect the BT to Pin 0 and 1 so act the same as having a USB cord connected</li>
<li>Connect a wire to the reset pin to allow remote resetting the arduino to statup the bootloader
<ul>
<li>There must be a delay before
hitting the reset pin as the bootloader must be active when hitting
the upload button.</li>
</ul></li>
<li>Enjoy</li>
</ol>

<p>For a more detailed description please read: <a href="http://ame2.asu.edu/staff/kidane/ArdWilessBtProg.pdf" rel="nofollow">http://ame2.asu.edu/staff/kidane/ArdWilessBtProg.pdf</a></p>
 8: <p>I figured out a way to do this without having to port the compiler to iOS. It only works with the arduino Yún, but the Yún can send code to other arduinos with an spi cable.</p>

<ul>
<li>Install an SSH app on your device so you can communicate with the arduino</li>
<li>Using that, install <a href="http://inotool.org">Ino</a> on your Yún, a command line arduino compiler</li>
<li>Create a file, put your code in it, then save it</li>
<li>use <a href="http://inotool.org">Ino</a> to upload your code!</li>
</ul>

<p>kind of confusing, but it could work!</p>
