Publisher: K-i-s-publishing
Kenneth Geisshirt, Emanuele Zattin(EUR), Aske Olsson, Rasmus...
Git is one of the most popular tools for versioning. With over 100 practical, self-contained tutorials, this updated version of the bestselling Git Version Control Cookbook examines the common pain points and best practices to help you solve problems related to versioning.Each recipe addresses a specific problem and offers a proven, best-practice solution with insights into how it works. You’ll get started by learning about the Git data model and how it stores files, along with gaining insights on how to commit changes to a database. Using simple commands, you’ll also understand how to navigate through the database. Once you have accustomed yourself to the basics, you’ll explore techniques to configure Git with the help of comprehensive examples and configuration targets. Further into the book, you’ll get up to speed with branches and recovery from mistakes. You’ll also discover the features of Git rebase and how to use regular Git to merge other branches. The later chapters will guide you in exploring Git notes and learning to utilize the update, list, and search commands. Toward the concluding chapters, you’ll focus on repository maintenance, patching, and offline sharing. By the end of this book, you’ll have grasped various tips and tricks, and have a practical understanding of best-practice solutions for common problems related to versioning.
Michael Kaufmann
Say goodbye to tedious tasks! GitHub Actions is a powerful workflow engine that automates everything in the GitHub ecosystem, letting you focus on what matters most.This book explains the GitHub Actions workflow syntax, the different kinds of actions, and how GitHub-hosted and self-hosted workflow runners work. You’ll get tips on how to author and debug GitHub Actions and workflows with Visual Studio Code (VS Code), run them locally, and leverage the power of GitHub Copilot. The book uses hands-on examples to walk you through real-world use cases that will help you automate the entire release process. You’ll cover everything, from automating the generation of release notes to building and testing your software and deploying securely to Azure, Amazon Web Services (AWS), or Google Cloud using OpenID Connect (OIDC), secrets, variables, environments, and approval checks.The book goes beyond CI/CD by demonstrating recipes to execute IssueOps and automate other repetitive tasks using the GitHub CLI, GitHub APIs and SDKs, and GitHub Token. You’ll learn how to build your own actions and reusable workflows to share building blocks with the community or within your organization.By the end of this GitHub book, you'll have gained the skills you need to automate tasks and work with remarkable efficiency and agility.
Achilleas Pipinellis
Whether you are an experienced developer or a novice, learning to work with Version Control Systems is a must in the software development world. Git is the most popular tool for that purpose, and GitHub was built around it, leveraging its powers by bringing it to the web.Starting with the basics of creating a repository, you will then learn how to manage the issue tracker, the place where discussions about your project take place. Continuing our journey, we will explore how to use the wiki and write rich documentation that will accompany your project. You will also master organization/team management and some of the features that made GitHub so well known, including pull requests. Next, we will focus on creating simple web pages hosted on GitHub and lastly, we will explore the settings that are configurable for a user and a repository.
Igor Irić
Navigating the world of collaborative software development can be daunting, especially for young coders just starting their programming journey. This book is designed to take you on a coding adventure, transforming you from a curious beginner into a confident GitHub user.The book builds a solid foundation and explains the Git version control system in depth, helping you understand how to track changes, collaborate effectively, and manage your projects with ease. You'll master repositories, the building blocks of your coding projects, and learn branching strategies to experiment and work seamlessly with others. The chapters will teach you about GitHub Actions, guiding you through workflow syntax, exploring environments and secrets management, and providing hands-on exercises to solidify your understanding. You’ll also discover how to craft a compelling GitHub profile that highlights your achievements and discover the exciting world of open-source projects where you can contribute and give back to the community. To get you started with AI, you’ll also learn how to leverage Copilot and ChatGPT together to write faster, cleaner code.By the end of this book, you’ll be well prepared to contribute to real-world projects on GitHub, equipped with the skills to thrive in the world of collaborative software development.
Ayodeji Ayodele, Irshad Burtally, Ali Condah
Progress from the basics of version control to excelling at collaborative development with the GitHub Foundations Certification Guide, your go-to resource for mastering Git and GitHub. You'll learn how to use Git to accurately track and manage code changes, and discover why GitHub is the leading platform for collaboration, project management, and open-source development. Written by Ayodeji Ayodele, Senior Customer Success Architect at GitHub with expertise in DevOps, Agile coaching, and software engineering, this book provides a structured path to Git/GitHub proficiency. Through hands-on tutorials, projects, and self-assessment questions, you’ll harness the potential of open source, navigate the GitHub platform with ease, employ advanced Git techniques, and gain practical code management skills. The book then explores secure collaboration, automation, and key features of the GitHub Desktop app. You’ll prepare for the certification exam with practice questions, mock exams, and invaluable study tips. By the end of this book, you’ll be ready to take the GitHub Foundations exam and advance your developer career.
GitLab Quick Start Guide. Migrate to GitLab for all your repository management solutions
Adam O'Grady
Gitlab is an open source repository management and version control toolkit with an enterprise offering. This book is the ideal guide to GitLab as a version control system (VCS), issue management tool, and a continuous integration platform.The book starts with an introduction to GitLab, a walkthrough of its features, and explores concepts such as version control systems, continuous integration, and continuous deployment. It then takes you through the process of downloading and installing a local copy of the on-premise version of GitLab in Ubuntu and/or CentOS.You will look at some common work?ows associated with GitLab work?ow and learn about project management in GitLab. You will see tools and techniques for migrating your code base from various version control systems such as GitHub and SVN to GitLab.By the end of the book, you will be using Gitlab for repository management, and be able to migrate projects from other VCSs to GitLab.
GlassFish Administration. Administer and configure the GlassFish v2 application server
Xuekun Kou
To build a powerful production environment for your Java EE systems, you need a great application server, and the skills to manage it. This book gives you all that you are looking for.This book will help you gain the necessary skills to install, configure, tune, and troubleshoot GlassFish so that you can fully unleash its power. It will teach you how to use the GlassFish application server, with a special focus on administration tasks. It presents the GlassFish administrative tasks in a logical sequence, with each chapter focusing on a specific topic.Starting with installation and moving through configuration, this book takes a careful look at the administration console so that you get a complete understanding of GlassFish and its administrative features. It will help you understand how to deploy Java EE, Ruby on Rails and other supported applications to GlassFish, and how to configure the necessary resources for these applications. You will also learn how to maintain, tune, and troubleshoot your GlassFish server. Also includes a bonus chapter introducing Glassfish v3.
Gleichschaltung. Authoritarian Consolidation in Ukraine 20102012
Mykola Riabchuk
Mykola Riabchuk, a renowned Ukrainian public intellectual and political analyst, has been closely following and commenting on political developments in Ukraine since the early years of its independence. His best essays, collected within this book, focus primarily on the years of the presidency of Victor Yanukovych which were marked by a state capture, democratic recession and creeping authoritarian consolidation. An astute analysis of political processes combined with a sound essayistic narrative make the book essential reading for political scientists, students, and all those interested in the region.
Jacobo Rodriguez
Shader programming has been the largest revolution in graphics programming. OpenGL Shading Language (abbreviated: GLSL or GLslang), is a high-level shading language based on the syntax of the C programming language.With GLSL you can execute code on your GPU (aka graphics card). More sophisticated effects can be achieved with this technique.Therefore, knowing how OpenGL works and how each shader type interacts with each other, as well as how they are integrated into the system, is imperative for graphic programmers. This knowledge is crucial in order to be familiar with the mechanisms for rendering 3D objects.GLSL Essentials is the only book on the market that teaches you about shaders from the very beginning. It shows you how graphics programming has evolved, in order to understand why you need each stage in the Graphics Rendering Pipeline, and how to manage it in a simple but concise way. This book explains how shaders work in a step-by-step manner, with an explanation of how they interact with the application assets at each stage.This book will take you through the graphics pipeline and will describe each section in an interactive and clear way. You will learn how the OpenGL state machine works and all its relevant stages. Vertex shaders, fragment shaders, and geometry shaders will be covered, as well some use cases and an introduction to the math needed for lighting algorithms or transforms. Generic GPU programming (GPGPU) will also be covered.After reading GLSL Essentials you will be ready to generate any rendering effect you need.
GNS3, Christopher J Welsh (USD)
GNS3 is an open-source Graphical Network Simulator used extensively by networking professionals to simulate networking devices such as Cisco, Juniper and Vyatta routers, along with Virtual PCs.GNS3 Network Simulation Guide gives you all the information you need to run a successful GNS3 simulation. You will be guided through the tricky installation pre-requisites and procedures involved in developing a simulated topology suitable for studying for Cisco CCIE Certification. We will also cover many useful tips and tricks which will help you make the most of your GNS3 simulator application.You will begin the GNS3 journey by ensuring that you have prepared your computer with any additional files required by GNS3, to set up the simulated environment needed for a successful installation process.Once GNS3 is installed, you will get to work creating a successful simulation including routers, Ethernet switches, Virtual PCs, and capture packets using Wireshark. Next, you will learn how to master GNS3's Graphical User Interface as well as the Command Console. The inner workings of GNS3 are described in depth so that you gain an appreciation of how UDP tunnels are used to tie the many components of GNS3 together.By following the clear examples and exercises in this guide, you will learn everything that you need to know about how to use GNS3 to prepare for certifications, as well as simulate real-world network scenarios.
Jesper Schmidt Hansen
Today, scientific computing and data analysis play an integral part in most scientific disciplines ranging from mathematics and biology to imaging processing and finance. With GNU Octave you have a highly flexible tool that can solve a vast number of such different problems as complex statistical analysis and dynamical system studies.The GNU Octave Beginner's Guide gives you an introduction that enables you to solve and analyze complicated numerical problems. The book is based on numerous concrete examples and at the end of each chapter you will find exercises to test your knowledge. It's easy to learn GNU Octave, with the GNU Octave Beginner's Guide to hand.Using real-world examples the GNU Octave Beginner's Guide will take you through the most important aspects of GNU Octave. This practical guide takes you from the basics where you are introduced to the interpreter to a more advanced level where you will learn how to build your own specialized and highly optimized GNU Octave toolbox package. The book starts by introducing you to work variables like vectors and matrices, demonstrating how to perform simple arithmetic operations on these objects before explaining how to use some of the simple functionality that comes with GNU Octave, including plotting. It then goes on to show you how to write new functionality into GNU Octave and how to make a toolbox package to solve your specific problem. Finally, it demonstrates how to optimize your code and link GNU Octave with C and C++ code enabling you to solve even the most computationally demanding tasks. After reading GNU Octave Beginner's Guide you will be able to use and tailor GNU Octave to solve most numerical problems and perform complicated data analysis with ease.
Ashok Ramachandran, Christian Stimming
Attention, small business owners! Stop tax-day stress. Stop procrastinating with a shoebox full of receipts. Stop reinventing the wheel with a spreadsheet. Stop making decisions simply on a hunch. Stop wasting money on software that is overkill. Start by downloading GnuCash and getting your accounts in order. Designed to be easy to use, yet powerful and flexible, GnuCash allows you to track bank accounts, income, and expenses. As quick and intuitive to use as a checkbook register, it is based on professional accounting principles to ensure balanced books and accurate reports. You can do it and Gnucash 2.4 Small Business Accounting Beginner's Guide will help you get up and running with maintaining your accounts.Gnucash 2.4 Small Business Accounting Beginner's Guide speaks business language, not accountant-speak, because it is written by a former small business owner. It guides you to use GnuCash from scratch with step-by-step tutorials without jargon, pointing out the gotchas to avoid with lots of tips. It will teach you to work on routine business transactions while migrating transaction data from other applications gradually. You will be able to keep on top of transactions and run reports after reading just three chapters!Beyond Chapter 3, it is up to you how far you want to go. Reconcile with your bank and credit card statements. Charge and pay sales tax. Do invoicing. Track payments due. Set up reminders for bills. Avoid stress at tax time. Print checks. Capture expenses using your mobile phone.Gnucash 2.4 Small Business Accounting Beginner's Guide gives you the power. Know your numbers. Make decisions with confidence. Drive your business to its full potential.
GNU/Linux Rapid Embedded Programming. Your one-stop solution to embedded programming on GNU/Linux
Rodolfo Giometti
Embedded computers have become very complex in the last few years and developers need to easily manage them by focusing on how to solve a problem without wasting time in finding supported peripherals or learning how to manage them. The main challenge with experienced embedded programmers and engineers is really how long it takes to turn an idea into reality, and we show you exactly how to do it. This book shows how to interact with external environments through specific peripherals used in the industry. We will use the latest Linux kernel release 4.4.x and Debian/Ubuntu distributions (with embedded distributions like OpenWrt and Yocto).The book will present popular boards in the industry that are user-friendly to base the rest of the projects on - BeagleBone Black, SAMA5D3 Xplained, Wandboard and system-on-chip manufacturers.Readers will be able to take their first steps in programming the embedded platforms, using C, Bash, and Python/PHP languages in order to get access to the external peripherals. More about using and programming device driver and accessing the peripherals will be covered to lay a strong foundation. The readers will learn how to read/write data from/to the external environment by using both C programs or a scripting language (Bash/PHP/Python) and how to configure a device driver for a specific hardware.After finishing this book, the readers will be able to gain a good knowledge level and understanding of writing, configuring, and managing drivers, controlling and monitoring applications with the help of efficient/quick programming and will be able to apply these skills into real-world projects.
Lee Phillips
gnuplot is the world's finest technical plotting software, used by scientists, engineers, and others for many years. It is in constant development and runs on practically every operating system, and can produce output in almost any format. The quality of its 3d plots is unmatched and its ability to be incorporated into computer programs and document preparation systems is excellent.gnuplot Cookbook ñ it will help you master gnuplot. Start using gnuplot immediately to solve your problems in data analysis and presentation. Quickly find a visual example of the graph you want to make and see a complete, working script for producing it. Learn how to use the new features in gnuplot 4.4. Find clearly explained, working examples of using gnuplot with LaTeX and with your own computer programming language.You will master all the ins and outs of gnuplot through gnuplot Cookbook.You will learn to plot basic 2d to complex 3d plots, annotate from simple labels to equations, integrate from simple scripts to full documents and computer progams. You will be taught to annotate graphs with equations and symbols that match the style of the rest of your text, thus creating a seamless, professional document. You will be guided to create a web page with an interactive graph, and add graphical output to your simulation or numerical analysis program.Start using all of gnuplot's simple to complex features to suit your needs, without studying its 200 page manual through this Cookbook.
Go: Building Web Applications. Building Web Applications
Nathan Kozyra, Mat Ryer
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. It is a statically typed language with syntax loosely derived from that of C, adding garbage collection, type safety, some dynamic-typing capabilities, additional built-in types such as variable-length arrays and key-value maps, and a large standard library.This course starts with a walkthrough of the topics most critical to anyone building a new web application. Whether it’s keeping your application secure, connecting to your database, enabling token-based authentication, or utilizing logic-less templates, this course has you covered. Scale, performance, and high availability lie at the heart of the projects, and the lessons learned throughout this course will arm you with everything you need to build world-class solutions. It will also take you through the history of concurrency, how Go utilizes it, how Go differs from other languages, and the features and structures of Go's concurrency core. It will make you feel comfortable designing a safe, data-consistent, and high-performance concurrent application in Go.This course is an invaluable resource to help you understand Go's powerful features to build simple, reliable, secure, and efficient web applications.
Go Cookbook. Build modular, readable, and testable applications in Go
Aaron Torres
Go (a.k.a. Golang) is a statically-typed programming language first developed at Google. It is derived from C with additional features such as garbage collection, type safety, dynamic-typing capabilities, additional built-in types, and a large standard library.This book takes off where basic tutorials on the language leave off. You can immediately put into practice some of the more advanced concepts and libraries offered by the language while avoiding some of the common mistakes for new Go developers. The book covers basic type and error handling. It explores applications that interact with users, such as websites, command-line tools, or via the file system. It demonstrates how to handle advanced topics such as parallelism, distributed systems, and performance tuning. Lastly, it finishes with reactive and serverless programming in Go.
Go Design Patterns. Best practices in software development and CSP
Mario Castro Contreras
Go is a multi-paradigm programming language that has built-in facilities to create concurrent applications. Design patterns allow developers to efficiently address common problems faced during developing applications. Go Design Patterns will provide readers with a reference point to software design patterns and CSP concurrency design patterns to help them build applications in a more idiomatic, robust, and convenient way in Go. The book starts with a brief introduction to Go programming essentials and quickly moves on to explain the idea behind the creation of design patterns and how they appeared in the 90’s as a common language between developers to solve common tasks in object-oriented programming languages. You will then learn how to apply the 23 Gang of Four (GoF) design patterns in Go and also learn about CSP concurrency patterns, the killer feature in Go that has helped Google develop software to maintain thousands of servers. With all of this the book will enable you to understand and apply design patterns in an idiomatic way that will produce concise, readable, and maintainable software.
Vladimir Vivien, Mario Castro Contreras, Mat Ryer
The Go programming language has firmly established itself as a favorite for building complex and scalable system applications. Go offers a direct and practical approach to programming that lets programmers write correct and predictable code using concurrency idioms and a full-featured standard library. This practical guide is full of real-world examples to help you get started with Go in no time at all. You’ll start by understanding the fundamentals of Go, then get a detailed description of the Go data types, program structures, and Maps. After that, you’ll learn how to use Go concurrency idioms to avoid pitfalls and create programs that are exact in expected behavior. Next, you will get familiar with the tools and libraries that are available in Go to write and exercise tests, benchmarking, and code coverage. After that, you will be able to utilize some of the most important features of GO such as Network Programming and OS integration to build efficient applications. Then you’ll start applying your skills to build some amazing projects in Go. You will learn to develop high-quality command-line tools that utilize the powerful shell capabilities and perform well using Go’s built-in concurrency mechanisms. Scale, performance, and high availability lie at the heart of our projects, and the lessons learned throughout the sections will arm you with everything you need to build world-class solutions. You will get a feel for app deployment using Docker and Google App Engine. Each project could form the basis of a start-up, which means they are directly applicable to modern software markets. With these skills in hand, you will be able to conquer all your fears of application development and go on to build large, robust and succinct apps in Go.This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products:1. Learning Go Programming2. Go Design Patterns3. Go Programming Blueprints, Second Edition
John Doak, David Justice
Go is the go-to language for DevOps libraries and services, and without it, achieving fast and safe automation is a challenge. With the help of Go for DevOps, you'll learn how to deliver services with ease and safety, becoming a better DevOps engineer in the process.Some of the key things this book will teach you are how to write Go software to automate configuration management, update remote machines, author custom automation in GitHub Actions, and interact with Kubernetes. As you advance through the chapters, you'll explore how to automate the cloud using software development kits (SDKs), extend HashiCorp's Terraform and Packer using Go, develop your own DevOps services with gRPC and REST, design system agents, and build robust workflow systems.By the end of this Go for DevOps book, you'll understand how to apply development principles to automate operations and provide operational insights using Go, which will allow you to react quickly to resolve system failures before your customers realize something has gone wrong.
Xuanyi Chew
Go is the perfect language for machine learning; it helps to clearly describe complex algorithms, and also helps developers to understand how to run efficient optimized code. This book will teach you how to implement machine learning in Go to make programs that are easy to deploy and code that is not only easy to understand and debug, but also to have its performance measured.The book begins by guiding you through setting up your machine learning environment with Go libraries and capabilities. You will then plunge into regression analysis of a real-life house pricing dataset and build a classification model in Go to classify emails as spam or ham. Using Gonum, Gorgonia, and STL, you will explore time series analysis along with decomposition and clean up your personal Twitter timeline by clustering tweets. In addition to this, you will learn how to recognize handwriting using neural networks and convolutional neural networks. Lastly, you'll learn how to choose the most appropriate machine learning algorithms to use for your projects with the help of a facial detection project.By the end of this book, you will have developed a solid machine learning mindset, a strong hold on the powerful Go toolkit, and a sound understanding of the practical implementations of machine learning algorithms in real-world projects.
Samantha Coyle
Go Programming – From Beginner to Professional is a comprehensive guide that takes your proficiency in the Go programming language from novice to expert. Starting with fundamental concepts, this book covers variables, command-line tools, and working with data before delving into advanced concepts, including error handling, interfaces, and generics, harnessing Go’s latest features through hands-on exercises. Along the way, you’ll learn to structure projects using Go modules, manage packages effectively, and master debugging techniques.As you progress, you’ll get to grips with practical application-centric aspects such as command-line programming, file manipulation, and working with SQL databases. Additionally, the book explores web server development, RESTful APIs, and utilizing the Go HTTP client to interact with web applications. Further enhancing your Go skills, you’ll learn concurrent programming, testing methodologies, Go tools, and how to deploy applications in the cloud. Throughout the book, you’ll uncover Go’s hidden gems and gain insights into time manipulation, best practices, and more.By the end of this book, you’ll have worked through practical exercises and activities that’ll equip you with the knowledge and skills needed to excel as a proficient Go developer, primed for success in real-world projects.