The Secret Life of ProgramsMany coders are unfamiliar with the underlying technologies that make their programs run. But why should you care when your code appears to work? Because you want it to run well and not be riddled with hard-to-find bugs. You don't want to be in the news because your code had a security problem.
Lots of technical detail is available online but it's not organized or collected into a convenient place. In The Secret Life of Programs, veteran engineer Jonathan E. Steinhart explores - in depth - the foundational concepts that underlie the machine. Subjects like computer hardware, how software behaves on hardware, as well as how people have solved problems using technology over time.
You'll learn: How the real world is converted into a form that computers understand, like bits, logic, numbers, text, and colors; The fundamental building blocks that make up a computer including logic gates, adders, decoders, registers, and memory; Why designing programs to match computer hardware, especia ...
Design Patterns in .NETImplement design patterns in .NET using the latest versions of the C# and F# languages. This book provides a comprehensive overview of the field of design patterns as they are used in today's developer toolbox.
Using the C# programming language, Design Patterns in .NET explores the classic design pattern implementation and discusses the applicability and relevance of specific language features for the purpose of implementing patterns. You will learn by example, reviewing scenarios where patterns are applicable. MVP and patterns expert Dmitri Nesteruk demonstrates possible implementations of patterns, discusses alternatives and pattern inter-relationships, and illustrates the way that a dedicated refactoring tool (ReSharper) can be used to implement design patterns with ease.
Know the latest pattern implementations available in C# and F#; Refer to researched and proven variations of patterns; Study complete, self-contained examples including many that cover advanced scenarios; Use ...
Pro Oracle SQL DevelopmentWrite SQL statements that are more powerful, simpler, and faster using Oracle SQL and its full range of features. This book provides a clearer way of thinking about SQL by building sets, and provides practical advice for using complex features while avoiding anti-patterns that lead to poor performance and wrong results. Relevant theories, real-world best practices, and style guidelines help you get the most out of Oracle SQL.
Pro Oracle SQL Development is for anyone who already knows Oracle SQL and is ready to take their skills to the next level. Many developers, analysts, testers, and administrators use Oracle databases frequently, but their queries are limited because they do not have the knowledge, experience, or right environment to help them take full advantage of Oracle's advanced features. This book will inspire you to achieve more with your Oracle SQL statements through tips for creating your own style for writing simple, yet powerful, SQL. It teaches you how to think about ...
Becoming the HackerBecoming the Hacker will teach you how to approach web penetration testing with an attacker's mindset. While testing web applications for performance is common, the ever-changing threat landscape makes security testing much more difficult for the defender.
There are many web application tools that claim to provide a complete survey and defense against potential threats, but they must be analyzed in line with the security needs of each web application or service. We must understand how an attacker approaches a web application and the implications of breaching its defenses.
Through the first part of the book, Adrian Pruteanu walks you through commonly encountered vulnerabilities and how to take advantage of them to achieve your goal. The latter part of the book shifts gears and puts the newly learned techniques into practice, going over scenarios where the target may be a popular content management system or a containerized application and its network.
Becoming the Hacker is a c ...
The Art of CRMCRM systems have delivered huge value to organizations. This book shares proven and cutting-edge techniques to increase the power of CRM even further.
In The Art of CRM, Max Fatouretchi shares his decades of experience building successful CRM systems that make a real difference to business performance.
Through clear processes, actionable advice, and informative case studies, The Art of CRM teaches you to design successful CRM systems for your clients.
Fatouretchi, founder of Academy4CRM institute, draws on his experience over 20 years and 200 CRM implementations worldwide.
Bringing CRM bang up to date, The Art of CRM shows how to add AI and machine learning, ensure compliance with GDPR, and choose between on-premise, cloud, and hybrid hosting solutions.
If you're looking for an expert guide to real-world CRM implementations, this book is for you. ...
Deploying SharePoint 2019Update to a version of SharePoint that offers the best of both on-premise and the cloud using SharePoint 2019, the latest release of this cornerstone technology from Microsoft. Don your technical learning hat to get up close and confident on the new time-saving modern features of on-premise, and the many new security and hybrid settings.
Deploying SharePoint 2019 begins with a general introduction to SharePoint 2019, covering new features and expanding your knowledge and capability with the technology systematically. You will learn about the new world of SharePoint, and how it was “cloud-born” from Office 365. From there you will dive into learning how to design a physical architecture for SharePoint Server 2019 and get familiar with the key concepts of high availability (HA) and disaster recovery (DR) solutions.
Install, configure, and optimize SharePoint 2019; Understand SharePoint 2019 as a hybrid framework; Get comfortable with new tools, such as Flow, PowerApps, and Powe ...
Python, PyGame, and Raspberry Pi Game DevelopmentExpand your basic knowledge of Python and use PyGame to create fast-paced video games with great graphics and sounds. This second edition shows how you can integrate electronic components with your games using the build-in general purpose input/output (GPIO) pins and some Python code to create two new games.
You'll learn about object-oriented programming (OOP) as well as design patterns, such as model-view-controller (MVC) and finite-state machines (FSMs). Whether using Windows, macOS, Linux, or a Raspberry Pi, you can unleash the power of Python and PyGame to create great looking games.
The book also includes complete code listings and explanations for Bricks, Snake, and Invaders - three fully working games. These allow you to get started in making your own great games and then modify them or build your own exciting titles. The concepts are further explained using games such as Copycat, where the player must concentrate and repeat the sequence of lights and sounds, and Couch Q ...
Programming EctoLanguages may come and go, but the relational database endures. Learn how to use Ecto, the premier database library for Elixir, to connect your Elixir and Phoenix apps to databases. Get a firm handle on Ecto fundamentals with a module-by-module tour of the critical parts of Ecto. Then move on to more advanced topics and advice on best practices with a series of recipes that provide clear, step-by-step instructions on scenarios commonly encountered by app developers. Co-authored by the creator of Ecto, this title provides all the essentials you need to use Ecto effectively.
Elixir and Phoenix are taking the application development world by storm, and Ecto, the database library that ships with Phoenix, is going right along with them. There are plenty of examples that show you the basics, but to use Ecto to its full potential, you need to learn the library from the ground up.
This definitive guide starts with a tour of the core features of Ecto - repos, queries, schemas, changesets, ...
Web Development with ReasonMLReasonML is a new, type-safe, functional language that compiles to efficient, readable JavaScript. ReasonML interoperates with existing JavaScript libraries and works especially well with React, one of the most popular front-end frameworks. Learn how to take advantage of the power of a functional language while keeping the flexibility of the whole JavaScript ecosystem. Move beyond theory and get things done faster and more reliably with ReasonML today.
ReasonML is a new syntax for OCaml, a battle-tested programming language used in industry for over 20 years. Designed to be familiar to JavaScript programmers, ReasonML code compiles to highly readable JavaScript. With ReasonML, you get OCaml's powerful functional programming features: a strong static type system with an excellent type inference engine, pattern matching, and features for functional programming with immutable variables. ReasonML also allows flexibility with opt-in side effects, mutation, and object-oriented programming ...
Clean RubyLearn how to make better decisions and write cleaner Ruby code. This book shows you how to avoid messy code that is hard to test and which cripples productivity. Author Carleton DiLeo shares hard-learned lessons gained from years of experience across numerous codebases both large and small. Each chapter covers the topics you need to know to make better decisions and optimize your productivity. Many books will tell you how to do something; this book will tell you why you should do it. Start writing code you love.
Build better classes to help promote code reuse; Improve your decision making and make better, smarter choices; Identify bad code and fixed it; Create quality names for all of your variables, classes, and modules; Write better, concise classes; Improve the quality of your methods; Properly use modules; Clarify your Boolean logic; See when and how you refactor; Improve your understanding of TDD and write better tests. ...