Rethinking Productivity in Software Engineering
Collects the wisdom of software engineering thought leaders in a form digestible for any developerShares hard-won best practices and pitfalls to avoidAn up to date look at current practices in software engineering productivity
Javascript
All of JavaScript's newest features, in depth, made easy to understand. JavaScript is a rapidly changing language and it can be challenging to keep up with all the new toys being added. JavaScript: The New Toys explores the newest features of the world's most popular programming language while also showing readers how to track what's coming next. After setting the stage by covering who manages the process of improving JavaScript, how new features get introduced, terminology, and a high-level overview of new features, it details each new or updated item in depth, with example uses, possible pitfalls, and expert recommendations for updating old habits in light of new features. JavaScript: The New Toys: Covers all the additions to JavaScript in ES2015-ES2020 plus a preview of what's coming next Explores the latest syntax: nullish coalescing, optional chaining, let and const, class syntax, private methods, private fields, new.target, numeric separators, BigInt, destructuring, default parameters, arrow functions, async functions, await, generator functions, ... (rest and spread), template literals, binary and octal literals, ** (exponentiation), computed property/method names, for-of, for-await-of, shorthand properties, and others Details the new features and patterns including modules, promises, iteration, generators, Symbol, Proxy, reflection, typed arrays, Atomics, shared memory, WeakMap, WeakSet, and more Highlights common pitfalls and explains how to avoid them Shows how to follow the improvements process and even participate in the process yourself Explains how to use new features even before they're widely supported With its comprehensive coverage and friendly, accessible style, JavaScript: The New Toys provides an invaluable resource for programmers everywhere, whether they work in web development, Node.js, Electron, Windows Universal Apps, or another JavaScript environment.
Pro Python 3
Refine your programming techniques and approaches to become a more productive and creative Python programmer. This book explores the concepts and features that will improve not only your code but also your understanding of the Python community with insights and details about the Python philosophy.Pro Python 3, Third Edition gives you the tools to write clean, innovative code. It starts with a review of some core Python principles, which are illustrated by various concepts and examples later in the book. The first half of the book explores aspects of functions, classes, protocols, and strings, describing techniques which may not be common knowledge, but which together form a solid foundation. Later chapters cover documentation, testing, and app distribution. Along the way, you'll develop a complex Python framework that incorporates ideas learned throughout the book.Updates in this edition include the role of iterators in Python 3, web scraping with Scrapy and BeautifulSoup, using Requests to call web pages without strings, new tools for distribution and installation, and much more. By the end of the book you'll be ready to deploy uncommon features that can take your skills to the next level in Python.What You'll LearnImplement programs with various types of Python functionsWork with classes and object-oriented programmingUse strings from the standard library and third-party librariesHarvest web site data with PythonAutomate unit testing by writing a test suiteReview imaging, random number generation, and NumPy scientific extensionsUnderstand The Zen of Python documentation to help you decide the best way to distribute your codeWho This Book Is ForIntermediate programmers familiar with Python who are looking to move to an advanced level. You should have written at least a simple Python application, and be comfortable with a basic object-oriented approach, using the interactive interpreter, and writing control structures.
Behind the scenes of privacy. A quantitative research study to examine the influence of fear appeals on protection motivation
Master's Thesis from the year 2018 in the subject Computer Science - Commercial Information Technology, grade: 1,3, course: Lehrstuhl f羹r Wirtschaftsinformatik, insb. Informationssysteme in Dienstleistungsbereichen, language: English, abstract: This paper deals with the observable and recently emerging concerns of privacy online, such as possible information theft due to data leaks, and methods to motivate people conducting a more adequate behavior. The lack of existing academic literature and research on this phenomenon, is addressed by generating profound results regarding fear appeals and their impact on the intention for people to protect their data. An exploratory, quantitative study design is used, adopted from the protection motivation theory to primarily investigate the components of this model and the modifications of these by means of two groups, one experiencing fear appeals. A set of 25 questions was developed and surveyed within the scope of an online questionnaire. Analysis implied the existence of a positive relationship between fear appeals and protection intention valid. Furthermore, the results support the understanding of connections among the items prompted. The study contributes to the field of research by providing in- depth insights on the influence of fear appeals on the protection motivation. Based on these findings, the thesis concludes with theoretical as well as practical recommendations for future research.
How Can a Loss of Information in Mixed Attribute Datasets be Prevented?
Master's Thesis from the year 2012 in the subject Computer Science - General, grade: 1.00, Avinashilingam University, language: English, abstract: This work is concerned with the question of how loss of information in data mining can be prevented by putting in missing values in mixed attributed datasets. Missing value imputation is a procedure that replaces the missing values with some feasible values. Missing data imputation methods are based on only complete instances, instances without missing values in a dataset that is, when estimating plausible values for the missing values in the dataset. Actually, the information within incomplete instances can also play an important role in missing value imputation. Missing data imputation aims at providing estimations for missing values by reasoning from observed data. Because missing values can result in bias that impacts on the quality of learned patterns and the performance of classifications Various techniques have been developed to deal with missing values in data sets with homogenous attributes. But those approaches are independent of all either continuous or discrete value. Moreover these algorithms cannot be applied to real data sets such as equipment maintenance datasets, industrial data sets and gene datasets due to the fact that these data sets contain both discrete and continuous attributes. In order to overcome the above shortcomings, imputation is done in the following manner in this work, there by contributing to both continuous and discrete data. In this method two consistent estimators for discrete and continuous missing target values are developed, and then a spherical kernel based iterative estimator using spherical kernel with RBF kernel and spherical kernel with poly kernel is advocated to impute mixed-attribute data sets, thereby improving the interpolation and extrapolation abilities. The performance of this technique is compared by implementing the imputation with the K-NN, Frequency estimator, RB
The Flowers of Evil 2
Discover how to use the Unity game engine to its full potential for both 3D and 2D game development--from the basics of scripting to useful tricks in gameplay, behavior, and animation. With this problem-solving cookbook, you'll get started in two ways: First, you'll learn about the Unity game engine through brief recipes that teach specific features of the software and scripting systems. Second, you'll apply a collection of snippets to address common gameplay scenarios, such as properly keeping score. Using our cookbook format, we pinpoint the problem, set out the solution, and discuss how to solve your problem in the best and most straightforward way possible. This book is ideal for beginning to intermediate Unity developers. You'll find solutions for: 2D and 3D graphics Math, physics, and character control Animation and movement Behavior and AI Sound and music Input and gameplay Scripting and user interface
Head First Kotlin
What will you learn from this book? Head First Kotlin is a complete introduction to coding in Kotlin. This hands-on book helps you learn the Kotlin language with a unique method that goes beyond syntax and how-to manuals and teaches you how to think like a great Kotlin developer. You璽 ll learn everything from language fundamentals to collections, generics, lambdas, and higher-order functions. Along the way, you璽 ll get to play with both object-oriented and functional programming. If you want to really understand Kotlin, this is the book for you. Why does this book look so different? Based on the latest research in cognitive science and learning theory, Head First Kotlin uses a visually rich format to engage your mind rather than a text-heavy approach that puts you to sleep. Why waste your time struggling with new concepts? This multisensory learning experience is designed for the way your brain really works.
Functional Interfaces in Java
Reduce development time by organizing your programs as chains of functional interfaces and see that the advantages of using functional interfaces include the flexibility and power of inlined functional chains and reuse of functional methods utilized throughout the Java API. You'll see how complex logical expressions can be reduced to chains of predicates and how chains of comparators can be used to sort data by several criteria in order. Other examples include streams that utilize functional interfaces to filter, sort, transform, and perform calculations on data; CompletableFutures that use functional interfaces to create cascading and parallel execution threads; and JavaFX programs that use functional interfaces to monitor the data backed by their graphical components.Each chapter contains a complete programming project: the Discount Dave project shows you how to qualify car customers by organizing questions as a list of predicates; the Real Estate Broker project shows you how to use chains of comparators to filter and sort homes according to customer priorities; the Dave's Part Inventory project shows you how to query and write reports from an inventory database using stream operations; and the Sentence Builder project shows you how to correct a sentence by implementing each grammar rule as a separate link in a future chain.Functional Interfaces in Java will help you quickly develop powerful and reliable programs that utilize functional interfaces to implement logic and calculations. What You Will LearnUse the functional interfaces in the java.util.function package to perform conditional logic, transform and generate data, and perform calculationsFilter and sort data by several criteria using comparators Process collections and filter, sort, transform, and reduce stream elements with functional interfaces Write cascading and parallel execution threadsWho This Book Is ForComputer science student or a professional Java programmer. This work is a rigorous discussion of the application of functional interfaces, so prerequisites for this text include basic Java programming and object-oriented Java programming.
Android Espresso Revealed
Write Android user interface (UI) tests using Google Espresso for Android. You'll cover all the major topics of writing functional UI automated tests using the Espresso testing framework, including different ways of running automated tests, architecting test projects in an easy and maintainable way, and using tools which help to implement automated tests with less effort. Android Espresso Revealed explains the basics of using Espresso to write automated UI tests, and how to customize the framework for advanced functionality. The author provides examples in both Java and Kotlin, and includes dealing with network operations in UI tests, testing application accessibility, implementing supervised monkey tests, and more.What You Will LearnWrite Espresso tests with both Kotlin and Java including test project migration from Java to KotlinTest web views inside the application undertestUse Espresso to set up test devices or emulators to minimize test flakiness and run tests in Firebase Test LabVerify and stub intents with Espresso-IntentsMove test projects to AndroidXTest notifications or operate on third-party apps during Espresso test executionApply different test architecture approaches to the test project to reduce maintenance effortImplement supervised monkey tests using Espresso and UIAutomatorWho This Book Is ForEngineers with experience of Android test automation will benefit from this book
Modern C Quick Syntax Reference
Discover how C's efficiency makes it a popular choice in a wide variety of applications and operating systems with special applicability to wearables, game programming, system level programming, embedded device/firmware programming and in Arduino and related electronics hobbies in this condensed code and syntax guide. This book presents the essential C syntax in a well-organized format that can be used as a quick and handy reference. In this book, you will find short, simple, and focused code examples; and a well laid out table of contents and a comprehensive index allowing easy review. You won't find any technical jargon, bloated samples, drawn out history lessons, or witty stories. What you will find is a language reference that is concise, to the point and highly accessible. The book is packed with useful information and is a must-have for any C programmer. What You Will Learn Code for some of today's modern and popular firmware and systems How to do embedded programming found in Arduino and related hardware boards Program microcontrollers for robots and boards Handle low-level programming and memory management Leverage operating systems such as Linux and Unix Who This Book Is For Those with experience in programming, particularly C programming, looking for a quick, handy reference.
Python Continuous Integration and Delivery
Introduces Python programmers to the techniques and tools that enable a smooth and efficient software development processA practical book with examples, on this aspect of Python DevOps
Hello Swift!
Summary Hello Swift! is a how-to guide to programming iOS Apps with the Swift language, written from a kid's perspective. This approachable, well-illustrated, step-by-step guide takes you from beginning programming concepts all the way through developing complete apps. (Adults will like it too!) Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology It's fun to play games and explore new things on your iPhone. How amazing would it be to create your own apps? With a little practice, you can! Apple's Swift language, along with special coding playgrounds and an easy-to-use programming environment, make it easier than ever. Take it from author Tanmay Bakshi, who started programming when he was just five years old. About the Book His book, Hello Swift! iOS app programming for kids and other beginners, teaches you how to write apps for iPhones and iOS devices step by step, starting with your first line of Swift code. Packed with dozens of apps and special exercises, the book will teach you how to program by writing games, solving puzzles, and exploring what your iPhone can do. Hello Swift! gets you started. Where you go next is up to you! What's inside Crystal-clear explanations anyone can understandKid-friendly examples, including games and puzzlesLearn by doing--you'll build dozens of small appsExercises that encourage critical thinkingAbout the Reader Written for kids who want to learn how to program. (Psst! Adults like it, too.) About the Author Tanmay Bakshi had his first app on the iOS App Store at the age of nine. He's now the youngest IBM Champion, a Cloud Advisor, Watson Developer, TED Speaker, and Manning author! Table of Contents Get ready to build apps with Swift!Create your first appYour first real Swift code using variablesI/O laboratoryComputers make decisions, too!Let computers do repetitive workKnitting variables into arrays and dictionariesReuse your code: Clean it with function detergentReduce your code: Use less, do more with class detergentReading and writing filesFrameworks: Bookshelves of classesSpriteKit: Fun animation timeTime to watch your WatchKit codeContinuing your journey with Swift
Building Chatbots With Python
Build your own Chatbot using Python and open source tools Includes key points on Chatbot Integration and Deployment Employs Machine Learning to configure your Chatbots
The Definitive Guide to the .Net Compact Framework
* Includes detailed coverage of the .NET Compact Framework. * Walks developers through the complete process of developing and deploying applications with Smart Device Extensions (SDE) for Visual Studio .NET. * Provides an extensive view of SQL Server CE and XML, and how they can be used with mobile solutions. * Shows how to leverage Web services from mobile devices. * Explains how to build robust mobile solutions. * Author has a "following" and lots of name recognition.
Pro J2EE 1.4
This new edition is a complete rewrite of the book and will be a completely cohesive book that covers the new version of J2EE: 1.4. Pro J2EE 1.4: From Professional to Expert is for experienced Java developers who are looking to get quickly up to speed with the Java 2 Platform, Enterprise Edition (J2EE). Version 1.4 is the latest release of Sun's standards-based platform for enterprise development. This new edition contains revisions to all the major sub-specification J2EE incorporates (JSP, Servlets, EJB) and also incorporates a series of new specifications for building web services into J2EE.
The Definitive Guide to SWT and JFace
This book describes the history of Java GUI toolkits, explains why SWT (Standard Wizard Tool kit) is superior, and then provides extensive examples of building applications with SWT. This book takes developers through the entire class hierarchy of SWT, explaining clearly (with Java code) how to use all the widgets in the toolkit. JFace, an additional abstraction layer built on SWT, is also described and this book demonstrates how to build applications with JFace with explanation and example code.
Learn R for Applied Statistics
Gain the R programming language fundamentals for doing the applied statistics useful for data exploration and analysis in data science and data mining. This book covers topics ranging from R syntax basics, descriptive statistics, and data visualizations to inferential statistics and regressions. After learning R's syntax, you will work through data visualizations such as histograms and boxplot charting, descriptive statistics, and inferential statistics such as t-test, chi-square test, ANOVA, non-parametric test, and linear regressions. Learn R for Applied Statistics is a timely skills-migration book that equips you with the R programming fundamentals and introduces you to applied statistics for data explorations. What You Will LearnDiscover R, statistics, data science, data mining, and big dataMaster the fundamentals of R programming, including variables and arithmetic, vectors, lists, data frames, conditional statements, loops, and functionsWork with descriptive statistics Create data visualizations, including bar charts, line charts, scatter plots, boxplots, histograms, and scatterplotsUse inferential statistics including t-tests, chi-square tests, ANOVA, non-parametric tests, linear regressions, and multiple linear regressionsWho This Book Is ForThose who are interested in data science, in particular data exploration using applied statistics, and the use of R programming for data visualizations.
Java Program Design
Get a grounding in polymorphism and other fundamental aspects of object-oriented program design and implementation, and learn a subset of design patterns that any practicing Java professional simply must know in today's job climate. Java Program Design presents program design principles to help practicing programmers up their game and remain relevant in the face of changing trends and an evolving language. The book enhances the traditional design patterns with Java's new functional programming features, such as functional interfaces and lambda expressions. The result is a fresh treatment of design patterns that expands their power and applicability, and reflects current best practice. The book examines some well-designed classes from the Java class library, using them to illustrate the various object-oriented principles and patterns under discussion. Not only does this approach provide good, practical examples, but you will learn useful library classes you might not otherwise know about.The design of a simplified banking program is introduced in chapter 1 in a non-object-oriented incarnation and the example is carried through all chapters. You can see the object orientation develop as various design principles are progressively applied throughout the book to produce a refined, fully object-oriented version of the program in the final chapter. What You'll LearnCreate well-designed programs, and identify and improve poorly-designed onesBuild a professional-level understanding of polymorphism and its use in Java interfaces and class hierarchiesApply classic design patterns to Java programming problems while respecting the modern features of the Java languageTake advantage of classes from the Java library to facilitatethe implementation of design patterns in your programsWho This Book Is ForJava programmers who are comfortable writing non-object-oriented code and want a guided immersion into the world of object-oriented Java, and intermediate programmers interested in strengthening their foundational knowledge and taking their object-oriented skills to the next level. Even advanced programmers will discover interesting examples and insights in each chapter.
Java Xml and Json
Use this guide to master the XML metalanguage and JSON data format along with significant Java APIs for parsing and creating XML and JSON documents from the Java language. New in this edition is coverage of Jackson (a JSON processor for Java) and Oracle's own Java API for JSON processing (JSON-P), which is a JSON processing API for Java EE that also can be used with Java SE. This new edition of Java XML and JSON also expands coverage of DOM and XSLT to include additional API content and useful examples.All examples in this book have been tested under Java 11. In some cases, source code has been simplified to use Java 11's var language feature. The first six chapters focus on XML along with the SAX, DOM, StAX, XPath, and XSLT APIs. The remaining six chapters focus on JSON along with the mJson, GSON, JsonPath, Jackson, and JSON-P APIs. Each chapter ends with select exercises designed to challenge your grasp of the chapter's content.An appendix provides the answers to these exercises. What You'll LearnMaster the XML languageCreate, validate, parse, and transform XML documentsApply Java's SAX, DOM, StAX, XPath, and XSLT APIsMaster the JSON format for serializing and transmitting dataCode against third-party APIs such as Jackson, mJson, Gson, JsonPathMaster Oracle's JSON-P API in a Java SE contextWho This Book Is ForIntermediate and advanced Java programmers who are developing applications that must access data stored in XML or JSON documents. The book also targets developers wanting to understand the XML language and JSON data format.
Python for Data Mining Quick Syntax Reference
​Learn how to use Python and its structures, how to install Python, and which tools are best suited for data analyst work. This book provides you with a handy reference and tutorial on topics ranging from basic Python concepts through to data mining, manipulating and importing datasets, and data analysis.Python for Data Mining Quick Syntax Reference covers each concept concisely, with many illustrative examples. You'll be introduced to several data mining packages, with examples of how to use each of them. The first part covers core Python including objects, lists, functions, modules, and error handling. The second part covers Python's most important data mining packages: NumPy and SciPy for mathematical functions and random data generation, pandas for dataframe management and data import, Matplotlib for drawing charts, and scikitlearn for machine learning. What You'll LearnInstall Python and choose a development environmentUnderstand the basic concepts of object-oriented programmingImport, open, and edit filesReview the differences between Python 2.x and 3.xWho This Book Is For Programmers new to Python's data mining packages or with experience in other languages, who want a quick guide to Pythonic tools and techniques.
Learn Android Studio 3 With Kotlin
Build Android apps using the popular and efficient Android Studio 3 suite of tools, an integrated development environment (IDE) with which Android developers can now use the Kotlin programming language. With this book, you'll learn the latest and most productive tools in the Android tools ecosystem, ensuring quick Android app development and minimal effort on your part. Along the way, you'll use Android Studio to develop apps tier by tier through practical examples. These examples cover core Android topics such as Activities, Intents, BroadcastReceivers, Services and AsyncTask. Then, you'll learn how to publish your apps and sell them online and in the Google Play store.What You'll LearnUse Android Studio 3 to quickly and confidently build your first Android appsBuild an Android user interface using activities and layouts, event handling, images, menus and the action barIncorporate new elements including fragmentsLearn how data is persisted Use Kotlin to build appsWho This Book Is ForThose who may be new to Android Studio 3 or Android Studio in general. You may or may not be new to Android development in general. Some prior experience with Java is also recommended.
Practical Java Machine Learning
Build machine learning (ML) solutions for Java development. This book shows you that when designing ML apps, data is the key driver and must be considered throughout all phases of the project life cycle. Practical Java Machine Learning helps you understand the importance of data and how to organize it for use within your ML project. You will be introduced to tools which can help you identify and manage your data including JSON, visualization, NoSQL databases, and cloud platforms including Google Cloud Platform and Amazon Web Services.Practical Java Machine Learning includes multiple projects, with particular focus on the Android mobile platform and features such as sensors, camera, and connectivity, each of which produce data that can power unique machine learning solutions. You will learn to build a variety of applications that demonstrate the capabilities of the Google Cloud Platform machine learning API, including data visualizationfor Java; document classification using the Weka ML environment; audio file classification for Android using ML with spectrogram voice data; and machine learning using device sensor data.After reading this book, you will come away with case study examples and projects that you can take away as templates for re-use and exploration for your own machine learning programming projects with Java.What You Will LearnIdentify, organize, and architect the data required for ML projectsDeploy ML solutions in conjunction with cloud providers such as Google and AmazonDetermine which algorithm is the most appropriate for a specific ML problemImplement Java ML solutions on Android mobile devicesCreate Java ML solutions to work with sensor dataBuild Java streaming based solutionsWho This Book Is ForExperienced Java developers who have not implemented machine learning techniques before.
SQL for Dummies
Get ready to make SQL easy! Updated for the latest version of SQL, the new edition of this perennial bestseller shows programmers and web developers how to use SQL to build relational databases and get valuable information from them. Covering everything you need to know to make working with SQL easier than ever, topics include how to use SQL to structure a DBMS and implement a database design; secure a database; and retrieve information from a database; and much more. SQL is the international standard database language used to create, access, manipulate, maintain, and store information in relational database management systems (DBMS) such as Access, Oracle, SQL Server, and MySQL. SQL adds powerful data manipulation and retrieval capabilities to conventional languages--and this book shows you how to harness the core element of relational databases with ease. Server platform that gives you choices of development languages, data types, on-premises or cloud, and operating systems Find great examples on the use of temporal data Jump right in--without previous knowledge of database programming or SQL As database-driven websites continue to grow in popularity--and complexity--SQL For Dummies is the easy-to-understand, go-to resource you need to use it seamlessly.
Expert Twisted
An authoritative guide to the Twisted ecosystem, written by Python community leadersExplains event-driven programming and asynchronous programming with PythonDemonstrates how to combine Twisted's many components into a coherent whole
A Fortnight of Telegram Bots
A unique title focused on Telegram Bot DevelopmentIncludes popular languages like Python, Go and Clojure Covers Bots with TensorFlow
Eloquent Javascript
Completely revised and updated, this best-selling introduction to programming in JavaScript focuses on writing real applications. JavaScript lies at the heart of almost every modern web application, from social apps like Twitter to browser-based game frameworks like Phaser and Babylon. Though simple for beginners to pick up and play with, JavaScript is a flexible, complex language that you can use to build full-scale applications. This much anticipated and thoroughly revised third edition of Eloquent JavaScript dives deep into the JavaScript language to show you how to write beautiful, effective code. It has been updated to reflect the current state of Java竅Script and web browsers and includes brand-new material on features like class notation, arrow functions, iterators, async functions, template strings, and block scope. A host of new exercises have also been added to test your skills and keep you on track. As with previous editions, Haverbeke continues to teach through extensive examples and immerses you in code from the start, while exercises and full-chapter projects give you hands-on experience with writing your own programs. You start by learning the basic structure of the JavaScript language as well as control structures, functions, and data structures to help you write basic programs. Then you'll learn about error handling and bug fixing, modularity, and asynchronous programming before moving on to web browsers and how JavaScript is used to program them. As you build projects such as an artificial life simulation, a simple programming language, and a paint program, you'll learn how to: - Understand the essential elements of programming, including syntax, control, and data- Organize and clarify your code with object-oriented and functional programming techniques- Script the browser and make basic web applications- Use the DOM effectively to interact with browsers- Harness Node.js to build servers and utilities Isn't it time you became fluent in the language of the Web? * All source code is available online in an inter竅active sandbox, where you can edit the code, run it, and see its output instantly.
Python Basics
This book is designed for use as aprimary introduction to Python and can be used as an introductory text or as aresource for professionals in industry. The book has been divided into foursections. The first section deals with the language fundamentals, primarily theprocedural part of the language, the second introduces the object-oriented paradigms, the third section deals with data structures, and the last is devoted toadvanced topics like handling multi-dimensional arrays using NumPy andvisualization using Matplotlib. Regular expressions and multi-threading havebeen introduced in the appendices.FEATURES-Includes sections dedicated to data structures -Offers in-depth treatment of topics such as classes, inheritance, BST, andNumPy-Introduces topics like Matplotlib and PIL-Contains exercises for practice and a review of essential programming concepts
Continuous Delivery in Java
Continuous delivery adds enormous value to the business and the entire software delivery lifecycle, but adopting this practice means mastering new skills typically outside of a developer's comfort zone. In this practical book, Daniel Bryant and Abraham Mar穩n-P矇rez provide guidance to help experienced Java developers master skills such as architectural design, automated quality assurance, and application packaging and deployment on a variety of platforms. Not only will you learn how to create a comprehensive build pipeline for continually delivering effective software, but you'll also explore how Java application architecture and deployment platforms have affected the way we rapidly and safely deliver new software to production environments. Get advice for beginning or completing your migration to continuous delivery Design architecture to enable the continuous delivery of Java applications Build application artifacts including fat JARs, virtual machine images, and operating system container (Docker) images Use continuous integration tooling like Jenkins, PMD, and find-sec-bugs to automate code quality checks Create a comprehensive build pipeline and design software to separate the deploy and release processes Explore why functional and system quality attribute testing is vital from development to delivery Learn how to effectively build and test applications locally and observe your system while it runs in production
Impractical Python
Impractical Python Projects is a collection of fun and educational projects designed to entertain programmers while enhancing their Python skills. It picks up where the complete beginner books leave off, expanding on existing concepts and introducing new tools that you'll use every day. And to keep things interesting, each project includes a zany twist featuring historical incidents, pop culture references, and literary allusions. You'll flex your problem-solving skills and employ Python's many useful libraries to do things like: - Help James Bond crack a high-tech safe with a hill-climbing algorithm - Write haiku poems using Markov Chain Analysis- Use genetic algorithms to breed a race of gigantic rats- Crack the world's most successful military cipher using cryptanalysis- Derive the anagram, "I am Lord Voldemort" using linguistical sieves - Plan your parents' secure retirement with Monte Carlo simulation- Save the sorceress Zatanna from a stabby death using palingrams- Model the Milky Way and calculate our odds of detecting alien civilizations- Help the world's smartest woman win the Monty Hall problem argument- Reveal Jupiter's Great Red Spot using optical stacking- Save the head of Mary, Queen of Scots with steganography- Foil corporate security with invisible electronic ink Simulate volcanoes, map Mars, and more, all while gaining valuable experience using free modules like Tkinter, matplotlib, Cprofile, Pylint, Pygame, Pillow, and Python-Docx. Whether you're looking to pick up some new Python skills or just need a pick-me-up, you'll find endless educational, geeky fun with Impractical Python Projects.
Data Analysis and Visualizations Using Python
Features a detailed business case on effective strategies on data visualization Covers abstraction of the Series and DataFramesIncludes a business case study in the concluding chapter of the book.
Eclipse Tea Revealed
Discover the open source Eclipse Tasking Engine Advanced (TEA) project in this compact to-the-point book. It covers how to automate tasks using TEA and focuses on simplifying and aiding the creation of extensions for the Eclipse IDE in a way which makes them accessible both from the IDE's UI and in a headless fashion from the command line.Additionally, Eclipse TEA Revealed explores the library of pre-built components included with TEA, mostly in the area of rich client platform (RCP)-based Java application development, for building projects, updating sites, dealing with target platforms, and more. After reading and using this book, you'll be up to speed on the fundamentals of Eclipse TEA and ready to use it for more productive Java-based application builds and developments. What You Will LearnView TEA's internal architecture Work with TEA's APIs Write TEA componentsUse the pre-built TEA componentsSet up headless environments using TEA Who This Book Is ForReaders should be Java developers interested in extending the Eclipse IDE and/or setting up headless environments based on Eclipse.
Api Development
Implement application programming interface (API) usability, security, availability, reliability, and scalability to extend your company's market and potentially generate revenue. Businesses know they need to extend their markets into the digital world, and expose internal data to the Internet. This book shows how stakeholders within an organization can make it a successful journey. Stakeholder needs are not identical and departments experience difficulties discussing requirements with each other due to their different fundamental understanding of the process. The goal of this book is to introduce a common language for all business groups--developers, security experts, architects, product managers--around APIs and provide an overview of all aspects that need to be considered when exposing internal data. Most of the content in this book is based on feedback from real-world enterprise customer questions, challenges, and business scenarios. Practical guidance is providedon the business value of APIs, the general requirements to know, and how to undertake an audience-based implementation. You will learn how to protect access to data, as well as API error handling, documentation, management, integration, and more. What You'll Learn Know the types of APIs and their business and technical requirementsThe main benefits of APIs, including business value, loose coupling, and frequent updatesProtect access to APIs through role-based access, attribute-based access, and rate limitingDistinguish between OAuth and OpenID Connect, and know how they both workManage API error handling, including what should and should not be handledUnderstand the distinction between runtime, dynamic data, and static dataLeverage external APIs as part of your own APIs Who This Book Is For API developers, API security experts, software architects, product owners, and business owners
Build Mobile Apps With Ionic 4 and Firebase
Leverage your existing web development skills to learn the whole cycle of hybrid mobile app development. This edition is fully updated with the changes in Ionic 4, including Stencil, a new framework based on the web components standard. It explains Ionic and Firebase in detail, including how to create hybrid mobile apps using using React and Vue, and run those apps in an internal browser using a wrapper created by Apache Cordova.Build Mobile Apps with Ionic 4 and Firebase shows you how to focus on developing front-end code, without needing to manage any back-end code or servers. You'll learn in the context of building a Hacker News client app, which can view top stories in Hacker News, view comments of a story, and add stories to favorites. Explore how Ionic 4 uses Angular as the JavaScript framework to easily develop apps using an interface similar to native apps, and how to access Firebase, a real-time database, inweb apps using JavaScript. What You'll Learn Create content-based Ionic mobile apps Work with new Ionic 4 compnents like gesture, text, and keyboard controller Manage your apps with RxJS & ReduxWho This Book Is ForFront-end developers and mobile app developers
Practical TLA+
Learn how to design complex, correct programs and fix problems before writing a single line of code. This book is a practical, comprehensive resource on TLA+ programming with rich, complex examples. Practical TLA+ shows you how to use TLA+ to specify a complex system and test the design itself for bugs. You'll learn how even a short TLA+ spec can find critical bugs. Start by getting your feet wet with an example of TLA+ used in a bank transfer system, to see how it helps you design, test, and build a better application. Then, get some fundamentals of TLA+ operators, logic, functions, PlusCal, models, and concurrency. Along the way you will discover how to organize your blueprints and how to specify distributed systems and eventual consistency. Finally, you'll put what you learn into practice with some working case study applications, applying TLA+ to a wide variety of practical problems: from algorithm performance and data structures to business code and MapReduce. After reading and using this book, you'll have what you need to get started with TLA+ and how to use it in your mission-critical applications. What You'll LearnRead and write TLA+ specsCheck specs for broken invariants, race conditions, and liveness bugsDesign concurrency and distributed systemsLearn how TLA+ can help you with your day-to-day production workWho This Book Is ForThose with programming experience who are new to design and to TLA+.
The Guru’s Guide to SQL Server(tm) Stored Procedures, XML, and HTML
SQL Server developers worldwide raved about Ken Henderson's The Guru's Guide to Transact-SQL its exceptionally clear, conversational explanations, and its powerfully useful projects and code examples. This book helps SQL Server developers take the next step -- building more powerful, robust applications than ever before. Henderson identifies several key areas of SQL Server development that offer the greatest power -- and then covers each of them in exceptional detail.KEY TOPICS: The book includes especially thorough coverage of Transact-SQL stored procedure programming, including features such as extended procedures, database design, and XML that are often disregarded in competitive books. Henderson introduces a method he has developed to add arrays to T-SQL, something previously thought impossible. He offers an ideal balance of theory and code, gradually building on basic techniques to create increasingly sophisticated solutions, and teaching the philosophy of Transact-SQL programming alongside syntax and technique. An accompanying CD-ROM includes extensive source code, including valuable proprietary code, which makes T-SQL queries run faster.MARKET: For every SQL Server developer.
Visual Design of Graphql Data
Get an introduction to the visual design of GraphQL data and concepts, including GraphQL structures, semantics, and schemas in this compact, pragmatic book. In it you will see simple guidelines based on lessons learned from real-life data discovery and unification, as well as useful visualization techniques. These in turn help you improve the quality of your API designs and give you the skills to produce convincing visual communications about the structure of your API designs.Finally, Visual Design of GraphQL Data shows you how to handle GraphQL with legacy data as well as with Neo4j graph databases. Spending time on schema quality means that you will work from sharper definitions, which in turn leads to greater productivity and well-structured applications. What You Will LearnCreate quality GraphQL data designsAvoid structural mistakesDraw highly communicative property graph diagrams of your APIsWho This Book Is ForWeb developers and data architects who work with GraphQL and other APIs to build modern applications.
Complete Guide to Test Automation
Rely on this robust and thorough guide to build and maintain successful test automation. As the software industry shifts from traditional waterfall paradigms into more agile ones, test automation becomes a highly important tool that allows your development teams to deliver software at an ever-increasing pace without compromising quality.Even though it may seem trivial to automate the repetitive tester's work, using test automation efficiently and properly is not trivial. Many test automation endeavors end up in the "graveyard" of software projects. There are many things that affect the value of test automation, and also its costs. This book aims to cover all of these aspects in great detail so you can make decisions to create the best test automation solution that will not only help your test automation project to succeed, but also allow the entire software project to thrive.One of the most important details that affects the success of the test automation ishow easy it is to maintain the automated tests. Complete Guide to Test Automation provides a detailed hands-on guide for writing highly maintainable test code.What You'll LearnKnow the real value to be expected from test automationDiscover the key traits that will make your test automation project succeedBe aware of the different considerations to take into account when planning automated tests vs. manual testsDetermine who should implement the tests and the implications of this decisionArchitect the test project and fit it to the architecture of the tested applicationDesign and implement highly reliable automated testsBegin gaining value from test automation earlierIntegrate test automation into the business processes of the development teamLeverage test automation to improve your organization's performance and quality, even without formal authorityUnderstand how different types of automated tests will fit into your testing strategy, including unit testing, load and performance testing, visual testing, and moreWho This Book Is ForThose involved with software development such as test automation leads, QA managers, test automation developers, and development managers. Some parts of the book assume hands-on experience in writing code in an object-oriented language (mainly C# or Java), although most of the content is also relevant for nonprogrammers.
Mastering Modular Javascript
If you have a working knowledge of JavaScript and ECMAScript 6 (ES6), this practical guide will help you tackle modular programming to produce code that's readable, maintainable, and scalable. You'll learn the fundamentals of modular architecture with JavaScript and the benefits of writing self-contained code at every system level, including the client and server.Nicol獺s Bevacqua, author of Practical Modern JavaScript, demonstrates how to scale out JavaScript applications by breaking codebases into smaller modules. By following the design practices in this book, senior developers, technical leaders, and software architects will learn how to create modules that are simple and flexible while keeping internal complexity in check.Learn modular design essentials, including how your application will be consumed and what belongs on the interfaceDesign module internals to keep your code readable and its intent clearReduce complexity by refactoring code and containing and eliminating stateTake advantage of modern JavaScript features to write clear programs and reduce complexityApply Twelve-Factor App principles to frontend and backend JavaScript application development
Website Scraping With Python
Closely examine website scraping and data processing: the technique of extracting data from websites in a format suitable for further analysis. You'll review which tools to use, and compare their features and efficiency. Focusing on BeautifulSoup4 and Scrapy, this concise, focused book highlights common problems and suggests solutions that readers can implement on their own.Website Scraping with Python starts by introducing and installing the scraping tools and explaining the features of the full application that readers will build throughout the book. You'll see how to use BeautifulSoup4 and Scrapy individually or together to achieve the desired results. Because many sites use JavaScript, you'll also employ Selenium with a browser emulator to render these sites and make them ready for scraping.By the end of this book, you'll have a complete scraping application to use and rewrite to suit your needs. As a bonus, the authorshows you options of how to deploy your spiders into the Cloud to leverage your computer from long-running scraping tasks. What You'll LearnInstall and implement scraping tools individually and togetherRun spiders to crawl websites for data from the cloudWork with emulators and drivers to extract data from scripted sitesWho This Book Is ForReaders with some previous Python and software development experience, and an interest in website scraping.
Php & Mysql in Easy Steps
PHP and MySQL in easy steps, 2nd edition teaches the user to write PHP server-side scripts and how to make MySQL database queries. It has an easy-to-follow style that will appeal to: anyone who wants to begin producing data-driven web pages. web developers wanting to add database interaction to their web sites. the programmer who quickly wants to add PHP and MySQL to their skills set. the hobbyist who wants to begin creating scripts for upload to their own ISP. the student, and to those seeking a career in computing, who need a fundamental understanding of server-side programming with PHP and MySQL. PHP and MySQL in easy steps, 2nd edition demonstrates by example how to produce data-driven web pages using the powerful PHP scripting language and the popular free MySQL database server. The book examples provide clear syntax-highlighted code showing how to selectively insert and extract data from databases for presentation on your web browser. PHP and MySQL in easy steps, 2nd edition begins by explaining how to install a free web server, the PHP interpreter, and MySQL database server, to create an environment in which you can produce your very own data-driven server-side web pages. You will learn how to write PHP server-side scripts and how to make MySQL database queries. Examples illustrate how to store and retrieve Session Data, how to provide a Message Board, and how to create an E-Commerce Shopping Cart. This book assumes you have no previous experience of any programming or scripting language so is ideal for the newcomer to PHP and MySQL technologies. Covers MySQL 8.0.
Python in Easy Steps
Python in easy steps, 2nd edition instructs you how to program in the powerful Python language, giving complete examples that illustrate each aspect with colourized source code. Python in easy steps, 2nd edition begins by explaining how to install the free Python interpreter so you can quickly begin to create your own executable programs by copying the book's examples. It demonstrates all the Python language basics before moving on to provide examples of Object Oriented Programming (OOP) and CGI scripting to handle web form data. The book concludes by demonstrating how you can use your acquired knowledge to create and deploy graphical windowed applications. Python in easy steps, 2nd edition makes no assumption you have previous knowledge of any programming language so it's ideal for the newcomer to computer programming. It has an easy-to-follow style that will appeal to programmers moving from another programming language, and to the student who is studying Python programming at school or college, and to those seeking a career in computing who need a fundamental understanding of computer programming. The Python 3.x language is under active development so frequent new releases are made available as small improvements are added to the language and Python in easy steps, 2nd edition features the very latest versions of Python at the time of publication. Python development is one of evolution, rather than revolution, so the examples provided in the book can be used in subsequent releases - simply download the latest version of Python then follow the easy steps. Python is the language used to program the Raspberry Pi - covered by Raspberry Pi in easy steps and Raspberry Pi 3 in easy steps
Learn to Program With Python
Python is one of the most widely used computer languages in the world. It's popularity is growing steadily every day. There are many courses you can take to learn Python. However, there is no book out there that has become the "Bible" for students who are completely new to the world of software development, to learn how to program in Python. The author has searched without success for such a book. The author has taken his personally developed, highly successful curriculum, which he has taught in a number of Silicon Valley colleges, and turned it into this book.
Regex Quick Syntax Reference
This quick guide to regular expressions is a condensed code and syntax reference for an important programming technique. It demonstrates regex syntax in a well-organized format that can be used as a handy reference, showing you how to execute regexes in many languages, including JavaScript, Python, Java, and C#.The Regex Quick Syntax Reference features short, focused code examples that show you how to use regular expressions to validate user input, split strings, parse input, and match patterns. Utilizing regular expressions to deal with search/replace and filtering data for backend coding is also covered. You won't find any bloated samples, drawn out history lessons, or witty stories in this book. What you will find is a language reference that is concise and highly accessible. The book is packed with useful information and is a must-have for any programmer.What You Will LearnFormulate an expressionWork with arbitrary char classes, disjunctions, and operator precedenceExecute regular expressions and visualize using finite state machinesDeal with modifiers, including greedy and lazy loops Handle substring extraction from regex using Perl 6 capture groups, capture substrings, and reuse substrings Who This Book Is ForIf you have dealt with at least one programming language, chances are you know enough to understand regular expressions, and the examples in this book will help you develop proficiency.
3d Game Programming for Kids
You know what's even better than playing games? Programming your own! Make your own online games, even if you're an absolute beginner. Let your imagination come to 3D life as you learn real-world programming skills with the JavaScript programming language - the language used everywhere on the web. This new edition is completely revised, and takes advantage of new programming features to make game programming even easier to learn. Plus, new effects make your games even cooler. When you're done, you're going to be amazed at what you can create. Jump right in! Start programming cool stuff on page 1. Keep building new and different things until the very last page. This book wants you to play. Not just play games, but play with code. Play with programming. Because the best way to learn something is to have fun with it! This second edition is updated from start to finish to make it even easier to get started programming in JavaScript. Every example has been updated to make it easier, with new example games to explore and new 3D effects that make your games even more fun! Want a red donut? You can make hundreds of them, spinning around like mad. Want to create a star field? Make a hundred or a thousand stars. Make them red, green, or blue. Explosions? Fireworks? Planets? It's up to you. And, using a code editor created especially for this book, you'll program right in your web browser. You'll see the results of your work and imagination right away - right next to the code that you just typed! Along the way, you'll pick up a ton of programming knowledge, and dive in even deeper with some more advanced chapters. Whatever you want to do, this book has your back. Best of all, you get to create awesome games and say, "I made this!" What You Need: You need the latest version of the Google Chrome Web browser, available for free from https: //chrome.google.com. You also need an Internet connection to access the ICE Code Editor the first time. ICE Code Editor will be loaded onto your computer, so you won't need Internet access for later projects.
Just JavaScript
Just JavaScript is an attempt to understand JavaScript for what it really is - a very different language that should not be compared to Java or dismissed as simply a scripting language. It looks at the ideas that originally motivated the JavaScript approach and also at the additions over time that have produced modern JavaScript/ECMAScript. It isn't a complete introduction to JavaScript and isn't for the complete beginner to programming. It has been written for those who are familiar with the basic constructs used in any programming language and have already encountered JavaScript. After reading it, you will have an understanding how and why JavaScript is unique and the way in which you can exploit its strengths. After a brief overview of its history, we come to the key idea in JavaScript: it is object-based. Everything in JavaScript is an object and three chapters are used to introduce objects before we meet the Function Object. The many different ways of creating a JavaScript function tends to hide the fact that they are indeed all objects with properties and a lifetime that is different from local variables. This is the reason closure is natural. Having explored JavaScript's unique approach to parameters we are ready to consider how functions become methods. After this factory functions and constructors seem obvious as does the prototype chain. The final three chapters tackle the issues that are usually seen as problems for JavaScript and which are now reconciled within the idiomatic approach.
Php, Mysql, & Javascript All-in-one for Dummies
Explore the engine that drives the internet It takes a powerful suite of technologies to drive the most-visited websites in the world. PHP, mySQL, JavaScript, and other web-building languages serve as the foundation for application development and programming projects at all levels of the web. Dig into this all-in-one book to get a grasp on these in-demand skills, and figure out how to apply them to become a professional web builder. You'll get valuable information from seven handy books covering the pieces of web programming, HTML5 & CSS3, JavaScript, PHP, MySQL, creating object-oriented programs, and using PHP frameworks. Helps you grasp the technologies that power web applications Covers PHP version 7.2 Includes coverage of the latest updates in web development Perfect for developers to use to solve problems This book is ideal for the inexperienced programmer interested in adding these skills to their toolbox. New coders who've made it through an online course or boot camp will also find great value in how this book builds on what you already know.
Good Habits for Great Coding
Improve your coding skills and learn how to write readable code. Rather than teach basic programming, this book presumes that readers understand the fundamentals, and offers time-honed best practices for style, design, documenting, testing, refactoring, and more. Taking an informal, conversational tone, author Michael Stueben offers programming stories, anecdotes, observations, advice, tricks, examples, and challenges based on his 38 years experience writing code and teaching programming classes. Trying to teach style to beginners is notoriously difficult and can easily appear pedantic. Instead, this book offers solutions and many examples to back up his ideas. Good Habits for Great Coding distills Stueben's three decades of analyzing his own mistakes, analyzing student mistakes, searching for problems that teach lessons, and searching for simple examples to illustrate complex ideas. Having found that most learn by trying out challenging problems, and reflecting on them, each chapter includes quizzes and problems. The final chapter introduces dynamic programming to reduce complex problems to subcases, and illustrates many concepts discussed in the book. Code samples are provided in Python and designed to be understandable by readers familiar with any modern programming language. At the end of this book, you will have acquired a lifetime of good coding advice, the lessons the author wishes he had learned when he was a novice.What You'll LearnCreate readable code through examples of good and bad styleWrite difficult algorithms by comparing your code to the author's codeDerive and code difficult algorithms using dynamic programmingUnderstand the psychology of the coding processWho This Book Is ForStudents or novice programmers who have taken a beginning programming course and understand coding basics.Teachers will appreciate the author's road-tested ideas that they may apply to their own teaching.
Jumpstarting Javascript
Jumpstarting books provide an avenue for makers to quickly master topical knowledge! Each book starts with instructions on how to install or initialize the hardware or software needed to reach the "Hello, World" stage of getting started! The second project in the book builds on the first to use more of the hardware or software's capabilities. Later projects expand the user's knowledge into lesser-known aspects of the topic. All Jumpstarting projects are for Makers -- they provide hands-on, real-world experience in making the hardware or software do what you want it to do!