learn c the hard way.