Could you summarize the state of arduino language and ecosystem?

Learning embedded programming? C++ gets compiled down & runs pretty fast for the 8-bit AVRs. I use direct port manipulation and direct register writing to speed things up when I need it really fast. For example, I sometimes output bursts of SPI data:

#include <SPI.h>

#define nop asm volatile ("nop")
byte array[] = {0,1,2,3,4,);

byte ssPin = 10;

void setup(){
  pinMode ssPin (OUTPUT);
  SPI.setClockDivider(SPI_CLOCK_DIV2 ); // 8 MHz rate
  SPI.begin();
}

void loop(){
PORTB = PORTB & 0b11111011; // low on D10
SPDR = array[0]; nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;
SPDR = array[1]; nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;
SPDR = array[2]; nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;
SPDR = array[3]; nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;
SPDR = array[4]; nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;nop;
PORTB = PORTB | 0b00000100; // high on D10
}

The above gets blasted out at almost 1 byte/uS (17 clocks per byte), the fastest you can send stuff out to shift registers.

My wife and I sell lots of cards and do custom designs & builds as well.
http://www.crossroadsfencing.com/BobuinoRev17/
Here's one of the processor-less cards we sell, a Mega ScrewShield, and one of the '1284P designs we sell, Bobuino2 with SD card, battery backed RTC, and some prototype area: