Book picks similar to
Music Theory for Computer Musicians (Computer Musicians, #1) by Michael Hewitt
music
non-fiction
music-theory
music-production
Learning the bash Shell
Cameron Newham - 1995
This book will teach you how to use bash's advanced command-line features, such as command history, command-line editing, and command completion.This book also introduces shell programming,a skill no UNIX or Linus user should be without. The book demonstrates what you can do with bash's programming features. You'll learn about flow control, signal handling, and command-line processing and I/O. There is also a chapter on debugging your bash programs.Finally, Learning the bash Shell, Third Edition, shows you how to acquire, install, configure, and customize bash, and gives advice to system administrators managing bash for their user communities.This Third Edition covers all of the features of bash Version 3.0, while still applying to Versions 1.x and 2.x. It includes a debugger for the bash shell, both as an extended example and as a useful piece of working code. Since shell scripts are a significant part of many software projects, the book also discusses how to write maintainable shell scripts. And, of course, it discusses the many features that have been introduced to bash over the years: one-dimensional arrays, parameter expansion, pattern-matching operations, new commands, and security improvements.Unfailingly practical and packed with examples and questions for future study, Learning the bash Shell Third Edition is a valuable asset for Linux and other UNIX users.--back cover
The Sociology Book: Big Ideas Simply Explained
Sam Atkinson - 2015
The Sociology Book takes on some of humankind's biggest questions: What is society? What makes it tick? Why do we interact in the way that we do with our friends, coworkers, and rivals? The Sociology Book profiles the world's most renowned sociologists and more than 100 of their biggest ideas, including issues of equality, diversity, identity, and human rights; the effects of globalization; the role of institutions; and the rise of urban living in modern societyEasy to navigate and chock-full of key concepts, profiles of major sociological thinkers, and conversation starters galore, this is a must-have, in-a-nutshell guide to some of the most fascinating questions on earth.The Sociology Book is part of the award-winning Big Ideas Simply Explained series, designed to distill big ideas and elusive theories into graspable, memorable concepts, using an approachable graphic treatment and creative typography.
Code Complete
Steve McConnell - 1993
Now this classic book has been fully updated and revised with leading-edge practices--and hundreds of new code samples--illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinking--and help you build the highest quality code. Discover the timeless techniques and strategies that help you: Design for minimum complexity and maximum creativity Reap the benefits of collaborative development Apply defensive programming techniques to reduce and flush out errors Exploit opportunities to refactor--or evolve--code, and do it safely Use construction practices that are right-weight for your project Debug problems quickly and effectively Resolve critical construction issues early and correctly Build quality into the beginning, middle, and end of your project
Console Wars: Sega, Nintendo, and the Battle that Defined a Generation
Blake J. Harris - 2014
Sega, on the other hand, was just a faltering arcade company with big aspirations and even bigger personalities. But that would all change with the arrival of Tom Kalinske, a man who knew nothing about videogames and everything about fighting uphill battles. His unconventional tactics, combined with the blood, sweat and bold ideas of his renegade employees, transformed Sega and eventually led to a ruthless David-and-Goliath showdown with rival Nintendo.The battle was vicious, relentless, and highly profitable, eventually sparking a global corporate war that would be fought on several fronts: from living rooms and schoolyards to boardrooms and Congress. It was a once-in-a-lifetime, no-holds-barred conflict that pitted brother against brother, kid against adult, Sonic against Mario, and the US against Japan.Based on over two hundred interviews with former Sega and Nintendo employees, Console Wars is the underdog tale of how Kalinske miraculously turned an industry punchline into a market leader. It's the story of how a humble family man, with an extraordinary imagination and a gift for turning problems into competitive advantages, inspired a team of underdogs to slay a giant and, as a result, birth a $60 billion dollar industry.
Head First Design Patterns
Eric Freeman - 2004
At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun. You want to learn about the patterns that matter--why to use them, when to use them, how to use them (and when NOT to use them). But you don't just want to see how patterns look in a book, you want to know how they look "in the wild". In their native environment. In other words, in real world applications. You also want to learn how patterns are used in the Java API, and how to exploit Java's built-in pattern support in your own code. You want to learn the real OO design principles and why everything your boss told you about inheritance might be wrong (and what to do instead). You want to learn how those principles will help the next time you're up a creek without a design pattern. Most importantly, you want to learn the "secret language" of Design Patterns so that you can hold your own with your co-worker (and impress cocktail party guests) when he casually mentions his stunningly clever use of Command, Facade, Proxy, and Factory in between sips of a martini. You'll easily counter with your deep understanding of why Singleton isn't as simple as it sounds, how the Factory is so often misunderstood, or on the real relationship between Decorator, Facade and Adapter. With Head First Design Patterns, you'll avoid the embarrassment of thinking Decorator is something from the "Trading Spaces" show. Best of all, in a way that won't put you to sleep! We think your time is too important (and too short) to spend it struggling with academic texts. If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. Using the latest research in neurobiology, cognitive science, and learning theory, Head First Design Patterns will load patterns into your brain in a way that sticks. In a way that lets you put them to work immediately. In a way that makes you better at solving software design problems, and better at speaking the language of patterns with others on your team.
SAS Survival Handbook: How to Survive in the Wild, in Any Climate, on Land or at Sea
John Wiseman - 1986
John 'Lofty' Wiseman presents real strategies for surviving in any type of situation, from accidents and escape procedures, including chemical and nuclear to successfully adapting to various climates (polar, tropical, desert), to identifying edible plants and creating fire. The book is extremely practical and is illustrated throughout with easy-to-understand line art and diagrams.
The Greek Myths
Robert Graves - 1955
For a full appreciation of literature or visual art, knowledge of the Greek myths is crucial. In this much-loved collection, poet and scholar Robert Graves retells the immortal stories of the Greek myths. Demeter mourning her daughter Persephone, Icarus flying too close to the sun, Theseus and the Minotaur … all are captured here with the author’s characteristic erudition and flair.The Greek Myths is the culmination of years of research and careful observation, however what makes this collection extraordinary is the imaginative and poetic style of the retelling. Drawing on his experience as a novelist and poet, Graves tells the fantastic stories of Ancient Greece in a style that is both absorbing and easy for the general reader to understand. Each story is accompanied by Graves’ interpretation of the origins and deeper meaning of the story, giving a reader an unparalleled insight into the customs and development of the Greek world.
Year of Wonder: Classical Music for Every Day
Clemency Burton-Hill - 2017
Thoughtfully curated and expertly researched, this is a book of classical music to keep you company: whoever you are, wherever you're from.'The only requirements for enjoying classical music are open ears and an open mind.' Clemency Burton-HillPlaylists are available on most streaming music platforms including Apple Music.
Python for Informatics: Exploring Information: Exploring Information
Charles Severance - 2002
You can think of Python as your tool to solve problems that are far beyond the capability of a spreadsheet. It is an easy-to-use and easy-to learn programming language that is freely available on Windows, Macintosh, and Linux computers. There are free downloadable copies of this book in various electronic formats and a self-paced free online course where you can explore the course materials. All the supporting materials for the book are available under open and remixable licenses. This book is designed to teach people to program even if they have no prior experience.
Total Cat Mojo: Everything You Need to Know to Care for Your Favorite Feline Friend
Jackson Galaxy - 2017
Cat Mojo is the confidence that cats exhibit when they are at ease in their environment and in touch with their natural instincts--to hunt, catch, kill, eat, groom, and sleep. Problems such as litter box avoidance and aggression arise when cats lack this confidence. Jackson Galaxy's number one piece of advice to his clients is to help their cats harness their mojo. This book is his most comprehensive guide yet to cat behavior and basic cat care, rooted in understanding cats better. From getting kittens off to the right start socially, to taking care of cats in their senior years, and everything in between, this book addresses the head-to-toe physical and emotional needs of cats--whether related to grooming, nutrition, play, or stress-free trips to the vet.
The Talent Code: Unlocking the Secret of Skill in Sports, Art, Music, Math, and Just About Everything Else
Daniel Coyle - 2009
Whether you're coaching soccer or teaching a child to play the piano, writing a novel or trying to improve your golf swing, this revolutionary book shows you how to grow talent by tapping into a newly discovered brain mechanism.Drawing on cutting-edge neurology and firsthand research gathered on journeys to nine of the world's talent hotbeds—from the baseball fields of the Caribbean to a classical-music academy in upstate New York—Coyle identifies the three key elements that will allow you to develop your gifts and optimize your performance in sports, art, music, math, or just about anything. • Deep Practice--Everyone knows that practice is a key to success. What everyone doesn't know is that specific kinds of practice can increase skill up to ten times faster than conventional practice.• Ignition--We all need a little motivation to get started. But what separates truly high achievers from the rest of the pack? A higher level of commitment—call it passion—born out of our deepest unconscious desires and triggered by certain primal cues. Understanding how these signals work can help you ignite passion and catalyze skill development.• Master Coaching--What are the secrets of the world's most effective teachers, trainers, and coaches? Discover the four virtues that enable these "talent whisperers" to fuel passion, inspire deep practice, and bring out the best in their students.These three elements work together within your brain to form myelin, a microscopic neural substance that adds vast amounts of speed and accuracy to your movements and thoughts. Scientists have discovered that myelin might just be the holy grail: the foundation of all forms of greatness, from Michelangelo's to Michael Jordan's. The good news about myelin is that it isn't fixed at birth; to the contrary, it grows, and like anything that grows, it can be cultivated and nourished. Combining revelatory analysis with illuminating examples of regular people who have achieved greatness, this book will not only change the way you think about talent, but equip you to reach your own highest potential.
The Study of Orchestration
Samuel Adler - 1982
The Third Edition retains the elements that have made the book a classic while embracing new technology and responding to the needs of today's students and teachers.
Counterpoint
Kent Kennan - 1972
While a limited understanding of contrapuntal elements may be gained through analysis alone, these elements are grasped in a more intimate way through the actual writing of contrapuntal examples. Also, by linking the study of counterpoint to music of a specific period, the text provides a clear model for students to emulate and a definite basis for the criticism of student work.
Java Concurrency in Practice
Brian Goetz - 2005
Now this same team provides the best explanation yet of these new features, and of concurrency in general. Concurrency is no longer a subject for advanced users only. Every Java developer should read this book."--Martin BuchholzJDK Concurrency Czar, Sun Microsystems"For the past 30 years, computer performance has been driven by Moore's Law; from now on, it will be driven by Amdahl's Law. Writing code that effectively exploits multiple processors can be very challenging. Java Concurrency in Practice provides you with the concepts and techniques needed to write safe and scalable Java programs for today's--and tomorrow's--systems."--Doron RajwanResearch Scientist, Intel Corp"This is the book you need if you're writing--or designing, or debugging, or maintaining, or contemplating--multithreaded Java programs. If you've ever had to synchronize a method and you weren't sure why, you owe it to yourself and your users to read this book, cover to cover."--Ted NewardAuthor of Effective Enterprise Java"Brian addresses the fundamental issues and complexities of concurrency with uncommon clarity. This book is a must-read for anyone who uses threads and cares about performance."--Kirk PepperdineCTO, JavaPerformanceTuning.com"This book covers a very deep and subtle topic in a very clear and concise way, making it the perfect Java Concurrency reference manual. Each page is filled with the problems (and solutions!) that programmers struggle with every day. Effectively exploiting concurrency is becoming more and more important now that Moore's Law is delivering more cores but not faster cores, and this book will show you how to do it."--Dr. Cliff ClickSenior Software Engineer, Azul Systems"I have a strong interest in concurrency, and have probably written more thread deadlocks and made more synchronization mistakes than most programmers. Brian's book is the most readable on the topic of threading and concurrency in Java, and deals with this difficult subject with a wonderful hands-on approach. This is a book I am recommending to all my readers of The Java Specialists' Newsletter, because it is interesting, useful, and relevant to the problems facing Java developers today."--Dr. Heinz KabutzThe Java Specialists' Newsletter"I've focused a career on simplifying simple problems, but this book ambitiously and effectively works to simplify a complex but critical subject: concurrency. Java Concurrency in Practice is revolutionary in its approach, smooth and easy in style, and timely in its delivery--it's destined to be a very important book."--Bruce TateAuthor of Beyond Java" Java Concurrency in Practice is an invaluable compilation of threading know-how for Java developers. I found reading this book intellectually exciting, in part because it is an excellent introduction to Java's concurrency API, but mostly because it captures in a thorough and accessible way expert knowledge on threading not easily found elsewhere."--Bill VennersAuthor of Inside the Java Virtual MachineThreads are a fundamental part of the Java platform. As multicore processors become the norm, using concurrency effectively becomes essential for building high-performance applications. Java SE 5 and 6 are a huge step forward for the development of concurrent applications, with improvements to the Java Virtual Machine to support high-performance, highly scalable concurrent classes and a rich set of new concurrency building blocks. In Java Concurrency in Practice , the creators of these new facilities explain not only how they work and how to use them, but also the motivation and design patterns behind them.However, developing, testing, and debugging multithreaded programs can still be very difficult; it is all too easy to create concurrent programs that appear to work, but fail when it matters most: in production, under heavy load. Java Concurrency in Practice arms readers with both the theoretical underpinnings and concrete techniques for building reliable, scalable, maintainable concurrent applications. Rather than simply offering an inventory of concurrency APIs and mechanisms, it provides design rules, patterns, and mental models that make it easier to build concurrent programs that are both correct and performant.This book covers:Basic concepts of concurrency and thread safety Techniques for building and composing thread-safe classes Using the concurrency building blocks in java.util.concurrent Performance optimization dos and don'ts Testing concurrent programs Advanced topics such as atomic variables, nonblocking algorithms, and the Java Memory Model
Domain-Driven Design: Tackling Complexity in the Heart of Software
Eric Evans - 2003
"His book is very compatible with XP. It is not about drawing pictures of a domain; it is about how you think of it, the language you use to talk about it, and how you organize your software to reflect your improving understanding of it. Eric thinks that learning about your problem domain is as likely to happen at the end of your project as at the beginning, and so refactoring is a big part of his technique. "The book is a fun read. Eric has lots of interesting stories, and he has a way with words. I see this book as essential reading for software developers--it is a future classic." --Ralph Johnson, author of Design Patterns "If you don't think you are getting value from your investment in object-oriented programming, this book will tell you what you've forgotten to do. "Eric Evans convincingly argues for the importance of domain modeling as the central focus of development and provides a solid framework and set of techniques for accomplishing it. This is timeless wisdom, and will hold up long after the methodologies du jour have gone out of fashion." --Dave Collins, author of Designing Object-Oriented User Interfaces "Eric weaves real-world experience modeling--and building--business applications into a practical, useful book. Written from the perspective of a trusted practitioner, Eric's descriptions of ubiquitous language, the benefits of sharing models with users, object life-cycle management, logical and physical application structuring, and the process and results of deep refactoring are major contributions to our field." --Luke Hohmann, author of Beyond Software Architecture "This book belongs on the shelf of every thoughtful software developer." --Kent Beck "What Eric has managed to capture is a part of the design process that experienced object designers have always used, but that we have been singularly unsuccessful as a group in conveying to the rest of the industry. We've given away bits and pieces of this knowledge...but we've never organized and systematized the principles of building domain logic. This book is important." --Kyle Brown, author of Enterprise Java(TM) Programming with IBM(R) WebSphere(R) The software development community widely acknowledges that domain modeling is central to software design. Through domain models, software developers are able to express rich functionality and translate it into a software implementation that truly serves the needs of its users. But despite its obvious importance, there are few practical resources that explain how to incorporate effective domain modeling into the software development process. Domain-Driven Design fills that need. This is not a book about specific technologies. It offers readers a systematic approach to domain-driven design, presenting an extensive set of design best practices, experience-based techniques, and fundamental principles that facilitate the development of software projects facing complex domains. Intertwining design and development practice, this book incorporates numerous examples based on actual projects to illustrate the application of domain-driven design to real-world software development. Readers learn how to use a domain model to make a complex development effort more focused and dynamic. A core of best practices and standard patterns provides a common language for the development team. A shift in emphasis--refactoring not just the code but the model underlying the code--in combination with the frequent iterations of Agile development leads to deeper insight into domains and enhanced communication between domain expert and programmer. Domain-Driven Design then builds on this foundation, and addresses modeling and design for complex systems and larger organizations.Specific topics covered include:Getting all team members to speak the same language Connecting model and implementation more deeply Sharpening key distinctions in a model Managing the lifecycle of a domain object Writing domain code that is safe to combine in elaborate ways Making complex code obvious and predictable Formulating a domain vision statement Distilling the core of a complex domain Digging out implicit concepts needed in the model Applying analysis patterns Relating design patterns to the model Maintaining model integrity in a large system Dealing with coexisting models on the same project Organizing systems with large-scale structures Recognizing and responding to modeling breakthroughs With this book in hand, object-oriented developers, system analysts, and designers will have the guidance they need to organize and focus their work, create rich and useful domain models, and leverage those models into quality, long-lasting software implementations.