Programming

Our online library contains some publications, thanks to which programming will have no secrets from you. The books included here will introduce you to such languages as HTML, JavaScript, Python and CSS. Due to them, you will also learn how to create effective algorithms, design mobile applications or take care of the correct information architecture on websites.

1705
Ebook

Learn LLVM 12. A beginner's guide to learning LLVM compiler tools and core libraries with C++

Kai Nacke

LLVM was built to bridge the gap between compiler textbooks and actual compiler development. It provides a modular codebase and advanced tools which help developers to build compilers easily. This book provides a practical introduction to LLVM, gradually helping you navigate through complex scenarios with ease when it comes to building and working with compilers.You’ll start by configuring, building, and installing LLVM libraries, tools, and external projects. Next, the book will introduce you to LLVM design and how it works in practice during each LLVM compiler stage: frontend, optimizer, and backend. Using a subset of a real programming language as an example, you will then learn how to develop a frontend and generate LLVM IR, hand it over to the optimization pipeline, and generate machine code from it. Later chapters will show you how to extend LLVM with a new pass and how instruction selection in LLVM works. You’ll also focus on Just-in-Time compilation issues and the current state of JIT-compilation support that LLVM provides, before finally going on to understand how to develop a new backend for LLVM.By the end of this LLVM book, you will have gained real-world experience in working with the LLVM compiler development framework with the help of hands-on examples and source code snippets.

1706
Ebook

Learn LLVM 17. A beginner's guide to learning LLVM compiler tools and core libraries with C++ - Second Edition

Kai Nacke, Amy Kwan

LLVM was built to bridge the gap between the theoretical knowledge found in compiler textbooks and the practical demands of compiler development. With a modular codebase and advanced tools, LLVM empowers developers to build compilers with ease. This book serves as a practical introduction to LLVM, guiding you progressively through complex scenarios and ensuring that you navigate the challenges of building and working with compilers like a pro.The book starts by showing you how to configure, build, and install LLVM libraries, tools, and external projects. You’ll then be introduced to LLVM's design, unraveling its applications in each compiler stage: frontend, optimizer, and backend. Using a real programming language subset, you'll build a frontend, generate LLVM IR, optimize it through the pipeline, and generate machine code. Advanced chapters extend your expertise, covering topics such as extending LLVM with a new pass, using LLVM tools for debugging, and enhancing the quality of your code. You'll also focus on just-in-time compilation issues and the current state of JIT-compilation support with LLVM. Finally, you’ll develop a new backend for LLVM, gaining insights into target description and how instruction selection works.By the end of this book, you'll have hands-on experience with the LLVM compiler development framework through real-world examples and source code snippets.

1707
Ebook

Learn Microsoft Azure. Build, manage, and scale cloud applications using the Azure ecosystem

Mohamed Waly

Azure is one of the leading public cloud service providers. Thanks to a number of Azure service updates, it continues to make advances in the realm of cloud computing.Learn Microsoft Azure starts with the fundamentals of cloud computing. You will learn to configure and set up the Azure infrastructure. As you make your way through the book, you'll explore Azure services, along with working on virtual memory systems (VMS) and deployment models. You will understand various services in the Azure ecosystem, such as Azure IoT and Azure Analytics, among others. An easy-to-follow introduction to various cloud design patterns will also add to your efficiency in designing cloud solutions. In the concluding chapters, you'll secure your virtual networks using Network security groups and configure Azure Active Directory (Azure AD) to set a custom domain name and company profile.By the end of this book, you will have learned to secure and troubleshoot your Azure cloud environment and be fully aware of best practices for Azure cloud administration.

1708
Ebook

Learn Microsoft Power Apps. The definitive handbook for building solutions with Power Apps to solve your business needs - Second Edition

Matthew Weston, Elisa Bárcena Martín

