Pull: The Power of the Semantic Web to Transform Your Business


David Siegel - 2009
    This book claimed that through a piece of software called a "browser," which accesses "web sites," the world economy and our daily lives would change forever. Would you have believed even 10 percent of that book? Did you take advantage of the first Internet wave and get ahead of the curve? "Pull" is the blueprint to the next disruptive wave. Some call it Web 3.0; others call it the semantic web. It's a fundamental transition from pushing information to pulling, using a new way of thinking and collaborating online. Using the principles of this book, you will slash 5-20 percent off your bottom line, make your customers happier, accelerate your industry, and prepare your company for the twenty-first century. It isn't going to be easy, and you don't have any choice. By 2015, your company will be more agile and your processes more flexible than you ever thought possible. The semantic web leads to possibilities straight from science fiction, such as buildings that can order their own supplies, eliminating the IRS, and lawyers finally making sense. But it also leads to major changes in every field, from shipping and retail distribution to health care and financial reporting. Through clear examples, case studies, principles, and scenarios, business strategist David Siegel takes you on a tour of this new world. You'll learn: -Which industries are already ahead. -Which industries are already dead. -How to make the power shift from pushing to pulling information. -How software, hardware, media, and marketing will all change. -How to plan your own strategy for embracing the semantic web. We are at the beginning of a new technology curve that will affect all areas of business. Right now, you have a choice. You can decide to start preparing for the exciting opportunities that lay ahead or you can leave this book on the shelf and get left in the dust like last time.

The D Programming Language


Andrei Alexandrescu - 2010
    I'm sure you'll find the read rewarding." --From the Foreword by Scott Meyers D is a programming language built to help programmers address the challenges of modern software development. It does so by fostering modules interconnected through precise interfaces, a federation of tightly integrated programming paradigms, language-enforced thread isolation, modular type safety, an efficient memory model, and more. The D Programming Language is an authoritative and comprehensive introduction to D. Reflecting the author's signature style, the writing is casual and conversational, but never at the expense of focus and pre-cision. It covers all aspects of the language (such as expressions, statements, types, functions, contracts, and modules), but it is much more than an enumeration of features. Inside the book you will find In-depth explanations, with idiomatic examples, for all language features How feature groups support major programming paradigms Rationale and best-use advice for each major feature Discussion of cross-cutting issues, such as error handling, contract programming, and concurrency Tables, figures, and "cheat sheets" that serve as a handy quick reference for day-to-day problem solving with D Written for the working programmer, The D Programming Language not only introduces the D language--it presents a compendium of good practices and idioms to help both your coding with D and your coding in general.

The Effective Engineer: How to Leverage Your Efforts In Software Engineering to Make a Disproportionate and Meaningful Impact


