Transactional Memory (TM) has been seen by many as a panacea for parallel programming problems. After several years experience implementing TM and a smaller amount of experience using TM, it is possible to make a preliminary assessment of the value of this programming mechanism. Implementations of TM have exposed a number of unresolved issues in the transactional programming model and in the integration of TM into existing programming languages and run-time environments. This talk surveys some of these problems and suggests some open research problems that need to be resolved before TM is adopted in its most general form.