Book picks similar to
What is HTML 5? by Brett McLaughlin


reference
programming
non-fiction
technology

Amazon Web Services in Action


Andreas Wittig - 2015
    The book will teach you about the most important services on AWS. You will also learn about best practices regarding automation, security, high availability, and scalability.Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.About the TechnologyPhysical data centers require lots of equipment and take time and resources to manage. If you need a data center, but don't want to build your own, Amazon Web Services may be your solution. Whether you're analyzing real-time data, building software as a service, or running an e-commerce site, AWS offers you a reliable cloud-based platform with services that scale. All services are controllable via an API which allows you to automate your infrastructure.About the BookAmazon Web Services in Action introduces you to computing, storing, and networking in the AWS cloud. The book will teach you about the most important services on AWS. You will also learn about best practices regarding security, high availability and scalability.You'll start with a broad overview of cloud computing and AWS and learn how to spin-up servers manually and from the command line. You'll learn how to automate your infrastructure by programmatically calling the AWS API to control every part of AWS. You will be introduced to the concept of Infrastructure as Code with the help of AWS CloudFormation.You will learn about different approaches to deploy applications on AWS. You'll also learn how to secure your infrastructure by isolating networks, controlling traffic and managing access to AWS resources. Next, you'll learn options and techniques for storing your data. You will experience how to integrate AWS services into your own applications by the use of SDKs. Finally, this book teaches you how to design for high availability, fault tolerance, and scalability.What's InsideOverview of cloud concepts and patternsManage servers on EC2 for cost-effectivenessInfrastructure automation with Infrastructure as Code (AWS CloudFormation)Deploy applications on AWSStore data on AWS: SQL, NoSQL, object storage and block storageIntegrate Amazon's pre-built servicesArchitect highly available and fault tolerant systemsAbout the ReaderWritten for developers and DevOps engineers moving distributed applications to the AWS platform.About the AuthorsAndreas Wittig and Michael Wittig are software engineers and consultants focused on AWS and web development.Table of ContentsPART 1 GETTING STARTEDWhat is Amazon Web Services?A simple example: WordPress in five minutesPART 2 BUILDING VIRTUAL INFRASTRUCTURE WITH SERVERS AND NETWORKINGUsing virtual servers: EC2Programming your infrastructure: the command line, SDKs, and CloudFormationAutomating deployment: CloudFormation, Elastic Beanstalk, and OpsWorksSecuring your system: IAM, security groups, and VPCPART 3 STORING DATA IN THE CLOUDStoring your objects: S3 and GlacierStoring your data on hard drives: EBS and instance storeUsing a relational database service: RDSProgramming for the NoSQL database service: DynamoDBPART 4 ARCHITECTING ON AWSAchieving high availability: availability zones, auto-scaling, and CloudWatchDecoupling your infrastructure: ELB and SQSDesigning for fault-toleranceScaling up and down: auto-scaling and CloudWatch

The Object-Oriented Thought Process


Matt Weisfeld - 2000
    Readers will learn to understand object-oriented design with inheritance or composition, object aggregation and association, and the difference between interfaces and implementations. Readers will also become more efficient and better thinkers in terms of object-oriented development." This revised edition focuses on interoperability across various technologies, primarily using XML as the communication mechanism. A more detailed focus is placed on how business objects operate over networks, including client/server architectures and web services.

RESTful Web Services


Leonard Richardson - 2007
    But can you also build web sites that are usable by machines? That's where the future lies, and that's what RESTful Web Services shows you how to do. The World Wide Web is the most popular distributed application in history, and Web services and mashups have turned it into a powerful distributed computing platform. But today's web service technologies have lost sight of the simplicity that made the Web successful. They don't work like the Web, and they're missing out on its advantages. This book puts the "Web" back into web services. It shows how you can connect to the programmable web with the technologies you already use every day. The key is REST, the architectural style that drives the Web. This book:Emphasizes the power of basic Web technologies -- the HTTP application protocol, the URI naming standard, and the XML markup language Introduces the Resource-Oriented Architecture (ROA), a common-sense set of rules for designing RESTful web services Shows how a RESTful design is simpler, more versatile, and more scalable than a design based on Remote Procedure Calls (RPC) Includes real-world examples of RESTful web services, like Amazon's Simple Storage Service and the Atom Publishing Protocol Discusses web service clients for popular programming languages Shows how to implement RESTful services in three popular frameworks -- Ruby on Rails, Restlet (for Java), and Django (for Python) Focuses on practical issues: how to design and implement RESTful web services and clients This is the first book that applies the REST design philosophy to real web services. It sets down the best practices you need to make your design a success, and the techniques you need to turn your design into working code. You can harness the power of the Web for programmable applications: you just have to work with the Web instead of against it. This book shows you how.

