Learning FPGAsLearn how to design digital circuits with FPGAs (field-programmable gate arrays), the devices that reconfigure themselves to become the very hardware circuits you set out to program. With this practical guide, author Justin Rajewski shows you hands-on how to create FPGA projects, whether you're a programmer, engineer, product designer, or maker. You'll quickly go from the basics to designing your own processor.
Designing digital circuits used to be a long and costly endeavor that only big companies could pursue. FPGAs make the process much easier, and now they're affordable enough even for hobbyists. If you're familiar with electricity and basic electrical components, this book starts simply and progresses through increasingly complex projects.
Set up your environment by installing Xilinx ISE and the author's Mojo IDE; Learn how hardware designs are broken into modules, comparable to functions in a software program; Create digital hardware designs and learn the basics on how they ...
Interactive Data Visualization for the Web, 2nd EditionCreate and publish your own interactive data visualization projects on the web—even if you have little or no experience with data visualization or web development. It's inspiring and fun with this friendly, accessible, and practical hands-on introduction. This fully updated and expanded second edition takes you through the fundamental concepts and methods of D3, the most powerful JavaScript library for expressing data visually in a web browser.
Ideal for designers with no coding experience, reporters exploring data journalism, and anyone who wants to visualize and share data, this step-by-step guide will also help you expand your web programming skills by teaching you the basics of HTML, CSS, JavaScript, and SVG.
Learn D3 4.x—the latest D3 version—with downloadable code and over 140 examples; Create bar charts, scatter plots, pie charts, stacked bar charts, and force-directed graphs; Use smooth, animated transitions to show changes in your data; Introduce interactivity to h ...
Mobile Game Development with UnityDo you want to build mobile games, but lack game development experience? No problem. This practical guide shows you how to create beautiful, interactive content for iOS and Android devices with the Unity game engine.
Authors Jon Manning and Paris Buttfield-Addison (iOS Swift Game Development Cookbook) provide a top-to-bottom overview of Unity's features with specific, project-oriented guidance on how to use them in real game situations. Over the course of this book, you'll learn hands-on how to build 2D and 3D games from scratch that will hook and delight players. If you have basic programming skills, you're ready to get started.
Explore the basics of Unity, and learn how to structure games, graphics, scripting, sounds, physics, and particle systems; Use 2D graphics and physics features to build a side-scrolling action game; Create a 3D space combat simulator with projectile shooting and respawning objects, and learn how to manage the appearance of 3D models; Dive into Unity's ad ...
Data Science with JavaData Science is booming thanks to R and Python, but Java brings the robustness, convenience, and ability to scale critical to today's data science applications. With this practical book, Java software engineers looking to add data science skills will take a logical journey through the data science pipeline. Author Michael Brzustowicz explains the basic math theory behind each step of the data science process, as well as how to apply these concepts with Java.
You'll learn the critical roles that data IO, linear algebra, statistics, data operations, learning and prediction, and Hadoop MapReduce play in the process. Throughout this book, you'll find code examples you can use in your applications. Examine methods for obtaining, cleaning, and arranging data into its purest form;Understand the matrix structure that your data should take;Learn basic concepts for testing the origin and validity of data;Transform your data into stable and usable numerical val ...
Reinforcement LearningMaster reinforcement learning, a popular area of machine learning, starting with the basics: discover how agents and the environment evolve and then gain a clear picture of how they are inter-related. You'll then work with theories related to reinforcement learning and see the concepts that build up the reinforcement learning process.
Reinforcement Learning discusses algorithm implementations important for reinforcement learning, including Markov's Decision process and Semi Markov Decision process. The next section shows you how to get started with Open AI before looking at Open AI Gym. You'll then learn about Swarm Intelligence with Python in terms of reinforcement learning.
The last part of the book starts with the TensorFlow environment and gives an outline of how reinforcement learning can be applied to TensorFlow. There's also coverage of Keras, a framework that can be used with reinforcement learning. Finally, you'll delve into Google's Deep Mind and see scenarios where rein ...
Introducing Ethereum and SolidityLearn how to use Solidity and the Ethereum project - second only to Bitcoin in market capitalization. Blockchain protocols are taking the world by storm, and the Ethereum project, with its Turing-complete scripting language Solidity, has rapidly become a front-runner. This book presents the blockchain phenomenon in context; then situates Ethereum in a world pioneered by Bitcoin.
See why professionals and non-professionals alike are honing their skills in smart contract patterns and distributed application development. You'll review the fundamentals of programming and networking, alongside its introduction to the new discipline of crypto-economics. You'll then deploy smart contracts of your own, and learn how they can serve as a back-end for JavaScript and HTML applications on the Web.
Many Solidity tutorials out there today have the same flaw: they are written for "advanced" JavaScript developers who want to transfer their skills to a blockchain environment. Introducing Ethereum and ...
Java Game Development with LibGDXLearn to design and create video games using the Java programming language and the LibGDX software library. Working through the examples in this book, you will create 12 game prototypes in a variety of popular genres, from collection-based and shoot-em-up arcade games to side-scrolling platformers and sword-fighting adventure games. With the flexibility provided by LibGDX, specialized genres such as card games, rhythm games, and visual novels are also covered in this book.
Major updates in this edition include chapters covering advanced topics such as alternative sources of user input, procedural content generation, and advanced graphics. Appendices containing examples for game design documentation and a complete JavaDoc style listing of the extension classes developed in the book have also been added.Create 12 complete video game projects;Master advanced Java programming concepts, including data structures, encapsulation, inheritance, and algorithms, in the context o ...
Developing Conversational Interfaces for iOSLearn how to incorporate your own conversational interfaces into iOS applications. This book will help you work comfortably multiple frameworks, including Apple's Speech and SiriKit frameworks; Google's API.AI conversational interfaces platform; and Facebook's Wit.ai.
You'll explore the basics of natural language processing on iOS and see how to develop sentiment analysis with Apple's new Core ML framework. You'll also understand the primary challenges conversational interfaces face, and how to future proof your design.
With the introduction of SiriKit and the Speech framework, iOS developers now have huge opportunities to work with conversational interfaces in their apps. The latest advancements in natural language processing and machine learning allow for the development of complex conversational interfaces. This book incorporates all aspects of conversational interfaces on iOS - from voice transcription to natural language processing and entities extraction to text to speech ...
Laravel: Up and RunningWhat sets Laravel apart from other PHP web frameworks? Speed and simplicity, for starters. This rapid application development framework and its vast ecosystem of tools let you quickly build new sites and applications with clean, readable code. With this practical guide, Matt Stauffer - a leading teacher and developer in the Laravel community - provides the definitive introduction to one of today's most popular web frameworks.
The book's high-level overview and concrete examples will help experienced PHP web developers get started with Laravel right away. By the time you reach the last page, you should feel comfortable writing an entire application in Laravel from scratch.
Dive into several features of this framework, including:Blade, Laravel's powerful, custom templating tool;Tools for gathering, validating, normalizing, and filtering user-provided data;Laravel's Eloquent ORM for working with the application's databases;The Illuminate request ob ...
Foundations for Analytics with PythonIf you're like many of Excel's 750 million users, you want to do more with your data - like repeating similar analyses over hundreds of files, or combining data in many files for analysis at one time. This practical guide shows ambitious non-programmers how to automate and scale the processing and analysis of data in different formats - by using Python.
After author Clinton Brownley takes you through Python basics, you'll be able to write simple scripts for processing data in spreadsheets as well as databases. You'll also learn how to use several Python modules for parsing files, grouping data, and producing statistics. No programming experience is necessary.Create and run your own Python scripts by learning basic syntax;Use Python's csv module to read and parse CSV files;Read multiple Excel worksheets and workbooks with the xlrd module;Perform database operations in MySQL or with the mysqlclient module;Create Python applications to find spe ...