Edmond Lau - 2015
    I'm going to share that mindset with you — along with hundreds of actionable techniques and proven habits — so you can shortcut those years.Introducing The Effective Engineer — the only book designed specifically for today's software engineers, based on extensive interviews with engineering leaders at top tech companies, and packed with hundreds of techniques to accelerate your career.For two years, I embarked on a quest seeking an answer to one question:How do the most effective engineers make their efforts, their teams, and their careers more successful?I interviewed and collected stories from engineering VPs, directors, managers, and other leaders at today's top software companies: established, household names like Google, Facebook, Twitter, and LinkedIn; rapidly growing mid-sized companies like Dropbox, Square, Box, Airbnb, and Etsy; and startups like Reddit, Stripe, Instagram, and Lyft.These leaders shared stories about the most valuable insights they've learned and the most common and costly mistakes that they've seen engineers — sometimes themselves — make.This is just a small sampling of the hard questions I posed to them:- What engineering qualities correlate with future success?- What have you done that has paid off the highest returns?- What separates the most effective engineers you've worked with from everyone else?- What's the most valuable lesson your team has learned in the past year?- What advice do you give to new engineers on your team? Everyone's story is different, but many of the lessons share common themes.You'll get to hear stories like:- How did Instagram's team of 5 engineers build and support a service that grew to over 40 million users by the time the company was acquired?- How and why did Quora deploy code to production 40 to 50 times per day?- How did the team behind Google Docs become the fastest acquisition to rewrite its software to run on Google's infrastructure?- How does Etsy use continuous experimentation to design features that are guaranteed to increase revenue at launch?- How did Facebook's small infrastructure team effectively operate thousands of database servers?- How did Dropbox go from barely hiring any new engineers to nearly tripling its team size year-over-year? What's more, I've distilled their stories into actionable habits and lessons that you can follow step-by-step to make your career and your team more successful.The skills used by effective engineers are all learnable.And I'll teach them to you. With The Effective Engineer, I'll teach you a unifying framework called leverage — the value produced per unit of time invested — that you can use to identify the activities that produce disproportionate results.Here's a sneak peek at some of the lessons you'll learn. You'll learn how to:- Prioritize the right projects and tasks to increase your impact.- Earn more leeway from your peers and managers on your projects.- Spend less time maintaining and fixing software and more time building and shipping new features.- Produce more accurate software estimates.- Validate your ideas cheaply to reduce wasted work.- Navigate organizational and people-related bottlenecks.- Find the appropriate level of code reviews, testing, abstraction, and technical debt to balance speed and quality.- Shorten your debugging workflow to increase your iteration speed.

Talking with Tech Leads


Patrick Kua - 2014
    Discover how more than 35 Tech Leads find the delicate balance between the technical and non-technical worlds. Discover the challenges a Tech Lead faces and how to overcome them. You may be surprised by the lessons they have to share.Now available at https://leanpub.com/talking-with-tech...

The Passionate Programmer


Chad Fowler - 2009
    In this book, you'll learn how to become an entrepreneur, driving your career in the direction of your choosing. You'll learn how to build your software development career step by step, following the same path that you would follow if you were building, marketing, and selling a product. After all, your skills themselves are a product. The choices you make about which technologies to focus on and which business domains to master have at least as much impact on your success as your technical knowledge itself--don't let those choices be accidental. We'll walk through all aspects of the decision-making process, so you can ensure that you're investing your time and energy in the right areas. You'll develop a structured plan for keeping your mind engaged and your skills fresh. You'll learn how to assess your skills in terms of where they fit on the value chain, driving you away from commodity skills and toward those that are in high demand. Through a mix of high-level, thought-provoking essays and tactical "Act on It" sections, you will come away with concrete plans you can put into action immediately. You'll also get a chance to read the perspectives of several highly successful members of our industry from a variety of career paths. As with any product or service, if nobody knows what you're selling, nobody will buy. We'll walk through the often-neglected world of marketing, and you'll create a plan to market yourself both inside your company and to the industry in general. Above all, you'll see how you can set the direction of your career, leading to a more fulfilling and remarkable professional life.

Sams Teach Yourself PHP, MySQL and Apache


Julie C. Meloni - 2003
    You have also created a website for your business that details the products or services that you offer, but it doesn't allow potential customers to purchase anything online. Don't risk losing business-learn to create a dynamic online environment using only three programs. PHP, MySQL and Apache are three popular open-source tools that can work together to help you create a dynamic website, such as an online shopping experience. Sams Teach Yourself PHP, MySQL and Apache All in One is a complete reference manual for all three development tools. You will learn how to install, configure and set up the PHP scripting language, use the MySQL database system, and work with the Apache Web server. Then you'll take it a step further and discover how they work together to create a dynamic website. Use the book and the included CD to create a simple website, as well as a mailing list, online address book, shopping cart and storefront. Updated to reflect the most recent developments in PHP and MySQL, including the final stable release of MySQL 5.0, you will open your website to limitless possibilities with Sams Teach Yourself PHP, MySQL and Apache All in One.

Refactoring to Patterns


