High Performance JavaScript
Nicholas C. Zakas - 2010
The problem is that all of those lines of JavaScript code can slow down your apps. This book reveals techniques and strategies to help you eliminate performance bottlenecks during development. You'll learn how to improve execution time, downloading, interaction with the DOM, page life cycle, and more.
Yahoo! frontend engineer Nicholas C. Zakas and five other JavaScript experts -- Ross Harmes, Julien Lecomte, Steven Levithan, Stoyan Stefanov, and Matt Sweeney -- demonstrate optimal ways to load code onto a page, and offer programming tips to help your JavaScript run as efficiently and quickly as possible. You'll learn the best practices to build and deploy your files to a production environment, and tools that can help you find problems once your site goes live.
Identify problem code and use faster alternatives to accomplish the same task Improve scripts by learning how JavaScript stores and accesses data Implement JavaScript code so that it doesn't slow down interaction with the DOM Use optimization techniques to improve runtime performance Learn ways to ensure the UI is responsive at all times Achieve faster client-server communication Use a build system to minify files, and HTTP compression to deliver them to the browser
Kubernetes: Up & Running
Kelsey Hightower - 2016
How's that possible? Google revealed the secret through a project called Kubernetes, an open source cluster orchestrator (based on its internal Borg system) that radically simplifies the task of building, deploying, and maintaining scalable distributed systems in the cloud. This practical guide shows you how Kubernetes and container technology can help you achieve new levels of velocity, agility, reliability, and efficiency.Authors Kelsey Hightower, Brendan Burns, and Joe Beda--who've worked on Kubernetes at Google--explain how this system fits into the lifecycle of a distributed application. You will learn how to use tools and APIs to automate scalable distributed systems, whether it is for online services, machine-learning applications, or a cluster of Raspberry Pi computers.Explore the distributed system challenges that Kubernetes addressesDive into containerized application development, using containers such as DockerCreate and run containers on Kubernetes, using Docker's Image format and container runtimeExplore specialized objects essential for running applications in productionReliably roll out new software versions without downtime or errorsGet examples of how to develop and deploy real-world applications in Kubernetes
The Myths of Innovation
Scott Berkun - 2007
We depend more than we realize on wishful thinking and romanticized ideas of history. In the new paperback edition of this fascinating book, a book that has appeared on MSNBC, CNBC, Slashdot.org, Lifehacker.com and in The New York Times, bestselling author Scott Berkun pulls the best lessons from the history of innovation, including the recent software and web age, to reveal powerful and suprising truths about how ideas become successful innovations -- truths people can easily apply to the challenges of today. Through his entertaining and insightful explanations of the inherent patterns in how Einstein’s discovered E=mc2 or Tim Berner Lee’s developed the idea of the world wide web, you will see how to develop existing knowledge into new innovations.Each entertaining chapter centers on breaking apart a powerful myth, popular in the business world despite it's lack of substance. Through Berkun's extensive research into the truth about innovations in technology, business and science, you’ll learn lessons from the expensive failures and dramatic successes of innovations past, and understand how innovators achieved what they did -- and what you need to do to be an innovator yourself. You'll discover:Why problems are more important than solutionsHow the good innovation is the enemy of the greatWhy children are more creative than your co-workersWhy epiphanies and breakthroughs always take timeHow all stories of innovations are distorted by the history effectHow to overcome people’s resistance to new ideasWhy the best idea doesn’t often winThe paperback edition includes four new chapters, focused on appling the lessons from the original book, and helping you develop your skills in creative thinking, pitching ideas, and staying motivated."For centuries before Google, MIT, and IDEO, modern hotbeds of innovation, we struggled to explain any kind of creation, from the universe itself to the multitudes of ideas around us. While we can make atomic bombs, and dry-clean silk ties, we still don’t have satisfying answers for simple questions like: Where do songs come from? Are there an infinite variety of possible kinds of cheese? How did Shakespeare and Stephen King invent so much, while we’re satisfied watching sitcom reruns? Our popular answers have been unconvincing, enabling misleading, fantasy-laden myths to grow strong." -- Scott Berkun, from the text"Berkun sets us free to change the world." -- Guy Kawasaki, author of Art of the StartScott was a manager at Microsoft from 1994-2003, on projects including v1-5 (not 6) of Internet Explorer. He is the author of three bestselling books, Making Things Happen, The Myths of Innovation and Confessions of a Public Speaker. He works full time as a writer and speaker, and his work has appeared in The New York Times, Forbes magazine, The Economist, The Washington Post, Wired magazine, National Public Radio and other media. He regularly contributes to Harvard Business Review and Bloomberg Businessweek, has taught creative thinking at the University of Washington, and has appeared as an innovation and management expert on MSNBC and on CNBC. He writes frequently on innovation and creative thinking at his blog: scottberkun.com and tweets at @berkun.
Exam Ref 70-483: Programming in C#
Wouter de Kort - 2013
Designed for experienced software developers ready to advance their status, Exam Ref focuses on the critical-thinking and decision-making acumen needed for success at the Microsoft Specialist level.Focus on the expertise measured by these objectives:Manage Program FlowCreate and Use TypesDebug Applications and Implement SecurityImplement Data AccessThis Microsoft Exam Ref:Organizes its coverage by exam objectives.Features strategic, what-if scenarios to challenge you.Includes a 15% exam discount from Microsoft. (Limited time offer)
About Face 3: The Essentials of Interaction Design
Alan Cooper - 1995
You'll learn the principles of good product behavior and gain an understanding of Cooper's Goal-Directed Design method, which involves everything from conducting user research to defining your product using personas and scenarios. Ultimately, you'll acquire the knowledge to design the best possible digital products and services.
Understanding Computation: From Simple Machines to Impossible Programs
Tom Stuart - 2013
Understanding Computation explains theoretical computer science in a context you’ll recognize, helping you appreciate why these ideas matter and how they can inform your day-to-day programming.Rather than use mathematical notation or an unfamiliar academic programming language like Haskell or Lisp, this book uses Ruby in a reductionist manner to present formal semantics, automata theory, and functional programming with the lambda calculus. It’s ideal for programmers versed in modern languages, with little or no formal training in computer science.* Understand fundamental computing concepts, such as Turing completeness in languages* Discover how programs use dynamic semantics to communicate ideas to machines* Explore what a computer can do when reduced to its bare essentials* Learn how universal Turing machines led to today’s general-purpose computers* Perform complex calculations, using simple languages and cellular automata* Determine which programming language features are essential for computation* Examine how halting and self-referencing make some computing problems unsolvable* Analyze programs by using abstract interpretation and type systems
Accelerate: Building and Scaling High-Performing Technology Organizations
Nicole Forsgren - 2018
Through four years of groundbreaking research, Dr. Nicole Forsgren, Jez Humble, and Gene Kim set out to find a way to measure software delivery performance—and what drives it—using rigorous statistical methods. This book presents both the findings and the science behind that research. Readers will discover how to measure the performance of their teams, and what capabilities they should invest in to drive higher performance.
Compilers: Principles, Techniques, and Tools
Alfred V. Aho - 1986
The authors present updated coverage of compilers based on research and techniques that have been developed in the field over the past few years. The book provides a thorough introduction to compiler design and covers topics such as context-free grammars, fine state machines, and syntax-directed translation.
DevOps Troubleshooting: Linux Server Best Practices
Kyle Rankin - 2012
It has saved me hours in troubleshooting complicated operations problems." -Trotter Cashion, cofounder, Mashion DevOps can help developers, QAs, and admins work together to solve Linux server problems far more rapidly, significantly improving IT performance, availability, and efficiency. To gain these benefits, however, team members need common troubleshooting skills and practices. In
DevOps Troubleshooting: Linux Server Best Practices
, award-winning Linux expert Kyle Rankin brings together all the standardized, repeatable techniques your team needs to stop finger-pointing, collaborate effectively, and quickly solve virtually any Linux server problem. Rankin walks you through using DevOps techniques to troubleshoot everything from boot failures and corrupt disks to lost email and downed websites. You'll master indispensable skills for diagnosing high-load systems and network problems in production environments. Rankin shows how to Master DevOps' approach to troubleshooting and proven Linux server problem-solving principles Diagnose slow servers and applications by identifying CPU, RAM, and Disk I/O bottlenecks Understand healthy boots, so you can identify failure points and fix them Solve full or corrupt disk issues that prevent disk writes Track down the sources of network problems Troubleshoot DNS, email, and other network services Isolate and diagnose Apache and Nginx Web server failures and slowdowns Solve problems with MySQL and Postgres database servers and queries Identify hardware failures-even notoriously elusive intermittent failures
Linux Bible
Christopher Negus - 2005
Whether you're new to Linux or need a reliable update and reference, this is an excellent resource. Veteran bestselling author Christopher Negus provides a complete tutorial packed with major updates, revisions, and hands-on exercises so that you can confidently start using Linux today. Offers a complete restructure, complete with exercises, to make the book a better learning tool Places a strong focus on the Linux command line tools and can be used with all distributions and versions of Linux Features in-depth coverage of the tools that a power user and a Linux administrator need to get startedThis practical learning tool is ideal for anyone eager to set up a new Linux desktop system at home or curious to learn how to manage Linux server systems at work.
A Second Chance
Bryan Mooney - 2012
She was smart, attractive and well educated. After losing the love of her life she decided she had to get away from it all. Ravenna did what everyone would love to do…, she left and never looked back. She made a comfortable life on a small Greek island paradise nestled in the southern blue Aegean sea. It was filled with friendly people, beautiful beaches and warm sunny days. The strong willed woman thought she had left her life behind her… but she was wrong. Now, torn between memories and guilt, she must decide- but will she get…a second chance?
APIs: A Strategy Guide
Daniel Jacobson - 2011
Salesforce.com (more than 50%) and Twitter (more than 75% fall into this category. Ebay gets more than 8 billion API calls a month. Facebook and Google, have dozens of APIs that enable both free services and e-commerce, get more than 5 billion API calls each day. Other companies like NetFlix have expanded their service of streaming movies over the the web to dozens of devices using API. At peak times, more than 20 percent of all traffic is accounted for by Netflix through its APIs. Companies like Sears and E-Trade are opening up their catalogs and other services to allow developers and entrepreneurs to create new marketing experiences.
Making an API work to create a new channel is not just a matter of technology. An API must be considered in terms of business strategy, marketing, and operations as well as the technical aspects of programming. This book, written by Greg Brail, CTO of Apigee, and Brian Mulloy, VP of Products, captures the knowledge of all these areas gained by Apigee, the leading company in supporting the rollout of high traffic APIs.
The Little Elixir & OTP Guidebook
Benjamin Tan Wei Hao - 2015
It combines the productivity and expressivity of Ruby with the concurrency and fault-tolerance of Erlang. Elixir makes full use of Erlang's powerful OTP library, which many developers consider the source of Erlang's greatness, so you can have mature, professional-quality functionality right out of the gate. Elixir's support for functional programming makes it a great choice for highly distributed event-driven applications like IoT systems.The Little Elixir & OTP Guidebook gets you started programming applications with Elixir and OTP. You begin with a quick overview of the Elixir language syntax, along with just enough functional programming to use it effectively. Then, you'll dive straight into OTP and learn how it helps you build scalable, fault-tolerant and distributed applications through several fun examples. Come rediscover the joy of programming with Elixir and remember how it feels like to be a beginner again.
Advanced Swift
Chris Eidhof - 2016
If you have read the Swift Programming Guide, and want to explore more, this book is for you.Swift is a great language for systems programming, but also lends itself for very high-level programming. We'll explore both high-level topics (for example, programming with generics and protocols), as well as low-level topics (for example, wrapping a C library and string internals).
Ruby on Rails Tutorial: Learn Web Development with Rails (Addison-Wesley Professional Ruby Series)
Michael Hartl - 2012
"Peter Cooper, Editor of" Ruby Inside Using Rails, developers can build web applications of exceptional elegance and power. Although its remarkable capabilities have made Ruby on Rails one of the world s most popular web development frameworks, it can be challenging to learn and use. " Ruby on Rails Tutorial, Second Edition, " is the solution. Best-selling author and leading Rails developer Michael Hartl teaches Rails by guiding you through the development of your own complete sample application using the latest techniques in Rails web development. The updates to this edition include all-new site design using Twitter s Bootstrap; coverage of the new asset pipeline, including Sprockets and Sass; behavior-driven development (BDD) with Capybara and RSpec; better automated testing with Guard and Spork; roll your own authentication with has_secure_password; and an introduction to Gherkin and Cucumber. You ll find integrated tutorials not only for Rails, but also for the essential Ruby, HTML, CSS, JavaScript, and SQL skills you ll need when developing web applications. Hartl explains how each new technique solves a real-world problem, and he demonstrates this with bite-sized code that s simple enough to understand, yet novel enough to be useful. Whatever your previous web development experience, this book will guide you to true Rails mastery. This book will help you Install and set up your Rails development environment Go beyond generated code to truly understand how to build Rails applications from scratch Learn test-driven development (TDD) with RSpec Effectively use the Model-View-Controller (MVC) pattern Structure applications using the REST architecture Build static pages and transform them into dynamic ones Master the Ruby programming skills all Rails developers need Define high-quality site layouts and data models Implement registration and authentication systems, including validation and secure passwords Update, display, and delete users Add social features and microblogging, including an introduction to Ajax Record version changes with Git and share code at GitHub Simplify application deployment with Heroku