Microsoft Power Apps provides a modern approach to building low-code business applications for mobiles, tablets, browsers, and Microsoft Teams. The second edition of Learn Microsoft Power Apps will guide you in creating well designed and secure apps that transform old processes and workflows.Learn Microsoft Power Apps starts with an introduction to Power Apps to help you feel comfortable with the creation experience. Using screenshots from the latest UI, you will be guided through how to create an app, building your confidence to start developing further. This book will help you design, set up, and configure your first application by writing simple formulas. You'll learn about the different types of apps you can build in Power Apps and which one applies best to your requirements.In addition to this, you’ll learn how to identify the right data storage system for you, with new chapters covering how to integrate apps with SharePoint or Dataverse. As you advance, you’ll be able to use various controls, connectors, and data sources to create a powerful, interactive app. For example, this book will help you understand how Power Apps can use Microsoft Power Automate, Power BI, and Azure functionalities to improve your applications. Finally, you will be introduced to the emerging Power Apps Copilot tool, which uses artificial intelligence to accelerate the app building process.By the end of this Power Apps book, you’ll be ready to confidently develop lightweight business applications with minimal code.

1709
Ebook

Learn Microsoft PowerApps. Build customized business applications without writing any code

Matthew Weston

Microsoft PowerApps provides a modern approach to building business applications for mobile, tablet, and browser. Learn Microsoft PowerApps will guide you in creating powerful and productive apps that will add value to your organization by helping you transform old and inefficient processes and workflows.Starting with an introduction to PowerApps, this book will help you set up and configure your first application. You’ll explore a variety of built-in templates and understand the key difference between types of applications such as canvas and model-driven apps, which are used to create apps for specific business scenarios. In addition to this, you’ll learn how to generate and integrate apps directly with SharePoint, and gain an understanding of PowerApps key components such as connectors and formulas. As you advance, you’ll be able to use various controls and data sources, including technologies such as GPS, and combine them to create an iterative app. Finally, the book will help you understand how PowerApps can use several Microsoft Power Automate and Azure functionalities to improve your applications.By the end of this PowerApps book, you’ll be ready to confidently develop lightweight business applications with minimal code.

1710
Ebook

Learn Odoo. A beginner's guide to designing, configuring, and customizing business applications with Odoo

Greg Moss

Odoo is management software that contains a set of open source enterprise management applications that help you modernize your business.Completely revised and updated, this comprehensive Odoo guide is a fourth edition of Working with Odoo. This book begins with an introduction to Odoo and helps you set up Odoo Online in your system. You'll learn how to start a new company database in Odoo and the basics of Odoo sales management. You will explore customer relationship management in Odoo and its importance in a modern business environment. Moving on, you'll learn how to install the purchasing application, set up suppliers, and begin purchasing and receiving products in Odoo. Next, you'll learn how to use the MRP module to create, process, and schedule the manufacturing and production order. Once you get to grips with the basic applications, you'll uncover how to customize Odoo to meet the specific needs of your business. You'll learn some advanced techniques for searching and finding information, and you'll be taken through business intelligence in Odoo. Towards the end of the book, you'll go in-depth into Odoo's architecture and learn to use Odoo's API to integrate with other applications. By the end of the book, you'll be ready to use Odoo to build enterprise applications and set up the functional requirements for your business.

1711
Ebook

Learn OpenCV 4 By Building Projects. Build real-world computer vision and image processing applications with OpenCV and C++ - Second Edition

David Millán Escrivá, Vinícius G. Mendonça, Prateek Joshi

OpenCV is one of the best open source libraries available, and can help you focus on constructing complete projects on image processing, motion detection, and image segmentation. Whether you’re completely new to computer vision, or have a basic understanding of its concepts, Learn OpenCV 4 by Building Projects – Second edition will be your guide to understanding OpenCV concepts and algorithms through real-world examples and projects. You’ll begin with the installation of OpenCV and the basics of image processing. Then, you’ll cover user interfaces and get deeper into image processing. As you progress through the book, you'll learn complex computer vision algorithms and explore machine learning and face detection. The book then guides you in creating optical flow video analysis and background subtraction in complex scenes. In the concluding chapters, you'll also learn about text segmentation and recognition and understand the basics of the new and improved deep learning module.By the end of this book, you'll be familiar with the basics of Open CV, such as matrix operations, filters, and histograms, and you'll have mastered commonly used computer vision techniques to build OpenCV projects from scratch.

1712
Ebook

