Book picks similar to
Digging Into WordPress by Jeff Starr


web-development
wordpress
web-design
non-fiction

Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement


Eric Redmond - 2012
    As a modern application developer you need to understand the emerging field of data management, both RDBMS and NoSQL. Seven Databases in Seven Weeks takes you on a tour of some of the hottest open source databases today. In the tradition of Bruce A. Tate's Seven Languages in Seven Weeks, this book goes beyond your basic tutorial to explore the essential concepts at the core each technology. Redis, Neo4J, CouchDB, MongoDB, HBase, Riak and Postgres. With each database, you'll tackle a real-world data problem that highlights the concepts and features that make it shine. You'll explore the five data models employed by these databases-relational, key/value, columnar, document and graph-and which kinds of problems are best suited to each. You'll learn how MongoDB and CouchDB are strikingly different, and discover the Dynamo heritage at the heart of Riak. Make your applications faster with Redis and more connected with Neo4J. Use MapReduce to solve Big Data problems. Build clusters of servers using scalable services like Amazon's Elastic Compute Cloud (EC2). Discover the CAP theorem and its implications for your distributed data. Understand the tradeoffs between consistency and availability, and when you can use them to your advantage. Use multiple databases in concert to create a platform that's more than the sum of its parts, or find one that meets all your needs at once.Seven Databases in Seven Weeks will take you on a deep dive into each of the databases, their strengths and weaknesses, and how to choose the ones that fit your needs.What You Need: To get the most of of this book you'll have to follow along, and that means you'll need a *nix shell (Mac OSX or Linux preferred, Windows users will need Cygwin), and Java 6 (or greater) and Ruby 1.8.7 (or greater). Each chapter will list the downloads required for that database.

The Art and Science of CSS: Create Inspirational, Standards-Based Web Designs


Cameron Adams - 2007
    The Art & Science of CSS brings together a talented collection of designers who will show you how to take the building blocks of your web site's design (such as headings, navigation, forms, and more) and bring them to life with fully standards-compliant CSS.This full color book helps you to design web sites that not only work well across all browsers, are easy to maintain, and are highly accessible, but are also visually stunning.Create truly attention-grabbing headings.Discover multiple ways to present images effectively.Use background images to give your site zest.Build usable and attractive navigation.Design forms that are stylish and functional.Learn how to break away from the square box gclich.Create funky tables.And lots moreFrom the PublisherJonathan Snook, Steve Smith, Jina Bolton, Cameron Adams, and David Johnson, five of the biggest names in CSS design have joined forces to bring you The Art & Science Of CSS.Beautifully presented in full color, this book will teach you how to apply innovative CSS-based techniques to create visually stunning headings, forms, menus, navigation, backgrounds, and much more...Using The Art & Science Of CSS, you'll see just how easy it is to unleash your creative talents and design inspirational web sites with CSS.All designs in this book are visually appealing and inspiring. The CSS code used to create each of the components is included and guaranteed to be simple, efficient and cross-browser compatible.Among its many treasures, this book will show you how to: Format calendars, menus and table of contents using CSSCreate horizontal, vertical and tab-based navigation systems using CSSCreate rounded corners using CSSDesign stylish Website headingsPut together funky & artistic Website backgroundsUse CSS to render blockquotes, dates and lists in a visually appealing mannerAll designs in this book are visually appealing and inspiring. The code CSS code used to create each of the components is provided and is guaranteed to be simple, efficient and cross-browser compatible.Who Should Read This Book?This book is ideal for anyone who wants to gain the practical skills involved in using CSS to make attractive web sites, especially if you're not the type who likes to learn by memorizing a formal specification and then trying to work out which browsers implemented it completely (does anyone enjoy reading specifications?). The only knowledge you'll need to have is some familiarity with HTML. This book will give designers the skills they need to implement their ideas, and provides developers with creative inspiration through practical examples.

The Art of Doing Science and Engineering: Learning to Learn


Richard Hamming - 1996
    By presenting actual experiences and analyzing them as they are described, the author conveys the developmental thought processes employed and shows a style of thinking that leads to successful results is something that can be learned. Along with spectacular successes, the author also conveys how failures contributed to shaping the thought processes. Provides the reader with a style of thinking that will enhance a person's ability to function as a problem-solver of complex technical issues. Consists of a collection of stories about the author's participation in significant discoveries, relating how those discoveries came about and, most importantly, provides analysis about the thought processes and reasoning that took place as the author and his associates progressed through engineering problems.

Stylin' with CSS: A Designer's Guide


Charles Wyke-Smith - 2005
    Stylin with CSS teaches you everything you need to know start using CSS in your web development work, from the basics of markup of your content and styling text, through to creating multi-column page layouts without the use of tables. Learn how to create interface components, such as drop-down menus, navigation links, and animated graphical buttons, using only CSS no JavaScript required. Discover how to design code that will work on the latest standard-compliant browsers, while working around the quirks of the older browsers. With a mastery of CSS, your web design capabilities will move to a new level, and everything you need to know to get your started and build your skills is right here in this book. You ll be stylin in no time!"

