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

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.

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."

Cloud Architecture Patterns: Using Microsoft Azure


Bill Wilder - 2012
    You’ll learn how each of these platform-agnostic patterns work, when they might be useful in the cloud, and what impact they’ll have on your application architecture. You’ll also see an example of each pattern applied to an application built with Windows Azure.The patterns are organized into four major topics, such as scalability and handling failure, and primer chapters provide background on each topic. With the information in this book, you’ll be able to make informed decisions for designing effective cloud-native applications that maximize the value of cloud services, while also paying attention to user experience and operational efficiency.Learn about architectural patterns for:Scalability. Discover the advantages of horizontal scaling. Patterns covered include Horizontally Scaling Compute, Queue-Centric Workflow, and Auto-Scaling.Big data. Learn how to handle large amounts of data across a distributed system. Eventual consistency is explained, along with the MapReduce and Database Sharding patterns.Handling failure. Understand how multitenant cloud services and commodity hardware influence your applications. Patterns covered include Busy Signal and Node Failure.Distributed users. Learn how to overcome delays due to network latency when building applications for a geographically distributed user base. Patterns covered include Colocation, Valet Key, CDN, and Multi-Site Deployment.

Reactive Programming with RxJava: Creating Asynchronous, Event-Based Applications


Tomasz Nurkiewicz - 2016
    With this practical book, Java developers will first learn how to view problems in the reactive way, and then build programs that leverage the best features of this exciting new programming paradigm.Authors Tomasz Nurkiewicz and Ben Christensen include concrete examples that use the RxJava library to solve real-world performance issues on Android devices as well as the server. You'll learn how RxJava leverages parallelism and concurrency to help you solve today's problems. This book also provides a preview of the upcoming 2.0 release.Write programs that react to multiple asynchronous sources of input without descending into callback hellGet to that aha! moment when you understand how to solve problems in the reactive wayCope with Observables that produce data too quickly to be consumedExplore strategies to debug and to test programs written in the reactive styleEfficiently exploit parallelism and concurrency in your programsLearn about the transition to RxJava version 2

Bandit Algorithms for Website Optimization


John Myles White - 2012
    Author John Myles White shows you how this powerful class of algorithms can help you boost website traffic, convert visitors to customers, and increase many other measures of success.This is the first developer-focused book on bandit algorithms, which were previously described only in research papers. You’ll quickly learn the benefits of several simple algorithms—including the epsilon-Greedy, Softmax, and Upper Confidence Bound (UCB) algorithms—by working through code examples written in Python, which you can easily adapt for deployment on your own website.Learn the basics of A/B testing—and recognize when it’s better to use bandit algorithmsDevelop a unit testing framework for debugging bandit algorithmsGet additional code examples written in Julia, Ruby, and JavaScript with supplemental online materials

Understanding Ecmascript 6: The Definitive Guide for JavaScript Developers


Nicholas C. Zakas - 2016
    In Understanding ECMAScript 6, expert developer Nicholas C. Zakas provides a complete guide to the object types, syntax, and other exciting changes that ECMAScript 6 brings to JavaScript. Every chapter is packed with example code that works in any JavaScript environment so you'll be able to see new features in action. You'll learn:How ECMAScript 6 class syntax relates to more familiar JavaScript conceptsWhat makes iterators and generators usefulHow arrow functions differ from regular functionsWays to store data with sets, maps, and moreThe power of inheritanceHow to improve asynchronous programming with promisesHow modules change the way you organize codeWhether you're a web developer or a Node.js developer, you'll find Understanding ECMAScript 6 indispensable on your journey from ECMAScript 5 to ECMAScript 6.

Spring Boot in Action


Craig Walls - 2015
    In it, you’ll learn how to bypass configuration steps so you can focus on your application’s behavior. Spring expert Craig Walls uses interesting and practical examples to teach you both how to use the default settings effectively and how to override and customize Spring Boot for your unique environment. Along the way, you’ll pick up insights from Craig’s years of Spring development experience.

MongoDB Applied Design Patterns


Rick Copeland - 2013
    You’ll learn how to apply MongoDB design patterns to several challenging domains, such as ecommerce, content management, and online gaming. Using Python and JavaScript code examples, you’ll discover how MongoDB lets you scale your data model while simplifying the development process.Many businesses launch NoSQL databases without understanding the techniques for using their features most effectively. This book demonstrates the benefits of document embedding, polymorphic schemas, and other MongoDB patterns for tackling specific big data use cases, including:Operational intelligence: Perform real-time analytics of business dataEcommerce: Use MongoDB as a product catalog master or inventory management systemContent management: Learn methods for storing content nodes, binary assets, and discussionsOnline advertising networks: Apply techniques for frequency capping ad impressions, and keyword targeting and biddingSocial networking: Learn how to store a complex social graph, modeled after Google+Online gaming: Provide concurrent access to character and world data for a multiplayer role-playing game

Internet & World Wide Web: How to Program


Paul Deitel - 1999
    Internet and World Wide Web How to Program, 4e introduces students with little or no programming experience to the exciting world of Web-Based applications. The book has been substantially revised to reflect today's Web 2.0 rich Internet application-development methodologies. A comprehensive book that teaches the fundamentals needed to program on the Internet, this text provides in-depth coverage of introductory programmming principles, various markup languages (XHTML, Dynamic HTML and XML), several scripting languages (JavaScript, PHP, Ruby/Ruby on Rails and Perl); AJAX, web services, Web Servers (IIS and Apache) and relational databases (MySQL/Apache Derby/Java DB) -- all the skills and tools needed to create dynamic Web-based applications. The text contains comprehensive introductions to ASP.NET 2.0 and JavaServer Faces (JSF). Hundreds of live-code examples of real applications throughout the book available for download allow readers to run the applications and see and hear the outputs.The book provides instruction on building Ajax-enabled rich Internet applications that enhance the presentation of online content and give web applications the look and feel of desktop applications. The chapter on Web 2.0 and Internet business exposes readers to a wide range of other topics associated with Web 2.0 applications and businesses After mastering the material in this book, students will be well prepared to build real-world, industrial strength, Web-based applications.

