Lego Robots are amazing. They’re easy to construct. My youngest was able to help assemble one when she was only 5 years old (and she’s 6 now). The programming is simple, with assembling programs as easy as dragging action components and setting some simple parameters on a computer screen. If you outgrow the computer brain that Lego provides, there are third party brains that snap in and let you program more complicated routines in languages like C. This is great for your teenager.
Lego Robots are also helpful for teaching complex concepts in math. Here is a short news clip of math teachers learning how to use Lego Robots in the classroom:
The video is courtesy WHSV.com in Virginia.