Abstract Memristors are effectively variable resistors whose resistance can be modified electrically. This state of internal resistance is a function of the history of the applied voltage or current. Such devices have the ability to store and process data and provide for several attractive performance characteristics that make it more capable at solving modern day computing problems compared to conventional complementary metal-oxide-semiconductor (CMOS)-based technology. These devices are often built out of a simple conductor/insulator/conductor stack and the insulator is often comprised of a metal oxide. Although, the idea for such devices was conceived as early as the 1960s, only recent progress in the field has been able to achieve very desirable features such as fast operation speed, low-energy consumption, and high endurance. Apart from that, these devices can be scaled down to less than 10 nm and stacked in three dimensions. In this chapter, we review recent progress in the development and understanding of memristive devices. We also explore how memristive devices have been used by the community in useful computing applications.