Browse Results

Showing 36,101 through 36,125 of 61,763 results

Mastering Flask

by Jack Stouffer

Gain expertise in Flask to create dynamic and powerful web applications About This Book * Work with scalable Flask application structures to create complex web apps * Discover the most powerful Flask extensions and learn how to create one * Deploy your application to real-world platforms using this step-by-step guide Who This Book Is For If you are a Flask user who knows the basics of the library and how to create basic web pages with HTML and CSS, and you want to take your applications to the next level, this is the book for you. Harnessing the full power of Flask will allow you to create complex web applications with ease. What You Will Learn * Set up a best practices Python environment * Use SQLAlchemy to programmatically query a database * Develop templates in Jinja * Set up an MVC environment for Flask * Discover NoSQL, when to use it, when not to, and how to use it * Develop a custom Flask extension * Use Celery to create asynchronous tasks * Use py.test to create unit tests In Detail Flask is a library that allows programmers to create web applications in Python. Flask is a micro-framework that boasts a low learning curve, a large community, and the power to create complex web apps. However, Flask is easy to learn but difficult to master. Starting from a simple Flask app, this book will walk through advanced topics while providing practical examples of the lessons learned. After building a simple Flask app, a proper app structure is demonstrated by transforming the app to use a Model-View-Controller (MVC) architecture. With a scalable structure in hand, the next chapters use Flask extensions to provide extra functionality to the app, including user login and registration, NoSQL querying, a REST API, an admin interface, and more. Next, you'll discover how to use unit testing to take the guesswork away from making sure the code is performing as it should. The book closes with a discussion of the different platforms that are available to deploy a Flask app on, the pros and cons of each one, and how to deploy on each one. Style and approach With plenty of useful examples, this guide introduces new concepts and then shows you how those concepts can be used in a real-world environment. Most sections are based around a single example app that is developed throughout the book.

Mastering Flask Web Development: Build enterprise-grade, scalable Python web applications, 2nd Edition

by Jack Stouffer Daniel Gaspar

