JavaScript Frameworks for Modern Web DevelopmentEnrich your software design skills and take a guided tour of the wild, vast, and untamed frontier that is JavaScript development. Especially useful for frontend developers, this revision includes specific chapters on React and VueJS, as well as an updated one on Angular. To help you get the most of your new skills, each chapter also has a "further reading" section.
This book will serve as an introduction to both new and well established libraries and frameworks, such as Angular, VueJS, React, Grunt, Yeoman, RequireJS, Browserify, Knockout, Kraken, Async.js, Underscore, and Lodash. It also covers utilities that have gained popular traction and support from seasoned developers and tools applicable to the entire development stack, both client - and server-side.
While no single book can possibly cover every JavaScript library of value, JavaScript Frameworks for Modern Web Development focuses on incredibly useful libraries and frameworks that production software uses. You will be trea ...
The Ray Tracer ChallengeBrace yourself for a fun challenge: build a photorealistic 3D renderer from scratch! It's easier than you think. 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.
The 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; ...
Practical Shader DevelopmentIt's time to stop thinking that shaders are magical. You can use shaders to turn data into stunning visual effects, and get your hands dirty by building your own shader with this step-by-step introduction to shader development for game and graphics developers. Learn how to make shaders that move, tint, light up, and look awesome, all without cracking open a math textbook.
Practical Shader Development teaches the theory behind how shaders work. The book also shows you how to apply that theory to create eye-popping visual effects. You'll learn to profile and optimize those effects to make sure your projects keep running quickly with all their new visuals. You'll learn good theory, good practices, and without getting bogged down in the math.
Author Kyle Halladay explains the fundamentals of shader development through simple examples and hands-on experiments. He teaches you how to find performance issues in shaders you are using and then how to fix them. Kyle explains (and contrasts) ...
Python for TeenagersDiscover everything you need to know about Python to turn your passion of programming into a job you'll love. Fueled by fun and practical examples, this book gives high schoolers who want learn an easy programming language ideas for how to leverage them in the workforce.
Start with the basics and before you know it, you'll be building your own web sites, doing white-hat hacking, finding code bugs and errors, and creating games, including using Python to roll characters for RPGs. Every chapter is relaxed and informal, like learning with a cool teacher all the time.
Computers, phones and the web are your playground, and you'll be ready to join the party with your own content. Going beyond posts and uploads means learning to program, and Python is a great choice to get started. It's quick to learn, it's flexible, and if you want, it may get you a Python job that pays more than minimum wage when you're out of school. Python for Teenagers is the most fun you'll have while learning. ...
Beginning Azure IoT Edge ComputingUse a step-by-step process to create and deploy your first Azure IoT Edge solution.
Modern day developers and architects in today's cloud-focused world must understand when it makes sense to leverage the cloud. Computing on the edge is a new paradigm for most people. The Azure IoT Edge platform uses many existing technologies that may be familiar to developers, but understanding how to leverage those technologies in an edge computing scenario can be challenging.
Beginning Azure IoT Edge Computing demystifies computing on the edge and explains, through concrete examples and exercises, how and when to leverage the power of intelligent edge computing. It introduces the possibilities of intelligent edge computing using the Azure IoT Edge platform, and guides you through hands-on exercises to make edge computing approachable, understandable, and highly useful.
Through user-friendlydiscussion you will not only understand how to build edge solutions, but also when to build them. By e ...
Design Patterns in .NETImplement design patterns in .NET using the latest versions of the C# and F# languages. This book provides a comprehensive overview of the field of design patterns as they are used in today's developer toolbox.
Using the C# programming language, Design Patterns in .NET explores the classic design pattern implementation and discusses the applicability and relevance of specific language features for the purpose of implementing patterns. You will learn by example, reviewing scenarios where patterns are applicable. MVP and patterns expert Dmitri Nesteruk demonstrates possible implementations of patterns, discusses alternatives and pattern inter-relationships, and illustrates the way that a dedicated refactoring tool (ReSharper) can be used to implement design patterns with ease.
Know the latest pattern implementations available in C# and F#; Refer to researched and proven variations of patterns; Study complete, self-contained examples including many that cover advanced scenarios; Use ...
AI BlueprintsAI Blueprints gives you a working framework and the techniques to build your own successful AI business applications. You'll learn across six business scenarios how AI can solve critical challenges with state-of-the-art AI software libraries and a well thought out workflow. Along the way you'll discover the practical techniques to build AI business applications from first design to full coding and deployment.
The AI blueprints in this book solve key business scenarios. The first blueprint uses AI to find solutions for building plans for cloud computing that are on-time and under budget. The second blueprint involves an AI system that continuously monitors social media to gauge public feeling about a topic of interest - such as self-driving cars. You'll learn how to approach AI business problems and apply blueprints that can ensure success.
The next AI scenario shows you how to approach the problem of creating a recommendation engine and monitoring how those recommendations perfor ...
Learn Linux in a Month of LunchesLearn Linux in a Month of Lunches shows you how to install and use Linux for all the things you do with your OS, like connecting to a network, installing software, and securing your system. Whether you're just curious about Linux or have to get up and running for your job, you'll appreciate how this book concentrates on the tasks you need to know how to do in 23 easy lessons.
If you've only used Windows or Mac OS X, you may be daunted by the Linux operating system. And yet learning Linux doesn't have to be hard, and the payoff is great. Linux is secure, flexible, and free. It's less susceptible to malicious attacks, and when it is attacked, patches are available quickly. If you don't like the way it looks or behaves, you can change it. And best of all, Linux allows users access to different desktop interfaces and loads of software, almost all of it completely free.
Learn Linux in a Month of Lunches shows you how to install and use Linux for all the things you do with your OS, lik ...
Progressive Web Apps with AngularHarness the power of Angular to build fast, high performance progressive web apps that work offline. Learn exactly how to create an Angular Progressive Web App (PWA) from scratch, how you can use different tools to audit and improve it, and leverage Angular CLI or Workbox to turn your app into a PWA.
Using browser APIs - including the Credential Management, Payment Request, Geolocation, Web Bluetooth, WebUSB and Generic Sensors APIs - you can unleash the potential of PWAs and build applications that enhance user experience. Angular's game-changing built-in features, including the Angular service worker module, can be leveraged to construct responsive and reliable PWAs that can look and feel just like native mobile apps.
You'll learn how to boost your app speed, how to increase user engagement using push notifications, and how to implement offline storage and different caching APIs in Angular. You'll even see how to convert an existing Angular app into a PWA.
Whether you're ne ...
A Scrum BookGain insights and depth of rationale into Scrum from many highly respected world authorities, including one of its founders, who lead you through the deep foundations of Scrum's structure and practice. Enhance and customize your Scrum practice with ninety-four organizational building blocks, called patterns, that you can freely and flexibly choose from to fit your needs. Understand and appreciate the history of Scrum and the role it plays in solving common problems in product development.
Building a successful product usually involves teams of people, and many choose the Scrum approach to aid in creating products that deliver the highest possible value. Implementing Scrum gives teams a collection of powerful ideas they can assemble to fit their needs and meet their goals. The ninety-four patterns contained within are elaborated nuggets of insight into Scrum's building blocks, how they work, and how to use them. They offer novices a roadmap for starting from scratch, yet they help in ...