Recently had a chance to solder together and operate one of the smallest quadrotors on the market: the Crazyflie nano. It weighs less than 19 grams, and measures 9cm from rotor to rotor. The 3.7v LiPo 170mAh gives about 7 minutes flight time. Open-source firmware, computer client coded in Python.
At the National Science Foundation grant where I work, EnLiST, we've been tinkering with various different drone platforms which could be easily deployed in classrooms for valuable STEM (Science Technology Engineering and Mathematics) lessons. Although we're focused on STEM education, it's not hard to see how some of these drones can be used in a variety of other fields.
The quadrotors we develop one day could be deployed for research in environmental science, geology, city planning, and even "evidence-based" journalism. Drones are useful like that. At the end of they day, they're simply a means of getting a sensor from one place to another. What you use that sensor for, is entirely up to the teacher, scientist, or journalist.
We needed a drone that was small enough to fly in a classroom, easy enough for children to fly (not saying much as kids tend to pilot drones with relative ease), and hackable enough that we could mold it to fit our science curriculum. Enter the Crazyflie nano, a tiny, open-source drone developed by Swedish hackers at Bitcraze.se.
At 19 grams, and measuring 9 cm from motor to motor, it's one of the smallest quadrotor drones on the market today. Operation is fairly straightforward. The Crazyflie uses a 2.4 Ghz "Crazradio," which is plugged into a computer USB port for communication. Control is provided via USB game pad (not included), with the Xbox and Playstation-type controllers having preference by the development community.