Learn OpenGL. Beginner's guide to 3D rendering and game development with OpenGL and C++

Frahaan Hussain

Learn OpenGL is your one-stop reference guide to get started with OpenGL and C++ for game development. From setting up the development environment to getting started with basics of drawing and shaders, along with concepts such as lighting, model loading, and cube mapping, this book will get you up to speed with the fundamentals.You begin by setting up your development environment to use OpenGL on Windows and macOS. With GLFW and GLEW set up using absolute and relative linking done, you are ready to setup SDL and SFML for both the operating systems.Now that your development environment is set up, you'll learn to draw using simple shaders as well as make the shader more adaptable and reusable. Then we move on to more advanced topics like texturing your objects with images and transforming your objects using translate, rotate and scale.With these concepts covered, we'll move on to topics like lighting to enable you to incorporate amazing dynamic lights in your game world.By the end of the book, you'll learn about model loading, right from setting up ASSIMP to learning about the model class and loading a model in your game environment. We will conclude by understanding cube mapping to bring advance worlds to your game.

1713
Ebook

Learn OpenShift. Deploy, build, manage, and migrate applications with OpenShift Origin 3.9

Denis Zuev, Artemii Kropachev, Aleksey Usov

Docker containers transform application delivery technologies to make them faster and more reproducible, and to reduce the amount of time wasted on configuration. Managing Docker containers in the multi-node or multi-datacenter environment is a big challenge, which is why container management platforms are required. OpenShift is a new generation of container management platforms built on top of both Docker and Kubernetes. It brings additional functionality to the table, something that is lacking in Kubernetes. This new functionality significantly helps software development teams to bring software development processes to a whole new level.In this book, we’ll start by explaining the container architecture, Docker, and CRI-O overviews. Then, we'll look at container orchestration and Kubernetes. We’ll cover OpenShift installation, and its basic and advanced components. Moving on, we’ll deep dive into concepts such as deploying application OpenShift. You’ll learn how to set up an end-to-end delivery pipeline while working with applications in OpenShift as a developer or DevOps. Finally, you’ll discover how to properly design OpenShift in production environments.This book gives you hands-on experience of designing, building, and operating OpenShift Origin 3.9, as well as building new applications or migrating existing applications to OpenShift.

1714
Ebook

Learn Programming in Python with Cody Jackson. Grasp the basics of programming and Python syntax while building real-world applications

Cody Jackson

Python is a cross-platform language used by organizations such as Google and NASA. It lets you work quickly and efficiently, allowing you to concentrate on your work rather than the language. Based on his personal experiences when learning to program, Learn Programming in Python with Cody Jackson provides a hands-on introduction to computer programming utilizing one of the most readable programming languages–Python. It aims to educate readers regarding software development as well as help experienced developers become familiar with the Python language, utilizing real-world lessons to help readers understand programming concepts quickly and easily. The book starts with the basics of programming, and describes Python syntax while developing the skills to make complete programs. In the first part of the book, readers will be going through all the concepts with short and easy-to-understand code samples that will prepare them for the comprehensive application built in parts 2 and 3. The second part of the book will explore topics such as application requirements, building the application, testing, and documentation. It is here that you will get a solid understanding of building an end-to-end application in Python. The next part will show you how to complete your applications by converting text-based simulation into an interactive, graphical user interface, using a desktop GUI framework. After reading the book, you will be confident in developing a complete application in Python, from program design to documentation to deployment.

1715
Ebook

Learn Python by Building Data Science Applications. A fun, project-based guide to learning Python 3 while building real-world apps

Philipp Kats, David Katz

Python is the most widely used programming language for building data science applications. Complete with step-by-step instructions, this book contains easy-to-follow tutorials to help you learn Python and develop real-world data science projects. The “secret sauce” of the book is its curated list of topics and solutions, put together using a range of real-world projects, covering initial data collection, data analysis, and production.This Python book starts by taking you through the basics of programming, right from variables and data types to classes and functions. You’ll learn how to write idiomatic code and test and debug it, and discover how you can create packages or use the range of built-in ones. You’ll also be introduced to the extensive ecosystem of Python data science packages, including NumPy, Pandas, scikit-learn, Altair, and Datashader. Furthermore, you’ll be able to perform data analysis, train models, and interpret and communicate the results. Finally, you’ll get to grips with structuring and scheduling scripts using Luigi and sharing your machine learning models with the world as a microservice.By the end of the book, you’ll have learned not only how to implement Python in data science projects, but also how to maintain and design them to meet high programming standards.

