Book picks similar to
Small, Sharp Software Tools: Harness the Combinatoric Power of Command-Line Tools and Utilities by Brian P. Hogan
computers
linux
engineering
software-engineering
JavaScript for Kids: A Playful Introduction to Programming
Nick Morgan - 2014
With the help of kid-friendly examples, author Nick Morgan teaches the essentials of JavaScript. Morgan starts with the basics of strings, arrays, and loops, then moves on to show readers how to modify elements with jQuery and draw graphics with canvas. By the end of the book, you'll be ready to create your own fun animations and games and you'll have a solid understanding of the fundamentals of JavaScript.
The Tcp/IP Guide: A Comprehensive, Illustrated Internet Protocols Reference
Charles Kozierok - 2005
It details the core protocols that make TCP/IP internetworks function, and the most important classical TCP/IP applications. Its personal, easy-going writing style lets anyone understand the dozens of protocols and technologies that run the Internet, with full coverage of PPP, ARP, IP, IPv6, IP NAT, IPSec, Mobile IP, ICMP, RIP, BGP, TCP, UDP, DNS, DHCP, SNMP, FTP, SMTP, NNTP, HTTP, Telnet and much more. The author offers not only a detailed view of the TCP/IP protocol suite, but also describes networking fundamentals and the important OSI Reference Model.
Engineering Long-Lasting Software
Armando Fox - 2012
NOTE: this Alpha Edition is missing some chapters and may contain errors. See http://saasbook.info for details.
Algorithms
Sanjoy Dasgupta - 2006
Emphasis is placed on understanding the crisp mathematical idea behind each algorithm, in a manner that is intuitive and rigorous without being unduly formal. Features include: The use of boxes to strengthen the narrative: pieces that provide historical context, descriptions of how the algorithms are used in practice, and excursions for the mathematically sophisticated.Carefully chosen advanced topics that can be skipped in a standard one-semester course, but can be covered in an advanced algorithms course or in a more leisurely two-semester sequence.An accessible treatment of linear programming introduces students to one of the greatest achievements in algorithms. An optional chapter on the quantum algorithm for factoring provides a unique peephole into this exciting topic. In addition to the text, DasGupta also offers a Solutions Manual, which is available on the Online Learning Center.Algorithms is an outstanding undergraduate text, equally informed by the historical roots and contemporary applications of its subject. Like a captivating novel, it is a joy to read. Tim Roughgarden Stanford University
Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation
Jez Humble - 2010
This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours-- sometimes even minutes-no matter what the size of a project or the complexity of its code base. Jez Humble and David Farley begin by presenting the foundations of a rapid, reliable, low-risk delivery process. Next, they introduce the "deployment pipeline," an automated process for managing all changes, from check-in to release. Finally, they discuss the "ecosystem" needed to support continuous delivery, from infrastructure, data and configuration management to governance. The authors introduce state-of-the-art techniques, including automated infrastructure management and data migration, and the use of virtualization. For each, they review key issues, identify best practices, and demonstrate how to mitigate risks. Coverage includes - Automating all facets of building, integrating, testing, and deploying software - Implementing deployment pipelines at team and organizational levels - Improving collaboration between developers, testers, and operations - Developing features incrementally on large and distributed teams - Implementing an effective configuration management strategy - Automating acceptance testing, from analysis to implementation - Testing capacity and other non-functional requirements - Implementing continuous deployment and zero-downtime releases - Managing infrastructure, data, components and dependencies - Navigating risk management, compliance, and auditing Whether you're a developer, systems administrator, tester, or manager, this book will help your organization move from idea to release faster than ever--so you can deliver value to your business rapidly and reliably.
Ubuntu: The Beginner's Guide
Jonathan Moeller - 2011
In the Guide, you'll learn how to: -Use the Ubuntu command line. -Manage users, groups, and file permissions. -Install software on a Ubuntu system, both from the command line and the GUI. -Configure network settings. -Use the vi editor to edit system configuration files. -Install and configure a Samba server for file sharing. -Install SSH for remote system control using public key/private key encryption. -Install a DHCP server for IP address management. -Install a LAMP server. -Install web applications like WordPress and Drupal. -Configure an FTP server. -Manage ebooks. -Convert digital media. -Manage and configure Unity, the default Ubuntu environment. -Manage and halt processes from the command line. -Set up both a VNC server and a client. -Enjoy games on Ubuntu. -And many other topics.
The Best of 2600: A Hacker Odyssey
Emmanuel Goldstein - 2008
Find the best of the magazine's writing in Best of 2600: A Hacker Odyssey, a collection of the strongest, most interesting, and often most controversial articles covering 24 years of changes in technology, all from a hacker's perspective. Included are stories about the creation of the infamous tone dialer "red box" that allowed hackers to make free phone calls from payphones, the founding of the Electronic Frontier Foundation, and the insecurity of modern locks.
The Problem with Software: Why Smart Engineers Write Bad Code
Adam Barr - 2018
As the size and complexity of commercial software have grown, the gap between academic computer science and industry has widened. It's an open secret that there is little engineering in software engineering, which continues to rely not on codified scientific knowledge but on intuition and experience.Barr, who worked as a programmer for more than twenty years, describes how the industry has evolved, from the era of mainframes and Fortran to today's embrace of the cloud. He explains bugs and why software has so many of them, and why today's interconnected computers offer fertile ground for viruses and worms. The difference between good and bad software can be a single line of code, and Barr includes code to illustrate the consequences of seemingly inconsequential choices by programmers. Looking to the future, Barr writes that the best prospect for improving software engineering is the move to the cloud. When software is a service and not a product, companies will have more incentive to make it good rather than "good enough to ship."
The Comfortable Kitchen: 105 Laid-Back, Healthy, and Wholesome Recipes
Alex Snodgrass - 2021
Her eagerly awaited new book will make that goal a reality.What does comfort mean in The Comfortable Kitchen? These are recipes you’ll feel comfortable making and comfortable feeding your family—and although these meals may fit the bill when it comes to “comfort food,” Alex’s eager audience expects a healthy angle from her cooking. Though many of her meals are fully Whole30, or at the very least Whole30-ish, they are recipes with simple ingredient swaps for a cleaner meal everyone will love and perfect for people who are on the “food freedom” stage of their Whole30 health journey as well. She provides food for every occasion, from one-pot meals to not-so-junky junk food, even including cocktails and desserts, with recipes including:Cajun Chicken and Wild Rice SoupGreen Curry Poached Halibut with HerbsSpicy Chicken Dan Dan NoodlesTexas Style Brisket TacosSheet Pan Honey-Sesame CauliflowerClayton’s Margarita7-Ingredient Almond Butter Cookies With 105 approachable and nutritious recipes for real, busy life, The Comfortable Kitchen is a must-have cookbook for everyone who cares about what they eat and what they make.
Pragmatic Version Control Using Git
Travis Swicegood - 2008
High-profile projects such as the Linux Kernel, Mozilla, Gnome, and Ruby on Rails are now using Distributed Version Control Systems (DVCS) instead of the old stand-bys of CVS or Subversion.Git is a modern, fast, DVCS. But understanding how it fits into your development can be a daunting task without an introduction to the new concepts. Whether you're just starting out as a professional programmer or are an old hand, this book will get you started using Git in this new distributed world. Whether you're making the switch from a traditional centralized version control system or are a new programmer just getting started, this book prepares you to start using Git in your everyday programming.Pragmatic Version Control Using Git starts with an overview of version control systems, and shows how being distributed enables you to work more efficiently in our increasingly mobile society. It then progresses through the basics necessary to get started using Git.You'll get a thorough overview of how to take advantage of Git. By the time you finish this book you'll have a firm grounding in how to use Git, both by yourself and as part of a team.Learn how to use how to use Git to protect all the pieces of your project Work collaboratively in a distributed environment Learn how to use Git's cheap branches to streamline your development Install and administer a Git server to share your repository
Cloud Native Devops with Kubernetes: Building, Deploying, and Scaling Modern Applications in the Cloud
John Arundel - 2019
In this friendly, pragmatic book, cloud experts John Arundel and Justin Domingus show you what Kubernetes can do--and what you can do with it.You'll learn all about the Kubernetes ecosystem, and use battle-tested solutions to everyday problems. You'll build, step by step, an example cloud native application and its supporting infrastructure, along with a development environment and continuous deployment pipeline that you can use for your own applications.Understand containers and Kubernetes from first principles; no experience necessaryRun your own clusters or choose a managed Kubernetes service from Amazon, Google, and othersUse Kubernetes to manage resource usage and the container lifecycleOptimize clusters for cost, performance, resilience, capacity, and scalabilityLearn the best tools for developing, testing, and deploying your applicationsApply the latest industry practices for security, observability, and monitoringAdopt DevOps principles to help make your development teams lean, fast, and effective
60 Ways to Lower Your Blood Sugar
Dennis Pollock - 2013
Many today are well on their way to becoming a sad statistic in the war on obesity, high blood sugar, and the related diseases—including diabetes—that can result from a diet that’s seriously out of whack. In his previous bestselling book, Overcoming Runaway Blood Sugar, Dennis Pollock shared his personal experience with this deadly epidemic—including his success at lowering his runaway blood sugar to acceptable levels. Now Dennis offers readers the next step in the battle: 60 practical ways to manage their blood sugar without resorting to a bland unsatisfying diet of turnips and tuna fish. In this step by step, change by change plan, readers will learn how to: reduce their intake of carbs, exercise more effectively, and shed excess weight. A must-have book for readers serious about regaining their health while also lowering their weight and increasing their energy.
Relationship Grit: A True Story with Lessons to Stay Together, Grow Together, and Thrive Together
Jon Gordon - 2020
This time, he teams up with Kathryn Gordon, his wife of 23 years, for a look at what it takes to build strong relationships. In Relationship Grit, the Gordons reveal what brought them together, what kept them together through difficult times, and what continues to sustain their love and passion for one another to this day. They candidly share their mistakes, decisions that almost destroyed their marriage, and successes so you can learn from their experiences and make your relationship stronger.If you're a fan of Jon Gordon's work, you will enjoy learning about the man behind the message, as he and Kathryn share the intimate details of their life together. The direct, transparent, and personal style will draw you in and help you see that, if you are dealing with a challenge in your life and relationship, you are not alone. Working, writing, and raising children hasn't always been easy for the Gordons, but by committing to one another and embracing the principles of G. R. I. T., they emerged from their darkest moments and built a deep and lasting love. In Relationship Grit, they speak candidly about what they have learned and how you can develop the grit to build beautiful relationships.Discover--in their own words--what Jon and Kathryn have learned about staying together during their 23-year marriage Learn the four principles of G. R. I. T. that you can embrace today to build the high quality relationships you want and deserve Find the strength you need to confront your past, overcome your flaws, and change for the better to improve you and your relationship. Embrace the Gordons' practical advice including 22 quick tips for a great relationship--11 from Kathryn and 11 from Jon--and start making your relationship the best it can be Relationships--particularly marriages--are about imperfect people coming together to work on their individual flaws and emerge stronger together. Relationship Grit will inspire and motivate you to engage in this remarkable and rewarding process.
Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript
David Herman - 2012
His walk through the syntax and semantics of JavaScript is both charming and hugely insightful; reminders of gotchas complement realistic use cases, paced at a comfortable curve. You'll find when you finish the book that you've gained a strong and comprehensive sense of mastery." --Paul Irish, developer advocate, Google Chrome "This is not a book for those looking for shortcuts; rather it is hard-won experience distilled into a guided tour. It's one of the few books on JS that I'll recommend without hesitation." --Alex Russell, TC39 member, software engineer, Google In order to truly master JavaScript, you need to learn how to work effectively with the language's flexible, expressive features and how to avoid its pitfalls. No matter how long you've been writing JavaScript code,
Effective JavaScript
will help deepen your understanding of this powerful language, so you can build more predictable, reliable, and maintainable programs. Author David Herman, with his years of experience on Ecma's JavaScript standardization committee, illuminates the language's inner workings as never before--helping you take full advantage of JavaScript's expressiveness. Reflecting the latest versions of the JavaScript standard, the book offers well-proven techniques and best practices you'll rely on for years to come.
Effective JavaScript
is organized around 68 proven approaches for writing better JavaScript, backed by concrete examples. You'll learn how to choose the right programming style for each project, manage unanticipated problems, and work more successfully with every facet of JavaScript programming from data structures to concurrency. Key features include Better ways to use prototype-based object-oriented programming Subtleties and solutions for working with arrays and dictionary objects Precise and practical explanations of JavaScript's functions and variable scoping semantics Useful JavaScript programming patterns and idioms, such as options objects and method chaining In-depth guidance on using JavaScript's unique "run-to-completion" approach to concurrency