Head First C#


Andrew Stellman - 2007
    Built for your brain, this book covers C# 3.0 and Visual Studio 2008, and teaches everything from language fundamentals to advanced topics including garbage collection, extension methods, and double-buffered animation. You'll also master C#'s hottest and newest syntax, LINQ, for querying SQL databases, .NET collections, and XML documents. By the time you're through, you'll be a proficient C# programmer, designing and coding large-scale applications. Every few chapters you will come across a lab that lets you apply what you've learned up to that point. Each lab is designed to simulate a professional programming task, increasing in complexity until-at last-you build a working Invaders game, complete with shooting ships, aliens descending while firing, and an animated death sequence for unlucky starfighters. This remarkably engaging book will have you going from zero to 60 with C# in no time flat.

PHP Objects, Patterns, and Practice


Matt Zandstra - 2007
    Borne from a contract developer's pet project, these days you'll find PHP powering many of the world's largest web sites, including Yahoo!, Digg, EA Games, and Lycos.PHP Objects, Patterns, and Practice, Second Edition shows you how to meld the power of PHP with the sound enterprise development techniques embraced by professional programmers. Going well beyond the basics of objectoriented development, you'll learn about advanced topics such as working with static methods and properties, abstract classes, interfaces, design patterns, exception handling, and more. You'll also be exposed to key tools such as PEAR, CVS, Phing, and phpDocumentor. What you'll learn Write solid, maintainable code by embracing objectoriented techniques and design patterns Create detailed, versatile documentation using the powerful phpDocumentor automated documentation system Gain new flexibility during the development process by managing your code within a CVS repository and using the Phing build system Capitalize upon the quality code of others by using the PEAR package management solution Who this book is forPHP developers seeking to embrace sound development techniques such as objectorientation, design patterns, testing, and documentation. "

The Rust Programming Language


Steve Klabnik
    This is the undisputed go-to guide to Rust, written by two members of the Rust core team, with feedback and contributions from 42 members of the community. The book assumes that you’ve written code in another programming language but makes no assumptions about which one, meaning the material is accessible and useful to developers from a wide variety of programming backgrounds.Known by the Rust community as "The Book," The Rust Programming Language includes concept chapters, where you’ll learn about a particular aspect of Rust, and project chapters, where you’ll apply what you’ve learned so far to build small programs.The Book opens with a quick hands-on project to introduce the basics then explores key concepts in depth, such as ownership, the type system, error handling, and fearless concurrency. Next come detailed explanations of Rust-oriented perspectives on topics like pattern matching, iterators, and smart pointers, with concrete examples and exercises--taking you from theory to practice.The Rust Programming Language will show you how to: Grasp important concepts unique to Rust like ownership, borrowing, and lifetimes Use Cargo, Rust’s built-in package manager, to build and maintain your code, including downloading and building dependencies Effectively use Rust’s zero-cost abstractions and employ your ownYou’ll learn to develop reliable code that’s speed and memory efficient, while avoiding the infamous and arcane programming pitfalls common at the systems level. When you need to dive down into lower-level control, this guide will show you how without taking on the customary risk of crashes or security holes and without requiring you to learn the fine points of a fickle toolchain.You’ll also learn how to create command line programs, build single- and multithreaded web servers, and much more.The Rust Programming Language fully embraces Rust’s potential to empower its users. This friendly and approachable guide will help you build not only your knowledge of Rust but also your ability to program with confidence in a wider variety of domains.

Sexy Web Design