Business Intelligence for Dummies


Swain Scheps - 2007
    But you've heard at least a dozen definitions of what it is, and heard of at least that many BI tools. Where do you start? Business Intelligence For Dummies makes BI understandable! It takes you step by step through the technologies and the alphabet soup, so you can choose the right technology and implement a successful BI environment. You'll see how the applications and technologies work together to access, analyze, and present data that you can use to make better decisions about your products, customers, competitors, and more.You'll find out how to:Understand the principles and practical elements of BI Determine what your business needs Compare different approaches to BI Build a solid BI architecture and roadmap Design, develop, and deploy your BI plan Relate BI to data warehousing, ERP, CRM, and e-commerce Analyze emerging trends and developing BI tools to see what else may be useful Whether you're the business owner or the person charged with developing and implementing a BI strategy, checking out Business Intelligence For Dummies is a good business decision.

Mobile App Marketing And Monetization: How To Promote Mobile Apps Like A Pro: Learn to promote and monetize your Android or iPhone app. Get hundreds of thousands of downloads & grow your app business


Alex Genadinik - 2014
     I am an independent mobile app entrepreneur just like you, and I wrote this book to teach you all my strategies for how to: - Get 1,000,000+ downloads from mobile app store marketing - Save money by doing your own ASO (search engine optimization SEO for Android and the Apple App stores) better than most consultants you might consider hiring - Create an app marketing strategy outside the app stores by getting press coverage and learning how to promote an app using social media and social sharing - Make money with effective app store monetization to help you maximize your app revenue with subscriptions, in-app purchases, publishing effective ads, selling affiliate products and other strategies used by successful mobile app businesses - Create a successful mobile app business I wrote this book with all my heart and soul. The book draws on my own years of experience building top apps in my niche, promoting apps, making money with my apps, and coaching other app entrepreneurs on how they can make turn their mobile apps into successful businesses. You will be getting the best of all worlds. First, I have very deep hands on experience building and growing my own apps. Second, I have a wealth of experience coaching and observing other app entrepreneurs whose experiences and aspirations are probably very similar to yours. In this book you get all the insights from me making my own apps a success, and the insights of the cumulative experiences of the people I've coached. This is a very to the point book with many actionable tips and strategies for how to promote your mobile app (iPhone or Android), make money from your smartphone applications, and generally treat it as a real business. All suggestions in this book are based on my own experiences promoting my own problemio.com business apps which at the point of latest revision of this book have cumulative 1,000,000+ downloads, and insights of me having coached over 100 other app entrepreneurs. I am an independent mobile application developer and mobile application entrepreneur just like you. I am not a multi-million dollar app development studio or a big company. If you are an independent app developer just like me, you can use the mobile application marketing strategies that I outline in this book. Many of the strategies are simple and effective, and you can begin working on them as early as today. The book contains over 20 strategies to promote your apps. They all worked for my apps and they will help you grow your app to its highest potential. After growing your app, you will be able to make good money from your app, and achieve the goals that you have for your app business. Get the book now, and become a pro at app store marketing (app store SEO which is otherwise known as ASO), and start increasing your app downloads and revenue today!

Common LISP: A Gentle Introduction to Symbolic Computation


David S. Touretzky - 1989
    A LISP "toolkit" in each chapter explains how to use Common LISP programming and debugging tools such as DESCRIBE, INSPECT, TRACE and STEP.

Learning SPARQL


Bob DuCharme - 2011
    With this concise book, you will learn how to use the latest version of this W3C standard to retrieve and manipulate the increasing amount of public and private data available via SPARQL endpoints. Several open source and commercial tools already support SPARQL, and this introduction gets you started right away.Begin with how to write and run simple SPARQL 1.1 queries, then dive into the language's powerful features and capabilities for manipulating the data you retrieve. Learn what you need to know to add to, update, and delete data in RDF datasets, and give web applications access to this data.Understand SPARQL’s connection with RDF, the semantic web, and related specificationsQuery and combine data from local and remote sourcesCopy, convert, and create new RDF dataLearn how datatype metadata, standardized functions, and extension functions contribute to your queriesIncorporate SPARQL queries into web-based applications

Higher-Order Perl: Transforming Programs with Programs


Mark Jason Dominus - 2005
    However, Perl incorporates many features that have their roots in other languages such as Lisp. These advanced features are not well understood and are rarely used by most Perl programmers, but they are very powerful. They can automate tasks in everyday programming that are difficult to solve in any other way. One of the most powerful of these techniques is writing functions that manufacture or modify other functions. For example, instead of writing ten similar functions, a programmer can write a general pattern or framework that can then create the functions as needed according to the pattern. For several years Mark Jason Dominus has worked to apply functional programming techniques to Perl. Now Mark brings these flexible programming methods that he has successfully taught in numerous tutorials and training sessions to a wider audience.• Introduces powerful programming methods—new to most Perl programmers—that were previously the domain of computer scientists• Gradually builds up confidence by describing techniques of progressive sophistication• Shows how to improve everyday programs and includes numerous engaging code examples to illustrate the methods