1716
Ebook

Learn Python in 7 Days. Begin your journey with Python

Mohit Raj, Bhaskar N. Das

Python is a great language to get started in the world of programming and application development. This book will help you to take your skills to the next level having a good knowledge of the fundamentals of Python.We begin with the absolute foundation, covering the basic syntax, type variables and operators. We'll then move on to concepts like statements, arrays, operators, string processing and I/O handling. You’ll be able to learn how to operate tuples and understand the functions and methods of lists. We’ll help you develop a deep understanding of list and tuples and learn python dictionary. As you progress through the book, you’ll learn about function parameters and how to use control statements with the loop. You’ll further learn how to create modules and packages, storing of data as well as handling errors. We later dive into advanced level concepts such as Python collections and how to use class, methods, objects in python.By the end of this book, you will be able to take your skills to the next level having a good knowledge of the fundamentals of Python.

1717
Ebook

Learn Python Programming. A comprehensive, up-to-date, and definitive guide to learning Python - Fourth Edition

Fabrizio Romano, Heinrich Kruger

Learn Python Programming, Fourth Edition, provides a comprehensive, up-to-date introduction to Python programming, covering fundamental concepts and practical applications. This edition has been meticulously updated to include the latest features from Python versions 3.9 to 3.12, new chapters on type hinting and CLI applications, and updated examples reflecting modern Python web development practices. This Python book empowers you to take ownership of writing your software and become independent in fetching the resources you need. By the end of this book, you will have a clear idea of where to go and how to build on what you have learned from the book.Through examples, the book explores a wide range of applications and concludes by building real-world Python projects based on the concepts you have learned. This Python book offers a clear and practical guide to mastering Python and applying it effectively in various domains, such as data science, web development, and automation.

1718
Ebook

Learn Python Programming. An in-depth introduction to the fundamentals of Python - Third Edition

Fabrizio Romano, Heinrich Kruger

Learn Python Programming, Third Edition is both a theoretical and practical introduction to Python, an extremely flexible and powerful programming language that can be applied to many disciplines. This book will make learning Python easy and give you a thorough understanding of the language. You'll learn how to write programs, build modern APIs, and work with data by using renowned Python data science libraries.This revised edition covers the latest updates on API management, packaging applications, and testing. There is also broader coverage of context managers and an updated data science chapter.The book empowers you to take ownership of writing your software and become independent in fetching the resources you need. You will have a clear idea of where to go and how to build on what you have learned from the book.Through examples, the book explores a wide range of applications and concludes by building real-world Python projects based on the concepts you have learned.

1719
Ebook

Learn Python Programming. The no-nonsense, beginner's guide to programming, data science, and web development with Python 3.7 - Second Edition

Fabrizio Romano

Learn Python Programming is a quick, thorough, and practical introduction to Python - an extremely flexible and powerful programming language that can be applied to many disciplines.Unlike other books, it doesn't bore you with elaborate explanations of the basics but gets you up-and-running, using the language. You will begin by learning the fundamentals of Python so that you have a rock-solid foundation to build upon.You will explore the foundations of Python programming and learn how Python can be manipulated to achieve results. Explore different programming paradigms and find the best approach to a situation; understand how to carry out performance optimization and effective debugging; control the flow of a program; and utilize an interchange format to exchange data. You'll also walk through cryptographic services in Python and understand secure tokens.Learn Python Programming will give you a thorough understanding of the Python language. You'll learn how to write programs, build websites, and work with data by harnessing Python's renowned data science libraries. Filled with real-world examples and projects, the book covers various types of applications, and concludes by building real-world projects based on the concepts you have learned.

1720
Ebook

Learn QGIS. Your step-by-step guide to the fundamental of QGIS 3.4 - Fourth Edition

