Best of
Programming

2018

Dive Into Design Patterns


Alexander Shvets - 2018
    You can’t just find a pattern and copy it into your program, the way you can with off-the-shelf functions or libraries. The pattern is not a specific piece of code, but a general concept for solving a particular problem. They are like pre-made blueprints that you can customize to solve a recurring design problem in your code.The book Dive Into Design Patterns illustrates 22 classic design patterns and 8 design principles that these patterns are based on.- Every chapter starts from a discussion of a real life software design problem which is then progressively solved by applying one of the patterns.- Then goes a detailed review of the pattern’s structure and its variations, followed by a code example.- Then the books shows various applications of the pattern and teaches how to implement the pattern step by step, even in an existing program.- Each chapter concludes with a discussion of pros and cons of the pattern and its relations, similarities and differences with other patterns.

CSS in Depth


Keith J. Grant - 2018
    This instantly useful book is packed with creative examples and powerful best practices that will sharpen your technical skills and inspire your sense of design.Foreword by Chris Coyier, Cofounder of CodePen.Dig even deeper into the secrets of CSS with our video course CSS in Depth in Motion, available exclusively at Manning.com (www.manning.com/livevideo/css-in-dept...)!Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.About the TechnologySome websites really pop. They look great, they're visually consistent, and they feel interactive and responsive. You can bet their developers knew CSS in depth. CSS specifies everything from the structural layout of page elements to their individual look and feel. True masters know the patterns of CSS development, the techniques to implement them, and the subtle touches that result in beautiful typography, fluid transitions, and balanced graphics. Join them!About the BookCSS in Depth exposes you to a world of CSS techniques that range from clever to mind-blowing. This instantly useful book is packed with creative examples and powerful best practices that will sharpen your technical skills and inspire your sense of design. You'll gain new insights into familiar features like floats and units, and experiment with emerging ideas like responsive design and pattern libraries. Bottom line: this book will make you a better web designer and your apps will look fantastic!What's InsideAvoid common CSS pitfallsMaster misunderstood conceptsUse flexbox and grid layoutResponsive designs for any deviceCode for reuse and maintainabilityAbout the ReaderWritten for web developers who know the basics of CSS and HTML.About the AuthorKeith J. Grant is a senior web developer who builds and maintains web applications and websites, including The New York Stock Exchange site.Table of ContentsPART 1 - REVIEWING THE FUNDAMENTALSCascade, specificity, and inheritanceWorking with relative unitsMastering the box modelPART 2 - MASTERING LAYOUTMaking sense of floatsFlexboxGrid layoutPositioning and stacking contextsResponsive designPART 3 - CSS AT SCALEModular CSSPattern librariesPART 4 - ADVANCED TOPICSBackgrounds, shadows, and blend modesContrast, color, and spacingTypographyTransitionsTransformsAnimations

Getting Clojure


Russ Olsen - 2018
    The vision behind Clojure is of a radically simple language framework holding together a sophisticated collection of programming features. Learning Clojure involves much more than just learning the mechanics of the language. To really get Clojure you need to understand the ideas underlying this structure of framework and features. You need this book: an accessible introduction to Clojure that focuses on the ideas behind the language as well as the practical details of writing code.

ASP.NET Core in Action


Andrew Lock - 2018
    ASP.NET Core is a re-imagining of the .NET Framework that frees developers from Visual Studio and Windows.ASP.NET Core in Action is for C# developers without any web development experience who want to get started and productive using ASP.NET Core to build web applications.

Cracking Codes with Python: An Introduction to Building and Breaking Ciphers


Al Sweigart - 2018
    You’ll begin with simple programs for the reverse and Caesar ciphers and then work your way up to public key cryptography, the type of encryption used to secure today’s online transactions, including digital signatures, email, and Bitcoin.Each program includes the full code and a line-by-line explanation of how things work. By the end of the book, you’ll have learned how to code in Python and you’ll have the clever programs to prove it!You’ll also learn how to:- Combine loops, variables, and flow control statements into real working programs- Use dictionary files to instantly detect whether decrypted messages are valid English or gibberish- Create test programs to make sure that your code encrypts and decrypts correctly- Code (and hack!) a working example of the affine cipher, which uses modular arithmetic to encrypt a message- Break ciphers with techniques such as brute-force and frequency analysisThere’s no better way to learn to code than to play with real programs. Cracking Codes with Python makes the learning fun!

Practical SQL: A Beginner's Guide to Storytelling with Data


Anthony DeBarros - 2018
    The book focuses on using SQL to find the story your data tells, with the popular open-source database PostgreSQL and the pgAdmin interface as its primary tools.You'll first cover the fundamentals of databases and the SQL language, then build skills by analyzing data from the U.S. Census and other federal and state government agencies. With exercises and real-world examples in each chapter, this book will teach even those who have never programmed before all the tools necessary to build powerful databases and access information quickly and efficiently.You'll learn how to: •Create databases and related tables using your own data •Define the right data types for your information •Aggregate, sort, and filter data to find patterns •Use basic math and advanced statistical functions •Identify errors in data and clean them up •Import and export data using delimited text files •Write queries for geographic information systems (GIS) •Create advanced queries and automate tasks Learning SQL doesn't have to be dry and complicated. Practical SQL delivers clear examples with an easy-to-follow approach to teach you the tools you need to build and manage your own databases. This book uses PostgreSQL, but the SQL syntax is applicable to many database applications, including Microsoft SQL Server and MySQL.

Writing A Compiler In Go


Thorsten Ball - 2018
    We're picking up right where we left off and write a compiler and a virtual machine for Monkey. Runnable and tested code front and center, built from the ground up, step by step — just like before. But this time, we're going to define bytecode, compile Monkey and execute it in our very own virtual machine. It's the next step in Monkey's evolution. It's the sequel to … a programming language Writing A Compiler In Go is the sequel to Writing An Interpreter In Go. It starts right where the first one stopped, with a fully-working, fully-tested Monkey interpreter in hand, connecting both books seamlessly, ready to build a compiler and a virtual machine for Monkey. In this book, we use the codebase (included in the book!) from the first part and extend it. We take the lexer, the parser, the AST, the REPL and the object system and use them to build a new, faster implementation of Monkey, right next to the tree-walking evaluator we built in the first book. The approach is unchanged, too. Working, tested code is the focus, we build everything from scratch, do baby steps, write tests firsts, use no 3rd-party-libraries and see and understand how all the pieces fit together. It's a continuation in prose and in code. Do you need to read the first part before this one? If you're okay with treating the code from the first book as black box, then no. But that's not what these books are about; they're about opening up black boxes, looking inside and shining a light. You'll have the best understanding of where we're going in this book, if you know where we started. Learn how to write a compiler and a virtual machine Our main goal in in this book is to evolve Monkey. We change its architecture and turn it into a bytecode compiler and virtual machine. We'll take the lexer, the parser, the AST and the object system we wrote in the first book and use them to build our own Monkey compiler and virtual machine … from scratch! We'll build them side-by-side so that we'll always have a running system we can steadily evolve. What we end up with is not only much closer to the programming languages we use every day, giving us a better understanding of how they work, but also 3x faster. And that's without explicitly aiming for performance. Here's what we'll do: - We define our own bytecode instructions, specifying their operands and their encoding. Along the way, we also build a mini-disassembler for them. - We write a compiler that takes in a Monkey AST and turns it into bytecode by emitting instructions - At the same time we build a stack-based virtual machine that executes the bytecode in its main loop We'll learn a lot about computers, how they work, what machine code and opcodes are, what the stack is and how to work with stack pointers and frame pointers, what it means to define a calling convention, and much more. We also - build a symbol table and a constant pool - do stack arithmetic - generate jump instructions - build frames into our VM to execute functions with local bindings and arguments! - add built-in functions to the VM - get real closures working in the virtual machine and learn why closure-compilation is so tricky

Django for Beginners: Build websites with Python and Django


William S. Vincent - 2018
    A step-by-step guide to building web applications with Python and Django 3.0.Create, test, and deploy 5 progressively more complex websites including a Message Board app, a Blog app with user accounts, and a robust Newspaper app with reader comments and a complete user registration flow.Along the way you'll learn core Django features and best practices around models, views, templates, urls, custom user models, permissions, authorizations, user registration, testing, and deployment.TABLE OF CONTENTS: Introduction Chapter 1: Initial Setup Chapter 2: Hello World app Chapter 3: Pages app Chapter 4: Message Board app Chapter 5: Blog app Chapter 6: Forms Chapter 7: User Accounts Chapter 8: Custom User Model Chapter 9: User Authentication Chapter 10: Bootstrap Chapter 11: Password Change and Reset Chapter 12: Email Chapter 13: Newspaper app Chapter 14: Permissions and Authorizations Chapter 15: Comments Conclusion

Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis


Adam Tornhill - 2018
    And that’s just for starters. Because good code involves social design, as well as technical design, you can find surprising dependencies between people and code to resolve coordination bottlenecks among teams. Best of all, the techniques build on behavioral data that you already have: your version-control system. Join the fight for better code!

The Ray Tracer Challenge


Jamis Buck - 2018
    In just a couple of weeks, build a ray tracer that renders beautiful scenes with shadows, reflections, brilliant refraction effects, and subjects composed of various graphics primitives: spheres, cubes, cylinders, triangles, and more. With each chapter, implement another piece of the puzzle and move the renderer that much further forward. Do all of this in whichever language and environment you prefer, and do it entirely test-first, so you know it’s correct. Recharge yourself with this project’s immense potential for personal exploration, experimentation, and discovery.About this TitleThe renderer is a ray tracer, which means it simulates the physics of light by tracing the path of light rays around your scene. Each exciting chapter presents a bite-sized piece of the puzzle, building on earlier chapters and setting the stage for later ones. Requirements are given language-agnostically; it’s up to you to translate them into tests and code using whatever language you prefer. When the project is complete, you’ll look back and realize you’ve built an entire system test-first!There’s no research necessary—all the necessary formulas and algorithms are presented and illustrated right here. Dive into intriguing topics from fundamental concepts such as vectors and matrices; to the algorithms that simulate the intersection of light rays with spheres, planes, cubes, cylinders, and triangles; to geometric patterns such as checkers and rings. Lighting and shading effects, such as shadows and reflections, make your scenes come to life, and constructive solid geometry (CSG) enables you to combine your graphics primitives in simple ways to produce complex shapes.Play and experiment as you discover the fun of writing a ray tracer. Accept the challenge today!What You NeedAside from a computer, operating system, and programming environment, you’ll need a way to display PPM image files. On Windows, programs like Photoshop will work, or free programs like IrfanView. On Mac, no special software is needed, as Preview can open PPM files.

Simplifying JavaScript: Writing Modern JavaScript with ES5, ES6, and Beyond