Elliott Jay Stocks - 2008
    You'll be guided through the entire process of creating a gorgeous, usable web site by applying the timeless principles of user-centered design.Even if you're short on design skills, with this book you'll be creating your own stunning web sites in no time at all.Throughout, the focus is on simple and practical techniques that anyone can use - you don't need to have gone to art school or have artistic flair to create stunning designs using the methods outlined in this book.The book's full-color layout and large format (8" x 10") make Sexy Web Design a pleasure to read.Master key web interface design principles Design amazing web interfaces from scratch Create beautiful, yet functional, web sites Unleash your artistic talents And much more Who should read this book? Whether you're completely new to web design, a seasoned pro looking for inspiration, or a developer wanting to improve your sites' aesthetics, there's something for everyone here.How? Because instead of trying to cover every possible area of creating a web site, we've focused purely on the design stage; that is, everything that happens before a single line of code is written.However, great design is more than just aesthetics. Long before we open our graphics program of choice, we'll be conducting research, dealing with clients, responding to briefs, sketching out sitemaps, planning information architecture, moving from doodles to diagrams, exploring different ways of interactivity, and building upon design traditions.But ultimately, you'll be finding out how to create web sites that look drop-dead gorgeous.

Essential PHP Security


Chris Shiflett - 2005
    It also works beautifully with other open source tools, such as the MySQL database and the Apache web server. However, as more web sites are developed in PHP, they become targets for malicious attackers, and developers need to prepare for the attacks.Security is an issue that demands attention, given the growing frequency of attacks on web sites. Essential PHP Security explains the most common types of attacks and how to write code that isn't susceptible to them. By examining specific attacks and the techniques used to protect against them, you will have a deeper understanding and appreciation of the safeguards you are about to learn in this book.In the much-needed (and highly-requested) Essential PHP Security, each chapter covers an aspect of a web application (such as form processing, database programming, session management, and authentication). Chapters describe potential attacks with examples and then explain techniques to help you prevent those attacks.Topics covered include:Preventing cross-site scripting (XSS) vulnerabilitiesProtecting against SQL injection attacksComplicating session hijacking attemptsYou are in good hands with author Chris Shiflett, an internationally-recognized expert in the field of PHP security. Shiflett is also the founder and President of Brain Bulb, a PHP consultancy that offers a variety of services to clients around the world.

Managing the Testing Process: Practical Tools and Techniques for Managing Hardware and Software Testing


Rex Black - 1999
    The preeminent expert in his field, Mr.Black draws upon years of experience as president of both theInternational and American Software Testing Qualifications boardsto offer this extensive resource of all the standards, methods, andtools you'll need.The book covers core testing concepts and thoroughly examinesthe best test management practices and tools of leading hardwareand software vendors. Step-by-step guidelines and real-worldscenarios help you follow all necessary processes and avoidmistakes.Producing high-quality computer hardware and software requirescareful, professional testing; Managing the Testing Process, Third Edition explains how to achieve that by following adisciplined set of carefully managed and monitored practices andprocessesThe book covers all standards, methods, and tools you need forprojects large and smallPresents the business case for testing products and reviews theauthor's latest test assessmentsTopics include agile testing methods, risk-based testing, IEEEstandards, ISTQB certification, distributed and outsourced testing, and moreOver 100 pages of new material and case studies have been addedto this new editionIf you're responsible for managing testing in the real world, Managing the Testing Process, Third Edition is the valuablereference and guide you need.

JavaScript Enlightenment


Cody Lindley - 2012
    In this concise book, JavaScript expert Cody Lindley (jQuery Cookbook) provides an accurate view of the language by examining its objects and supporting nuances.Libraries and frameworks help you build web applications quickly and efficiently, but when things go wrong or performance becomes an issue, knowing how and why they work is critical. If you're ready to go under the hood and get your hands dirty with JavaScript internals, this is your book. Get a short and digestible summary of ECMA-262, Edition 3, backed by real code you can run instantly Examine the creation of JavaScript objects Learn complex values, primitive values, scope, and inheritance Understand the importance of the head object Work with string, number, and Boolean objects and values Discover how to use the null value and the built-in math object Get into the details--beyond Mozilla's reference guide for JavaScript 1.5

The Productive Programmer


Neal Ford - 2008
    The Productive Programmer offers critical timesaving and productivity tools that you can adopt right away, no matter what platform you use. Master developer Neal Ford not only offers advice on the mechanics of productivity-how to work smarter, spurn interruptions, get the most out your computer, and avoid repetition-he also details valuable practices that will help you elude common traps, improve your code, and become more valuable to your team. You'll learn to:Write the test before you write the codeManage the lifecycle of your objects fastidiously Build only what you need now, not what you might need later Apply ancient philosophies to software development Question authority, rather than blindly adhere to standardsMake hard things easier and impossible things possible through meta-programming Be sure all code within a method is at the same level of abstraction Pick the right editor and assemble the best tools for the job This isn't theory, but the fruits of Ford's real-world experience as an Application Architect at the global IT consultancy ThoughtWorks. Whether you're a beginner or a pro with years of experience, you'll improve your work and your career with the simple and straightforward principles in The Productive Programmer.

