Problem Solving with Algorithms and Data StructuresThe study of algorithms and data structures is central to understanding what computer science is all about. Learning computer science is not unlike learning any other type of difficult subject matter. The only way to be successful is through deliberate and incremental exposure to the fundamental ideas. A beginning computer scientist needs practice so that there is a thorough understanding before continuing on to the more complex parts of the curriculum. In addition, a beginner needs to be given the opportunity to be successful and gain confidence. This open book is designed to serve as a text for a first course on data structures and algorithms, typically taught as the second course in the computer science curriculum. Even though the second course is considered more advanced than the first course, this book assumes you are beginners at this level. You may still be struggling with some of the basic ideas and skills from a first computer science course and yet be ready to further explore ...
Learning TensorFlow.jsGiven the demand for AI and the ubiquity of JavaScript, TensorFlow.js was inevitable. With this Google framework, seasoned AI veterans and web developers alike can help propel the future of AI-driven websites. In this guide, author Gant Laborde (Google Developer Expert in machine learningand the web) provides a hands-on end-to-end approach to TensorFlow.js fundamentals for a broad technical audience that includes data scientists, engineers, web developers, students, and researchers.
You'll begin by working through some basic examples in TensorFlow.js before diving deeper into neural network architectures, DataFrames, TensorFlow Hub, model conversion, transfer learning, and more. Once you finish this book, you'll know how to build and deploy production-readydeep learning systems with TensorFlow.js.
- Explore tensors, the most fundamental structure of machine learning;
- Convert data into tensors and back with a real-world example;
- Combine AI with the web using TensorFlow.js; ...
Mastering Python for BioinformaticsLife scientists today urgently need training in bioinformatics skills. Too many bioinformatics programs are poorly written and barely maintained, usually by students and researchers who've never learned basic programming skills. This practical guide shows postdoc bioinformatics professionals and students how to exploit the best parts of Python to solve problems in biology while creating documented, tested, reproducible software.
Ken Youens-Clark, author of Tiny Python Projects (Manning), demonstrates not only how to write effective Python code but also how to use tests to write and refactor scientific programs. You'll learn the latest Python features and tools including linters, formatters, type checkers, and tests to create documented and tested programs. You'll also tackle 14 challenges in Rosalind, a problem-solving platform for learning bioinformatics and programming.
- Create command-line Python programs to document and validate parameters
- Write tests to verify refactor p ...
PowerShell Pocket Reference, 3rd EditionThis portable reference to PowerShell summarizes the command shell and scripting language and provides a concise guide to the many tasks that make PowerShell so useful. If you're a busy administrator and don't have time to plow through huge books or in-depth online searches, this is the ideal on-the-job tool.
Written by PowerShell team member Lee Holmes and excerpted from his PowerShell Cookbook, this edition offers up-to-date coverage of Windows PowerShell 5.1 and open source PowerShell Core up to 7 and beyond.
Beginning with a guided tour of PowerShell, this handy guide covers:
- PowerShell language and environment;
- Regular expression reference;
- XPath quick reference;
- .NET string formatting;
- .NET DateTime formatting;
- Selected .NET classes and their uses;
- WMI reference;
- Selected COM objects and their uses;
- Standard PowerShell verbs. ...
Beginning Entity Framework Core 5Use the code-driven approach of Entity Framework Core 5 to build a functional web application that accesses a database on the backend server. This book covers the common use cases of Entity Framework that a developer needs to master in order to begin building applications that run against a database. Throughout the book you will be shown how to use Entity Framework Core 5 by implementing a simple ASP.NET Core Razor Pages line-of-business application. This example application will be similar to those you might write yourself and deploy to your users on a web or intranet site via a browser.
This book takes a code-first approach in which your database will be created and seeded programmatically. You won't need to create the database through your database engine's interface. Instead, you will be shown how to define your data model in Entity Framework, and then let Entity Framework do the work of creating your database and schema for you. From there you will learn how to seed your databa ...
Windows 10 for the Internet of Things, 2nd EditionManage and control Internet-connected devices from Windows and Raspberry Pi. Master the Windows 10 IoT Core application programming interface and feature set to develop Internet of Things applications on the Raspberry Pi using your Windows and .NET programming skills. New in this edition is coverage of enterprise-level tools and features in the Windows 10 IoT Enterprise server operating system, allowing you to manage IoT solutions having large numbers of devices and to deploy applications to enterprise-grade hardware.
Windows 10 for the Internet of Things presents a set of example projects covering a wide range of techniques designed specifically to jump start your own Internet of Things creativity. You'll learn everything you need to know about Windows IoT Core to develop Windows and IoT applications that run on single board computers such as the Raspberry Pi. You'll learn to develop for the Raspberry PI using native Windows and all the related programming skills that you have buil ...
Seeing TheoryStatistics is quickly becoming the most important and multi-disciplinary field of mathematics. According to the American Statistical Association, statistician is one of the top ten fastest-growing occupations and statistics is one of the fastest-growing bachelor degrees. Statistical literacy is essential to our data driven society.
Despite the increased importance and demand for statistical competence, the pedagogical approaches in statistics have barely changed. Using Mike Bostock's data visualization software, D3.js, Seeing Theory visualizes the fundamental concepts covered in an introductory college statistics or Advanced Placement statistics class.
The authors have developed a collection of 15 interactive visualizations, each of which presents a bite-sized concept that is encountered in an introductory statistics curriculum. ...
Java-Based Real-Time ProgrammingDevelopment of embedded software has for some years mainly been carried out by hardware-aware programming using the C-language, and in some cases even in assembly languages. This works well in simple cases when the application demands and the hardware are known at design time, and the size of the (statically defined) software is small. When applications increase in size and must be rapidly developed (time to market), and perhaps need to be on-line upgradeable, more programming support is needed. In particular, for critical applications (safety critical as in an airplane, mission critical as in space/military/nuclear tasks, economically critical if the survival of the company depends on the reliability of the computer system, etc.) special measures must be taken to limit the possible (faulty) influences of one software function on another part of the system. Therefore, we have to abandon programming in C or C++ for large/complex systems. Instead, we have to base the core development on ...
Linux System Programming TechniquesLinux is the world's most popular open source operating system (OS). Linux System Programming Techniques will enable you to extend the Linux OS with your own system programs and communicate with other programs on the system.
The book begins by exploring the Linux filesystem, its basic commands, built-in manual pages, the GNU compiler collection (GCC), and Linux system calls. You'll then discover how to handle errors in your programs and will learn to catch errors and print relevant information about them. The book takes you through multiple recipes on how to read and write files on the system, using both streams and file descriptors. As you advance, you'll delve into forking, creating zombie processes, and daemons, along with recipes on how to handle daemons using systemd. After this, you'll find out how to create shared libraries and start exploring different types of interprocess communication (IPC). In the later chapters, recipes on how to write programs using POSIX threads and h ...
Hands-On Financial Trading with PythonAlgorithmic trading helps you stay ahead of the markets by devising strategies in quantitative analysis to gain profits and cut losses.
The book starts by introducing you to algorithmic trading and explaining why Python is the best platform for developing trading strategies. You'll then cover quantitative analysis using Python, and learn how to build algorithmic trading strategies with Zipline using various market data sources. Using Zipline as the backtesting library allows access to complimentary US historical daily market data until 2018. As you advance, you will gain an in-depth understanding of Python libraries such as NumPy and pandas for analyzing financial datasets, and explore Matplotlib, statsmodels, and scikit-learn libraries for advanced analytics. You'll also focus on time series forecasting, covering pmdarima and Facebook Prophet.
By the end of this trading book, you will be able to build predictive trading signals, adopt basic and advanced algorithmic trading strat ...