Joe Morgan - 2018
    Learn to write modern JavaScript not by memorizing a list of new syntax, but with practical examples of how syntax changes can make code more expressive. Starting from variable declarations that communicate intention clearly, see how modern principles can improve all parts of code. Incorporate ideas with curried functions, array methods, classes, and more to create code that does more with less while yielding fewer bugs.It's time to write JavaScript code that's clean and exprssive. Modern JavaScript is simpler and more predictable and readable than ever. Discover how to write better code with clear examples using principles that show how updated syntax can make code better with fewer bugs.Starting from the ground up, learn new syntax (or how to reuse older syntax) to transform code from clunky bug-susceptible scripts to clear and elegant programs that are easy to read and easy to extend.Create a foundation for readable code with simple variable declarations that reduce side effects and subtle bugs. Select collections with clear goals instead of defaulting to objects or arrays. See how to simplify iterations from complex loops to single line array methods. Master techniques for writing flexible and solid code ranging from high-order functions, to reusableclasses, to patterns for architecting large applications creating applications that will last while through rounds of refactoring and changing requirements.The best part is there's no need to read this book straight through. Jump around and incorporate new functionality at will. Most importantly, understand not just what the new syntax is, but when and how to use it. Start writing better code from the first page.

Learn Windows PowerShell in a Month of Lunches


Donald W. Jones - 2018
    This updated edition covers PowerShell features that run on Windows 7, Windows Server 2008 R2 and later, PowerShell v3 and later, and includes v5 features like PowerShellGet. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology PowerShell is both a scripting language and an administrative shell that lets you control and automate nearly every aspect of Windows. It accepts and executes commands interactively and you can write scripts to manage most Windows servers like Exchange, IIS, and SharePoint, as well as online services like Azure and Office 365. About the Book Learn Windows PowerShell in a Month of Lunches, Third Edition is an innovative tutorial designed for busy IT professionals. Just set aside one hour a day - lunchtime would be perfect - for a month, and you'll be automating Windows tasks faster than you ever thought possible. This updated edition covers PowerShell features that run on Windows 7, Windows Server 2008 R2 and later, PowerShell v3 and later, and includes v5 features like PowerShellGet. What's Inside Learn PowerShell from the beginning, no experience required! Covers PowerShell v3 and up, Windows 7, and Windows Server 2008 R2 and later Each lesson takes you an hour or less About the Reader Experience with Windows administration is helpful. No programming or scripting experience needed. About the Author Veteran PowerShell MVPs Don Jones and Jeffery Hicks bring years as successful trainers to this concise, easy-to-follow book.

The Little Typer


Daniel P. Friedman - 2018
    Dependent types are a first-class part of a language, and are much more powerful than other kinds of types; using just one language for types and programs allows program descriptions to be as powerful as the programs they describe. The Little Typer explains dependent types, beginning with a very small language that looks very much like Scheme and extending it to cover both programming with dependent types and using dependent types for mathematical reasoning. Readers should be familiar with the basics of a Lisp-like programming language, as presented in the first four chapters of The Little Schemer.The first five chapters of The Little Typer provide the needed tools to understand dependent types; the remaining chapters use these tools to build a bridge between mathematics and programming. Readers will learn that tools they know from programming—pairs, lists, functions, and recursion—can also capture patterns of reasoning. The Little Typer does not attempt to teach either practical programming skills or a fully rigorous approach to types. Instead, it demonstrates the most beautiful aspects as simply as possible, one step at a time.

Thinking with Types. Type-Level Programming in Haskell


Sandy Maguire - 2018
    It's about getting you from here to there---from a competent Haskell programmer to one who convinces the compiler to do their work for them.

Professional CMake: A Practical Guide


Craig Scott - 2018
    The handbook for every CMake user, providing structured learning, the latest best practices and real-world advice from one of the CMake co-maintainers.

Get Programming with F#: A Guide for .Net Developers


Isaac Abraham - 2018
    And while F# runs on the .NET framework and supports OO features, its functional nature is what's driving interest. F# leads to quicker development time and a lower total cost of ownership. Its powerful feature set allows developers to more succinctly express their intent, and encourages best practices - leading to higher quality deliverables in less time. Developers find working in F# more enjoyable and rewarding; their managers appreciate the improved quality and speed of deliverables!Learn F# is a practical guide for experienced C# and .NET developers that teaches the F# language, tools, techniques, and practices that can be applied in common scenarios. You'll start with F# language basics and best development practices. You'll also learn the core set of FP techniques in F#, and why to use them. Then you'll discover how to write idiomatic F# code on the .NET framework in Visual Studio, and what tools to use to give you the best experience within VS. The second part of the book shows you how to apply F# in larger, real world scenarios, things like interop to C# /VB projects, SQL database access, web programming, and unit testing. By the end of the book, you'll be able to use F# in your day-to-day development, and know how and where to deepen your knowledge.

Java by Comparison: Become a Java Craftsman in 70 Examples


Simon Harrer - 2018
    

Rest APIs with Django: Build Powerful Web APIs with Python and Django


William S. Vincent - 2018
    You'll even learn how to connect them to a React front-end for a truly full-stack web application.TABLE OF CONTENTSIntroduction Chapter 1: Web APIs Chapter 2: Library website and API Chapter 3: Todo API Chapter 4: Todo React Frontend Chapter 5: Blog API Chapter 6: Permissions Chapter 7: User Authentication Chapter 8: Viewsets and Routers Chapter 9: Schemas and Documentation Conclusion

Goomics: Google's corporate culture revealed through internal comics: Volume 1


Manu Cornet - 2018
    

Get Programming with Haskell


Will Kurt - 2018
    It is arguable the most interesting language but also has the reputation of being one of the most challenging to learn. Learning Haskell doesn't have to be difficult, and this book can help!Learn Haskell teaches readers the Haskell language and functional programming concepts while they hack on interesting problems that are challenging but never frustrating. This example-filled tutorial will take users from the basics to tackling the tough topics. There are lots of crystal-clear illustrations, hands-on exercises, and open-ended tasks that encourage readers to explore Haskell on their own.Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

C++17 in Detail


Bartłomiej Filipek - 2018
    What's more, it provides a lot of practical examples so you can quickly apply the knowledge to your code. Leanpub: https://leanpub.com/cpp17indetail or Amazon https://www.amazon.com/dp/1798834065I spent hundreds of hours investigating how new things work in order to make a nice and practical book for you. The book will not only save your time but also will guide you through all the nuances of the language.The book brings you exclusive content about C++17 and draws from the experience of many articles that have appeared on bfilipek.com. The chapters were rewritten from the ground-up and updated with the latest information. All of that equipped with lots of new examples and practical tips. Additionally, the book provides insight into the current implementation status, compiler support, performance issues and other relevant knowledge to boost your current projects.If you have experience with C++11/14 and you want to move forward into the latest C++ techniques, then this book is for you.

Mastering Vim Quickly: From WTF to OMG in no time


Jovica Ilic - 2018
    

Principles of Package Design: Creating Reusable Software Components


Matthias Noback - 2018
    You will use package design principles to create packages that are just right in terms of cohesion and coupling, and are user- and maintainer-friendly at the same time.The first part of this book walks you through the five SOLID principles that will help you improve the design of your classes. The second part introduces you to the best practices of package design, and covers both package cohesion principles and package coupling principles. Cohesion principles show you which classes should be put together in a package, when to split packages, and if a combination of classes may be considered a "package" in the first place. Package coupling principles help you choose the right dependencies and prevent wrong directions in the dependency graph of your packages.What You'll LearnApply the SOLID principles of class designDetermine if classes belong in the same packageKnow whether it is safe for packages to depend on each other Who This Book Is ForSoftware developers with a broad range of experience in the field, who are looking for ways to reuse, share, and distribute their code

Docker for Rails Developers


Rob Isenberg - 2018
    Gone are “works on my machine” woes and lengthy setup tasks, replaced instead by a simple, consistent, Docker-based development environment that will have your team up and running in seconds. Gain hands-on, real-world experience with a tool that’s rapidly becoming fundamental to software development. Go from zero all the way to production as Docker transforms the massive leap of deploying your app in the cloud into a baby step.

Django 2 by Example: Build powerful and reliable Python web applications from scratch


Antonio Melé - 2018
    

Impractical Python Projects: Playful Programming Activities to Make You Smarter


Lee Vaughan - 2018
    It picks up where the complete beginner books leave off, expanding on existing concepts and introducing new tools that you'll use every day. And to keep things interesting, each project includes a zany twist featuring historical incidents, pop culture references, and literary allusions.You'll flex your problem-solving skills and employ Python's many useful libraries to do things like: - Help James Bond crack a high-tech safe with a hill-climbing algorithm - Write haiku poems using Markov Chain Analysis- Use genetic algorithms to breed a race of gigantic rats- Crack the world's most successful military cipher using cryptanalysis- Derive the anagram, I am Lord Voldemort using linguistical sieves - Plan your parents' secure retirement with Monte Carlo simulation- Save the sorceress Zatanna from a stabby death using palingrams- Model the Milky Way and calculate our odds of detecting alien civilizations- Help the world's smartest woman win the Monty Hall problem argument- Reveal Jupiter's Great Red Spot using optical stacking- Save the head of Mary, Queen of Scots with steganography- Foil corporate security with invisible electronic inkSimulate volcanoes, map Mars, and more, all while gaining valuable experience using free modules like Tkinter, matplotlib, Cprofile, Pylint, Pygame, Pillow, and Python-Docx.Whether you're looking to pick up some new Python skills or just need a pick-me-up, you'll find endless educational, geeky fun with Impractical Python Projects.

Fullstack Vue: The Complete Guide to Vue.js


Hassan Djirdeh - 2018
    

Programming Ecto


Darin Wilson - 2018
    Learn how to use Ecto, the premier database library for Elixir, to connect your Elixir and Phoenix apps to databases. Get a firm handle on Ecto fundamentals with a module-by-module tour of the critical parts of Ecto. Then move on to more advanced topics and advice on best practices with a series of recipes that provide clear, step-by-step instructions on scenarios commonly encountered by app developers. Co-authored by the creator of Ecto, this title provides all the essentials you need to use Ecto effectively.

CSS Visual Dictionary


Greg Sidelnikov - 2018
    

The Java Module System


Nicolai Parlog - 2018
    In this new book, you'll learn how the module system improves reliability and maintainability, and how it can be used to reduce tight coupling of system components.Foreword by Kevlin Henney.Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. You'll find registration instructions inside the print book.About the TechnologyPackaging code into neat, well-defined units makes it easier to deliver safe and reliable applications. The Java Platform Module System is a language standard for creating these units. With modules, you can closely control how JARs interact and easily identify any missing dependencies at startup. This shift in design is so fundamental that starting with Java 9, all core Java APIs are distributed as modules, and libraries, frameworks, and applications will benefit from doing the same.About the BookThe Java Module System is your in-depth guide to creating and using Java modules. With detailed examples and easy-to-understand diagrams, you'll learn the anatomy of a modular Java application. Along the way, you'll master best practices for designing with modules, debugging your modular app, and deploying to production.What's insideThe anatomy of a modular Java appBuilding modules from source to JARMigrating to modular JavaDecoupling dependencies and refining APIsHandling reflection and versioningCustomizing runtime imagesUpdated for Java 11About the ReaderPerfect for developers with some Java experience.About the AuthorNicolai Parlog is a developer, author, speaker, and trainer. His home is codefx.org. Table of ContentsPART 1 - Hello, modulesFirst piece of the puzzleAnatomy of a modular applicationDefining modules and their propertiesBuilding modules from source to JARRunning and debugging modular applicationsPART 2 - Adapting real-world projectsCompatibility challenges when moving to Java 9 or laterRecurring challenges when running on Java 9 or laterIncremental modularization of existing projectsMigration and modularization strategiesPART 3 - Advanced module system featuresUsing services to decouple modulesRefining dependencies and APIsReflection in a modular worldModule versions: What's possible and what's notCustomizing runtime images with jlinkPutting the pieces together

