Book picks similar to
Cloud Application Architecture Guide (Microsoft Azure) by Christopher Bennage
tech
architecture
programming
ibooks
Advanced Scala with Cats
Noel Welsh - 2017
This means designing systems as small composable units, expressing constraints and interactions via the type system, and using composition to guide the construction of large systems in a way that maintains the original architectural vision.The book also serves as an introduction to the Cats library. We use abstractions from Cats, and we explain the structure of Cats so you can use it without fear in your own code base. The broad ideas are not specific to Cats, but Cats provides an excellent implementation that is beneficial to learn in its own right.
CSS Secrets: Better Solutions to Everyday Web Design Problems
Lea Verou - 2014
Based on two popular talks from author Lea Verou--including "CSS3 Secrets: 10 things you may not know about CSS"--this practical guide provides intermediate to advanced CSS developers with more than 40 undocumented techniques and tips for using CSS3 to create better websites.The talks that spawned this book have been top-rated by attendees in every conference they were presented, and praised in industry media such as ."net" magazine.Get information you won't find in any other bookLearn through small, easily digestible chaptersHelps you understand CSS more deeply so you can improve your own solutionsApply Lea's techniques to practically every CSS problem you faceGain tips from a rockstar author who serves as an Invited Expert in W3C's CSS Working Group
Free Tools for Writers, Bloggers and Solopreneurs
Karen Banes - 2014
By the time you finish this book you'll be able to do everything from checking your grammar, to creating an infographic, to driving free traffic to your blog or website, all using free tools, sites and downloads. The book contains links to all resources mentioned. A handy little reference guide you'll keep on your Kindle or other device to refer back to again and again.
Metaprogramming Ruby
Paolo Perrotta - 2010
Now you can get in on the action as well. This book describes metaprogramming as an essential component of Ruby. Once you understand the principles of Ruby, including the object model, scopes, and eigenclasses, you're on your way to applying metaprogramming both in your daily work and in your fun, after-hours projects. Learning metaprogramming doesn't have to be difficult or boring. By taking you on a Monday-through-Friday workweek adventure with a pair of programmers, Paolo Perrotta helps make mastering the art of metaprogramming both straightforward and entertaining. The book is packed with:Pragmatic examples of metaprogramming in action, many of which come straight from popular libraries or frameworks, such as Rails. Programming challenges that let you experiment and play with some of the most fun, "out-there" metaprogramming concepts. Metaprogramming spells--34 practical recipes and idioms that you can study and apply right now, to write code that is sure to impress. Whether you're a Ruby apprentice on the path to mastering the language or a Ruby wiz in search of new tips, this book is for you.
I Heart Logs: Event Data, Stream Processing, and Data Integration
Jay Kreps - 2014
Even though most engineers don't think much about them, this short book shows you why logs are worthy of your attention.Based on his popular blog posts, LinkedIn principal engineer Jay Kreps shows you how logs work in distributed systems, and then delivers practical applications of these concepts in a variety of common uses--data integration, enterprise architecture, real-time stream processing, data system design, and abstract computing models.Go ahead and take the plunge with logs; you're going love them.Learn how logs are used for programmatic access in databases and distributed systemsDiscover solutions to the huge data integration problem when more data of more varieties meet more systemsUnderstand why logs are at the heart of real-time stream processingLearn the role of a log in the internals of online data systemsExplore how Jay Kreps applies these ideas to his own work on data infrastructure systems at LinkedIn
Micro-Isv: From Vision to Reality
Bob Walsh - 2006
As for the latter, are you a programmer and curious about being your own boss? Where do you turn for information? Until now, online and traditional literature havent caught up with the reality of the post-dot com bust.Micro-ISV: From Vision to Reality explains what works and why in today's emerging micro-ISV sector. Currently, thousands of programmers build and deliver great solutions ISV-style, earning success and revenues much larger than you might guess. Written by and for micro-ISVs, with help from some of the leaders of the field, this book takes you beyond just daydreaming to running your own business. It thoroughly explores how it is indeed possible to launch and maintain a small and successful ISV business, and is an ideal read if you're interested in getting started.
Cracking the Coding Interview: 150 Programming Questions and Solutions
Gayle Laakmann McDowell - 2008
This is a deeply technical book and focuses on the software engineering skills to ace your interview. The book is over 500 pages and includes 150 programming interview questions and answers, as well as other advice.The full list of topics are as follows:The Interview ProcessThis section offers an overview on questions are selected and how you will be evaluated. What happens when you get a question wrong? When should you start preparing, and how? What language should you use? All these questions and more are answered.Behind the ScenesLearn what happens behind the scenes during your interview, how decisions really get made, who you interview with, and what they ask you. Companies covered include Google, Amazon, Yahoo, Microsoft, Apple and Facebook.Special SituationsThis section explains the process for experience candidates, Program Managers, Dev Managers, Testers / SDETs, and more. Learn what your interviewers are looking for and how much code you need to know.Before the InterviewIn order to ace the interview, you first need to get an interview. This section describes what a software engineer's resume should look like and what you should be doing well before your interview.Behavioral PreparationAlthough most of a software engineering interview will be technical, behavioral questions matter too. This section covers how to prepare for behavioral questions and how to give strong, structured responses.Technical Questions (+ 5 Algorithm Approaches)This section covers how to prepare for technical questions (without wasting your time) and teaches actionable ways to solve the trickiest algorithm problems. It also teaches you what exactly "good coding" is when it comes to an interview.150 Programming Questions and AnswersThis section forms the bulk of the book. Each section opens with a discussion of the core knowledge and strategies to tackle this type of question, diving into exactly how you break down and solve it. Topics covered include• Arrays and Strings• Linked Lists• Stacks and Queues• Trees and Graphs• Bit Manipulation• Brain Teasers• Mathematics and Probability• Object-Oriented Design• Recursion and Dynamic Programming• Sorting and Searching• Scalability and Memory Limits• Testing• C and C++• Java• Databases• Threads and LocksFor the widest degree of readability, the solutions are almost entirely written with Java (with the exception of C / C++ questions). A link is provided with the book so that you can download, compile, and play with the solutions yourself.Changes from the Fourth Edition: The fifth edition includes over 200 pages of new content, bringing the book from 300 pages to over 500 pages. Major revisions were done to almost every solution, including a number of alternate solutions added. The introductory chapters were massively expanded, as were the opening of each of the chapters under Technical Questions. In addition, 24 new questions were added.Cracking the Coding Interview, Fifth Edition is the most expansive, detailed guide on how to ace your software development / programming interviews.
Inspired: How to Create Tech Products Customers Love
Marty Cagan - 2008
The goal of the book is to share the techniques of the best companies. This book is aimed primarily at Product Managers working on technology-powered products. That includes the hundreds of "tech companies" like Google, Facebook, Amazon, Twitter and the like, as well as the thousands of companies moving to leverage technology (financial companies, media companies, retailers, manufacturers, nearly every industry). Inspired covers companies from early stage start-ups to large, established companies. The products might be consumer products or devices, business services for small businesses to enterprises, internal tools, and developer platforms.Inspired is secondarily aimed at the designers, engineers, user researchers and data scientists that work closely with the product managers on product teams at these same companies.
The Design of Everyday Things
Donald A. Norman - 1988
It could forever change how you experience and interact with your physical surroundings, open your eyes to the perversity of bad design and the desirability of good design, and raise your expectations about how things should be designed.B & W photographs and illustrations throughout.
Shape Up: Stop Running in Circles and Ship Work that Matters
Ryan Singer - 2019
"This book is a guide to how we do product development at Basecamp. It’s also a toolbox full of techniques that you can apply in your own way to your own process.Whether you’re a founder, CTO, product manager, designer, or developer, you’re probably here because of some common challenges that all software companies have to face."
The Non-Designer's Design Book
Robin P. Williams - 2003
Not to worry: This book is the one place you can turn to find quick, non-intimidating, excellent design help. In The Non-Designer's Design Book, 2nd Edition, best-selling author Robin Williams turns her attention to the basic principles of good design and typography. All you have to do is follow her clearly explained concepts, and you'll begin producing more sophisticated, professional, and interesting pages immediately. Humor-infused, jargon-free prose interspersed with design exercises, quizzes, illustrations, and dozens of examples make learning a snap—which is just what audiences have come to expect from this best-selling author.
ATDD by Example: A Practical Guide to Acceptance Test-Driven Development
Markus Gärtner - 2012
However, ATDD is still widely misunderstood by many practitioners. "ATDD by Example" is the first practical, entry-level, hands-on guide to implementing and successfully applying it. ATDD pioneer Markus Gartner walks readers step by step through deriving the right systems from business users, and then implementing fully automated, functional tests that accurately reflect business requirements, are intelligible to stakeholders, and promote more effective development. Through two end-to-end case studies, Gartner demonstrates how ATDD can be applied using diverse frameworks and languages. Each case study is accompanied by an extensive set of artifacts, including test automation classes, step definitions, and full sample implementations. These realistic examples illuminate ATDD's fundamental principles, show how ATDD fits into the broader development process, highlight tips from Gartner's extensive experience, and identify crucial pitfalls to avoid. Readers will learn to Master the thought processes associated with successful ATDD implementationUse ATDD with Cucumber to describe software in ways businesspeople can understand Test web pages using ATDD toolsBring ATDD to Java with the FitNesse wiki-based acceptance test framework Use examples more effectively in Behavior-Driven Development (BDD)Specify software collaboratively through innovative workshopsImplement more user-friendly and collaborative test automationTest more cleanly, listen to test results, and refactor tests for greater value If you're a tester, analyst, developer, or project manager, this book offers a concrete foundation for achieving real benefits with ATDD now-and it will help you reap even more value as you gain experience.
The Art of Readable Code
Dustin Boswell - 2010
Over the past five years, authors Dustin Boswell and Trevor Foucher have analyzed hundreds of examples of "bad code" (much of it their own) to determine why they’re bad and how they could be improved. Their conclusion? You need to write code that minimizes the time it would take someone else to understand it—even if that someone else is you.This book focuses on basic principles and practical techniques you can apply every time you write code. Using easy-to-digest code examples from different languages, each chapter dives into a different aspect of coding, and demonstrates how you can make your code easy to understand.Simplify naming, commenting, and formatting with tips that apply to every line of codeRefine your program’s loops, logic, and variables to reduce complexity and confusionAttack problems at the function level, such as reorganizing blocks of code to do one task at a timeWrite effective test code that is thorough and concise—as well as readable"Being aware of how the code you create affects those who look at it later is an important part of developing software. The authors did a great job in taking you through the different aspects of this challenge, explaining the details with instructive examples." —Michael Hunger, passionate Software Developer
All-New Amazon Echo User Guide: Newbie to Expert in 1 Hour! (Echo & Alexa)
Tom Edwards - 2015
From the Number 1 Best Selling authors in Computers and Technology, this clear and concise guide will show you how to get the very best from your new Amazon Echo. Step by step instructions will take you from newbie to expert in just one hour! About the Authors: Tom and Jenna Edwards are the Amazon Tech authors behind the Number 1 Best-selling e-books 250+ Best Kindle Fire HD Apps for the New Kindle Fire Owner and Fire HD 8 & HD 10 User Guide: Newbie to Expert in 2 Hours!
The Spatial Web: How Web 3.0 Will Connect Humans, Machines, and AI to Transform the World
Gabriel Rene - 2019
Blade Runner, The Matrix, Star Wars, Avatar, Star Trek, Ready Player One and Avengers show us futuristic worlds where holograms, intelligent robots, smart devices, virtual avatars, digital transactions, and universe-scale teleportation work together perfectly, somehow seamlessly combining the virtual and the physical with the mechanical and the biological. Science fiction has done an excellent job describing a vision of the future where the digital and physical merge naturally into one — in a way that just works everywhere, for everyone. However, none of these visionary fictional works go so far as to describe exactly how this would actually be accomplished. While it has inspired many of us to ask the question—How do we enable science fantasy to become....science fact? The Spatial Web achieves this by first describing how exponentially powerful computing technologies are creating a great “Convergence.” How Augmented and Virtual Reality will enable us to overlay our information and imaginations onto the world. How Artificial Intelligence will infuse the environments and objects around us with adaptive intelligence. How the Internet of Things and Robotics will enable our vehicles, appliances, clothing, furniture, and homes to become connected and embodied with the power to see, feel, hear, smell, touch and move things in the world, and how Blockchain and Cryptocurrencies will secure our data and enable real-time transactions between the human, machine and virtual economies of the future. The book then dives deeply into the challenges and shortcomings of the World Wide Web, the rise of fake news and surveillance capitalism in Web 2.0 and the risk of algorithmic terrorism and biological hacking and “fake-reality” in Web 3.0. It raises concerns about the threat that emerging technologies pose in the hands of rogue actors whether human, algorithmic, corporate or state-sponsored and calls for common sense governance and global cooperation. It calls for business leaders, organizations and governments to not only support interoperable standards for software code, but critically, for ethical, and social codes as well. Authors Gabriel René and Dan Mapes describe in vivid detail how a new “spatial” protocol is required in order to connect the various exponential technologies of the 21st century into an integrated network capable of tracking and managing the real-time activities of our cities, monitoring and adjusting the supply chains that feed them, optimizing our farms and natural resources, automating our manufacturing and distribution, transforming marketing and commerce, accelerating our global economies, running advanced planet-scale simulations and predictions, and even bridging the gap between our interior individual reality and our exterior collective one. Enabling the ability for humans, machines and AI to communicate, collaborate and coordinate activities in the world at a global scale and how the thoughtful application of these technologies could lead to an unprecedented opportunity to create a truly global “networked” civilization or "Smart World.” The book artfully shifts between cyberpunk futurism, cautionary tale-telling, and life-affirming call-to-arms. It challenges us to consider the importance of today’s technological choices as individuals, organizations, and as a species, as we face the historic opportunity we have to transform the web, the world, and our very definition of reality.