Reconfigurable computing platforms are emerging as the most promising architectures to design general purpose systems due to their high flexibility and power efficiency. This talk will discuss several aspects of FPGA programming, analysing different languages that are available and their tradeoffs, and explaining a novel collection of benchmarks we proposed to evaluate them. Furthermore, the talk will discuss some of our previous works covering standard uses of FPGAs as accelerators (e.g. big data analytics, real-time vision) as well as some newer possibilities FPGAs have enabled, such as prototyping of HPC systems (both the computing and processing elements of exascale systems) or real-time architectural exploration of novel architectures (SpiNNaker neuromorphic computer).Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech