Library

Exercises in Programming Style by Cristina Videira Lopes

Using a simple computational task (term frequency) to illustrate different programming styles, Exercises in Programming Style helps readers understand the various ways of writing programs and designing systems. It is designed to be used in conjunction with code provided on an online repository. The book complements and explains the raw code in a way that is accessible to anyone who regularly practices the art of programming. The book can also be used in advanced programming courses in computer science and software engineering programs.The book contains 33 different styles for writing the term frequency task. The styles are grouped into nine categories: historical, basic, function composition, objects and object interactions, reflection and metaprogramming, adversity, data-centric, concurrency, and interactivity. The author verbalizes the constraints in each style and explains the example programs. Each chapter first presents the constraints of the style, next shows an example program, and then gives a detailed explanation of the code. Most chapters also have sections focusing on the use of the style in systems design as well as sections describing the historical context in which the programming style emerged....

Databases Illuminated by Catherine M. Ricardo

Each new print copy includes Navigate 2 Advantage Access that unlocks a comprehensive and interactive eBook, student practice activities and assessments, a full suite of instructor resources, and learning analytics reporting tools. Databases Illuminated, Third Edition combines database theory with a practical approach to database design and implementation. Strong pedagogical features, including accessible language, real-world examples, downloadable code, and engaging hands-on projects and lab exercises create a text with a unique combination of theory and student-oriented activities. Providing an integrated, modern approach to databases, Databases Illuminated, Third Edition is the essential text for students in this expanding field. The text is packaged with a full suite of instructor resources, including a Test Bank, Solutions to Projects and Exercises, Lecture Slides in PowerPoint format, and Additional Projects. With Navigate 2, technology and content combine to expand the reach of your classroom. Whether you teach an online, hybrid, or traditional classroom-based course, Navigate 2 delivers unbeatable value. Experience Navigate 2 today at www.jblnavigate.com/2 Key features of the Third Edition include: • A new chapter on the emerging topics of Big Data, NoSQL, and NewSQL • Revised and expanded coverage on database security, including SQL injection • Extended coverage of SQL, with additional material on temporal database queries and JDBC • New features and downloadable SQL code for Oracle 12c, MySQL, and SQL Server • Updated information on social and ethical issues addressing new regulations and global issues • Use of the open source software LibreOffice, which is available worldwide at no cost • Access to Navigate 2 online learning materials including a comprehensive and interactive eBook, student practice activities and assessments, learning analytics reporting tools, and more....

Fundamentals of Information Systems Security by David Kim , Michael G. Solomon

Revised and updated with the latest data in the field, Fundamentals of Information Systems Security, Third Edition provides a comprehensive overview of the essential concepts readers must know as they pursue careers in information systems security. The text opens with a discussion of the new risks, threats, and vulnerabilities associated with the transition to a digital world. Part 2 presents a high level overview of the Security+ Exam and provides students with information as they move toward this certification. The book closes with information on information security standards, education, professional certifications, and compliance laws. With its practical, conversational writing style and step-by-step examples, this text is a must-have resource for those entering the world of information systems security. -Maps fully to the six major domains of the CompTIA Security+ SYO-401 Certification exam -Updated to include coverage on recent compliance law and standards updates, including FISMA, NIST SP800-171, and PCI DSS v3.2 -New content on advanced malware and APT attacks to the end points such as ransomware and crypto locker -Addresses data breach and data breach incident response planning -Introduces recent "Internet of Things" risk threats and privacy issues -Available with the Virtual Security Cloud Labs which provide a hands-on, immersive mock IT infrastructure enabling students to test their skills with realistic security scenarios Part of the Jones & Bartlett Learning Information Systems Security & Assurance Series! Click here to learn more: http://www.issaseries.com/...

Expert Python Programming: Master Python by learning the best coding practices and advanced programming concepts, by Michal Jaworski , Tarek Ziade