Real World SRE: Maximize uptime with Site Reliability Engineering


Nat Welch - 2018
     Full of hard-won, real-world information to keep your site running Written by an ex-Google SRE expert Book Description At some point, every software developer experiences a catastrophic failure of their website: customers tweet that they can't access your website for hours; while you slept, no customers could buy the t-shirts you sell; on your biggest sales day of the year, all of the servers crumple under the load. We’ve all been there.Real World SRE shows you how to think about the software you work with as you move forward into a post-company-crippling-outage world. There is no single solution to making systems reliable, and no system is 100% reliable, but you can change your mentality when thinking about how you run production systems, and be much more prepared for the next outage.Real World SRE is a practical book giving you the benefit of Nat-Welch’s battle-hardened experience in reliability engineering at some of the biggest outage-sensitive companies on the internet. What you will learn What is Reliability Engineering and how do you implement it Website Monitoring and Incident Response How to write effective postmortems and Incident Analysis Testing, Release Management, and Capacity Planning Using software to solve reliability problems. The effect of reliability on user experience Who This Book Is For Real World SRE is aimed at software developers who want to improve the reliability of the software at their company. For those engineers and developers who have already experienced a major outage, this is the book you’ll wish you had. For those developers and engineers lucky enough not to have experienced an outage, buy this book now. About the Author Nat Welch is a senior software developer based in Brooklyn with twelve years professional experience. He worked as a Site Reliability Engineer for Google and Hilary Clinton’s presidential campaign. He has two passions in software. The first is building beautiful tools for people to share knowledge, advice and experience. The second is creating reliable infrastructure that is easy to use and maintain.Outside of the tech-world, he is an Eagle Scout. He enjoys contributing to open source projects, reading, listening to music and wandering through cities and countrysides.

C++ High Performance: Boost and optimize the performance of your C++17 code


Viktor Sehr - 2018
    It has evolved over the last few years to become a modern and expressive language. This book will guide you through optimizing the performance of your C++ apps by allowing them to run faster and consume fewer resources on the device they're running on. The book begins by helping you to identify the bottlenecks in C++. It then moves on to measuring performance, and you'll see how this affects the way you write code. Next, you'll see the importance of data structure optimization and how it can be used efficiently. After that, you'll see which algorithm should be used to achieve faster execution, followed by how to use STL containers. Moving on, you'll learn how to improve memory management in C++. You'll get hands on experience making use of multiple cores to enable more efficient and faster execution. The book ends with a brief overview of utilizing the capabilities of your GPU by using Boost Compute and OpenCL. What you will learn Find out how to use exciting new tools that will help you improve your code Identify bottlenecks to optimize your code Develop applications that utilize GPU computation Reap the benefits of concurrent programming Write code that can protect against application errors using error handling Use STL containers and algorithms effciently Extend your toolbox with Boost containers Achieve effcient memory management by using custom memory allocators Who this book is for If you're a C++ developer looking to improve the speed of your code or simply wanting to take your skills up to the next level, then this book is perfect for you.

Learn Docker - Fundamentals of Docker 18.x: Everything you need to know about containerizing your applications and running them in production


Gabriel Nicolas Schenker - 2018
     Practical test-based approach to learning a prominent containerization tool Book Description Docker containers have revolutionized the software supply chain in small and big enterprises. Never before has a new technology so rapidly penetrated the top 500 enterprises worldwide. Companies that embrace containers and containerize their traditional mission-critical applications have reported savings of at least 50% in total maintenance cost and a reduction of 90% (or more) of the time required to deploy new versions of those applications. Furthermore they are benefitting from increased security just by using containers as opposed to running applications outside containers.This book starts from scratch, introducing you to Docker fundamentals and setting up an environment to work with it. Then we delve into concepts such as Docker containers, Docker images, Docker Compose, and so on. We will also cover the concepts of deployment, orchestration, networking, and security. Furthermore, we explain Docker functionalities on public clouds such as AWS.By the end of this book, you will have hands-on experience working with Docker containers and orchestrators such as SwarmKit and Kubernetes. What you will learn Containerize your traditional or microservice-based application Share or ship your application as an immutable container image Build a Docker swarm and a Kubernetes cluster in the cloud Run a highly distributed application using Docker Swarm or Kubernetes Update or rollback a distributed application with zero downtime Secure your applications via encapsulation, networks, and secrets Know your options when deploying your containerized app into the cloud Who This Book Is For This book is targeted at system administrators, operations engineers, DevOps engineers, and developers or stakeholders who are interested in getting started with Docker from scratch. No prior experience with Docker Containers is required. Table of Contents What Are Containers and Why Should I Use Them? Setting up a Working Environment Working with Containers Creating and Managing Container Images Data Volumes and System Management Distributed Application Architecture Single-Host Networking Docker Compose Orchestrators Introduction to Docker Swarm Zero Downtime Deployments and Secrets Introduction to Kubernetes Deploying, Updating and Securing an Application with Kubernetes Running a Containerized App in the Cloud

The Python Journeyman


Robert Smallshire - 2018
    https://leanpub.com/python-journeyman

Developing 2D Games with Unity: Independent Game Programming with C#


Jared Halpern - 2018
    In addition to the fundamentals, you'll learn best practices, helpful game-architectural patterns, and how to customize Unity to suit your needs, all in the context of building a working 2D game. While many books focus on 3D game creation with Unity, the easiest market for an independent developer to thrive in is 2D games. 2D games are generally cheaper to produce, more feasible for small teams, and more likely to be completed. If you live and breathe games and want to create them then 2D games are a great place to start. By focusing exclusively on 2D games and Unity’s ever-expanding 2D workflow, this book gives aspiring independent game developers the tools they need to thrive. Various real-world examples of independent games are used to teach fundamental concepts of developing 2D games in Unity, using the very latest tools in Unity’s updated 2D workflow.  New all-digital channels for distribution, such as Nintendo eShop, XBox Live Marketplace, the Playstation Store, the App Store, Google Play, itch.io, Steam, and GOG.com have made it easier than ever to discover, buy, and sell games. The golden age of independent gaming is upon us, and there has never been a better time to get creative, roll up your sleeves, and build that game you’ve always dreamed about. Developing 2D Games with Unity can show you the way. What You'll Learn Delve deeply into useful 2D topics, such as sprites, tile slicing, and the brand new Tilemap feature. Build a working 2D RPG-style game as you learn. Construct a flexible and extensible game architecture using Unity-specific tools like Scriptable Objects, Cinemachine, and Prefabs. Take advantage of the streamlined 2D workflow provided by the Unity environment.  Deploy games to desktop Who This Book Is For Hobbyists with some knowledge of programming, as well as seasoned programmers interested in learning to make games independent of a major studio.

Programming in Haskell (2nd edition)


Graham Hutton - 2018
    This book is based on the author's experience of teaching Haskell for more than twenty years. All concepts are explained from first principles and no programming experience is required, making the book accessible to a broad spectrum of readers.Part I introduces the basic concepts of pure programming in Haskell and is structured around the core features of the language. Part II covers impure programming and a range of more advanced topics. The book contains many extended programming examples, and each chapter includes a series of exercises and suggestions for further reading.This new edition has been extensively updated and expanded to include recent and more advanced features of Haskell, new examples and exercises, selected solutions, and freely downloadable lecture slides and example code. The presentation is clean and simple, while also being fully compliant with the latest version of the language, including recent changes concerning applicative, monadic, foldable and traversable types.Graham Hutton is Professor of Computer Science at the University of Nottingham. He has taught Haskell to thousands of students and received many awards for his teaching. Hutton has served as an editor of the Journal of Functional Programming, Chair of the Haskell Symposium and the International Conference on Functional Programming, Vice-Chair of the ACM Special Interest Group on Programming Languages, and he is an ACM Distinguished Scientist.

Get Programming with Go


Nathan Youngman - 2018
    By working through 32 quick-fire lessons, you'll quickly pick up the basics of the innovative Go programming language!Hobbyists, newcomers, and professionals alike can benefit from a fast, modern language; all you need is the right resource! Get Programming with Go provides a hands-on introduction to Go language fundamentals, serving as a solid foundation for your future programming projects. You'll master Go syntax, work with types and functions, and explore bigger ideas like state and concurrency, with plenty of exercises to lock in what you learn.What's inside* Language concepts like slices, interfaces, pointers, and concurrency* Seven capstone projects featuring spacefaring gophers, Mars rovers, ciphers, and simulations* All examples run in the Go Playground - no installation required!This book is for anyone familiar with computer programming, as well as anyone with the desire to learn.Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

Head First Learn to Code: A Learner's Guide to Coding and Computational Thinking


Eric Freeman - 2018
    You can remain a passive participant, or you can learn to code. With Head First Learn to Code you'll learn how to think computationally and how to write code to make your computer, mobile device, or anything with a CPU do things for you. Using the Python programming language, you'll learn step by step the core concepts of programming as well as many fundamental topics from computer science, such as data structures, storage, abstraction, recursion, and modularity.Why does this book look so different?Based on the latest research in cognitive science and learning theory, Head First Learn to Code uses a visually rich format to engage your mind, rather than a text-heavy approach that puts you to sleep. Why waste your time struggling with new concepts? This multi-sensory learning experience is designed for the way your brain really works.

Advanced Apex Programming in Salesforce


Dan Appleman - 2018
    Intended for developers who are already familiar with the Apex language, and experienced Java and C# developers who are moving to Apex, this book starts where the Salesforce Apex documentation leaves off. Instead of trying to cover all of the features of the platform, Advanced Apex programming focuses entirely on the Apex language and core design patterns. You’ll learn how to truly think in Apex – to embrace limits and bulk patterns. You’ll see how to develop architectures for efficient and reliable trigger handling, and for asynchronous operations. You’ll discover that best practices differ radically depending on whether you are building software for a specific organization or for a managed package. And you’ll find approaches for incorporating testing and diagnostic code that can dramatically improve the reliability and deployment of Apex software, and reduce your lifecycle and support costs. Based on his experience as a consultant, Salesforce MVP and architect of major AppExchange packages, Dan Appleman focuses on the real-world problems and issues that are faced by Apex developers every day, along with the obscure problems and surprises that can sneak up on you if you are unprepared. This four edition contains updates through Summer 18 (API 43) along with significant new content including Salesforce DX

Writing High-Performance .NET Code


