Book picks similar to
Open Access by Peter Suber
non-fiction
nonfiction
library-science
lis
Googled: The End of the World as We Know It
Ken Auletta - 2009
This is a ride on the Google wave, and the fullest account of how it formed and crashed into traditional media businesses. With unprecedented access to Google's founders and executives, as well as to those in media who are struggling to keep their heads above water, Ken Auletta reveals how the industry is being disrupted and redefined.Auletta goes inside Google's closed-door meetings, introducing Google's notoriously private founders, Larry Page and Sergey Brin, as well as those who work with - and against - them. In Googled, the reader discovers the 'secret sauce' of the company's success and why the worlds of 'new' and 'old' media often communicate as if residents of different planets. It may send chills down traditionalists' spines, but it's a crucial roadmap to the future of media business: the Google story may well be the canary in the coal mine.Googled is candid, objective and authoritative. Crucially, it's not just a history or reportage: it's ahead of the curve and unlike any other Google books, which tend to have been near-histories, somewhat starstruck, now out of date or which fail to look at the full synthesis of business and technology.
The Pragmatic Programmer: From Journeyman to Master
Andy Hunt - 1999
It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how toFight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation. Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies,
The Pragmatic Programmer
illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.
HTML and CSS: Design and Build Websites
Jon Duckett - 2011
Joining the professional web designers and programmers are new audiences who need to know a little bit of code at work (update a content management system or e-commerce store) and those who want to make their personal blogs more attractive. Many books teaching HTML and CSS are dry and only written for those who want to become programmers, which is why this book takes an entirely new approach. • Introduces HTML and CSS in a way that makes them accessible to everyone—hobbyists, students, and professionals—and it’s full-color throughout • Utilizes information graphics and lifestyle photography to explain the topics in a simple way that is engaging • Boasts a unique structure that allows you to progress through the chapters from beginning to end or just dip into topics of particular interest at your leisureThis educational book is one that you will enjoy picking up, reading, then referring back to. It will make you wish other technical topics were presented in such a simple, attractive and engaging way!
The Perfectionists: How Precision Engineers Created the Modern World
Simon Winchester - 2018
At the dawn of the Industrial Revolution in eighteenth-century England, standards of measurement were established, giving way to the development of machine tools—machines that make machines. Eventually, the application of precision tools and methods resulted in the creation and mass production of items from guns and glass to mirrors, lenses, and cameras—and eventually gave way to further breakthroughs, including gene splicing, microchips, and the Hadron Collider.Simon Winchester takes us back to origins of the Industrial Age, to England where he introduces the scientific minds that helped usher in modern production: John Wilkinson, Henry Maudslay, Joseph Bramah, Jesse Ramsden, and Joseph Whitworth. It was Thomas Jefferson who later exported their discoveries to the fledgling United States, setting the nation on its course to become a manufacturing titan. Winchester moves forward through time, to today’s cutting-edge developments occurring around the world, from America to Western Europe to Asia.As he introduces the minds and methods that have changed the modern world, Winchester explores fundamental questions. Why is precision important? What are the different tools we use to measure it? Who has invented and perfected it? Has the pursuit of the ultra-precise in so many facets of human life blinded us to other things of equal value, such as an appreciation for the age-old traditions of craftsmanship, art, and high culture? Are we missing something that reflects the world as it is, rather than the world as we think we would wish it to be? And can the precise and the natural co-exist in society?
Biomimicry: Innovation Inspired by Nature
Janine M. Benyus - 1997
Biomimics study nature's most successful ideas over the past 3.5 million years, and adapt them for human use. The results are revolutionizing how materials are invented and how we compute, heal ourselves, repair the environment, and feed the world.Janine Benyus takes readers into the lab and in the field with maverick thinkers as they: discover miracle drugs by watching what chimps eat when they're sick; learn how to create by watching spiders weave fibers; harness energy by examining how a leaf converts sunlight into fuel in trillionths of a second; and many more examples.Composed of stories of vision and invention, personalities and pipe dreams, Biomimicry is must reading for anyone interested in the shape of our future.
Everydata: The Misinformation Hidden in the Little Data You Consume Every Day
John H. Johnson - 2016
The average person consumes approximately 30 gigabytes of data every single day, but has no idea how to interpret it correctly. EVERYDATA explains, through the eyes of an expert economist and statistician, how to decipher the small bytes of data we consume in a day.EVERYDATA is filled with countless examples of people misconstruing data—with results that range from merely frustrating to catastrophic:The space shuttle Challenger exploded in part because the engineers were reviewing a limited sample set.Millions of women avoid caffeine during pregnancy because they interpret correlation as causation.Attorneys faced a $1 billion jury verdict because of outlier data.Each chapter highlights one commonly misunderstood data concept, using both realworld and hypothetical examples from a wide range of topics, including business, politics, advertising, law, engineering, retail, parenting, and more. You’ll find the answer to the question—“Now what?”—along with concrete ways you can use this information to immediately start making smarter decisions, today and every day.
Algorithms
Robert Sedgewick - 1983
This book surveys the most important computer algorithms currently in use and provides a full treatment of data structures and algorithms for sorting, searching, graph processing, and string processing -- including fifty algorithms every programmer should know. In this edition, new Java implementations are written in an accessible modular programming style, where all of the code is exposed to the reader and ready to use.The algorithms in this book represent a body of knowledge developed over the last 50 years that has become indispensable, not just for professional programmers and computer science students but for any student with interests in science, mathematics, and engineering, not to mention students who use computation in the liberal arts.The companion web site, algs4.cs.princeton.edu contains An online synopsis Full Java implementations Test data Exercises and answers Dynamic visualizations Lecture slides Programming assignments with checklists Links to related material The MOOC related to this book is accessible via the "Online Course" link at algs4.cs.princeton.edu. The course offers more than 100 video lecture segments that are integrated with the text, extensive online assessments, and the large-scale discussion forums that have proven so valuable. Offered each fall and spring, this course regularly attracts tens of thousands of registrants.Robert Sedgewick and Kevin Wayne are developing a modern approach to disseminating knowledge that fully embraces technology, enabling people all around the world to discover new ways of learning and teaching. By integrating their textbook, online content, and MOOC, all at the state of the art, they have built a unique resource that greatly expands the breadth and depth of the educational experience.
The C++ Programming Language
Bjarne Stroustrup - 1986
For this special hardcover edition, two new appendixes on locales and standard library exception safety (also available at www.research.att.com/ bs/) have been added. The result is complete, authoritative coverage of the C++ language, its standard library, and key design techniques. Based on the ANSI/ISO C++ standard, The C++ Programming Language provides current and comprehensive coverage of all C++ language features and standard library components. For example:abstract classes as interfaces class hierarchies for object-oriented programming templates as the basis for type-safe generic software exceptions for regular error handling namespaces for modularity in large-scale software run-time type identification for loosely coupled systems the C subset of C++ for C compatibility and system-level work standard containers and algorithms standard strings, I/O streams, and numerics C compatibility, internationalization, and exception safety Bjarne Stroustrup makes C++ even more accessible to those new to the language, while adding advanced information and techniques that even expert C++ programmers will find invaluable.
Effective Java
Joshua Bloch - 2001
The principal enhancement in Java 8 was the addition of functional programming constructs to Java's object-oriented roots. Java 7, 8, and 9 also introduced language features, such as the try-with-resources statement, the diamond operator for generic types, default and static methods in interfaces, the @SafeVarargs annotation, and modules. New library features include pervasive use of functional interfaces and streams, the java.time package for manipulating dates and times, and numerous minor enhancements such as convenience factory methods for collections. In this new edition of Effective Java, Bloch updates the work to take advantage of these new language and library features, and provides specific best practices for their use. Java's increased support for multiple paradigms increases the need for best-practices advice, and this book delivers. As in previous editions, each chapter consists of several "items," each presented in the form of a short, standalone essay that provides specific advice, insight into Java platform subtleties, and updated code examples. The comprehensive descriptions and explanations for each item illuminate what to do, what not to do, and why. Coverage includes:Updated techniques and best practices on classic topics, including objects, classes, methods, libraries, and generics How to avoid the traps and pitfalls of commonly misunderstood subtleties of the platform Focus on the language and its most fundamental libraries, such as java.lang and java.util
Working Effectively with Legacy Code
Michael C. Feathers - 2004
This book draws on material Michael created for his renowned Object Mentor seminars, techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include: Understanding the mechanics of software change, adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform, with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structureThis book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.
The Big Nine: How the Tech Titans and Their Thinking Machines Could Warp Humanity
Amy Webb - 2019
We like to think that we are in control of the future of "artificial" intelligence. The reality, though, is that we -- the everyday people whose data powers AI -- aren't actually in control of anything. When, for example, we speak with Alexa, we contribute that data to a system we can't see and have no input into -- one largely free from regulation or oversight. The big nine corporations -- Amazon, Google, Facebook, Tencent, Baidu, Alibaba, Microsoft, IBM and Apple--are the new gods of AI and are short-changing our futures to reap immediate financial gain. In this book, Amy Webb reveals the pervasive, invisible ways in which the foundations of AI -- the people working on the system, their motivations, the technology itself -- is broken. Within our lifetimes, AI will, by design, begin to behave unpredictably, thinking and acting in ways which defy human logic. The big nine corporations may be inadvertently building and enabling vast arrays of intelligent systems that don't share our motivations, desires, or hopes for the future of humanity. Much more than a passionate, human-centered call-to-arms, this book delivers a strategy for changing course, and provides a path for liberating us from algorithmic decision-makers and powerful corporations.
Learn You a Haskell for Great Good!
Miran Lipovača - 2011
Learn You a Haskell for Great Good! introduces programmers familiar with imperative languages (such as C++, Java, or Python) to the unique aspects of functional programming. Packed with jokes, pop culture references, and the author's own hilarious artwork, Learn You a Haskell for Great Good! eases the learning curve of this complex language, and is a perfect starting point for any programmer looking to expand his or her horizons. The well-known web tutorial on which this book is based is widely regarded as the best way for beginners to learn Haskell, and receives over 30,000 unique visitors monthly.
Happiness by Design: Change What You Do, Not How You Think
Paul Dolan - 2014
In Happiness by Design, happiness and behavior expert Paul Dolan combines the latest insights from economics and psychology to illustrate that in order to be happy we must behave happy. Our happiness is experiences of both pleasure and purpose over time and it depends on what we actually pay attention to. Using what Dolan calls deciding, designing, and doing, we can overcome the biases that make us miserable and redesign our environments to make it easier to experience happiness, fulfilment, and even health. With uncanny wit and keen perception, Dolan reveals what we can do to find our unique optimal balance of pleasure and purpose, offering practical advice on how to organize our lives in happiness-promoting ways and fresh insights into how we feel, including why:• Having kids reduces pleasure but gives us a massive dose of purpose• Gaining weight won’t necessarily make us unhappier, but being too ambitious might• A quiet neighborhood is more important than a big houseVividly rendering intriguing research and lively anecdotal evidence, Happiness by Design offers an absorbing, thought-provoking, new paradigm for readers of Stumbling on Happiness and The How of Happiness.
Clean Code: A Handbook of Agile Software Craftsmanship
Robert C. Martin - 2007
But if code isn't clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn't have to be that way. Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship . Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code on the fly into a book that will instill within you the values of a software craftsman and make you a better programmer but only if you work at it. What kind of work will you be doing? You'll be reading code - lots of code. And you will be challenged to think about what's right about that code, and what's wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft. Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code - of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and "smells" gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code. Readers will come away from this book understanding ‣ How to tell the difference between good and bad code‣ How to write good code and how to transform bad code into good code‣ How to create good names, good functions, good objects, and good classes‣ How to format code for maximum readability ‣ How to implement complete error handling without obscuring code logic ‣ How to unit test and practice test-driven development This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.
Reprogramming the American Dream: From Rural America to Silicon Valley—Making AI Serve Us All
Kevin Scott - 2020
But there is a third way to look at this technology that will revolutionize the workplace and ultimately the world. Kevin Scott argues that AI has the potential to create abundance and opportunity for everyone and help solve some of our most vexing problems.As the chief technology officer at Microsoft, he is deeply involved in the development of AI applications, yet mindful of their potential impact on workers—knowledge he gained firsthand growing up in rural Virginia. Yes, the AI Revolution will radically disrupt economics and employment for everyone for generations to come. But what if leaders prioritized the programming of both future technology and public policy to work together to find solutions ahead of the coming AI epoch? Like public health, the space program, climate change and public education, we need international understanding and collaboration on the future of AI and work. For Scott, the crucial question facing all of us is this: How do we work to ensure that the continued development of AI allows us to keep the American Dream alive?In this thoughtful, informed guide, he offers a clear roadmap to find the answer.