Joshua Kerievsky - 2004
    In 1999, "Refactoring" revolutionized design by introducing an effective process for improving code. With the highly anticipated " Refactoring to Patterns ," Joshua Kerievsky has changed our approach to design by forever uniting patterns with the evolutionary process of refactoring.This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs to, towards, or away from pattern implementations. Using code from real-world projects, Kerievsky documents the thinking and steps underlying over two dozen pattern-based design transformations. Along the way he offers insights into pattern differences and how to implement patterns in the simplest possible ways.Coverage includes: A catalog of twenty-seven pattern-directed refactorings, featuring real-world code examples Descriptions of twelve design smells that indicate the need for this book s refactorings General information and new insights about patterns and refactoringDetailed implementation mechanics: how low-level refactorings are combined to implement high-level patterns Multiple ways to implement the same pattern and when to use each Practical ways to get started even if you have little experience with patterns or refactoring"Refactoring to Patterns" reflects three years of refinement and the insights of more than sixty software engineering thought leaders in the global patterns, refactoring, and agile development communities. Whether you re focused on legacy or greenfield development, this book will make you a better software designer by helping you learn how to make important design changes safely and effectively. "

Production-Ready Microservices: Building Standardized Systems Across an Engineering Organization


Susan Fowler - 2016
    After splitting a monolithic application or building a microservice ecosystem from scratch, many engineers are left wondering what s next. In this practical book, author Susan Fowler presents a set of microservice standards in depth, drawing from her experience standardizing over a thousand microservices at Uber. You ll learn how to design microservices that are stable, reliable, scalable, fault tolerant, performant, monitored, documented, and prepared for any catastrophe.Explore production-readiness standards, including:Stability and Reliability: develop, deploy, introduce, and deprecate microservices; protect against dependency failuresScalability and Performance: learn essential components for achieving greater microservice efficiencyFault Tolerance and Catastrophe Preparedness: ensure availability by actively pushing microservices to fail in real timeMonitoring: learn how to monitor, log, and display key metrics; establish alerting and on-call proceduresDocumentation and Understanding: mitigate tradeoffs that come with microservice adoption, including organizational sprawl and technical debt"

HTML Black Book: The Programmer's Complete HTML Reference Book


Steven Holzner - 2000
    An immediate and comprehensive answer source, rather than a diffuse tutorial, for serious programmers who want to see difficult material covered in depth without the fluff. Discusses XML, dynamic HTML, JavaScript, Java, and Perl CGI programming to create a full Web site programming package. Written by the author of several successful titles published by The Coriolis Group.

What is DevOps?


Mike Loukides - 2012
    Old-style system administrators may be disappearing in the face of automation and cloud computing, but operations have become more significant than ever. As this O'Reilly Radar Report explains, we're moving into a more complex arrangement known as "DevOps."Mike Loukides, O'Reilly's VP of Content Strategy, provides an incisive look into this new world of operations, where IT specialists are becoming part of the development team. In an environment with thousands of servers, these specialists now write the code that maintains the infrastructure. Even applications that run in the cloud have to be resilient and fault tolerant, need to be monitored, and must adjust to huge swings in load. That was underscored by Amazon's EBS outage last year.From the discussions at O'Reilly's Velocity Conference, it's evident that many operations specialists are quickly adapting to the DevOps reality. But as a whole, the industry has just scratched the surface. This report tells you why.

Growing Object-Oriented Software, Guided by Tests


