
Discover the techniques behind beautiful design by deconstructing designs to understand them The term 'hacker' has been redefined to consist of anyone who has an insatiable curiosity as to how things work—and how they can try to make them better. This book is aimed at hackers of all skill levels and explains the classical principles and techniques behind beautiful designs by deconstructing those designs in order to understand what makes them so remarkable. Author and designer David Kadavy provides you with the framework for understanding good design and places a special emphasis on interactive mediums. You'll explore color theory, the role of proportion and geometry in design, and the relationship between medium and form. Packed with unique reverse engineering design examples, this book inspires and encourages you to discover and create new beauty in a variety of formats. Breaks down and studies the classical principles and techniques behind the creation of beautiful design Illustrates cultural and contextual considerations in communicating to a specific audience Discusses why design is important, the purpose of design, the various constraints of design, and how today's fonts are designed with the screen in mind Dissects the elements of color, size, scale, proportion, medium, and form Features a unique range of examples, including the graffiti in the ancient city of Pompeii, the lack of the color black in Monet's art, the style and sleekness of the iPhone, and more By the…
Non Designer's Design Book - for higher level guidelines on design
Refactoring UI - for tactical suggestions on UIs
Some other books: Bootstrapping Design and Design for Hackers
Designed for Use by Lukas Mathis
Design for Hackers by David Kadavy
... But if I were going to recommend a place to start I think you need to start small... begin by going to dribbble.com or awwwards.com and look around... get a sense for what you like, and more importantly, try to figure out why you like it. After you get an idea and take notes on the subject... try to fiddle around with copying the things that you like => personal blogs are amazing for this.
As a developer you should understand many of the principles that will get you to a good design: reducing complexity, intensional organization, being of service to the user, iterating your way to better designs, getting feedback/ testing your work.
Last tip: get some skin in the game. Charge someone for design work... nothing lights a fire under your ass like having your reputation on the line ;)
https://www.dailyui.co/ is a great resource.
Dissecting and replicating other designers' work gets you a long way when it comes to learning.
Design is a craft and a thought process. As such, picking it is not beyond any determined individual's reach.