In this paper we briefly report some recent developments on generalized synchronization. We discuss different methods of detecting generalized synchronization. We first consider two unidirectionally coupled systems and then two mutually coupled systems. We then extend the study to a network of coupled systems. In the study of generalized synchronization of coupled nonidentical systems we discuss the Master Stability Function (MSF) formalism for coupled nearly identical systems. Later we use this MSF to construct synchronized optimized networks. In the optimized networks the nodes which have parameter value at one extreme are chosen as hubs and the pair of nodes with larger difference in parameter are chosen to create links