Building Microservices: Designing Fine-Grained Systems


Sam Newman - 2014
    But developing these systems brings its own set of headaches. With lots of examples and practical advice, this book takes a holistic view of the topics that system architects and administrators must consider when building, managing, and evolving microservice architectures.Microservice technologies are moving quickly. Author Sam Newman provides you with a firm grounding in the concepts while diving into current solutions for modeling, integrating, testing, deploying, and monitoring your own autonomous services. You'll follow a fictional company throughout the book to learn how building a microservice architecture affects a single domain.Discover how microservices allow you to align your system design with your organization's goalsLearn options for integrating a service with the rest of your systemTake an incremental approach when splitting monolithic codebasesDeploy individual microservices through continuous integrationExamine the complexities of testing and monitoring distributed servicesManage security with user-to-service and service-to-service modelsUnderstand the challenges of scaling microservice architectures

Seven Languages in Seven Weeks


Bruce A. Tate - 2010
    But if one per year is good, how about Seven Languages in Seven Weeks? In this book you'll get a hands-on tour of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby. Whether or not your favorite language is on that list, you'll broaden your perspective of programming by examining these languages side-by-side. You'll learn something new from each, and best of all, you'll learn how to learn a language quickly. Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you'll go beyond the syntax-and beyond the 20-minute tutorial you'll find someplace online. This book has an audacious goal: to present a meaningful exploration of seven languages within a single book. Rather than serve as a complete reference or installation guide, Seven Languages hits what's essential and unique about each language. Moreover, this approach will help teach you how to grok new languages. For each language, you'll solve a nontrivial problem, using techniques that show off the language's most important features. As the book proceeds, you'll discover the strengths and weaknesses of the languages, while dissecting the process of learning languages quickly--for example, finding the typing and programming models, decision structures, and how you interact with them. Among this group of seven, you'll explore the most critical programming models of our time. Learn the dynamic typing that makes Ruby, Python, and Perl so flexible and compelling. Understand the underlying prototype system that's at the heart of JavaScript. See how pattern matching in Prolog shaped the development of Scala and Erlang. Discover how pure functional programming in Haskell is different from the Lisp family of languages, including Clojure. Explore the concurrency techniques that are quickly becoming the backbone of a new generation of Internet applications. Find out how to use Erlang's let-it-crash philosophy for building fault-tolerant systems. Understand the actor model that drives concurrency design in Io and Scala. Learn how Clojure uses versioning to solve some of the most difficult concurrency problems. It's all here, all in one place. Use the concepts from one language to find creative solutions in another-or discover a language that may become one of your favorites.

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 Zen of CSS Design: Visual Enlightenment for the Web


Dave Shea - 2005
    Proving once and for all that standards-compliant design does not equal dull design, this inspiring tome uses examples from the landmark CSS Zen Garden site as the foundation for discussions on how to create beautiful, progressive CSS-based Web sites.

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.

Single Page Web Applications


Michael S. Mikowski - 2012
    You'll learn the SPA design approach, and then start exploring new techniques like structured JavaScript and responsive design. And you'll learn how to capitalize on trends like server-side JavaScript and NoSQL data stores, as well as new frameworks that make JavaScript more manageable and testable as a first-class language.About this BookIf your website is a jumpy collection of linked pages, you are behind. Single page web applications are your next step: pushing UI rendering and business logic to the browser and communicating with the server only to synchronize data, they provide a smooth user experience, much like a native application. But, SPAs can be hard to develop, manage, and test.Single Page Web Applications shows how your team can easily design, test, maintain, and extend sophisticated SPAs using JavaScript end-to-end, without getting locked into a framework. Along the way, you'll develop advanced HTML5, CSS3, and JavaScript skills, and use JavaScript as the language of the web server and the database.This book assumes basic knowledge of web development. No experience with SPAs is required.Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.What's InsideDesign, build, and test a full-stack SPA Best-in-class tools like jQuery, TaffyDB, Node.js, and MongoDB Real-time web with web sockets and Socket.IO Touch controls for tablets and smartphones Common SPA design mistakesAbout the AuthorsThe authors are architects and engineering managers. Michael Mikowski has worked on many commercial SPAs and a platform that processes over 100 billion requests per year. Josh Powell has built some of the most heavily trafficked sites on the web.Table of ContentsPART 1: INTRODUCING SPAS Our first single page application Reintroducing JavaScript PART 2: SPA CLIENT Develop the Shell Add feature modules Build the Model Finish the Model and Data modules PART 3: THE SPA SERVER The web server The server database Readying our SPA for production

Pragmatic Guide to Git


Travis Swicegood - 2010
    Git tasks displayed on two-page spreads provide all the context you need, without the extra fluff. Get up to speed on Git right now with Pragmatic Guide to Git. Task-oriented two-page spreads get you up and running with minimal fuss. Each left-hand page dives into the underlying implementation for each task. The right-hand page contains commands that focus on the task at hand, and cross references to other tasks that are related. You'll find what you need fast. Git is rapidly becoming the de-facto standard for the open source community. Its excellent merging capabilities, coupled with its speed and relative ease of use, make it an indispensable tool for any developer. New Git users will learn the basic tasks needed to work with Git every day, including working with remote repositories, dealing with branches and tags, exploring the history, and fixing problems when things go wrong. If you're already familiar with Git, this book will be your go-to reference for Git commands and best practices. You won't find a more practical approach to learning Git than Pragmatic Guide to Git.

