Beginning FPGA: Programming Metal: Your brain on hardware