Ben Watson - 2018
    It will expertly guide you through the nuts and bolts of extreme performance optimization in .NET, complete with in-depth examinations of CLR functionality, free tool recommendations and tutorials, useful anecdotes, and step-by-step guides to measure and improve performance.This second edition incorporates the advances and improvements in .NET over the last few years, as well as greatly expanded coverage of tools, more topics, more tutorials, more tips, and improvements throughout the entire book.New in the 2nd Edition:- 50% increase in content!- New examples, code samples, and diagrams throughout entire book- More ways to analyze the heap and find memory problems- More tool coverage, including expanded usage of Visual Studio- More benchmarking- New GC configuration options- Code warmup techniques- New .NET features such as ref-returns, value tuples, SIMD, and more- More detailed analysis of LINQ- Tips for high-level feature areas such as ASP.NET, ADO.NET, and WPFAlso find expanded coverage and discover new tips and tricks for:- Profiling with multiple tools to quickly find problem areas- Detailed description of the garbage collector, how to optimize your code for it, and how to diagnose difficult memory-related issues- How to analyze JIT and diagnose warmup problems- Effective use of the Task Parallel Library to maximize throughput- Which .NET features and APIs to use and which to avoid- Instrument your program with performance counters and ETW events- Use the latest and greatest .NET features- Build a performance-minded team- ...and so much more

Functional Programming in C++


Ivan Čukić - 2018
    

Learn SQL (using MySQL) in One Day and Learn It Well: SQL for Beginners with Hands-on Project


Jamie Chan - 2018
    Learn SQL Fast with a unique Hands-On Project. Book 5 of the Learn Coding Fast Series. Learn SQL (using MySQL) Fast and Learn It Well. Master SQL Programming with a unique Hands-On Project The information era is upon us and the ability to organize and make sense of data has become an invaluable skill. Have you been hearing about data, databases and SQL and wondering what it's all about? Or perhaps you have just gotten a new job and need to learn SQL fast. This book is for you. You no longer have to feel lost and overwhelmed by all the fragmented tutorials online, nor do you have to waste your time and money learning SQL from lengthy books and expensive online courses. What this book offers... Learn SQL Fast Concepts in this book are presented in a "to-the-point" and concise style to cater to the busy individual. With this book, you can learn SQL in just one day and start coding immediately. SQL for Beginners Complex topics are broken down into simple steps with clear and carefully chosen examples to ensure that you can easily master SQL even if you have never coded before. In addition, the output for all examples are provided immediately so you do not have to wait till you have access to your computer to test the examples. Complete process with well thought out flow The complete process from database creation, table creation, data input, manipulation and retrieval etc is covered. The flow of the book is carefully planned to ensure that you can easily follow along. How is this book different... The best way to learn SQL is by doing. This book provides examples for all concepts taught so that you can try out the different SQL commands yourself. In addition, you'll be guided through a complete project at the end of the book that requires the application of all the concepts taught previously. Working through the project will not only give you an immense sense of achievement, it'll also help you retain the knowledge and master the language. Ready to embark on your SQL learning journey? This book is for you. Click the BUY button and download it now. What you'll learn: - What is a database and DBMS? - What is SQL? - What software do you need to code SQL programs? - How to create databases and tables in SQL? - What are the common data types in SQL? - How to input data into the database - How to select data from SQL tables - How to use aggregate functions - How to write JOIN and UNION statements - What is a SQL view? - How to write SQL triggers - How to write stored procedures and functions - How to make decisions with IF and CASE statements - How to control the flow of program with WHILE, REPEAT and LOOP statements - What are cursors and how to use them? .. and more... Finally, you'll be guided through a hands-on project that requires the application of all the topics covered. Click the BUY button and download the book now to start learning SQL. Learn it fast and learn it well.

Make Your Own Algorithmic Art


Tariq Rashid - 2018
     A fun step-by-step gentle introduction to creating digital art with computers, designed especially for: * artists new to coding * art, design and digital media students, * technologists wanted to explore their creativity * teachers and parents seeking more visual and exciting approaches to teaching computer science Starting from the very basics, you'll learn to: * understand how computers create digital images * code with a popular computer language designed for artists, called Processing, enabled for the web with p5js * develop and appreciate algorithms, mathematical recipes, which can create surprisingly beautiful art * easily share your code and art on the web, potentially reaching an audience of billions of internet users We'll discover and practice basic techniques, explore simple algorithms that create interesting visual forms, and work through example projects to experience the process of developing algorithmic art from inspiration, through problem solving, to final refinement. By the end of the course, you will be coding confidently, appreciating the beauty of mathematics and wanting to explore more advanced ideas and methods. A sample of the topics covered include repetition and loops, randomness, RGB and HSB colour, trigonometry and orbits, functions, chaos theory, fractals, complex numbers, recursion and natural forms, Perlin noise, l-systems, turtle code interpreter, self-modifying code.

Python: 2 Manuscripts in 1 book : - Python For Beginners - Python 3 Guide


Timothy C. Needham - 2018
    This Box Includes 2 Manuscripts in 1 book: - Python For Beginners: A Crash Course Guide To Learn Python in 1 Week  - Python 3 Guide: A Beginner Crash Course Guide to Learn Python 3 in 1 Week Python For Beginners: A Crash Course Guide To Learn Python in 1 Week Here what you'll learn after downloading this Python for Beginners book: ✓Introduction ✓Chapter 1: Python: A Comprehensive Background ✓Chapter 2: How to Download and Install Python ✓Chapter 3: Python Glossary ✓Chapter 4: Interacting with Python ✓Chapter 5: Using Turtle for a Simple Drawing ✓Chapter 6: Variables ✓Chapter 7: Loops ✓Chapter 8: Native Python Datatypes ✓Chapter 9: Python Dictionaries ✓Chapter 10: Boolean Logic and Conditional Statements ✓Chapter 11: Constructing ‘While’ Loops In Python Chapter 12: Constructing ‘For Loops’ In Python Programming ✓Chapter 13: Constructing Classes and Defining Objects This Book Is Perfect For: ✓- Total beginners with zero programming experience ✓- Returning professionals who haven’t written code in years ✓- Seasoned professionals looking for a fast, simple, crash course in Python Python 3 Programming: A Beginner Crash Course Guide to Learn Python The book is updated to the latest version of Python 3 and the main topics of what the book will be about include: - An Introduction to Python - How to Design a Software - Learn How to Create Data Types and Variables - Conditional Statements - Create and modify Data Structures in Python - Manipulate and Working with Strings - How to Use Files - Automate Coding Tasks By Building Custom Python Functions - Solutions get your copy now!

Phoenix in Action


Geoffrey Lessel - 2018
    Following a running example of an online auction site, you'll design and build everything from the core components that drive the app to the real-time user interactions where Phoenix really shines. You'll handle business logic, database interactions, and app designs that take advantage of functional programming as you discover a better way to develop web applications. And if you're brand new to Elixir, don't worry! You'll find a Phoenix-oriented tour of the language, along with careful explanations, tips, and coding idioms scattered throughout the example code.what's insideA complete online auction example developed throughoutDatabase interactions with EctoUsing Channels for real-time communicationFunctional ideas in a web environmentAn introduction to the Elixir programming languageabout the readerWritten for web developers familiar with a framework like Rails or ASP.NET. No experience of Elixir or Phoenix required.

Kotlin Programming: The Big Nerd Ranch Guide


Matthew Mathias - 2018
     Based on Big Nerd Ranch's popular Kotlin Essentials course, this guide shows you how to work effectively with the Kotlin programming language through hands-on examples and clear explanations of key Kotlin concepts and foundational APIs. Written for Kotlin 1.2, this book will also introduce you to JetBrains' IntelliJ IDEA development environment. Whether you are an experienced Android developer looking for modern features beyond what Java offers or a new developer ready to learn your first programming language, the authors will guide you from first principles to advanced usage of Kotlin. By the end of this book, you will be empowered to create reliable, concise applications in Kotlin.

In The Shadow of the Machine: The Prehistory of the Computer and the Evolution of Consciousness