Andrew Cutts, Anita Graser

QGIS 3.4 is the first LTR (long term release) of QGIS version 3. This is a giant leap forward for the project with tons of new features and impactful changes. Learn QGIS is fully updated for QGIS 3.4, covering its processing engine update, Python 3 de-facto coding environment, and the GeoPackage format.This book will help you get started on your QGIS journey, guiding you to develop your own processing pathway. You will explore the user interface, loading your data, editing, and then creating data. QGIS often surprises new users with its mapping capabilities; you will discover how easily you can style and create your first map. But that’s not all! In the final part of the book, you’ll learn about spatial analysis and the powerful tools in QGIS, and conclude by looking at Python processing options.By the end of the book, you will have become proficient in geospatial analysis using QGIS and Python.

1721
Ebook

Learn QT 5. Build modern, responsive cross-platform desktop applications with Qt, C++, and QML

Nicholas Sherriff

Qt is a mature and powerful framework for delivering sophisticated applications across a multitude of platforms. It has a rich history in the Linux world, is widely used in embedded devices, and has made great strides in the Mobile arena over the past few years. However, in the Microsoft Windows and Apple Mac OS X worlds, the dominance of C#/.NET and Objective-C/Cocoa means that Qt is often overlooked.This book demonstrates the power and flexibility of the Qt framework for desktop application development and shows how you can write your application once and deploy it to multiple operating systems. Build a complete real-world line of business (LOB) solution from scratch, with distinct C++ library, QML user interface, and QtTest-driven unit-test projects.This is a suite of essential techniques that cover the core requirements for most LOB applications and will empower you to progress from a blank page to shipped application.

1722
Ebook

Learn Quantum Computing with Python and IBM Quantum Experience. A hands-on introduction to quantum computing and writing your own quantum programs with Python

Robert Loredo

IBM Quantum Experience is a platform that enables developers to learn the basics of quantum computing by allowing them to run experiments on a quantum computing simulator and a real quantum computer. This book will explain the basic principles of quantum mechanics, the principles involved in quantum computing, and the implementation of quantum algorithms and experiments on IBM's quantum processors.You will start working with simple programs that illustrate quantum computing principles and slowly work your way up to more complex programs and algorithms that leverage quantum computing. As you build on your knowledge, you’ll understand the functionality of IBM Quantum Experience and the various resources it offers. Furthermore, you’ll not only learn the differences between the various quantum computers but also the various simulators available. Later, you’ll explore the basics of quantum computing, quantum volume, and a few basic algorithms, all while optimally using the resources available on IBM Quantum Experience.By the end of this book, you'll learn how to build quantum programs on your own and have gained practical quantum computing skills that you can apply to your business.

1723
Ebook

Learn React Hooks. Build and refactor modern React.js applications using Hooks

Daniel Bugl

React Hooks revolutionize how you manage state and effects in your web applications. They enable you to build simple and concise React.js applications, along with helping you avoid using wrapper components in your applications, making it easy to refactor code.This React book starts by introducing you to React Hooks. You will then get to grips with building a complex UI in React while keeping the code simple and extensible. Next, you will quickly move on to building your first applications with React Hooks. In the next few chapters, the book delves into various Hooks, including the State and Effect Hooks. After covering State Hooks and understanding how to use them, you will focus on the capabilities of Effect Hooks for adding advanced functionality to React apps. You will later explore the Suspense and Context APIs and how they can be used with Hooks. Toward the concluding chapters, you will learn how to integrate Redux and MobX with React Hooks. Finally, the book will help you develop the skill of migrating your existing React class components, and Redux and MobX web applications to Hooks.By the end of this book, you will be well-versed in building your own custom Hooks and effectively refactoring your React applications.

1724
Ebook

Learn React with TypeScript 3. Beginner's guide to modern React web development with TypeScript 3

Carl Rippon