Learn to build modern, secure, highly available web MVC applications and API’s using Python`s Flask framework.Key FeaturesCreate production-ready MVC and REST API with the dynamic features of FlaskUtilize the various extensions like Flask-JWT and Flask-SQLAlchemy to develop powerful applicationsDeploy your flask application on real-world platforms like AWS and Heroku on VM’s or Docker containersBook DescriptionFlask is a popular Python framework known for its lightweight and modular design. Mastering Flask Web Development will take you on a complete tour of the Flask environment and teach you how to build a production-ready application. You'll begin by learning about the installation of Flask and basic concepts such as MVC and accessing a database using an ORM. You will learn how to structure your application so that it can scale to any size with the help of Flask Blueprints. You'll then learn how to use Jinja2 templates with a high level of expertise. You will also learn how to develop with SQL or NoSQL databases, and how to develop REST APIs and JWT authentication. Next, you'll move on to build role-based access security and authentication using LDAP, OAuth, OpenID, and database. Also learn how to create asynchronous tasks that can scale to any load using Celery and RabbitMQ or Redis. You will also be introduced to a wide range of Flask extensions to leverage technologies such as cache, localization, and debugging. You will learn how to build your own Flask extensions, how to write tests, and how to get test coverage reports. Finally, you will learn how to deploy your application on Heroku and AWS using various technologies, such as Docker, CloudFormation, and Elastic Beanstalk, and will also learn how to develop Jenkins pipelines to build, test, and deploy applications.What you will learnDevelop a Flask extension using best practicesImplement various authentication methods: LDAP, JWT, Database, OAuth, and OpenIDLearn how to develop role-based access security and become an expert on Jinja2 templatesBuild tests for your applications and APIsInstall and configure a distributed task queue using Celery and RabbitMQDevelop RESTful APIs and secure REST API'sDeploy highly available applications that scale on Heroku and AWS using Docker or VMsWho this book is forThe ideal target audience for this book would be Python developers who want to use Flask and its advanced features to create Enterprise grade and lightweight applications. The book is for those who have some exposure of Flask and want to take it from introductory to master level.

Mastering Flutter: A Beginner's Guide (Mastering Computer Science)

by Sufyan Bin Uzayr

Mastering Flutter helps the reader master the popular Flutter framework for rapid cross-platform app development. Mobile applications grow in popularity every year, and developers keep looking for new tools to help them design them. A Google-backed, free and open-source mobile user interface framework, Flutter, stands out among these products. Flutter enables developers to construct a native mobile app using just a single line of code. This implies that one could design two different applications using the same programming language and codebase (iOS and Android). Flutter comprises two main components: a Framework and a Software Development Kit (SDK). You will use the Dart programming language to create Flutter apps. Dart is an object-oriented programming language with data types and its own paradigm. The best part about Flutter is that you can use it to create apps for iOS, Android, desktop, and the web, all with the same codebase. Flutter comes with a widget-based UI library, a collection of UI elements (text boxes, picture blocks, buttons, and so on) that can be used to customize and construct apps. Consider Flutter to be the app’s frontend user interface and Dart to be the backend code that is generated automatically. Flutter is considerably easier to understand and use, perfect for creating MVPs. It is also supported by a variety of Integrated Development Environments. Long story short, Flutter is paving the way for the future. Several companies have already begun using Flutter for cross-platform development. In fact, even Ubuntu Linux supports Flutter-based desktop apps. As such, learning Flutter can be a career-defining move for any coder. With Mastering Flutter, learning Flutter becomes straightforward, which will help readers undoubtedly advance their careers. The Mastering Computer Science series is edited by Sufyan bin Uzayr, a writer and educator with over a decade of experience in the computing field.

Mastering FreeBSD and OpenBSD Security: Building, Securing, and Maintaining BSD Systems

by Paco Hope Yanek Korff Bruce Potter

FreeBSD and OpenBSD are increasingly gaining traction in educational institutions, non-profits, and corporations worldwide because they provide significant security advantages over Linux. Although a lot can be said for the robustness, clean organization, and stability of the BSD operating systems, security is one of the main reasons system administrators use these two platforms.There are plenty of books to help you get a FreeBSD or OpenBSD system off the ground, and all of them touch on security to some extent, usually dedicating a chapter to the subject. But, as security is commonly named as the key concern for today's system administrators, a single chapter on the subject can't provide the depth of information you need to keep your systems secure.FreeBSD and OpenBSD are rife with security "building blocks" that you can put to use, and Mastering FreeBSD and OpenBSD Security shows you how. Both operating systems have kernel options and filesystem features that go well beyond traditional Unix permissions and controls. This power and flexibility is valuable, but the colossal range of possibilities need to be tackled one step at a time. This book walks you through the installation of a hardened operating system, the installation and configuration of critical services, and ongoing maintenance of your FreeBSD and OpenBSD systems.Using an application-specific approach that builds on your existing knowledge, the book provides sound technical information on FreeBSD and Open-BSD security with plenty of real-world examples to help you configure and deploy a secure system. By imparting a solid technical foundation as well as practical know-how, it enables administrators to push their server's security to the next level. Even administrators in other environments--like Linux and Solaris--can find useful paradigms to emulate.Written by security professionals with two decades of operating system experience, Mastering FreeBSD and OpenBSD Security features broad and deep explanations of how how to secure your most critical systems. Where other books on BSD systems help you achieve functionality, this book will help you more thoroughly secure your deployments.

Mastering FreeSWITCH

by Anthony Minessale II Giovanni Maruzzelli

Master the art of advanced VoIP and WebRTC communication with the most dynamic application server, FreeSWITCH About This Book * Forget the hassle - make FreeSWITCH work for you * Discover how FreeSWITCH integrates with a range of tools and APIs * From high availability to IVR development use this book to become more confident with this useful communication software Who This Book Is For SysAdmins, VoIP engineers - whoever you are, whatever you're trying to do, this book will help you get more from FreeSWITCH. What You Will Learn * Get to grips with the core concepts of FreeSWITCH * Learn FreeSWITCH high availability * Work with SIP profiles, gateways, ITSPs, and Codecs optimization * Implement effective security on your projects * Master audio manipulation and recording * Discover how FreeSWITCH works alongside WebRTC * Build your own complex IVR and PBX applications * Connect directly to PSTN/TDM * Create your own FreeSWITCH module * Trace SIP packets with the help of best open source tools * Implement Homer Sipcapture to troubleshoot and debug all your platform traffic In Detail FreeSWITCH is one of the best tools around if you're looking for a modern method of managing communication protocols through a range of different media. From real-time browser communication with the WebRTC API to implementing VoIP (voice over internet protocol), with FreeSWITCH you're in full control of your projects. This book shows you how to unlock its full potential - more than just a tutorial, it's packed with plenty of tips and tricks to make it work for you. Written by members of the team who actually helped build FreeSWITCH, it will guide you through some of the newest features of version 1.6 including video transcoding and conferencing. Find out how FreeSWITCH interacts with other tools and APIs, learn how to tackle common (and not so common) challenges ranging from high availability to IVR development and programming advanced PBXs. Great communication functionality begins with FreeSWITCH - find out how and get your project up and running today. Style and approach Find out how it works, then put your knowledge into practice - that's how this advanced FreeSWITCH guide has been designed to help you learn. You'll soon master FreeSWITCH and be confident using it in your projects.

Mastering Full-Stack React Web Development

by Kamil Przeorski Tomasz Dyl

Learn how to create dynamic full-stack applications with ReactJS and other leading JavaScript tools – smarter web development starts here About This Book • Harness the impressive power of ReactJS and rethink full-stack web development • Build dynamic web applications using the tools created by the innovators driving the tech industry • Combine the powers of React, Node, MongoDB, and Falcor to create highly scalable real-time apps. Who This Book Is For This book is for JavaScript developers who want to create highly scalable, enterprise-grade apps. Basic knowledge of React.JS is necessary; however you do not need detailed knowledge of the other stack components such as Node.JS, Express, MongoDB, or Falcor. What You Will Learn • See how to build a full-stack app that is scalable and designed for the demands of modern users • Create a powerful JWT-based authentication full-stack “starter-kit” • Make your app extremely stable and resilient with Redux and its immutable single state tree • Explore the new possibilities given by Falcor, the middleware built by Netflix • Find out how Redux works alongside ReactJS – and how it makes building an isomorphic app easier • Deploy and maintain your apps successfully using Docker and AWS In Detail Full-stack web development is being redefined by the impact of ReactJS. If MEAN demonstrated just how effective combining JavaScript frameworks and tools could be for the modern web developer, by replacing Angular with React, developers have an easier way to build isomorphic web applications where code can run on both the client and server. This book will get you up to speed with one of the latest strategies to meet the demands of today's dynamic and data-intensive web. Combining detailed insights and guidance with practical and actionable information that will ensure you can build a complete isomorphic web app, it's an essential resource for the forward-thinking developer. You'll see how its flexibility is a core part of any full-stack developer's workflow, as well as learning how to use Mongoose alongside it to make data storage safer and more reliable. Style and approach Combine the powers of React, Node, MongoDB, and Falcor with this advanced practical guide to create highly scalable real-time apps.

Mastering Functional Programming: Functional techniques for sequential and parallel programming with Scala

by Anatolii Kmetiuk

Learn how functional programming can help you in deploying web servers and working with databases in a declarative and pure wayKey FeaturesLearn functional programming from scratchProgram applications with side effects in a pure wayGain expertise in working with array tools for functional programmingBook DescriptionIn large projects, it can get difficult keeping track of all the interdependencies of the code base and how its state changes at runtime. Functional Programming helps us solve these problems. It is a paradigm specifically designed to deal with the complexity of software development. This book will show you how the right abstractions can reduce complexity and make your code easy to read and understand.Mastering Functional Programming begins by touching upon the basics such as what lambdas are and how to write declarative code with the help of functions. It then moves on to more advanced concepts such as pure functions and type classes, the problems they aim to solve, and how to use them in real-world scenarios. You will also explore some of the more advanced patterns in the world of functional programming, such as monad transformers and Tagless Final. In the concluding chapters, you will be introduced to the actor model, implement it in modern functional languages, and explore the subject of parallel programming.By the end of the book, you will have mastered the concepts entailing functional programming along with object-oriented programming (OOP) to build robust applications.What you will learnWrite reliable and scalable software based on solid foundationsExplore the cutting edge of computer science researchEffectively solve complex architectural problems in a robust wayAvoid unwanted outcomes such as errors or delays and focus on business logicWrite parallel programs in a functional style using the actor modelUse functional data structures and collections in your day-to-day workWho this book is forIf you are from an imperative and OOP background, this book will guide you through the world of functional programming, irrespective of which programming language you use.

Mastering GNOME: A Beginner's Guide (Mastering Computer Science)

by Sufyan Bin Uzayr

Mastering GNOME helps the reader master the GNOME desktop environment for a faster and more robust computing experience. The best thing about Linux is the plethora of choices that users tend to get. Whether it pertains to the kernel modules, or to the desktop environments, there is no shortage of options. Speaking of desktop environments, GNOME stands tall as one of the leading options. GNOME is an open source, free to use, simple, and attractive workspace interface supporting almost all the major Linux operating systems. GNOME includes a beautiful collection of programs, libraries, plugins, and probably millions of themes (some of which you may need to install manually). In fact, one of the most exemplary aspects of GNOME is GNOME Boxes, which allows you to construct virtual networks of multiple Linux operating systems without having to visit the website or download an iOS file, and it runs perfectly well via virtualization on KVM, which is the icing on the cake. But that is not all – GNOME is, arguably, the single most stable and dependable Linux desktop environment available today! GNOME has become one of the most effective, secure, and trustworthy desktops offered for the Linux platform, and that is the primary reason why it is the desktop environment of choice for Ubuntu, the world’s most popular Linux distro. Regardless of skillset, users can quickly get up to speed with GNOME for everyday usage. This is where Mastering GNOME comes in. With Mastering GNOME, using GNOME for day-to-day computing becomes quite straightforward, which will help readers undoubtedly boost their productivity. The Mastering Computer Science series is edited by Sufyan bin Uzayr, a writer and educator with over a decade of experience in the computing field.

Mastering GUI Programming with Python: Develop impressive cross-platform GUI applications with PyQt

by Alan Moore

An advanced guide to creating powerful high-performance GUIs for modern, media-rich applications in various domains such as business and game developmentKey FeaturesGain comprehensive knowledge of Python GUI development using PyQt 5.12Explore advanced topics including multithreaded programming, 3D animation, and SQL databasesBuild cross-platform GUIs for Windows, macOS, Linux, and Raspberry PiBook DescriptionPyQt5 has long been the most powerful and comprehensive GUI framework available for Python, yet there is a lack of cohesive resources available to teach Python programmers how to use it. This book aims to remedy the problem by providing comprehensive coverage of GUI development with PyQt5. You will get started with an introduction to PyQt5, before going on to develop stunning GUIs with modern features. You will then learn how to build forms using QWidgets and learn about important aspects of GUI development such as layouts, size policies, and event-driven programming. Moving ahead, you’ll discover PyQt5’s most powerful features through chapters on audio-visual programming with QtMultimedia, database-driven software with QtSQL, and web browsing with QtWebEngine. Next, in-depth coverage of multithreading and asynchronous programming will help you run tasks asynchronously and build high-concurrency processes with ease. In later chapters, you’ll gain insights into QOpenGLWidget, along with mastering techniques for creating 2D graphics with QPainter. You’ll also explore PyQt on a Raspberry Pi and interface it with remote systems using QtNetwork. Finally, you will learn how to distribute your applications using setuptools and PyInstaller. By the end of this book, you will have the skills you need to develop robust GUI applications using PyQt. What you will learn: Get to grips with the inner workings of PyQt5; Learn how elements in a GUI application communicate with signals and slots; Learn techniques for styling an application; Explore database-driven applications with the QtSQL module; Create 2D graphics with QPainter; Delve into 3D graphics with QOpenGLWidget; Build network and web-aware applications with QtNetwork and QtWebEngine. Who this book is for: This book is for programmers who want to create attractive, functional, and powerful GUIs using the Python language. You’ll also find this book useful if you are a student, professional, or anyone who wants to start exploring GUIs or take your skills to the next level. Although prior knowledge of the Python language is assumed, experience with PyQt, Qt, or GUI programming is not required.

Mastering Game Development with Unreal Engine 4: Build high-performance AAA games with UE 4, 2nd Edition

by Matt Edmonds

A comprehensive guide with coverage on AudioFX, Particle system, shaders, sequencers, and the latest features of Unreal 4.19 that will take your game development skills to the next levelKey FeaturesCreate a high-performance Combat game using the essential features of Unreal Engine 4.18+.Master the complex competitive features needed in modern games such as Volumetric Lightmaps and Precomputed Lighting on Volumetric Fog, and build an impressive UI.Experience not only VR support for your game but also the inbuilt support of Apple’s ARKit and Google's ARCore with UE4's newly released support for these platforms.Book DescriptionTo make a basic combat game from scratch, you will quickly override existing UE4 classes, and add and implement simple C++ functions while running and building them. These are all discussed as a short summary for new developers and as a quick refresher for experienced developers. Next, you will build a combat player character with expanded controls, create logic for a character, swap weapons, attack and move, bridge over scene changes and transitions, retain data between scenes, and manage the scene-change process.You will then build an intelligent enemy AI and add physics based particles for weapon impacts. You will also get acquainted with cutting-edge features such as Volumetric Lightmaps for precomputed lighting, and Atmospheric and Volumetric Fog, to build advanced visuals in our ongoing GitHub project.Moving on, you will explore the tools required to build an in-game cut-scene for a more professional gameplay experience and story direction. Along the way, you will implement a solid game UI, including writing a full in-game load and save system that will enable players to resume their game from any point. You will also prepare, build, and work on VR and AR taking them from editor to real-world, building two new projects one in each of these brand new areas of UE4 and integrate classes from the main project into AR!By the end of the book, you will have mastered all major UE features and will be able to bring self-imagined games to life through Unreal Engine 4.18+.What you will learnThe fundamentals of a combat-based game that will let you build and work all other systems from the core gameplay: the input, inventory, A.I. enemies, U.I., and audioManage performance tools and branching shaders based on platform capabilities in the Material EditorExplore scene or level transitions and management strategiesImprove visuals using UE4 systems such as Volumetric Lightmaps, Precomputed Lighting, and CutscenesImplement audio-to-animation timelines and trigger them from visual FXIntegrate Augmented Reality into a game with UE4's brand new ARKit and ARCore supportPerform almost any game logic needed via Blueprint Visual Scripting, and know when to implement it in Blueprint as opposed to C++Who this book is forThis book is for game developers who want to build high-performance games with amazing UIs. Experience with C++ is required and some knowledge of working with Unreal Engine 4 would be an advantage.

Mastering GeoServer

by Colin Henderson

If you are a GIS professional who intends to explore advanced techniques and get more out of GeoServer deployment rather than simply delivering good looking maps, then this book is for you.

Mastering Geospatial Analysis with Python: Explore GIS processing and learn to work with GeoDjango, CARTOframes and MapboxGL-Jupyter

by Silas Toms Paul Crickard Eric Van Rees

Explore GIS processing and learn to work with various tools and libraries in Python. Key Features Analyze and process geospatial data using Python libraries such as; Anaconda, GeoPandas Leverage new ArcGIS API to process geospatial data for the cloud. Explore various Python geospatial web and machine learning frameworks.Book DescriptionPython comes with a host of open source libraries and tools that help you work on professional geoprocessing tasks without investing in expensive tools. This book will introduce Python developers, both new and experienced, to a variety of new code libraries that have been developed to perform geospatial analysis, statistical analysis, and data management. This book will use examples and code snippets that will help explain how Python 3 differs from Python 2, and how these new code libraries can be used to solve age-old problems in geospatial analysis.You will begin by understanding what geoprocessing is and explore the tools and libraries that Python 3 offers. You will then learn to use Python code libraries to read and write geospatial data. You will then learn to perform geospatial queries within databases and learn PyQGIS to automate analysis within the QGIS mapping suite. Moving forward, you will explore the newly released ArcGIS API for Python and ArcGIS Online to perform geospatial analysis and create ArcGIS Online web maps. Further, you will deep dive into Python Geospatial web frameworks and learn to create a geospatial REST API.What you will learn Manage code libraries and abstract geospatial analysis techniques using Python 3. Explore popular code libraries that perform specific tasks for geospatial analysis. Utilize code libraries for data conversion, data management, web maps, and REST API creation. Learn techniques related to processing geospatial data in the cloud. Leverage features of Python 3 with geospatial databases such as PostGIS, SQL Server, and SpatiaLite.Who this book is forThe audience for this book includes students, developers, and geospatial professionals who need a reference book that covers GIS data management, analysis, and automation techniques with code libraries built in Python 3.

Mastering Geospatial Development with QGIS 3.x: An in-depth guide to becoming proficient in spatial data analysis using QGIS 3.4 and 3.6 with Python, 3rd Edition

by Shammunul Islam Simon Miles GISP Menke GISP Smith Jr. Luigi Pirelli John Van Hoesen, GISP,

Go beyond the basics and unleash the full power of QGIS 3.4 and 3.6 with practical, step-by-step examples Key Features One-stop solution to all of your GIS needs Master QGIS by learning about database integration, and geoprocessing tools Learn about the new and updated Processing toolbox and perform spatial analysis Book Description QGIS is an open source solution to GIS and widely used by GIS professionals all over the world. It is the leading alternative to proprietary GIS software. Although QGIS is described as intuitive, it is also, by default, complex. Knowing which tools to use and how to apply them is essential to producing valuable deliverables on time. Starting with a refresher on the QGIS basics and getting you acquainted with the latest QGIS 3.6 updates, this book will take you all the way through to teaching you how to create a spatial database and a GeoPackage. Next, you will learn how to style raster and vector data by choosing and managing different colors. The book will then focus on processing raster and vector data. You will be then taught advanced applications, such as creating and editing vector data. Along with that, you will also learn about the newly updated Processing Toolbox, which will help you develop the advanced data visualizations. The book will then explain to you the graphic modeler, how to create QGIS plugins with PyQGIS, and how to integrate Python analysis scripts with QGIS. By the end of the book, you will understand how to work with all aspects of QGIS and will be ready to use it for any type of GIS work. What you will learn Create and manage a spatial database Get to know advanced techniques to style GIS data Prepare both vector and raster data for processing Add heat maps, live layer effects, and labels to your maps Master LAStools and GRASS integration with the Processing Toolbox Edit and repair topological data errors Automate workflows with batch processing and the QGIS Graphical Modeler Integrate Python scripting into your data processing workflows Develop your own QGIS plugins Who this book is for If you are a GIS professional, a consultant, a student, or perhaps a fast learner who wants to go beyond the basics of QGIS, then this book is for you. It will prepare you to realize the full potential of QGIS.

Mastering Gephi Network Visualization

by Ken Cherven

This book is intended for anyone interested in advanced network analysis. If you wish to master the skills of analyzing and presenting network graphs effectively, then this is the book for you. No coding experience is required to use this book, although some familiarity with the Gephi user interface will be helpful.

Mastering Git

by Jakub Narebski

Attain expert-level proficiency with Git for enhanced productivity and efficient collaboration by mastering advanced distributed version control features About This Book * Set up Git for solo and collaborative development * Harness the full power of Git version control system to customize Git behavior, manipulate history, integrate external tools and explore platform shortcuts * A detailed guide, which explains how to apply advanced Git techniques and workflows and ways to handle submodules Who This Book Is For If you are a Git user with reasonable knowledge of Git and familiarity with basic concepts such as branching, merging, staging, and workflows, this is the book for you. Basic knowledge of installing Git and software configuration management concepts is essential. What You Will Learn * Explore project history, find revisions using different criteria, and filter and format how history looks * Manage your working directory and staging area for commits and interactively create new revisions and amend them * Set up repositories and branches for collaboration * Submit your own contributions and integrate contributions from other developers via merging or rebasing * Customize Git behavior system-wide, on a per-user, per-repository, and per-file basis * Take up the administration and set up of Git repositories, configure access, find and recover from repository errors, and perform repository maintenance * Chose a workflow and configure and set up support for the chosen workflow In Detail Git is one of the most popular types of Source Code Management (SCM) and Distributed Version Control System (DVCS). Despite the powerful and versatile nature of the tool enveloping strong support for nonlinear development and the ability to handle large projects efficiently, it is a complex tool and often regarded as "user-unfriendly". Getting to know the ideas and concepts behind the architecture of Git will help you make full use of its power and understand its behavior. Learning the best practices and recommended workflows should help you to avoid problems and ensure trouble-free development. The book scope is meticulously designed to help you gain deeper insights into Git's architecture, its underlying concepts, behavior, and best practices. Mastering Git starts with a quick implementation example of using Git for a collaborative development of a sample project to establish the foundation knowledge of Git operational tasks and concepts. Furthermore, as you progress through the book, the tutorials provide detailed descriptions of various areas of usage: from archaeology, through managing your own work, to working with other developers. This book also helps augment your understanding to examine and explore project history, create and manage your contributions, set up repositories and branches for collaboration in centralized and distributed version control, integrate work from other developers, customize and extend Git, and recover from repository errors. By exploring advanced Git practices, you will attain a deeper understanding of Git's behavior, allowing you to customize and extend existing recipes and write your own. Style and approach Step-by-step instructions and useful information make this book the ultimate guide to understanding and mastering Git. This book will show road to mastery example by example, while explaining mental model of Git. The Introduction section covers the 'Essentials' just for refreshing the basics. The main highlight is that the concepts are based on HOW the technology/framework works and not just practical 'WHAT to do'.

Mastering Git: A Beginner's Guide (Mastering Computer Science)

by Sufyan Bin Uzayr

Mastering Git: A Beginner’s Guide introduces developers of all ages to the wonderful and useful world of Git. As far as software development is considered, the advent of Git has truly proven to be a milestone. If you are a software developer, you have probably already heard of Git. Its importance and functionality in the world of coding merits very high praise for a variety of reasons. Computers now have become very amenable machines. You can remove a significant section of the text from your work accidentally, but there is no need to panic. Simply use the Undo option and you’re good. This, however, was not the case in the early days of development. Back then, developers did not have access to any such technology, and it was only one person who used to own the master copy of a work. This person would divide the code into specific parts, which would subsequently be divided between developers, who would work on their part and make their completed submissions independent of each other. This was followed by a standard check, after which the old version was completely replaced by the new version. This was a very tedious process—unless someone had beenvery proactive with making copies of the code, the previous versions of a file were often effectively lost. Thankfully, a significant breakthrough came in 1972 when developer Marc Rochkind invented the Source Code Control System (SCCS), which was the very first form of Version Control System (VCS). It was limited in terms of its functionality, and could allow only one person to work on it at a time, while concurrent management had to be handled using locks. But we have come a long way since then. Today, Git is the single most-used VCS out there. Its influence on coding and development, in particular, the innovative use of "branches" in order to facilitate collaboration for projects, cannot be over-emphasized. Version Control has become an indispensable part of our lives, and being familiar with the functioning of Git is something employers deem highly important. Mastering Git will prove to be of tremendous help to developers of all spheres in learning Git and Version Control. This book offers information on a wide array of subjects pertaining to Git, and even briefly touches upon its history, advantages, and disadvantages. Mastering Git also offers tips on installation and different elements involved in its functioning, such as Repositories, Remotes, Aliases, Tagging, and Branches. Popular services and hosts for such Git projects as GitHub, GitLab, and Bitbucket are also discussed in detail. This book will prove to be a handy guide for both newbie learners and trained professionals. Learn more about our other Mastering titles at: https://www.routledge.com/Mastering-Computer-Science/book-series/MCS

Mastering Git: Attain expert-level proficiency with Git by mastering distributed version control features

by Jakub Narębski

Harness the full power of the Git version control system, gaining insights into Git best practices and strengthening your understanding of its architecture, underlying concepts, and behaviorKey FeaturesSet up Git for solo and collaborative development as well as for code, documentation, configuration, or dataLeverage the Git version control system to customize and extend existing recipes, and write your ownDiscover how to efficiently manage large and complex repositoriesPurchase of the print or Kindle book includes a free PDF eBookBook DescriptionDevelopers often feel overwhelmed by complex version control issues, especially when managing large repositories. This updated second edition of our Git guide empowers you to tackle these challenges head-on and emerge as a Git pro. The book gets you up to speed with the latest Git version, its features, and advanced branching techniques, helping you master complex development scenarios. A new chapter on tackling challenges while managing large repositories has been added, providing invaluable strategies for efficient version control with Git. The book goes beyond the basics to take you through Git’s architecture, behavior, and best practices in depth. The chapters help you develop a clear understanding of customizing workflows, creating unique solutions, and tackling any version control hurdle. As you advance, you’ll explore a wide range of functionalities, from examining project history to collaborating seamlessly with teammates. Detailed descriptions guide you through managing your work, collaborating with others, administering Git, and navigating project history. By the end of this book, you’ll have become a Git pro and be confident enough to handle advanced branching, manage large repositories, customize workflows, collaborate effectively, and troubleshoot any version control issues.What you will learnExplore project history and find revisions using different criteria Manage your working directory and staging area Set up repositories and branches for collaboration Configure and set up support for the chosen workflow Submit your own contributions and integrate contributions made by others Customize Git behavior system-wide, from per-user to per-file basis Perform Git administration to set up and manage repositories Who this book is forThis book is for developers looking to elevate their Git skills beyond the basics. Whether you're a seasoned developer or just getting started with version control, this book will help you leverage Git for efficient collaboration, code management, and improved workflows. The book also equips DevOps professionals with the knowledge they need to configure Git for seamless integration within DevOps workflows, enabling smoother collaboration between development and operations teams.

Mastering GitHub Enterprise Management and Administration: A Guide for Seamless Management and Collaboration

by Balu Nivrutti Ilag AjayKumar P. Baljoshi Ganesh J. Sangale Yogesh Athave

This book is a comprehensive guide to GitHub Enterprise Cloud and provides a detailed overview of how to set up, manage, administer, and configure GitHub for organizations. In addition to this, you will also learn identity management and the CI/CD pipeline.The book starts with a thorough introduction to GitHub administration and its benefits. You will then learn how to set up and manage a GitHub Enterprise account and organization, guiding administrators through each step. Next, you will go through GitHub Repository Secure Management and Best Practices along with an understanding of how to manage access to GitHub using SAML SSO. GitHub enterprise support strategies and their usage and adoption are discussed next in detail. Moving ahead, you will learn about GitHub Action and Packages followed by GitHub Copilot management. How to automate repetitive tasks and workflows using GitHub Actions and enhancing productivity is discussed in detail with the help of case studies. Towards the end, you will demonstrate securing the software development lifecycle through advanced security and use GitHub Actions for automating business processes.After reading this book, you will be able to leverage the full potential of GitHub Enterprise Cloud for your software development needs.What Will You LearnHow to set up and configure GitHub Enterprise for optimal collaboration, security, and scalability in an enterprise environment.Best practices for managing organizations, repositories, and user access permissions effectively to foster efficient teamwork and code collaboration.Strategies to implement robust CI/CD pipelines using GitHub Actions, automating build, testing, and deployment processes for faster and more reliable software delivery.Proven techniques for ensuring top-notch security and compliance, including authentication methods, access controls, and vulnerability scanning, to protect code repositories and sensitive data.Who Is This Book ForSoftware Development teams, DevOps engineers, and IT professionals who are looking to use GitHub Enterprise Cloud for code collaboration, management, and deployment.

Mastering GitHub Pages: A Beginner's Guide (Mastering Computer Science)

by Sufyan Bin Uzayr

Why should you read Mastering GitHub Pages: A Beginner’s Guide? Because this book offers you a concise guide so that you can quickly navigate the terrains of GitHub Pages sites in a fairly smooth manner. But why use GitHub Pages if it can only make static websites? Why should you go for static websites when you could get a dynamic one made for your organization? Again, why not?! Having a static website is a sure-shot strategy to save a lot of money, keep the website secure, and ensure built-in backups. In addition, you can serve it over HTTPS and make sure that it is fast and SEO-ready. Mastering GitHub Pages delves into static (and dynamic) websites as well as their advantages and disadvantages. Static websites tend to be incredibly fast since they have no processing time for databases and other stuff. Additionally, because you are committing a code base of static assets to a Git repository, the rolling back of changes is simply an issue involving reversion to a commit that was made previously. So backups are a mere git push away, and you are basically serving your entire website from a cache. This means that your server will never need to process a request again. This book helps you master the art of static site generation in no time. Furthermore, Mastering GitHub Pages also discusses in great length Jekyll, a popular static site generator. When working with Jekyll, all you do is give it liquid templates as well as Markdown content, and it is adept at combining them both into a static website. It requires no-on-the-fly processing, and your blog will display at a significantly faster speed. This workflow proves useful for GitHub Pages because they tend to support the Jekyll builds. As such, your blog posts can be contributed using pull requests, and all your content gets stored within version control. Non-developers could also contribute posts in Markdown. Mastering GitHub Pages is an immensely useful book that all developers can use for the creation of websites on the free GitHub Pages platform. So, go ahead, grab a copy of the book for a proper GitHub Pages primer! Learn more about our other Mastering titles at: https://www.routledge.com/Mastering-Computer-Science/book-series/MCS

Mastering GitLab 12: Implement DevOps culture and repository management solutions

by Joost Evertse

An expert guide to helping you use DevOps techniques with the latest GitLab version to optimize and manage your software workflow Key Features Delve into GitLab's architecture, and install and configure it to fit your environment Learn about the underlying principles of Agile software development and DevOps Explore Gitlab's features to manage enterprise cloud-native applications and services Book Description GitLab is an open source repository management and version control toolkit with functions for enterprises and personal software projects. It offers configurability options, extensions, and APIs that make it an ideal tool for enterprises to manage the software development life cycle. This book begins by explaining GitLab options and the components of the GitLab architecture. You will learn how to install and set up GitLab on-premises and in the cloud, along with understanding how to migrate code bases from different systems, such as GitHub, Concurrent Versions System, Team Foundation Version Control, and Subversion. Later chapters will help you implement DevOps culture by introducing the workflow management tools in GitLab and continuous integration/continuous deployment (CI/CD). In addition to this, the book will guide you through installing GitLab on a range of cloud platforms, monitoring with Prometheus, and deploying an environment with GitLab. You'll also focus on the GitLab CI component to assist you with creating development pipelines and jobs, along with helping you set up GitLab runners for your own project. Finally, you will be able to choose a high availability setup that fits your needs and helps you monitor and act on results obtained after testing. By the end of this book, you will have gained the expertise you need to use GitLab features effectively, and be able to integrate all phases in the development process. What you will learn Install GitLab on premises and in the cloud using a variety of configurations Conduct data migration from the SVN, TFS, CVS, and GitHub platforms to GitLab Use GitLab runners to develop different types of configurations in software development Plan and perform CI/CD by using GitLab features Monitor and secure your software architecture using Prometheus and Grafana Implement DevOps culture by introducing workflow management tools in GitLab Who this book is for If you are a software developer, DevOps professional, or any developer who wants to master GitLab for productive repository management in your day-to-day tasks, this book is for you. Basic understanding of the software development workflow is assumed.

Mastering Go Web Services

by Nathan Kozyra

If you are a web programmer with experience in developing web services and have a rudimentary knowledge of using Go, then this is the book for you. Basic knowledge of Go as well as knowledge of relational databases and non-relational NoSQL datastores is assumed. Some basic concurrency knowledge is also required.

Mastering Go: Create Golang Production Applications Using Network Libraries, Concurrency, And Advanced Go Data Structures

by Mihalis Tsoukalos

<P><P>Exploring the major features and packages of Go, along with its types and data-structures, enabling the reader to write threadsafe, concurrent cloud, and network applications <P><P>Key Features <P><P>Not your typical introduction to the Golang programming language <P><P>Exploring Golang cradle to grave, completes the developer's Golang education <P><P>A thorough exploration into the core libraries and Golang features, that usually are taken for granted <P><P>In depth explanation, detailing the rationale behind composite data types, Golang concurrency, and the Golang networking library <P><P>Book Description <P><P>Often referred to as Golang (albeit wrongly), the Go programming language is really making strides thanks to some masterclass developments, architected by the greatest programming minds. Shopify CEO Tobias Lutke has been recently quoted as saying “Go will be the server language of the future.” Go programmers are in high demand, but - more controversially - Go takes the stage where C and Unix programmers previously led the way. <P><P>The growth of the Go language has seen it become the means by which systems, networking, web, and cloud applications are implemented. If you're a Go programmer, you'll already know some Go syntax and will have written some small projects. However, most Go programmers face the difficulty of having to integrate their Golang skills with production code. With Mastering Go, the author shows you just how to tackle this problem. You'll benefit by mastering the use of the libraries and utilize its features, speed, and efficiency for which the Go ecology is justly famous. <P><P>Offering a compendium of Go, the book begins with an account of how Go has been implemented. You'll also benefit from an in-depth account of concurrency and systems and network programming imperative for modern-day native cloud development through the course of the book. <P><P>What you will learn <P><P>Understand the design choices of Golang syntax <P><P>Know enough Go internals to be able to optimize Golang code <P><P>Appreciate concurrency models available in Golang <P><P>Understand the interplay of systems and networking code <P><P>Write server-level code that plays well in all environments <P><P>Understand the context and appropriate use of Go data types and data structures <P><P>Who this book is for <P><P>This book is for Golang programmers. You should have previously read an introductory book on Go, or to have worked through the Tour of Go or an equivalent online course. This book will definitely help to remember the basic concepts of concurrency, but network programming will be explained. A certain amount of previous coding and production experience would be helpful.

Mastering Go: Create Golang production applications using network libraries, concurrency, and advanced Go data structures

by Mihalis Tsoukalos

Exploring the major features and packages of Go, along with its types and data-structures, enabling the reader to write threadsafe, concurrent cloud, and network applicationsKey Features Not your typical introduction to the Golang programming language Exploring Golang cradle to grave, completes the developer’s Golang education A thorough exploration into the core libraries and Golang features, that usually are taken for granted In depth explanation, detailing the rationale behind composite data types, Golang concurrency, and the Golang networking libraryBook DescriptionThe Go programming language, often referred to as Golang (albeit wrongly), is really making strides, with some masterclass developments, architected by the greatest programming minds. Tobias Lutke, CEO of Shopify, recently quoted as saying “Go will be the server language of the future”, powerful words, with much ambition. Go programmers are in high demand, but more controversially, Go takes the stage, where C and Unix programmers previously led the way.The growth of the Go language has seen it become the means by which systems, networking, web, and cloud applications are implemented. Comfortable with syntax, you’ll benefit by mastering the use of the libraries and utilise its features, speed, and efficiency, for which the Go ecology is justly famous.You already know a little Go syntax and you’ve written some small projects, most Go programmers face the difficulty of having to integrate their Golang skills with production code. Typical introductions to Go programming, often stop short of this transition, the author continue on, showing you just how to tackle this.Offering a compendium of Go, the book begins with an account of how Go has been implemented, also, the reader will benefit from a dedicated chapter, an in-depth account of concurrency, systems and network programming, imperative for modern-day native cloud development. What you will learn Understand the design choices of Golang syntax Know enough Go internals to be able to optimize Golang code Appreciate concurrency models available in Golang Understand the interplay of systems and networking code Write server-level code that plays well in all environments Understand the context and appropriate use of Go data types and data structuresWho this book is forThis book is for Golang programmers. You should have previously read an introductory book on Go, or to have worked through the Tour of Go or an equivalent online course. This book will definitely help to remember the basic concepts of concurrency, but network programming will be explained. A certain amount of previous coding and production experience would be helpful.

Mastering Go: Create Golang production applications using network libraries, concurrency, machine learning, and advanced data structures, 2nd Edition

by Mihalis Tsoukalos

Dive deep into the Go language and become an expert Go developer Key Features Second edition of the bestselling guide to advanced Go programming, expanded to cover machine learning, more Go packages and a range of modern development techniques Completes the Go developer's education with real-world guides to building high-performance production systems Packed with practical examples and patterns to apply to your own development work Clearly explains Go nuances and features to remove the frustration from Go development Book Description Often referred to (incorrectly) as Golang, Go is the high-performance systems language of the future. Mastering Go, Second Edition helps you become a productive expert Go programmer, building and improving on the groundbreaking first edition. Mastering Go, Second Edition shows how to put Go to work on real production systems. For programmers who already know the Go language basics, this book provides examples, patterns, and clear explanations to help you deeply understand Go's capabilities and apply them in your programming work. The book covers the nuances of Go, with in-depth guides on types and structures, packages, concurrency, network programming, compiler design, optimization, and more. Each chapter ends with exercises and resources to fully embed your new knowledge. This second edition includes a completely new chapter on machine learning in Go, guiding you from the foundation statistics techniques through simple regression and clustering to classification, neural networks, and anomaly detection. Other chapters are expanded to cover using Go with Docker and Kubernetes, Git, WebAssembly, JSON, and more. If you take the Go programming language seriously, the second edition of this book is an essential guide on expert techniques. What you will learn Clear guidance on using Go for production systems Detailed explanations of how Go internals work, the design choices behind the language, and how to optimize your Go code A full guide to all Go data types, composite types, and data structures Master packages, reflection, and interfaces for effective Go programming Build high-performance systems networking code, including server and client-side applications Interface with other systems using WebAssembly, JSON, and gRPC Write reliable, high-performance concurrent code Build machine learning systems in Go, from simple statistical regression to complex neural networks Who this book is for Mastering Go, Second Edition is for Go programmers who already know the language basics, and want to become expert Go practitioners.

Mastering Go: Harness the power of Go to build professional utilities and concurrent servers and services, 3rd Edition

by Mihalis Tsoukalos

Master key features of Go, including advanced concepts like concurrency and working with JSON, to create and optimize real-world services, network servers, and clientsKey FeaturesThird edition of the bestselling guide to advanced Go programming, expanded to cover RESTful servers, the WebSocket protocol, and Go genericsUse real-world exercises to build high-performance network servers and powerful command line utilitiesPacked with practical examples and utilities to apply to your own development work and administrative tasksClearly explains Go nuances and features to simplify Go developmentBook DescriptionGo is the language of the future for high-performance systems due to its simplicity and clear principles. Mastering Go shows you how to put Go to work on real production systems. This new edition has been updated to include topics like creating RESTful servers and clients, understanding Go generics, and developing gRPC servers and clients. Mastering Go, Third Edition explores the capabilities of Go in practice. You will become confident with advanced concepts, including concurrency and the operation of the Go Garbage Collector, using Go with Docker, writing powerful command-line utilities, working with JavaScript Object Notation (JSON) data, and interacting with databases. You will also improve your understanding of Go internals to optimize Go code and use data types and data structures in new and unexpected ways. This Go programming book also covers the nuances and idioms of Go with exercises and resources to fully embed your newly acquired knowledge. Become an expert Go programmer by building Go systems and implementing advanced Go techniques in your projects.What you will learnUse Go in productionWrite reliable, high-performance concurrent codeManipulate data structures including slices, arrays, maps, and pointersDevelop reusable packages with reflection and interfacesBecome familiar with generics for effective Go programmingCreate concurrent RESTful servers, and build gRPC clients and serversDefine Go structures for working with JSON dataWho this book is forThis book is for Go programmers with previous coding experience, who are familiar with the basics of the language and want to become expert Go practitioners.

Refine Search

Showing 36,101 through 36,125 of 61,763 results