Jeremy Naydler - 2018
    What is the philosophical and spiritual significance of this dependence on electronic technology, both for our relationship to nature and for the future of humanity? And, what processes in human perception and awareness have produced the situation we find ourselves in?As Jeremy Naydler elucidates in this penetrating study, we cannot understand the emergence of the computer without seeing it within the wider context of the evolution of human consciousness, which has taken place over millennia. Modern consciousness, he shows, has evolved in conjunction with the development of machines and under their intensifying shadow.The computer was the product of a long historical development, culminating in the scientific revolution of the 17th century. It was during this period that the first mechanical calculators were invented and the project to create more complex `thinking machines' began in earnest. But the seeds were sown many hundreds of years earlier, deep in antiquity. Naydler paints a vast panorama depicting human development and the emergence of electronic technology. His painstaking research illuminates an urgent question that concerns every living person today: What does it mean to be human and what, if anything, distinguishes us from machines?

Game Programming in C++: Creating 3D Games


Sanjay Madhav - 2018
    Since it's used throughout their enormous code bases, studios use it to maintain and improve their games, and look for it constantly when hiring new developers. Game Programming in C++ is a practical, hands-on approach to programming 3D video games in C++. Modeled on Sanjay Madhav's game programming courses at USC, it's fun, easy, practical, hands-on, and complete.Step by step, you'll learn to use C++ in all facets of real-world game programming, including 2D and 3D graphics, physics, AI, audio, user interfaces, and much more. You'll hone real-world skills through practical exercises, and deepen your expertise through start-to-finish projects that grow in complexity as you build your skills. Throughout, Madhav pays special attention to demystifying the math that all professional game developers need to know.Set up your C++ development tools quickly, and get started Implement basic 2D graphics, game updates, vectors, and game physics Build more intelligent games with widely used AI algorithms Implement 3D graphics with OpenGL, shaders, matrices, and transformations Integrate and mix audio, including 3D positional audio Detect collisions of objects in a 3D environment Efficiently respond to player input Build user interfaces, including Head-Up Displays (HUDs) Improve graphics quality with anisotropic filtering and deferred shading Load and save levels and binary game dataWhether you're a working developer or a student with prior knowledge of C++ and data structures, Game Programming in C++ will prepare you to solve real problems with C++ in roles throughout the game development lifecycle. You'll master the language that top studios are hiring for--and that's a proven route to success.

CoderDojo Nano: Make Your Own Game: Create With Code


Scholastic Inc. - 2018
    Each concept is illustrated with a screenshot to make checking easy, and incredible pixel art from Army of Trolls makes this look like no other coding book.Coder Dojo Nano: Make Your Own Game is the perfect first step that kids can take toward game development. Look out for other titles in the CoderDojo Nano series: CoderDojo Nano: Build Your Own Website

Introduction to Java Programming and Data Structures, Comprehensive Version, Global Edition


Y. Daniel Liang - 2018
    Daniel Liang, 9781292221878, Pearson

Deep Learning in Natural Language Processing


Li Deng - 2018
    In particular, the striking success of deep learning in a wide variety of natural language processing (NLP) applications has served as a benchmark for the advances in one of the most important tasks in artificial intelligence. This book reviews the state of the art of deep learning research and its successful applications to major NLP tasks, including speech recognition and understanding, dialogue systems, lexical analysis, parsing, knowledge graphs, machine translation, question answering, sentiment analysis, social computing, and natural language generation from images. Outlining and analyzing various research frontiers of NLP in the deep learning era, it features self-contained, comprehensive chapters written by leading researchers in the field. A glossary of technical terms and commonly used acronyms in the intersection of deep learning and NLP is also provided. The book appeals to advanced undergraduate and graduate students, post-doctoral researchers, lecturers and industrial researchers, as well as anyone interested in deep learning and natural language processing.

Kotlin Apprentice: Beginning Programming with Kotlin


raywenderlich.com Team - 2018
    Since the adoption of Kotlin by Google as an official language for Android, the momentum behind Kotlin has gone off the charts. In this book, you'll start with the basics of programming using Kotlin. You'll next learn everything from collections and lambdas to classes and interfaces, and then move on to more advanced topics like functional programming and coroutines. Kotlin supports many platforms, including Android, JavaScript, the JVM, and someday even iOS. By reading this book, you'll be ready to use Kotlin on any and all of these platforms.Who This Book Is ForThis book is for complete beginners to Kotlin. No prior programming experience is necessary!Topics Covered in Kotlin ApprenticeKotlin Development Environment: See how to setup a development environment for Kotlin using IntelliJ IDEA. Numbers and Strings: These are the basic kinds of data in any app-learn how to use them in Kotlin. Making Decisions: Your code doesn't always run straight through-learn how to use conditions and loops to control program flow. Functions and Lambdas: Group your code together into reusable chunks to run and pass around. Collection Types: Discover the many ways Kotlin offers to store and organize data into collections. Building Your Own Types: Learn how to model elements in your app using classes, objects, interfaces, and enumerations. Exceptions: Make your code more robust and flexible by signaling and handling exception conditions. Functional Programming: Learn how to use Kotlin in a functional style and how this can make your code clearer and more efficient. Coroutines: Asynchronous programming can be a complex topic on any platform, but Kotlin gives you a clear and consise approach with coroutines. Kotlin Platforms and Scripting: Learn about how Kotlin can be used on multiple platforms and see its use as a scripting language. One thing you can count on: after reading this book, you'll be prepared to take advantage of Kotlin wherever you choose to use it!

Introduction to Java Programming, Comprehensive Version (10th Edition)


Y. Daniel Liang - 2018
    The fundamental concepts and techniques of selection statements, loops, methods, and arrays are the foundation for programming. Building this strong foundation prepares students to learn object-oriented programming and advanced Java programming. This book teaches programming in a problem-driven way that focuses on problem solv-ing rather than syntax. We make introductory programming interesting by using thought-provoking problems in a broad context. The central thread of early chapters is on problem solving. Appropriate syntax and library are introduced to enable readers to write programs for solving the problems. To support the teaching of programming in a problem-driven way, the book provides a wide variety of problems at various levels of difficulty to motivate students. To appeal to students in all majors, the problems cover many application areas, including math, science, business, financial, gaming, animation, and multimedia.

Ed Mastery: The Standard Unix Text Editor


Michael Warren Lucas - 2018
    If you don’t know ed(1), you’re not a sysadmin. You’re a mere dabbler. A dilettante. Deficient.Forty years after ed’s introduction, internationally acclaimed author Michael W Lucas has finally unlocked the mysteries of ed for everyone. With ed(1) Mastery, you too can become a proper sysadmin.Ed Mastery will help you:• understand buffers and addresses• insert, remove, and mangle text• master file management and shell escapes• comprehend regular expressions, searches, and substitutions• create high-performance scripts for transforming filesYou must be at least this competent to use this computer. Read ed(1) Mastery today!This edition uses feminine pronouns. See the other edition for masculine pronouns.

Modern Python Standard Library Cookbook: Over 100 recipes to fully leverage the features of the standard library in Python


Alessandro Molina - 2018
    

Code with the Wisdom of the Crowd: Get Better Together with Mob Programming


Mark Pearl - 2018
    Mob Programming is an approach to developing software that radically reduces defects and key-person dependencies by having a group of people work together at a single machine. See how to avoid the most common pitfalls that teams make when first starting out. Discover what it takes to create and support a successful mob. Now you can take collaborative programming to the next level with Mob Programming.Mob Programming is a natural extension of the popular Pair Programming concept, and is not restricted to a specific programming language or technology. It can be used by anyone who develops software, including dev leads, software developers, and agile coaches. The more people working on a bug or feature results in fewer dependencies on individuals, and overall increased learning for everyone involved. With more eyes on the code, you'll find you develop better solutions with fewer defects.Set up your team for success by introducing Mob Programming in a way that benefits them. Create a good first Mobbing experience for your team with a template that avoids the common traps beginners may fall into. Master a collaborative and empathic mindset to help optimize the Mobbing experience. Learn how to make adjustments when things go wrong. Adapt your mobbing to different types of development tasks. Get management buy-in for your Mobbing experiment by demonstrating the benefits. Discover the equipment and resources you need, and how to adjust your workspace for an effective mob.Get important features to market sooner, squish bugs faster, and collaborate better today with Mob Programming.What You Need: All you need is three or more programmers, a meeting workspace that's large enough to accommodate your mob, and a computer on which to work.

Microservices: A Practical Guide


Eberhard Wolff - 2018
    But implementing a microservices architecture and selecting the necessary technologies are difficult challenges. This book shows microservices recipes that architects can customize and combine into a microservices menu. In this way, the implementation of microservices can be individually adapted to the requirements of the project. Eberhard Wolff introduces microservices, self-contained systems, micro- and macro-architecture and the migration to microservices. The second part shows the microservices recipes: Basic technologies such as Docker or PaaS, frontend integration with links, JavaScript or ESI (Edge Side Includes). This is followed by asynchronous microservices with Apache Kafka or REST / Atom. In the synchronous approaches, the book discusses REST with the Netflix stack, Consul, PaaS with Cloud Foundry, and Kubernetes. Finally, operations is discussed: Log Analysis with Elasticsearch and Kibana, Monitoring with Prometheus, and tracing with Zipkin. For each recipe there are suggestions for variations and combinations. Readers can experience all technologies hands-on with a demo project on GitHub. The outlook picks up on the operation of microservices and also shows how the reader can start with microservices in concrete terms. The book provides the technical tools to implement a microservices architecture. Demo projects and suggestions for self-study will complete the book.

Beginning C++17: From Novice to Professional


Ivor Horton - 2018
    You'll start with the basics and progress through step-by-step examples to become a working C++ programmer. All you need are Beginning C++17 and any recent C++ compiler and you'll soon be writing real C++ programs. There is no assumption of prior programming knowledge.All language concepts that are explained in the book are illustrated with working program examples, and all chapters include exercises for you to test and practice your knowledge. Code downloads are provided for all examples from the text and solutions to the exercises.This latest edition has been fully updated to the latest version of the language, C++17, and to all conventions and best practices of so-called modern C++. Beginning C++17 also introduces the elements of the C++ Standard Library that provide essential support for the C++17 language. What You'll LearnDefine variables and make decisionsWork with arrays and loops, pointers and references, strings, and moreWrite your own functions, types, and operatorsDiscover the essentials of object-oriented programmingUse overloading, inheritance, virtual functions and polymorphismWrite generic function templates and class templates Get up to date with modern C++ features: auto type declarations, move semantics, lambda expressions, and moreExamine the new additions to C++17Who This Book Is ForProgrammers new to C++ and those who may be looking for a refresh primer on the C++17 programming language in general.

Turkish Natural Language Processing


Kemal Oflazer - 2018
    Owing to its complex morphology and free constituent order, Turkish has proved to be a fascinating language for natural language and speech processing research and applications.After an overview of the aspects of Turkish that make it challenging for natural language and speech processing tasks, this book discusses in detail the main tasks and applications of Turkish natural language and speech processing. A compendium of the work on Turkish natural language and speech processing, it is a valuable reference for new researchers considering computational work on Turkish, as well as a one-stop resource for commercial and research institutions planning to develop applications for Turkish. It also serves as a blueprint for similar work on other Turkic languages such as Azeri, Turkmen and Uzbek.

Swift Apprentice: Beginning programming with Swift 4.2


Ray Wenderlich - 2018
    

Practical Blockchain for Developers: The Big Book (Programming Blockchain Networks, Consensus Algorithms, Mining, Cryptography, Wallets, Transactions, DApps, Smart Contracts, Ethereum, Solidity, IPFS)


Svetlin Nakov - 2018
    The training consists of: - Lecture slides, practical exercises, learning and coding in class (blockchain networks, wallets, DApps, smart contracts, Solidity) - Remote working on practical blockchain projects (online, remote work, in teams / individually)The course content covers deeply the modern blockchain technologies from the developer’s perspective (blockchain networks, cryptography, wallets, transactions and APIs, consensus algorithms, mining, and offchain transactions) and the practical aspects of DApp development (Ethereum and IPFS, Solidity and smart contracts, the Web3 API to connect Ethereum with JavaScript and other languages, MetaMask and wallets, Truffle and Ganache).The book follows the “learn by doing” concept and involves the course attendees in live coding exercises and projects every day. Attendees create two practical projects: implement a blockchain network and develop a DApp in Solidity.The book consists of lessons (represented as slides, designed for teaching in class) and tutorial-style exercises (designed to be followed individually in class or at home).Table of ContentsContents ... 2Detailed Table of Contents ... 4Preface ... 7Part I. Blockchain Networks ... 8Chapter 1.1. Blockchain Introduction ... 9Chapter 1.2. Blockchain Cryptography ... 39Chapter 1.3. Consensus Algorithms ... 64Chapter 1.4. Mining and Pools ... 94Chapter 1.5. Practical Project: Building a Blockchain Network (Node and Chain) ... 152Chapter 1.6. Wallets and Wallet APIs ... 162Chapter 1.7. Transactions in Blockchain ... 206Chapter 1.8. Crypto-Exchanges ... 246Chapter 1.9. Practical Project: Building a Blockchain Network (Wallet and Faucet) ... 293Chapter 1.10. Scaling Blockchains: Offchain, Payment Channels, Sidechains ... 296Chapter 1.11. Anonymous Transactions ... 329Part II. DApps and Solidity ... 344Chapter 2.1. Ethereum Introduction ... 345Chapter 2.2. Solidity Basics ... 402Chapter 2.3. Solidity Advanced ... 415Chapter 2.4. Ganache and Truffle ... 443Chapter 2.5. DApp Architectures ... 503Chapter 2.6. Decentralized Storage and IPFS ... 532Chapter 2.7. Web3 API and MetaMask ... 538Chapter 2.8. Practical Project: DApp Architecture ... 572Chapter 2.9. Server-Side Ethereum APIs ... 574Chapter 2.10. Blockchain and Smart Contract Security ... 623Chapter 2.11. Other DApp Platforms ... 648Chapter 2.12. Practical Project: DApp Implementation ... 677Conclusion ... 681Read this book at Google books: https://books.google.bg/books/about?i..., https://blockchain-dev-book.softuni.org

Computer Vision with Opencv 3 and Qt5: Build Visually Appealing, Multithreaded, Cross-Platform Computer Vision Applications


Amin Ahmadi Tazehkandi - 2018
    However, they now need a more effective tool to get the job done and in a much better and modern way. Qt is one of the major frameworks available for this task at the moment. This book will teach you to develop applications with the combination ...

Autodesk Fusion 360 Basics Tutorial


Tutorial Books - 2018
    This book will get you started with basics of part modeling, assembly modeling, animations, and drawings. Next, it teaches you some additional part modeling tools, top down assembly feature, assembly joints, and dimension & annotations. Brief explanations, practical examples and step wise instructions make this tutorial a useful guide.

Mastering PostgreSQL 11: Expert Techniques to Build Scalable, Reliable, and Fault-Tolerant Database Applications


Hans-Jürgen Schönig - 2018
    

Pro Vue.js 2


Adam Freeman - 2018
    You will work with the power of the Model-View-Controller (MVC) pattern on the client, creating a strong foundation for complex and rich web apps. Best-selling author Adam Freeman explains how to get the most from Vue.js 2. He begins by describing the MVC pattern and the benefits it can offer. He then shows you how to use Vue.js in your projects, starting from the nuts and bolts and building up to the most advanced and sophisticated features, going in-depth to give you the knowledge you need. Chapters include common problems and how to avoid them. What You'll Learn Gain a solid architectural understanding of the MVC pattern Create rich and dynamic web app clients using Vue.js 2 Extend and customize Vue.js Test your Vue.js projects Who This Book Is For JavaScript developers who want to use Vue.js to create dynamic client-side applications

MrExcel LIVe: The 54 Greatest Excel Tips of All Time


Bill Jelen - 2018
    MrExcel LIVe provides users with a concise book that can be absorbed in under an hour. Includes a section with keyboard shortcuts. Anyone who uses Excel will be able to turn to any page and pick up tips that will save them hours of work.

Django ORM Cookbook


Shabda Raaj - 2018
    Django is a “MTV” (Model-Template-View) framework – This book provides a deep dive into the M part. They take the form of about 50 questions of the form How to do X with Django ORM/Queryset/Models. By reading this book, you will understand how to get the most out of Django ORM, how to do DB modelling for normalization and performance. This book serves as a handy reference, as well as a training to become a better Django developer. Table of Contents Querying and Filtering 1. How to find the query associated with a queryset? 2. How to do OR queries in Django ORM? 3. How to do AND queries in Django ORM? 4. How to do a NOT query in Django queryset? 5. How to do union of two querysets from same or different models? 6. How to select some fields only in a queryset? 7. How to do a subquery expression in Django? 8. How to filter a queryset with criteria based on comparing their field values 9. How to filter FileField without any file? 10. How to perform join operations in django ORM? 11. How to find second largest record using Django ORM ? 12. Find rows which have duplicate field values 13. How to find distinct field values from queryset? 14. How to use Q objects for complex queries? 15. How to group records in Django ORM? 16. How to efficiently select a random object from a model? 17. How to use arbitrary database functions in querysets? Creating, Updating and Deleting things 1. How to create multiple objects in one shot? 2. How to copy or clone an existing model object? 3. How to ensure that only one object can be created? 4. How to update denormalized fields in other models on save? 5. How to perform truncate like operation using Django ORM? 6. What signals are raised by Django during object creation or update? 7. How to convert string to datetime and store in database? Ordering things 1. How to order a queryset in ascending or descending order? 2. How to order a queryset in case insensitive manner? 3. How to order on two fields 4. How to order on a field from a related model (with a foreign key)? 5. How to order on an annotated field? Database Modelling 1. How to model one to one relationships? 2. How to model one to many relationships? 3. How to model many to many relationships? 4. How to include a self-referencing ForeignKey in a model 5. How to convert existing databases to Django models? 6. How to add a model for a database view? 7. How to create a generic model which can be related to any kind of entity? (Eg. a Category or a Comment?) 8. How to specify the table name for a model? 9. How to specify the column name for model field? 10. What is the difference between null=True and blank=True? 11. How to use a UUID instead of ID as prmary key? 12. How to use slug field with django for more readability? 13. How to add multiple databases to the django application ? Testing 1. How to assert that a function used a fixed number of queries? 2. How to speed tests by reusing database between test runs? 3. How to reload a model object from the database?

Programming ASP.NET Core


Dino Esposito - 2018
    Microsoft MVP Dino Esposito introduces proven techniques and well-crafted example code for solving real problems with ASP.NET Core. Step by step, he guides you through using all key ASP.NET Core technologies, including MVC for HTML generation, .NET Core, EF Core, ASP.NET Identity, dependency injection, and much more. Esposito thoroughly covers ASP.NET Core's cross-platform capabilities and what's changed from older ASP.NET versions, but he doesn't stop there: he offers a complete learning path for every developer who wants to build production solutions, including mobile-specific solutions. Microsoft MVP Dino Esposito shows how to: - Create new projects and understand their structure - Set up and use the familiar MVC application model in ASP.NET Core - Write controller class code to govern all stages of request processing - Serve HTML from controllers, or directly via Razor Pages - Master the Razor language for quickly defining the layout of HTML views - Manage cross-cutting concerns such as global configuration data, error and exception handling, controller class design, and dependency injection - Secure applications with user authentication and ASP.NET Core's policy-based user authorization API - Design for efficient data access, and choose the right option for reading and writing data - Build ASP.NET Core Web APIs that return JSON, XML, or other data - Use data binding to programmatically update visual components with fresh information - Build device-friendly web views for iOS and Android - Explore the radically new ASP.NET Core runtime environment and Dependency Injection (DI) infrastructure

Mastering Async/Await


Valeri Karpov - 2018
    No more deeply nested callbacks or convoluted promise chains. With async/await, you can make that dream a reality. Mastering Async/Await provides a concise and comprehensive guide to async/await fundamentals. You'll learn: * Why React and Express don't support async/await out of the box, and how to work around these frameworks' limitations. * How to evaluate whether your favorite npm modules support async/await. * How promises work under the hood, in excruciating detail, by building a Promises/A+ compliant promise library from scratch. * Why async/await is the perfect complement to promises, rather than an alternative. * How to use async/await to handle errors and keep nasty red error messages out of your Chrome console. Mastering Async/Await packs all this and more into 52 terse pages. That means you can get caught up on modern asynchronous JavaScript in hours, not days. Instead of cobbling together copy/pasted snippets from StackOverflow, become the expert your team goes to for all things async.

Don Jones' PowerShell 4N00bs


Don Jones - 2018
    

Kotlin Compact: for Java professionals


Thorsten Schleinzer - 2018
     In compact chapters, concentrating on the essentials, you'll get to know Kotlin within a few afternoons or some subway rides, and you'll soon be able to use it to write your own programs and apps. As the title suggests, "Kotlin Compact" is not explicitly an all-encompassing work on Kotlin. Rather, it focuses on the necessary foundations and best features Kotlin has to offer, and which are most valuable when getting started with Kotlin development. About the author My name is Thorsten Schleinzer, I am a graduate in Media Information Technology and have been a professional software developer and architect for over 20 years. For a long time I have been working intensively with different programming languages. I started with BASIC, got to C/C++ via Pascal/Delphi & Assembler and finally arrived at Java. Although I've been developing with Java since its version 1.2, I've been working with or am still using several other languages: C#, PHP, JavaScript/TypeScript, Ruby, Dart, Lua, Scala, and a few more. But it was only with Kotlin that a new language was able to fully delight me and convince me of a change.

Illustrated C# 7: The C# Language Presented Clearly, Concisely, and Visually


Daniel Solis - 2018
    Whether you're getting to grips with C# for the first time or working to deepen your understanding, you'll find this book to be a clear and refreshing take on each aspect of the language.Figures are of prime importance in this book. While teaching programming seminars, Daniel Solis found that he could almost watch the light bulbs going on over the students' heads as he drew the figures on the whiteboard. In this text, he has distilled each important concept into simple but accurate illustrations. For this latest edition, Dan is joined by fellow experienced teacher and programmer, Cal Schrotenboer, to bring you the very latest C# language features, along with an understanding of the frameworks it most often lives in: .NET and the new .NET Core.For something as intricate and precise as a programming language, there must be text as well as figures. But rather than long, wordy explanations, the authors use short, concise descriptions and bullet lists to make each important piece of information visually distinct and memorable.What You'll LearnStart with an overview of C# programming and how the language works under the hoodPut things in context with a little useful history of C# and .NETKnow how .NET Core fits into the pictureUnderstand how C# handles typesBenefit from clear, concise explanations of each language feature, from classes and inheritance to enumerators and iterators, and the new C# 7.0 tuplesQuickly access material via this book's visual introduction to asynchronous programming with C#Who This Book Is ForNovice to intermediate C# programmers, and more experienced programmers moving to C# from other languages

Django Design Patterns and Best Practices: Industry-standard web development techniques and solutions using Python, 2nd Edition


Arun Ravindran - 2018
    

Mastering Python for Networking and Security: Leverage Python scripts and libraries to overcome networking and security issues


José Manuel Ortega - 2018
    

The Essence of Software Engineering


Volker Gruhn - 2018
    It offers a broad overview of research findings dealing with current practical software engineering issues and also pointers to potential future developments. Celebrating the 20th anniversary of adesso AG, adesso gathered some of the pioneers of software engineering including Manfred Broy, Ivar Jacobson and Carlo Ghezzi at a special symposium,  where they presented their thoughts about latest software engineering research and which are part of this book. This way it offers readers a concise overview of the essence of software engineering, providing valuable insights into the latest methodological research findings and adesso’s experience applying these results in real-world projects.

Play with Minecraft and Learn to Code: A Guide for Beginners


Al Sweigart - 2018
    Using ComputerCraft, a free Minecraft mod, and the Lua programming language (used by professional game developers), you'll write programs to make your bots dig mines, chop wood, craft items, and build anything you can imagine. Sit back, relax, and make your turtle army do the work! The book provides the full code needed to write each program and walks you through it line by line, explaining how things work along the way. By book's end, you'll have a handle on computer science basics, a taste of how fun and powerful coding can be, and plenty of turtle robots at your command.

Programming Skills for Data Science: Start Writing Code to Wrangle, Analyze, and Visualize Data with R (Addison-Wesley Data & Analytics Series)


Michael Freeman - 2018
    

Working with Odoo 11: Configure, Manage, and Customize your Odoo System


Greg Moss - 2018
    

Excel VBA Programming for Dummies


Michael Alexander - 2018
    Excel VBA Programming For Dummies introduces you to a wide array of new Excel options, beginning with the most important tools and operations for the Visual Basic Editor.Inside, you'll find an overview of the essential elements and concepts for programming with Excel. In no time, you'll discover techniques for handling errors and exterminating bugs, working with range objects and controlling program flow, and much more. With friendly advice on the easiest ways to develop custom dialog boxes, toolbars, and menus, readers will be creating Excel applications custom fit to their unique needs!Fully updated for the new Excel 2019 Step-by-step instructions for creating VBA macros to maximize productivity Guidance on customizing your applications so they work the way you want All sample programs, VBA code, and worksheets are available at dummies.com Beginning VBA programmers rejoice! This easy-to-follow book makes it easier than ever to excel at Excel VBA!

Cloud Native Development Patterns and Best Practices


John Gilbert - 2018
    This book focuses on architectural patterns for building highly scalable cloud-native systems. You will learn how the combination of cloud, reactive principles, devops, and automation enable teams to continuously deliver innovation with confidence.Begin by learning the core concepts that make these systems unique. You will explore foundational patterns that turn your database inside out to achieve massive scalability with cloud-native databases. You will also learn how to continuously deliver production code with confidence by shifting deployment and testing all the way to the left and implementing continuous observability in production. There's more—you will also learn how to strangle your monolith and design an evolving cloud-native system.By the end of the book, you will have the ability to create modern cloud-native systems.

Professional C# 7 and .Net Core 2.0


Christian Nagel - 2018
    The latest C# update added many new features that help you get more done in less time, and this book is your ideal guide for getting up to speed quickly. C# 7 focuses on data consumption, code simplification, and performance, with new support for local functions, tuple types, record types, pattern matching, non-nullable reference types, immutable types, and better support for variables. Improvements to Visual Studio will bring significant changes to the way C# developers interact with the space, bringing .NET to non-Microsoft platforms and incorporating tools from other platforms like Docker, Gulp, and NPM. Guided by a leading .NET expert and steeped in real-world practicality, this guide is designed to get you up to date and back to work.With Microsoft speeding up its release cadence while offering more significant improvement with each update, it has never been more important to get a handle on new tools and features quickly. This book is designed to do just that, and more--everything you need to know about C# is right here, in the single-volume resource on every developer's shelf.Tour the many new and enhanced features packed into C# 7 and .NET Core 2.0 Learn how the latest Visual Studio update makes developers' jobs easier Streamline your workflow with a new focus on code simplification and performance enhancement Delve into improvements made for localization, networking, diagnostics, deployments, and more Whether you're entirely new to C# or just transitioning to C# 7, having a solid grasp of the latest features allows you to exploit the language's full functionality to create robust, high -quality apps. Professional C# 7 and .NET Core 2.0 is the one-stop guide to everything you need to know.

Java EE 8 and Angular: A practical guide to building modern single-page applications with Angular and Java EE


Prashant Padmanabhan - 2018
    

Expert Twisted: Event-Driven and Asynchronous Programming with Python


Mark Williams - 2018
    It is written by community leaders who have contributed to many of the projects covered, and share their hard-won insights and experience.Expert Twisted starts with an introduction to event-driven programming, explaining it in the context of what makes Twisted unique. It shows how Twisted's design emphasizes testability as a solution to common challenges of reliability, debugging, and start-to-finish causality that are inherent in event-driven programming. It also explains asynchronous programming, and the importance of functions, deferreds, and coroutines. It then uses two popular applications, treq and klein, to demonstrate calling and writing Web APIs with Twisted.The second part of the book dives into Twisted projects, in each case explaining how the project fits into the Twisted ecosystem and what it does, and offers several examples to bring readers up to speed, with pointers to additional resources for more depth. Examples include using Twisted with Docker, as a WSGI container, for file sharing, and more.What You'll LearnIntegrate Twisted and asyncio using adaptersAutomate software build, test, and release processes with BuildbotCreate clients and servers with AutobahnTransfer files with Magic WormholeDistribute cloud-based file storage with Tahoe LAFSUnderstand HTTP/2 with Python and TwistedSupport for asynchronous tasks using Django ChannelsWho This Book Is ForReaders should have some Python experience and understand the essentials of containers and protocols, but need not be familiar with Twisted or the associated projects covered in the book.

Mastering Xamarin UI Development - Second Edition: Build maintainable, cross platform mobile app UI with the power of Xamarin


Steven F. Daniel - 2018
     Maximize the testability, flexibility, and overall quality of your Xamarin mobile apps. Develop professional grade mobile apps and games for the iOS and Android platforms using C# . Book Description This book will provide you with the knowledge and practical skills that are required to develop real-world Xamarin and Xamarin.Forms applications. You’ll learn how to create native Android app, using the Xamarin.Android framework that will interact with the device camera and photo gallery, and then create a native iOS game using the Xamarin.iOS framework. Moving on, you will learn how to implement complex user-interface layouts as well as creating customizable control elements based on the platform, using XAML and C# code to interact with control elements within your XAML ContentPages.Moving on, you’ll learn about the MVVM architecture pattern and create a NavigationService class to navigate between your Views and ViewModels, as well as implementing data-binding to connect your XAML pages to your ViewModels. You’ll also learn how to add location-based features by creating a LocationService class and using the Xam.Plugin.Geolocator cross-platform library to obtain the current device location. Next, you’ll learn how to work with and implement animations and visual effects within your UI using the PlatformEffects API, using C# code.At the end of this book, you’ll learn how to integrate Microsoft Azure App Services and the Facebook SDK within your app, as well as working with the Razor Templating Engine to build a book library HTML5 solution. This will use the SQLite.net library to store, update, retrieve, and delete information within a SQLite local database, before finally writing unit tests and exploring techniques to deploy to different platforms. What you will learn Downloading and Installing the Visual Studio for Mac IDE Overview and Understanding of the Xamarin Mobile Platform Implement different user-interface layouts and customizable layouts within your XAML so that you can tweak it for a given platform. Understand the MVVM architectural pattern and how to implement this with your apps Build a NavigationService class to enable navigation between your ViewModels Implement Data-Binding to control elements within your XAML pages and ViewModels Work with the Razor Templating Engine to create Models and Razor Pages that communicate with an SQLite database Create and Implement Xamarin.Forms Animations within your applications Work with the Microsoft Azure App Services Platform and the Facebook SDK Who This Book Is For The ideal target audience for this book would be Mobile developers, who want to develop native and cross platform UIs using Xamarin.

Feature Engineering for Machine Learning and Data Analytics


Guozhu Dong - 2018
    Machine learning and data mining algorithms cannot work without data. Little can be achieved if there are few features to represent the underlying data objects, and the quality of results of those algorithms largely depends on the quality of the available features. Feature Engineering for Machine Learning and Data Analytics provides a comprehensive introduction to feature engineering, including feature generation, feature extraction, feature transformation, feature selection, and feature analysis and evaluation.The book presents key concepts, methods, examples, and applications, as well as chapters on feature engineering for major data types such as texts, images, sequences, time series, graphs, streaming data, software engineering data, Twitter data, and social media data. It also contains generic feature generation approaches, as well as methods for generating tried-and-tested, hand-crafted, domain-specific features.The first chapter defines the concepts of features and feature engineering, offers an overview of the book, and provides pointers to topics not covered in this book. The next six chapters are devoted to feature engineering, including feature generation for specific data types. The subsequent four chapters cover generic approaches for feature engineering, namely feature selection, feature transformation based feature engineering, deep learning based feature engineering, and pattern based feature generation and engineering. The last three chapters discuss feature engineering for social bot detection, software management, and Twitter-based applications respectively.This book can be used as a reference for data analysts, big data scientists, data preprocessing workers, project managers, project developers, prediction modelers, professors, researchers, graduate students, and upper level undergraduate students. It can also be used as the primary text for courses on feature engineering, or as a supplement for courses on machine learning, data mining, and big data analytics.

Time-Space, Spiking Neural Networks and Brain-Inspired Artificial Intelligence (Springer Series on Bio- and Neurosystems Book 7)


Nikola K. Kasabov - 2018
    This monograph book presents the classical theory and applications of SNN, including original author’s contribution to the area. The book introduces for the first time not only deep learning and deep knowledge representation in the human brain and in brain-inspired SNN, but takes that further to develop new types of AI systems, called in the book brain-inspired AI (BI-AI).  BI-AI systems are illustrated on: cognitive brain data, including EEG, fMRI and DTI; audio-visual data; brain-computer interfaces; personalized modelling in bio-neuroinformatics; multisensory streaming data modelling in finance, environment and ecology; data compression; neuromorphic hardware implementation. Future directions, such as the integration of multiple modalities, such as quantum-, molecular- and brain information processing, is presented in the last chapter. The book is a research book for postgraduate students, researchers and practitioners across wider areas, including computer and information sciences, engineering, applied mathematics, bio- and neurosciences.

Dynamical Systems with Applications Using Python


Stephen Lynch - 2018
    It emphasizes applications and simulation utilizing Python.The hands-on approach of Dynamical Systems with Applications using Python has minimal prerequisites, only requiring familiarity with ordinary differential equations. It will appeal to advanced undergraduate and graduate students, applied mathematicians, engineers, and researchers in a broad range of disciplines such as population dynamics, biology, chemistry, computing, economics, nonlinear optics, neural networks, and physics.

Tensorflow Deep Learning Projects


Luca Massaron - 2018
    It provides a fast, efficient framework for training different kinds of deep learning models, with very high accuracy. This book is your guide to master deep learning with Tensorflow, with the help of 12 real-world projects.Starting with setting up the right Tensorflow environment for deep learning, you will see how you can train different types of deep learning models using Tensorflow - including Convolutional Neural Networks, Recurrent Neural Networks, LSTMs, and more. While doing so, you will build end-to-end deep learning solutions to tackle different real-world problems in image processing, enterprise AI, natural language processing, to name a few. You will train high performance models to generate captions for images automatically, predict stocks performance, create intelligent chatbots, perform large-scale text classification and more. Some advanced aspects like implementation on an enterprise-scale and reinforcement learning are also covered in this book.By the end of this book, you will have mastered all the concepts of deep learning and their implementation with Tensorflow - and will be able to build and train your own deep learning models with Tensorflow to tackle any kind of problem. What you will learn Set up the Tensorflow environment for deep learning Construct your own convnets for effective image processing Use LSTMs for caption generation for images Forecast stock prediction accurately with a LSTM architecture Learn what semantic matching is by detecting duplicate Quora questions Set up an AWS instance for distributed computing with Tensorflow to classify large amounts of Images Train and set up an intelligent chatbot to understand and interpret human input Build an AI capable of playing Pacman by itself and winning

Python Data Analytics: With Pandas, Numpy, and Matplotlib


Fabio Nelli - 2018
    You'll review scientific computing with NumPy, visualization with matplotlib, and machine learning with scikit-learn. This revision is fully updated with new content on social media data analysis, image analysis with OpenCV, and deep learning libraries. Each chapter includes multiple examples demonstrating how to work with each library. At its heart lies the coverage of pandas, for high-performance, easy-to-use data structures and tools for data manipulationAuthor Fabio Nelli expertly demonstrates using Python for data processing, management, and information retrieval. Later chapters apply what you've learned to handwriting recognition and extending graphical capabilities with the JavaScript D3 library. Whether you are dealing with sales data, investment data, medical data, web page usage, or other data sets, Python Data Analytics, Second Edition is an invaluable reference with its examples of storing, accessing, and analyzing data.What You'll LearnUnderstand the core concepts of data analysis and the Python ecosystemGo in depth with pandas for reading, writing, and processing dataUse tools and techniques for data visualization and image analysisExamine popular deep learning libraries Keras, Theano, TensorFlow, and PyTorchWho This Book Is ForExperienced Python developers who need to learn about Pythonic tools for data analysis

Php, Mysql, & JavaScript All-In-One for Dummies


Richard Blum - 2018
    PHP, mySQL, JavaScript, and other web-building languages serve as the foundation for application development and programming projects at all levels of the web.Dig into this all-in-one book to get a grasp on these in-demand skills, and figure out how to apply them to become a professional web builder. You'll get valuable information from seven handy books covering the pieces of web programming, HTML5 & CSS3, JavaScript, PHP, MySQL, creating object-oriented programs, and using PHP frameworks.Helps you grasp the technologies that power web applications Covers PHP version 7.2 Includes coverage of the latest updates in web development Perfect for developers to use to solve problems This book is ideal for the inexperienced programmer interested in adding these skills to their toolbox. New coders who've made it through an online course or boot camp will also find great value in how this book builds on what you already know.

The Internals of PostgreSQL


Hironobu Suzuki - 2018
    The main purposes of this document are to explain how each subsystem works, and to provide the whole picture of PostgreSQL.

Mastering iOS 12 Programming: Build professional-grade iOS applications with Swift and Xcode 10, 3rd Edition


Donny Wals - 2018
    However, the journey to mastering iOS development and the new features of iOS 12 is not straightforward. This book will help you make that transition smoothly and easily. With the help of Swift 4.2, you'll not only learn how to program for iOS 12, but also how to write efficient, readable, and maintainable Swift code that maintains industry best practices.Mastering iOS 12 Programming will help you build real-world applications and reflect the real-world development flow. You will also find a mix of thorough background information and practical examples, teaching you how to start implementing your newly gained knowledge.By the end of this book, you will have got to grips with building iOS applications that harness advanced techniques and make best use of the latest and greatest features available in iOS 12.What you will learnBuild a professional iOS application using Xcode 10 and Swift 4.2Use AutoLayout to create complex layouts that look great on every deviceDelve into advanced animations with UIViewPropertyAnimator and UIKit DynamicsEnhance your app by using instruments and building your own profiling toolsIntegrate iMessage, Siri, and more in your app through app extensionsTrain and use machine learning models with Core ML 2 and Create MLCreate engaging augmented reality experiences with ARKit 2

Monetizing Machine Learning: Quickly Turn Python ML Ideas into Web Applications on the Serverless Cloud


Manuel Amunategui - 2018
    Some of the most popular serverless cloud providers are covered in this book—Amazon, Microsoft, Google, and PythonAnywhere. You will work through a series of common Python data science problems in an increasing order of complexity. The practical projects presented in this book are simple, clear, and can be used as templates to jump-start many other types of projects. You will learn to create a web application around numerical or categorical predictions, understand the analysis of text, create powerful and interactive presentations, serve restricted access to data, and leverage web plugins to accept credit card payments and donations. You will get your projects into the hands of the world in no time.Each chapter follows three steps: modeling the right way, designing and developing a local web application, and deploying onto a popular and reliable serverless cloud provider. You can easily jump to or skip particular topics in the book. You also will have access to Jupyter notebooks and code repositories for complete versions of the code covered in the book. What You’ll Learn Extend your machine learning models using simple techniques to create compelling and interactive web dashboards Leverage the Flask web framework for rapid prototyping of your Python models and ideas Create dynamic content powered by regression coefficients, logistic regressions, gradient boosting machines, Bayesian classifications, and more Harness the power of TensorFlow by exporting saved models into web applications Create rich web dashboards to handle complex real-time user input with JavaScript and Ajax to yield interactive and tailored content Create dashboards with paywalls to offer subscription-based access Access API data such as Google Maps, OpenWeather, etc. Apply different approaches to make sense of text data and return customized intelligence Build an intuitive and useful recommendation site to add value to users and entice them to keep coming back Utilize the freemium offerings of Google Analytics and analyze the results Take your ideas all the way to your customer's plate using the top serverless cloud providers Who This Book Is For Those with some programming experience with Python, code editing, and access to an interpreter in working order. The book is geared toward entrepreneurs who want to get their ideas onto the web without breaking the bank, small companies without an IT staff, students wanting exposure and training, and for all data science professionals ready to take things to the next level.

Unity 2018 Cookbook: Over 160 recipes to take your 2D and 3D game development to the next level, 3rd Edition


Matt Smith - 2018
    

Computer Graphics Programming in OpenGL Using C++


V. Scott Gordon - 2018
    It is appropriate for computer science undergraduate graphics programming courses and for professionals who are interested in mastering 3D graphics skills. It has been designed in a 4-color, "teach-yourself" format with numerous examples that the reader can run just as presented. The book is unique in its heavy emphasis on student learning, making the complex topic of shader programming as accessible as possible. Includes companion files with source code and images.Features: - Covers OpenGL 4.0+ shader programming using C++, using Windows or Mac.- Includes companion files with code, models, textures, images from the book, and more.- Illustrates every technique with complete running code examples. Everything needed to install and run every example is provided and fully explained.- Includes step-by-step instruction for every GLSL programmable pipeline stage (vertex, tessellation, geometry, and fragment) -- with examples.- Explains how to install and use essential OpenGL libraries such as GLEW, GLFW, glm, and others, for both Windows and Mac.

The Modern JavaScript Collection


Aurelio De RosaJames Kolce - 2018
    Not only are new tools and frameworks introduced and developed at a rapid rate, the language itself has undergone big changes with the introduction of ES2015 (aka ES6) and further revisions. Understandably, many articles have been written complaining about how difficult it is to learn modern JavaScript development these days. We're aiming to minimize that confusion with this set of books on modern JavaScript.This collection contains: Practical ES6 is a collection of articles introducing many of the powerful new JavaScript language features that were introduced in ECMAScript 2015, as well as features introduced in ECMAScript 2016 and 2017. It also takes a look at the features planned for ECMAScript 2018 in this rapidly evolving language. JavaScript: Best Practice presents articles discussing modern JavaScript best practice, enabling you to write more powerful code that is clean, performant, maintainable, and reusable. 6 JavaScript Projects presents six complete JavaScript projects; each taking advantage of modern JavaScript and its ecosystem. You'll learn to build several different apps, and along the way you'll pick up a ton of useful advice, tips, and techniques. Modern JavaScript Tools & Skills contains a collection of articles outlining essential tools and skills that every modern JavaScript developer should know. This book is for all front-end developers who wish to improve their JavaScript skills. You'll need to be familiar with HTML and CSS and have a reasonable level of understanding of JavaScript in order to follow the discussion.

Cracking the Full Stack Developer Interview: The Complete Handbook to Land the Job


Hirako San - 2018
    This handbooks contains proven approaches to pass the screening phase of the most prestigious IT companies. About the author I am a software engineer, having worked as a developer, then as a software architect, I have taken and conducted hundreds of interviews for full stack developer roles. The condensed practical questions listed in this book reflect what is commonly asked by recruiting managers and specialised senior engineers alike. What's inside - Over 250 technical technical interview questions, ranging from the basics to the trickiest problems.- Hints on how to dissect logical challenges.- A walk-through of how to listen to questions and communicate solutions.- Coverage of data structure and core algorithms.- List of detailed interview formats showing you how Google, Facebook and others hire developers.- Insight on how to prepare for and excel on the soft skills and behaviour side of the interview.- Over 150 non technical questions- Guide on how to write your resume and pass the screening phase Topics Covered Programming Principles. Algorithms Databases including NoSQL Networking Web Application Security HTML5 & CSS JavaScript on the front and back end Commonly asked questions on popular frameworks and libraries 12 Challenging puzzles How to write the perfect resume Interview Formats exposed Non Technical interview questions asked by renowned tech companies  Negotiation tips Interview Cheat Cheats

Gentle Introduction to Dependent Types with Idris


Boro Sitnikovski - 2018
    Idris is a programming language that supports dependent types. We will learn about the mathematical foundations, and then write correct software and mathematically prove properties about it.This book aims to be accessible to novices that have no prior experience beyond high school mathematics. Thus, this book is designed to be self-contained.The first part of this book serves as an introduction to the theory behind Idris, while the second part is a practical introduction to Idris with examples.

You, I, and ReactiveUI


Kent Boogaart - 2018
    

Ng-Book: The Complete Guide to Angular


Nathan Murray - 2018
    The in-depth, complete, and up-to-date book on Angular. Become an Angular expert today.Updated for Angular, Angular CLI, and Community Style GuideReady to master Angular?What if you could master the entire framework - with solid foundations - in less time without beating your head against a wall? Imagine how quickly you could work if you knew the best practices and the best tools?Stop wasting your time searching and have everything you need to be productive in one, well-organized place, with complete examples to get your project up without needing to resort to endless hours of research.You will learn what you need to know to work professionally with ng-book: The Complete Book on Angular.Get up and running quicklyThe first chapter opens with building your first Angular app. Within the first few minutes, you'll know enough to have an app runningLots of Sample Apps and CodeWhen you buy ng-book, you're not buying just a book, but dozens of code examples. Every chapter in the book comes with a complete project that uses the concepts in the chapter. The code is available for download, free from our website.Table of ContentsWriting your first Angular web applicationHow Angular WorksBuilt-in DirectivesForms in Angular 2HTTP and APIsRoutingDependency InjectionData Architecture in Angular 2Data Architecture with Observables and RxJSData Architecture with ReduxRedux and TypeScriptData Architecture with ReduxAdvanced ComponentsTestingConverting an Angular 1 app to AngularComprehensiveYou'll learn core Angular concepts - from how Angular works under the hood, to rich interactive components, from in-depth testing to real-world applicationsBest PracticesLearn Angular best practices, such as: testing, code organization, and how to structure your app for performance. We'll walk through practical, common examples of how to implement complete components of your applicationsExample Apps included in the bookThe book comes with sample apps that show you how to create:A component-based Reddit clone A real-time chat app using RxJS ObservablesA YouTube search-as-you-type app A Spotify search for tracks with playable song preview Plus lots more mini-examples that show you how to write Components, how to use Forms, and how to use APIs The code examples currently have over 5,500] lines of runnable code (TypeScript, non-comment lines) What our Customers Say"Fantastic work guys! I have no idea where I'd be with Angular without ng-book. You guys have made this SOOOO much easier to learn and keep up with. Thanks again..you guys are awesome!" -- Jacob Cheriathundam"Just finished ng-book2. I think it is the best learning material one can find about Angular today." -- Jegor UglovFAQWhat version does the book cover? This revision of the book covers up to angular-4.1.0. An updated version of the code is available for free at our website.Do I have to know Angular 1? Nope! We don't assume that you've used Angular 1. This book teaches Angular from the ground up. Of course, if you've used Angular 1, we'll point out common ideas (because there are many), but ng-book stands on its ownIs ng-book an upgrade to ng-book 1? No. This is a completely new book and shares no content or code with ng-book 1. Angular 1 and Angular 2+ are two different frameworks and ng-book 1 and ng-book are two different books.