React today is one of the most preferred choices for frontend development. Using React with TypeScript enhances development experience and offers a powerful combination to develop high performing web apps. In this book, you’ll learn how to create well structured and reusable react components that are easy to read and maintain by leveraging modern web development techniques. We will start with learning core TypeScript programming concepts before moving on to building reusable React components. You'll learn how to ensure all your components are type-safe by leveraging TypeScript's capabilities, including the latest on Project references, Tuples in rest parameters, and much more. You'll then be introduced to core features of React such as React Router, managing state with Redux and applying logic in lifecycle methods. Further on, you'll discover the latest features of React such as hooks and suspense which will enable you to create powerful function-based components. You'll get to grips with GraphQL web API using Apollo client to make your app more interactive. Finally, you'll learn how to write robust unit tests for React components using Jest. By the end of the book, you'll be well versed with all you need to develop fully featured web apps with React and TypeScript.

1725
Ebook

Learn React with TypeScript. A beginner's guide to reactive web development with React 18 and TypeScript - Second Edition

Carl Rippon

Reading, navigating, and debugging a large frontend codebase is a major issue faced by frontend developers. This book is designed to help web developers like you learn about ReactJS and TypeScript, both of which power large-scale apps for many organizations.This second edition of Learn React with TypeScript is updated, enhanced, and improved to cover new features of React 18 including hooks, state management libraries, and features of TypeScript 4. The book will enable you to create well-structured and reusable React components that are easy to read and maintain, leveraging modern design patterns.You’ll be able to ensure that all your components are type-safe, making the most of TypeScript features, including some advanced types. You’ll also learn how to manage complex states using Redux and how to interact with a GraphQL web API. Finally, you’ll discover how to write robust unit tests for React components using Jest.By the end of the book, you’ll be well-equipped to use both React and TypeScript.

1726
Ebook

Learn Red - Fundamentals of Red. Get up and running with the Red language for full-stack development

Ivo Balbaert

A key problem of software development today is software bloat, where huge toolchains and development environments are needed in software coding and deployment. Red significantly reduces this bloat by offering a minimalist but complete toolchain. This is the first introductory book about it, and it will get you up and running with Red as quickly as possible.This book shows you how to write effective functions, reduce code redundancies, and improve code reuse. It will be helpful for new programmers who are starting out with Red to explore its wide and ever-growing package ecosystem and also for experienced developers who want to add Red to their skill set.The book presents the fundamentals of programming in Red and in-depth informative examples using a step-by-step approach. You will be taken through concepts and examples such as doing simple metaprogramming, functions, collections, GUI applications, and more. By the end of the book, you will be fully equipped to start your own projects in Red.

1727
Ebook

Learn Robotics Programming. Build and control AI-enabled autonomous robots using the Raspberry Pi and Python - Second Edition

Danny Staple

We live in an age where the most complex or repetitive tasks are automated. Smart robots have the potential to revolutionize how we perform all kinds of tasks with high accuracy and efficiency. With this second edition of Learn Robotics Programming, you'll see how a combination of the Raspberry Pi and Python can be a great starting point for robot programming.The book starts by introducing you to the basic structure of a robot and shows you how to design, build, and program it. As you make your way through the book, you'll add different outputs and sensors, learn robot building skills, and write code to add autonomous behavior using sensors and a camera. You'll also be able to upgrade your robot with Wi-Fi connectivity to control it using a smartphone. Finally, you'll understand how you can apply the skills that you've learned to visualize, lay out, build, and code your future robot building projects.By the end of this book, you'll have built an interesting robot that can perform basic artificial intelligence operations and be well versed in programming robots and creating complex robotics projects using what you've learned.

1728
Ebook

Learn Robotics Programming. Build and control autonomous robots using Raspberry Pi 3 and Python

Danny Staple

We live in an age where the most difficult human tasks are now automated. Smart and intelligent robots, which will perform different tasks precisely and efficiently, are the requirement of the hour. A combination of Raspberry Pi and Python works perfectly when making these kinds of robots. Learn Robotics Programming starts by introducing you to the basic structure of a robot, along with how to plan, build, and program it. As you make your way through the book, you will gradually progress to adding different outputs and sensors, learning new building skills, and writing code for interesting behaviors with sensors. You’ll also be able to update your robot, and set up web, phone, and Wi-Fi connectivity in order to control it. By the end of the book, you will have built a clever robot that can perform basic artificial intelligence (AI) operations.