The Software Craftsman: Professionalism, Pragmatism, Pride


Sandro Mancuso - 2014
    Why? Too many organizations still view software development as just another production line. Too many developers feel that way, too--and they behave accordingly. In The Software Craftsman: Professionalism, Pragmatism, Pride, Sandro Mancuso offers a better and more fulfilling path. If you want to develop software with pride and professionalism; love what you do and do it with excellence; and build a career with autonomy, mastery, and purpose, it starts with the recognition that you are a craftsman. Once you embrace this powerful mindset, you can achieve unprecedented levels of technical excellence and customer satisfaction. Mancuso helped found the world's largest organization of software craftsmen; now, he shares what he's learned through inspiring examples and pragmatic advice you can use in your company, your projects, and your career. You will learn Why agile processes aren't enough and why craftsmanship is crucial to making them work How craftsmanship helps you build software right and helps clients in ways that go beyond code How and when to say "No" and how to provide creative alternatives when you do Why bad code happens to good developers and how to stop creating and justifying it How to make working with legacy code less painful and more productive How to be pragmatic--not dogmatic--about your practices and tools How to lead software craftsmen and attract them to your organization What to avoid when advertising positions, interviewing candidates, and hiring developers How developers and their managers can create a true culture of learning How to drive true technical change and overcome deep patterns of skepticism Sandro Mancuso has coded for startups, software houses, product companies, international consultancies, and investment banks. In October 2013, he cofounded Codurance, a consultancy based on Software Craftsmanship principles and values. His involvement with Software Craftsmanship began in 2010, when he founded the London Software Craftsmanship Community (LSCC), now the world's largest and most active Software Craftsmanship community, with more than two thousand craftsmen. For the past four years, he has inspired and helped developers to organize Software Craftsmanship communities throughout Europe, the United States, and the rest of the world.

Programming Groovy


Venkat Subramaniam - 2008
    But recently, the industry has turned to dynamic languages for increased productivity and speed to market.Groovy is one of a new breed of dynamic languages that run on the Java platform. You can use these new languages on the JVM and intermix them with your existing Java code. You can leverage your Java investments while benefiting from advanced features including true Closures, Meta Programming, the ability to create internal DSLs, and a higher level of abstraction.If you're an experienced Java developer, Programming Groovy will help you learn the necessary fundamentals of programming in Groovy. You'll see how to use Groovy to do advanced programming including using Meta Programming, Builders, Unit Testing with Mock objects, processing XML, working with Databases and creating your own Domain-Specific Languages (DSLs).

Deep Learning


Ian Goodfellow - 2016
    Because the computer gathers knowledge from experience, there is no need for a human computer operator to formally specify all the knowledge that the computer needs. The hierarchy of concepts allows the computer to learn complicated concepts by building them out of simpler ones; a graph of these hierarchies would be many layers deep. This book introduces a broad range of topics in deep learning.The text offers mathematical and conceptual background, covering relevant concepts in linear algebra, probability theory and information theory, numerical computation, and machine learning. It describes deep learning techniques used by practitioners in industry, including deep feedforward networks, regularization, optimization algorithms, convolutional networks, sequence modeling, and practical methodology; and it surveys such applications as natural language processing, speech recognition, computer vision, online recommendation systems, bioinformatics, and videogames. Finally, the book offers research perspectives, covering such theoretical topics as linear factor models, autoencoders, representation learning, structured probabilistic models, Monte Carlo methods, the partition function, approximate inference, and deep generative models.Deep Learning can be used by undergraduate or graduate students planning careers in either industry or research, and by software engineers who want to begin using deep learning in their products or platforms. A website offers supplementary material for both readers and instructors.

Designing Web Interfaces: Principles and Patterns for Rich Interactions


Bill Scott - 2008
    Distilled from the authors' years of experience at Sabre, Yahoo!, and Netflix, these best practices are grouped into six key principles to help you take advantage of the web technologies available today. With an entire section devoted to each design principle, Designing Web Interfaces helps you:Make It Direct-Edit content in context with design patterns for In Page Editing, Drag & Drop, and Direct SelectionKeep It Lightweight-Reduce the effort required to interact with a site by using In Context Tools to leave a "light footprint"Stay on the Page-Keep visitors on a page with overlays, inlays, dynamic content, and in-page flow patternsProvide an Invitation-Help visitors discover site features with invitations that cue them to the next level of interactionUse Transitions-Learn when, why, and how to use animations, cinematic effects, and other transitionsReact Immediately-Provide a rich experience by using lively responses such as Live Search, Live Suggest, Live Previews, and more Designing Web Interfaces illustrates many patterns with examples from working websites. If you need to build or renovate a website to be truly interactive, this book gives you the principles for success.