Book picks similar to
Wireless Networking in the Developing World by Wireless Networking Authors
find-ebook
politics-culture
skills-technical-how-to
software
Resilient Web Design
Jeremy Keith
This is not a handbook. It’s more like a history book.Marshall McLuhan once said:We look at the present through a rear‐view mirror. We march backwards into the future.But in the world of web design, we are mostly preoccupied with the here and now. When we think beyond our present moment, it is usually to contemplate the future—to imagine the devices, features, and interfaces that don’t yet exist. We don’t have time to look back upon our past, and yet the history of web design is filled with interesting ideas.The World Wide Web has been around for long enough now that we can begin to evaluate the twists and turns of its evolution. I wrote this book to highlight some of the approaches to web design that have proven to be resilient. I didn’t do this purely out of historical interest (although I am fascinated by the already rich history of our young industry). In learning from the past, I believe we can better prepare for the future.You won’t find any code in here to help you build better websites. But you will find ideas and approaches. Ideas are more resilient than code. I’ve tried to combine the most resilient ideas from the history of web design into an approach for building the websites of the future.I hope you will join me in building a web that lasts; a web that’s resilient.
Ruby for Rails: Ruby Techniques for Rails Developers
David A. Black - 2006
That means you can't tap into the full power of Rails unless you master the Ruby language. ""Ruby for Rails,"" written by Ruby expert David Black (with a forward by David Heinemeier Hansson), helps Rails developers achieve Ruby mastery. Each chapter deepens your Ruby knowledge and shows you how it connects to Rails. You'll gain confidence working with objects and classes and learn how to leverage Ruby's elegant, expressive syntax for Rails application power. And you'll become a better Rails developer through a deep understanding of the design of Rails itself and how to take advantage of it.Newcomers to Ruby will find a Rails-oriented Ruby introduction that's easy to read and that includes dynamic programming techniques, an exploration of Ruby objects, classes, and data structures, and many neat examples of Ruby and Rails code in action. ""Ruby for Rails"": the Ruby guide for Rails developers!What's Inside Classes, modules, and objects Collection handling and filtering String and regular expression manipulation Exploration of the Rails source code Ruby dynamics Many more programming concepts and techniques!
Explain the Cloud Like I'm 10
Todd Hoff - 2018
And I mean all the time. Every day there’s a new cloud-based dating app; a new cloud-based gizmo for your house; a new cloud-based game; or a thousand other new things—all in the cloud.The cloud is everywhere! Everything is in the cloud! What does it mean! Let’s slow down. Take a deep breath. That’s good. Take another. Excellent. This book teaches you all about the cloud. I’ll let you in on a little secret: the cloud is not that hard to understand. It’s not. It’s just that nobody has taken the time to explain to you what the cloud is. They haven’t, have they?Deep down I think this is because they don’t understand the cloud either, but I do. I’ve been a programmer and writer for over 30 years. I’ve been in cloud computing since the very start, and I’m here to help you on your journey to understand the cloud. Consider me your tour guide. I’ll be with you every step of the way, but not in a creepy way.I take my time with this book. I go slow and easy, so you can build up an intuition about what the cloud really is, one idea at a time. When you finish reading, you’ll understand the cloud. When you hear someone say some new cool thing is in the cloud, you’ll understand exactly what they mean. That’s a promise. How do I deliver on that promise? I use lots and lots of pictures. I use lots and lots of examples. We’ll reveal the secret inner-workings of AWS, Netflix, Facebook Messenger, Amazon Kindle, Apple iCloud, Google Maps, Nest and cloud DVRs. You’ll learn by seeing and understanding; no matter if you're a complete beginner, someone who knows a little and wants to learn more, or a programmer looking to change their career to the cloud.The cloud is the future. You don't want to miss out on the future, do you? Read this book and we'll discover it together.I’m excited. This will be fun. Let’s get started!
The Ascension Myth Complete Omnibus (Books 1-12): Awakened, Activated, Called, Sanctioned, Rebirth, Retribution, Cloaked, Bourne. Committed, Subversion, Invasion, Ascension
Ell Leigh Clark - 2020
Unleashing the Killer App: Digital Strategies for Market Dominance
Larry Downes - 1998
This title identifies the twelve fundamental design principles for building killer apps. It illustrates these principles with classic stories from history and examples from a range of industries that have successfully developed killer apps.
Enigmas: Alan Turing and the Codebreakers of the World Wars
David Boyle - 2017
Many of those most closely involved in cracking the Enigma code – Alistair Denniston, Frank Birch, Dilly Knox – had wrestled with German naval codes for most of the First World War. By the end of the war they had been successfully cracking a new code every day, from their secret Room 40 at the Old Admiralty Building, in a London blacked out for Zeppelin Raids. The techniques they developed then, the ideas that they came to rely on, the people they came to trust, had been developed the hard way, under intense pressure and absolute secrecy during the First World War. Operation Primrose Operation Primrose tells the story of the capture of U-110 – and with it a working Enigma machine. One of the biggest secrets of the war, the capture of that one machine turned the tide of the war. Turing and his colleagues at Bletchley Park worked tirelessly to crack the code, and with the working Enigma machine they finally had their break-through moment. This book sets the story, and the Enigma cryptographers, in context – at the heart of the Battle of the Atlantic, when it reached its crescendo in the pursuit of the battleship Bismarck the week after U110 was taken. It sets Bletchley Park in its wider context too, at the heart of an intricate and maverick network of naval intelligence, tracking signals and plotting them to divert convoys around waiting U-boats, involving officers like James Bond’s future creator, Ian Fleming. It also sets out the most important context of all, forgotten in so much of the Enigma history: that Britain’s own naval code had already been cracked, and its signals were being read, thanks to the efforts of Turing’s opposite number, the German naval cryptographer, Wilhelm Tranow. An exciting and enthralling true story ‘Operation Primrose’ is an excellently researched piece on the race for naval supremacy in the Second World War. Alan Turing Mathematician, philosopher, codebreaker. Turing was one of the most original thinkers of the last century - and the man whose work helped create the computer-driven world we now inhabit. But he was also an enigmatic figure, deeply reticent yet also strikingly naïve. Turing’s openness about his homosexuality at a time when it was an imprisonable offence ultimately led to his untimely death at the age of only forty-one. Alan Turing: Unlocking the Enigma seeks to find the man behind the science, illuminating the life of a person who is still a shadowy presence behind his brilliant achievements. Turing was instrumental in cracking the Nazi Enigma machines at the top secret code breaking establishment at Bletchley Park during the Second World War. But his achievements were to be tragically overshadowed by his supposedly subversive views and for his sexuality. Praise for David Boyle: ‘The tone of the book may be gloomy but there is plenty of entertainment value …’ - Anne Ashworth, The Times ‘Exhilarating’ - Daily Mail ‘He tells these stories, on the whole persuasively and with some startling asides.
Cognition
Jacques St-Malo - 2019
When research suggests how to harness brain evolution, a hunt ensues for a missing link―one that allows to design humans with skills that prodigies of old would have envied.As germline engineering and biological enhancement have become routine, ancient doubts have emerged under new guises: Who are we? Is there a purpose to life? Why is there so much suffering? When faith and science fail to answer these questions, personal greed and national interest quickly fill the void. But gene selection is expensive, and many are excluded from its benefits. The stage is set for tribalism and social discontent on a scale without precedent, and those caught in the fray, whether by choice or by chance, must play roles not always to their liking in the struggle of all creatures against the arbitrariness of existence.
Elements of Clojure
Zachary Tellman - 2019
This is necessary because, in the words of Michael Polanyi, "we can know more than we can tell." Our design choices are not the result of an ineluctable chain of logic; they come from a deeper place, one which is visceral and inarticulate.Polanyi calls this "tacit knowledge", a thing which we only understand as part of something else. When we speak, we do not focus on making sounds, we focus on our words. We understand the muscular act of speech, but would struggle to explain it.To write software, we must learn where to draw boundaries. Good software is built through effective indirection. We seem to have decided that this skill can only be learned through practice; it cannot be taught, except by example. Our decisions may improve with time, but not our ability to explain them. It's true that the study of these questions cannot yield a closed-form solution for judging software design. We can make our software simple, but we cannot do the same to its problem domain, its users, or the physical world. Our tacit knowledge of this environment will always inform our designs.This doesn't mean that we can simply ignore our design process. Polanyi tells us that tacit knowledge only suffices until we fail, and the software industry is awash with failure. Our designs may never be provably correct, but we can give voice to the intuition that shaped them. Our process may always be visceral, but it doesn't have to be inarticulate.And so this book does not offer knowledge, it offers clarity. It is aimed at readers who know Clojure, but struggle to articulate the rationale of their designs to themselves and others. Readers who use other languages, but have a passing familiarity with Clojure, may also find this book useful.
Understanding Software: Max Kanat-Alexander on simplicity, coding, and how to suck less as a programmer
Max Kanat-Alexander - 2017
Max explains to you why programmers suck, and how to suck less as a programmer. There's just too much complex stuff in the world. Complex stuff can't be used, and it breaks too easily. Complexity is stupid. Simplicity is smart.Understanding Software covers many areas of programming, from how to write simple code to profound insights into programming, and then how to suck less at what you do! You'll discover the problems with software complexity, the root of its causes, and how to use simplicity to create great software. You'll examine debugging like you've never done before, and how to get a handle on being happy while working in teams.Max brings a selection of carefully crafted essays, thoughts, and advice about working and succeeding in the software industry, from his legendary blog Code Simplicity. Max has crafted forty-three essays which have the power to help you avoid complexity and embrace simplicity, so you can be a happier and more successful developer.Max's technical knowledge, insight, and kindness, has earned him code guru status, and his ideas will inspire you and help refresh your approach to the challenges of being a developer. What you will learn
See how to bring simplicity and success to your programming world
Clues to complexity - and how to build excellent software
Simplicity and software design
Principles for programmers
The secrets of rockstar programmers
Max's views and interpretation of the Software industry
Why Programmers suck and how to suck less as a programmer
Software design in two sentences
What is a bug? Go deep into debugging
About the Author Max Kanat-Alexander is the Technical Lead for Code Health at Google, where he does various work that helps other software engineers be more productive, including writing developer tools, creating educational programs, guiding refactoring efforts, and more.His roles at Google have included Tech Lead for YouTube on the Xbox, work on the Java JDK, JVM, and other aspects of Java for Google, and Technical Lead for Engineering Practices for YouTube, where he's supported developers across all of YouTube in best practices and engineering productivity. Max is a former Chief Architect of the Bugzilla Project, where he was one of the two main developers of the well-known Bugzilla Bug-Tracking System, used by thousands of organizations worldwide. Max also writes the legendary programming industry blog, Code Simplicity, where he challenges Complexity and embraces Simplicity for the programming industry.Max has been involved for several years at Google with enabling developers to work more effectively and helping shape engineering practice, and in this highly readable collection of essays you can share the best of his experience. Table of Contents
Part One: Principles for Programmers
Part Two: Software Complexity and its Causes
Part Three: Simplicity and Software Design
Part Four: Debugging
Part Five:
Mobile App Marketing And Monetization: How To Promote Mobile Apps Like A Pro: Learn to promote and monetize your Android or iPhone app. Get hundreds of thousands of downloads & grow your app business
Alex Genadinik - 2014
I am an independent mobile app entrepreneur just like you, and I wrote this book to teach you all my strategies for how to: - Get 1,000,000+ downloads from mobile app store marketing - Save money by doing your own ASO (search engine optimization SEO for Android and the Apple App stores) better than most consultants you might consider hiring - Create an app marketing strategy outside the app stores by getting press coverage and learning how to promote an app using social media and social sharing - Make money with effective app store monetization to help you maximize your app revenue with subscriptions, in-app purchases, publishing effective ads, selling affiliate products and other strategies used by successful mobile app businesses - Create a successful mobile app business I wrote this book with all my heart and soul. The book draws on my own years of experience building top apps in my niche, promoting apps, making money with my apps, and coaching other app entrepreneurs on how they can make turn their mobile apps into successful businesses. You will be getting the best of all worlds. First, I have very deep hands on experience building and growing my own apps. Second, I have a wealth of experience coaching and observing other app entrepreneurs whose experiences and aspirations are probably very similar to yours. In this book you get all the insights from me making my own apps a success, and the insights of the cumulative experiences of the people I've coached. This is a very to the point book with many actionable tips and strategies for how to promote your mobile app (iPhone or Android), make money from your smartphone applications, and generally treat it as a real business. All suggestions in this book are based on my own experiences promoting my own problemio.com business apps which at the point of latest revision of this book have cumulative 1,000,000+ downloads, and insights of me having coached over 100 other app entrepreneurs. I am an independent mobile application developer and mobile application entrepreneur just like you. I am not a multi-million dollar app development studio or a big company. If you are an independent app developer just like me, you can use the mobile application marketing strategies that I outline in this book. Many of the strategies are simple and effective, and you can begin working on them as early as today. The book contains over 20 strategies to promote your apps. They all worked for my apps and they will help you grow your app to its highest potential. After growing your app, you will be able to make good money from your app, and achieve the goals that you have for your app business. Get the book now, and become a pro at app store marketing (app store SEO which is otherwise known as ASO), and start increasing your app downloads and revenue today!
Computer Security: Principles and Practice
William Stallings - 2007
This is the only book available that provides integrated, comprehensive, up-to-date coverage of the broad range of topics in this subject. Comprehensive treatment of user authentication and access control. Unified approach to intrusion detection and firewalls, giving readers a solid understanding of the threats and countermeasures. More detailed coverage of software security than other books. Exploration of management issues. Systematic, comprehensive discussion of malicious software and denial of service attacks. Coverage of Linux and Windows Vista. Up-to-date coverage of database security. Thorough overview of cryptography, authentication, and digital signatures. Coverage of Internet security. For system engineers, programmers, system managers, network managers, product marketing personnel, system support specialists; a solid, up-to-date reference or tutorial for self-study.
Rails Antipatterns: Best Practice Ruby on Rails Refactoring
Chad Pytel - 2010
Rails(TM) AntiPatterns identifies these widespread Rails code and design problems, explains why they're bad and why they happen--and shows exactly what to do instead.The book is organized into concise, modular chapters--each outlines a single common AntiPattern and offers detailed, cookbook-style code solutions that were previously difficult or impossible to find. Leading Rails developers Chad Pytel and Tammer Saleh also offer specific guidance for refactoring existing bad code or design to reflect sound object-oriented principles and established Rails best practices. With their help, developers, architects, and testers can dramatically improve new and existing applications, avoid future problems, and establish superior Rails coding standards throughout their organizations.This book will help you understand, avoid, and solve problems withModel layer code, from general object-oriented programming violations to complex SQL and excessive redundancy Domain modeling, including schema and database issues such as normalization and serialization View layer tools and conventions Controller-layer code, including RESTful code Service-related APIs, including timeouts, exceptions, backgrounding, and response codes Third-party code, including plug-ins and gems Testing, from test suites to test-driven development processes Scaling and deployment Database issues, including migrations and validations System design for "graceful degradation" in the real world
A Software Engineer Learns HTML5, JavaScript and jQuery
Dane Cameron - 2013
Due to their monopoly position in web browsers, and the fact web browsers have spread from PCs to phones, tablets and TVs; their status will continue to grow and grow. Despite their success, many software engineers are apprehensive about JavaScript and HTML. This apprehensiveness is not completely unfounded; both JavaScript and HTML were rushed in their early years, and driven by commercial rather than engineering interests. As a result, many dubious features crept into these languages. Due to backwards compatibility concerns, most of these features still remain. In addition, many software engineers have used these languages without ever learning them. JavaScript and HTML have low barriers to entry, and this, along with their similarity to other languages, led many software engineers to conclude that there really was nothing much to learn. If you have not used JavaScript and HTML for a number of years, or if you are a programmer or software engineer using other languages, you may be surprised at what they now offer. Browser based web applications are now capable of matching or exceeding the sophistication and scale of traditional desktop applications. In order to create complex web applications however, it is essential to learn these languages. This book takes the point of view that once you have a strong grasp of the fundamentals, the details will take care of themselves. It will not present you with long lists of APIs, or intricate details of every attribute, these can be found in reference manuals. It will focus on the details of each language that are fundamental to understanding how they work. This book will guide you through the process of developing a web application using HTML5, Javascript, jQuery and CSS. It contains the following content: 1. An introduction to the HTML5 markup language, and how it differs from HTML4 and XHTML. 2. An introduction to JavaScript, including an in-depth look at its use of objects and functions, along with the design patterns that support the development of robust web applications. 3. An introduction to jQuery selection, traversal, manipulation and events. 4. An in-depth look at the Web storage and IndexedDB APIs for client side data storage. 5. A guide to implementing offline web applications with the Application Cache API. 6. An introduction to the ways JavaScript can interact with the users file-system using the FileReader API. 7. The use of Web Workers in a web application to execute algorithms on background threads. 8. An introduction to AJAX, and the jQuery API supporting AJAX. 9. An introduction to Server Sent Events and Web Sockets. All subjects are introduced in the context of a sample web application. This book is intended for anyone with at least a superficial knowledge of HTML and programming.
Tesla Motors: How Elon Musk and Company Made Electric Cars Cool, and Sparked the Next Tech Revolution
Charles Morris - 2014
The most trusted sources in the auto industry have called its Model S the most advanced, safest and best-performing car ever built - and it doesn’t use a drop of gasoline. Tesla has changed the way the public perceives electric vehicles, and inspired the major automakers to revive their own dormant efforts to sell EVs. However, even amidst the avalanche of media coverage that followed the triumph of the Model S, few have grasped the true significance of what is happening. Tesla has redefined the automobile, sparked a new wave of innovation comparable to the internet and mobile computing revolutions, and unleashed forces that will transform not just the auto industry, but every aspect of society. The Tesla story is one part of an ongoing tide of change driven by the use of information technology to eliminate “friction” such as geographic distance, middlemen and outdated regulations. Tesla is simply applying the new order to the auto industry, but the automobile is such a pervasive influence in our lives that redefining how it is designed, built, driven and sold will have sweeping effects in unexpected areas. Just as Tesla built the Model S as an electric vehicle “from the ground up,” it has taken an outsider’s approach to the way it markets its cars. Its direct sales model has drawn legal challenges from entrenched auto dealers, who fear that their outdated business model will be destroyed. Its systems approach to the software and electronics in its cars has highlighted how far behind the technological times the major automakers are. It’s easy to see why readers find Tesla irresistible. CEO Elon Musk is a superstar entrepreneur, a “nauseatingly pro-US” immigrant and the leader of two other cutting-edge companies. Tesla dares to challenge the establishment behemoths and, so far at least, has handily beaten them at their own game. In this history of the 21st century’s most exciting startup, Charles Morris begins with a brief history of EVs and a biography of Tesla’s driving force, Elon Musk. He then details the history of the company, told in the words of the Silicon Valley entrepreneurs who made it happen. There are many fascinating stories here: Martin Eberhard’s realization that there were many like himself, who loved fast cars but wanted to help the environment and bring about the post-oil age; the freewheeling first days, reminiscent of the early internet era; the incredible ingenuity of the team who built the Roadster; Tesla’s near-death experience and miraculous resurrection; the spiteful split between the company’s larger-than-life leaders; the gloves-off battles with hostile media such as Top Gear and the New York Times; and the media’s ironic about-face when the magnificent Model S won the industry’s highest honors, and naysayers became cheerleaders overnight. And the story is just beginning: Tesla has breathtakingly ambitious plans for the future.This book was updated May 1, 2015 to include the latest on the Gigafactory and the D package.
Extreme Programming Pocket Guide
chromatic - 2003
Although many developers feel that XP is rooted in commonsense, its vastly different approach can bring challenges, frustrations, and constant demands on your patience.Unless you've got unlimited time (and who does these days?), you can't always stop to thumb through hundreds of pages to find the piece of information you need. The Extreme Programming Pocket Guide is the answer. Concise and easy to use, this handy pocket guide to XP is a must-have quick reference for anyone implementing a test-driven development environment.The Extreme Programming Pocket Guide covers XP assumptions, principles, events, artifacts, roles, and resources, and more. It concisely explains the relationships between the XP practices. If you want to adopt XP in stages, the Extreme Programming Pocket Guide will help you choose what to apply and when. You'll be surprised at how much practical information is crammed into this slim volume.O'Reilly's Pocket Guides have become a favorite among developers everywhere. By providing a wealth of important details in a concise, well-organized format, these handy books deliver just what you need to complete the task at hand. When you've reached a sticking point in your work and need to get to a solution quickly, the new Extreme Programming Pocket Guide is the book you'll want to have beside your keyboard.