Steve Freeman - 2009
    This one's a keeper." --Robert C. Martin "If you want to be an expert in the state of the art in TDD, you need to understand the ideas in this book."--Michael Feathers Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple idea: Write tests for your code before you write the code itself. However, this simple idea takes skill and judgment to do well. Now there's a practical guide to TDD that takes you beyond the basic concepts. Drawing on a decade of experience building real-world systems, two TDD pioneers show how to let tests guide your development and "grow" software that is coherent, reliable, and maintainable. Steve Freeman and Nat Pryce describe the processes they use, the design principles they strive to achieve, and some of the tools that help them get the job done. Through an extended worked example, you'll learn how TDD works at multiple levels, using tests to drive the features and the object-oriented structure of the code, and using Mock Objects to discover and then describe relationships between objects. Along the way, the book systematically addresses challenges that development teams encounter with TDD--from integrating TDD into your processes to testing your most difficult features. Coverage includes - Implementing TDD effectively: getting started, and maintaining your momentum throughout the project - Creating cleaner, more expressive, more sustainable code - Using tests to stay relentlessly focused on sustaining quality - Understanding how TDD, Mock Objects, and Object-Oriented Design come together in the context of a real software development project - Using Mock Objects to guide object-oriented designs - Succeeding where TDD is difficult: managing complex test data, and testing persistence and concurrency

Spring Microservices in Action


John Carnell - 2017
    Spring Boot and Spring Cloud offer Java developers an easy migration path from traditional monolithic Spring applications to microservice-based applications that can be deployed to multiple cloud platforms. The Spring Boot and Spring Cloud frameworks let you quickly build microservices that are ready to be deployed to a private corporate cloud or a public cloud like Amazon Web Services (AWS) or Pivotal’s CloudFoundry.Spring Microservices in Action teaches you how to use the Spring Boot and Spring Cloud frameworks to build and deploy microservice-based cloud applications. You'll begin with an introduction to the microservice pattern and how to build microservices with Spring Boot and Spring Cloud. Then you'll get hands-on and discover how to configure Spring Boot. Using lots of real-world examples, you'll learn topics like service discovery with Spring Cloud, Netflix Eureka, and Ribbon. Next, you'll find out how to handle potential problems using client-side resiliency patterns with Spring and Netflix Hystrix. This book also covers implementing a service gateway with Spring Cloud and Zuul and event processing in the cloud with Spring Cloud Stream. Finally, you'll learn to deploy and push your application to cloud services, including AWS and CloudFoundry. By the end of this book, you'll not only be able to build your own microservice-based applications, but how operationalize and scale your microservices so they can deployed to a private or public cloud.

The Principles of Product Development Flow: Second Generation Lean Product Development


Donald G. Reinertsen - 2009
    He explains why invisible and unmanaged queues are the underlying root cause of poor product development performance. He shows why these queues form and how they undermine the speed, quality, and efficiency in product development.

Founders at Work: Stories of Startups' Early Days


Jessica Livingston - 2001
    These people are celebrities now. What was it like when they were just a couple friends with an idea? Founders like Steve Wozniak (Apple), Caterina Fake (Flickr), Mitch Kapor (Lotus), Max Levchin (PayPal), and Sabeer Bhatia (Hotmail) tell you in their own words about their surprising and often very funny discoveries as they learned how to build a company.Where did they get the ideas that made them rich? How did they convince investors to back them? What went wrong, and how did they recover?Nearly all technical people have thought of one day starting or working for a startup. For them, this book is the closest you can come to being a fly on the wall at a successful startup, to learn how it's done.But ultimately these interviews are required reading for anyone who wants to understand business, because startups are business reduced to its essence. The reason their founders become rich is that startups do what businesses do--create value--more intensively than almost any other part of the economy. How? What are the secrets that make successful startups so insanely productive? Read this book, and let the founders themselves tell you.

Engineering Software as a Service: An Agile Approach Using Cloud Computing + $10 AWS Credit


Armando Fox - 2013
    This book is neither a step-by-step tutorial nor a reference book. Instead, our goal is to bring a diverse set of software engineering topics together into a single narrative, help readers understand the most important ideas through concrete examples and a learn-by-doing approach, and teach readers enough about each topic to get them started in the field. Courseware for doing the work in the book is available as a virtual machine image that can be downloaded or deployed in the cloud. A free MOOC (massively open online course) at saas-class.org follows the book's content and adds programming assignments and quizzes. See http://saasbook.info for details.