This new edition of Expert Python Programming provides you with a thorough understanding of the process of building and maintaining Python apps. Complete with best practices, useful tools, and standards implemented by professional Python developers, this fourth edition has been extensively updated. Throughout this book, you'll get acquainted with the latest Python improvements, syntax elements, and interesting tools to boost your development efficiency.The initial few chapters will allow experienced programmers coming from different languages to transition to the Python ecosystem. You will explore common software design patterns and various programming methodologies, such as event-driven programming, concurrency, and metaprogramming. You will also go through complex code examples and try to solve meaningful problems by bridging Python with C and C++, writing extensions that benefit from the strengths of multiple languages. Finally, you will understand the complete lifetime of any application after it goes live, including packaging and testing automation.By the end of this book, you will have gained actionable Python programming insights that will help you effectively solve challenging problems....

Operating System Concepts by Abraham Silberschatz

The tenth edition of Operating System Concepts has been revised to keep it fresh and up-to-date with contemporary examples of how operating systems function, as well as enhanced interactive elements to improve learning and the student’s experience with the material. It combines instruction on concepts with real-world applications so that students can understand the practical usage of the content. End-of-chapter problems, exercises, review questions, and programming exercises help to further reinforce important concepts. New interactive self-assessment problems are provided throughout the text to help students monitor their level of understanding and progress. A Linux virtual machine (including C and Java source code and development tools) allows students to complete programming exercises that help them engage further with the material....

Learning Scientific Programming with Python by Christian Hill

Learn to master basic programming tasks from scratch with real-life, scientifically relevant examples and solutions drawn from both science and engineering. Students and researchers at all levels are increasingly turning to the powerful Python programming language as an alternative to commercial packages and this fast-paced introduction moves from the basics to advanced concepts in one complete volume, enabling readers to gain proficiency quickly. Beginning with general programming concepts such as loops and functions within the core Python 3 language, and moving on to the NumPy, SciPy and Matplotlib libraries for numerical programming and data visualization, this textbook also discusses the use of Jupyter Notebooks to build rich-media, shareable documents for scientific analysis. The second edition features a new chapter on data analysis with the pandas library and comprehensive updates, and new exercises and examples. A final chapter introduces more advanced topics such as floating-point precision and algorithm stability, and extensive online resources support further study. This textbook represents a targeted package for students requiring a solid foundation in Python programming....

Research Software Engineering with Python:by Damien Irving

This book introduces the concepts, tools, and skills that researchers need to get more done in less time and with less pain. Based on the practical experiences of its authors, who collectively have spent several decades teaching software skills to scientists, it covers everything graduate-level researchers need to automate their workflows, collaborate with colleagues, ensure that their results are trustworthy, and publish what they have built so that others can build on it. The book assumes only a basic knowledge of Python as a starting point, and shows readers how the Unix shell, Git, Make, and related tools can give them more time to focus on the research they actually want to do. Research Software Engineering with Python can be used as the main text in a one-semester course or for self-guided study. A running example shows how to organize a small research project step by step; over a hundred exercises give readers a chance to practice these skills themselves, while a glossary defining over two hundred terms will help readers find their way through the terminology. All of the material can be re-used under a Creative Commons license, and all royalties from sales of the book will be donated to The Carpentries, an organization that teaches foundational coding and data science skills to researchers worldwide....

Mastering Linux Administration:by Alexandru Calcatinge