Service-Oriented Design with Ruby and Rails


Paul Dix - 2010
    Today, Rails developers and architects need better ways to interface with legacy systems, move into the cloud, and scale to handle higher volumes and greater complexity. In Service-Oriented Design with Ruby and Rails Paul Dix introduces a powerful, services-based design approach geared toward overcoming all these challenges. Using Dix's techniques, readers can leverage the full benefits of both Ruby and Rails, while overcoming the difficulties of working with larger codebases and teams. Dix demonstrates how to integrate multiple components within an enterprise application stack; create services that can easily grow and connect; and design systems that are easier to maintain and upgrade. Key concepts are explained with detailed Ruby code built using open source libraries such as ActiveRecord, Sinatra, Nokogiri, and Typhoeus. The book concludes with coverage of security, scaling, messaging, and interfacing with third-party services. Service-Oriented Design with Ruby and Rails will help you Build highly scalable, Ruby-based service architectures that operate smoothly in the cloud or with legacy systems Scale Rails systems to handle more requests, larger development teams, and more complex code bases Master new best practices for designing and creating services in Ruby Use Ruby to glue together services written in any language Use Ruby libraries to build and consume RESTful Web services Use Ruby JSON parsers to quickly represent resources from HTTP services Write lightweight, well-designed API wrappers around internal or external services Discover powerful non-Rails frameworks that simplify Ruby service implementation Implement standards-based enterprise messaging with Advanced Message Queuing Protocol (AMQP) Optimize performance with load balancing and caching Provide for security and authentication

The Imposter's Handbook


Rob Conery - 2016
    New languages, new frameworks, new ways of doing things - a constant struggle just to stay current in the industry. This left no time to learn the foundational concepts and skills that come with a degree in Computer Science.

Mac OS X Leopard: The Missing Manual


David Pogue - 2007
    The new Mac OS X 10.5, better known as Leopard, is faster than its predecessors, but nothing's too fast for Pogue and this Missing Manual. It's just one of reasons this is the most popular computer book of all time.Mac OS X: The Missing Manual, Leopard Edition is the authoritative book for Mac users of all technical levels and experience. If you're new to the Mac, this book gives you a crystal-clear, jargon-free introduction to the Dock, the Mac OS X folder structure, and the Mail application. There are also mini-manuals on iLife applications such as iMovie, iDVD, and iPhoto, and a tutorial for Safari, Mac's web browser. This Missing Manual is amusing and fun to read, but Pogue doesn't take his subject lightly. Which new Leopard features work well and which do not? What should you look for? What should you avoid? Mac OS X: The Missing Manual, Leopard Edition offers an objective and straightforward instruction for using:Leopard's totally revamped Finder Spaces to group your windows and organize your Mac tasks Quick Look to view files before you open them The Time Machine, Leopard's new backup feature Spotlight to search for and find anything in your Mac Front Row, a new way to enjoy music, photos, and videos Enhanced Parental Controls that come with Leopard Quick tips for setting up and configuring your Mac to make it your own There's something new on practically every page of this new edition, and David Pogue brings his celebrated wit and expertise to every one of them. Mac's brought a new cat to town and Mac OS X: The Missing Manual, Leopard Edition is a great new way to tame it.

Testable JavaScript


Mark Ethan Trostler - 2012
    This book shows you what writing and maintaining testable JavaScript for the client- or server-side actually entails, whether you’re creating a new application or rewriting legacy code.From methods to reduce code complexity to unit testing, code coverage, debugging, and automation, you’ll learn a holistic approach for writing JavaScript code that you and your colleagues can easily fix and maintain going forward. Testing JavaScript code is complicated. This book helps you simply the process considerably.Get an overview of Agile, test-driven development, and behavior-driven developmentUse patterns from static languages and standards-based JavaScript to reduce code complexityLearn the advantages of event-based architectures, including modularity, loose coupling, and reusabilityExplore tools for writing and running unit tests at the functional and application levelGenerate code coverage to measure the scope and effectiveness of your testsConduct integration, performance, and load testing, using Selenium or CasperJSUse tools for in-browser, Node.js, mobile, and production debuggingUnderstand what, when, and how to automate your development processes