Key Features Become proficient in everyday Linux administration tasks by mastering the Linux command line and using automation Work with the Linux filesystem, packages, users, processes, and daemons Deploy Linux to the cloud with AWS, Azure, and Kubernetes Book Description Linux plays a significant role in modern data center management and provides great versatility in deploying and managing your workloads on-premises and in the cloud. This book covers the important topics you need to know about for your everyday Linux administration tasks.The book starts by helping you understand the Linux command line and how to work with files, packages, and filesystems. You'll then begin administering network services and hardening security, and learn about cloud computing, containers, and orchestration. Once you've learned how to work with the command line, you'll explore the essential Linux commands for managing users, processes, and daemons and discover how to secure your Linux environment using application security frameworks and firewall managers. As you advance through the chapters, you'll work with containers, hypervisors, virtual machines, Ansible, and Kubernetes. You'll also learn how to deploy Linux to the cloud using AWS and Azure.By the end of this Linux book, you'll be well-versed with Linux and have mastered everyday administrative tasks using workflows spanning from on-premises to the cloud. If you also find yourself adopting DevOps practices in the process, we'll consider our mission accomplished. What you will learn Understand how Linux works and learn basic to advanced Linux administration skills Explore the most widely used commands for managing the Linux filesystem, network, security, and more Get to grips with different networking and messaging protocols Find out how Linux security works and how to configure SELinux, AppArmor, and Linux iptables Work with virtual machines and containers and understand container orchestration with Kubernetes Work with containerized workflows using Docker and Kubernetes Automate your configuration management workloads with Ansible Who this book is for If you are a Linux administrator who wants to understand the fundamentals and as well as modern concepts of Linux system administration, this book is for you. Windows System Administrators looking to extend their knowledge to the Linux OS will also benefit from this book. Table of Contents Installing Linux and Setting up the Environment Linux Structure, Basic Commands, Files and Text Editors Linux Software Management Managing User Accounts and Permissions Working with Processes, Signals, Services and Disks Linux Server Setup and Remote Administration Basic Networking with Linux: TCP/IP and Network Configuration Configuring Servers: Print, Web, FTP, Samba, NFS, E-Mail, DNS, DHCP Securing Linux: AppArmor, SELinux, PAM, Cryptography, iptables, firewalls Disaster recovery, diagnostics and troubleshooting Short Introduction to Cloud Computing Working with Containers and Virtual Machines Orchestration with Kubernetes Deploying to the Cloud: OpenStack, AWS, Azure Infrastructure and Automation with Ansible ...

Software Metrics: A Guide To Planning, Analysis, And Application by Pandian C. Ravindranath

The modern field of software metrics emerged from the computer modeling and "statistical thinking" services of the 1980s. As the field evolved, metrics programs were integrated with project management, and metrics grew to be a major tool in the managerial decision-making process of software companies. Now practitioners in the software industry have a reference that validates software metrics as a crucial tool for efficient and successful project management and execution. Software Metrics: A Guide to Planning, Analysis, and Application simplifies software measurement and explains its value as a pragmatic tool for management. Ideas and techniques presented in this book are derived from best practices. The ideas are field-proven, down to earth, and straightforward, making this volume an invaluable resource for those striving for process improvement. This overview helps readers enrich their knowledge of measurements and analysis, best practices, and how ordinary analysis techniques can be applied to achieve extraordinary results. Easy-to-understand tools and methods are applied to demonstrate how metrics create models that are indispensable to decision-making in the software industry....

Simulation Modeling Handbook: A Practical Approach by Christopher A. Chung

The use of simulation modeling and analysis is becoming increasingly more popular as a technique for improving or investigating process performance. This book is a practical, easy-to-follow reference that offers up-to-date information and step-by-step procedures for conducting simulation studies. It provides sample simulation project support material, including checklists, data-collection forms, and sample simulation project reports and publications to facilitate practitioners' efforts in conducting simulation modeling and analysis projects.Simulation Modeling Handbook: A Practical Approach has two major advantages over other treatments. First, it is independent of any particular simulation software, allowing readers to use any commercial package or programming language. Second, it was written to insulate practitioners from unnecessary simulation theory that does not focus on their average, practical needs.As the popularity of simulation studies continues to grow, the planning and execution of these projects, more and more engineering and management professionals will be called upon to perform these tasks. With its simple, no-nonsense approach and focus on application rather than theory, this comprehensive and easy-to-understand guide is the ideal vehicle for acquiring the background and skills needed to undertake effective simulation projects. Features Presents step-by-step procedures for conducting successful simulation modeling and analysis Addresses every phase of performing simulations, from formulating the problem to presenting study results and recommendations Uses approaches applicable regardless of the specific simulation or software used Includes a summary of the major simulation software packages and discusses the pros and cons of using general purpose programming languages ...