Think Data StructuresIf you're a student studying computer science or a software developer preparing for technical interviews, this practical book will help you learn and review some of the most important ideas in software engineering - data structures and algorithms - in a way that's clearer, more concise, and more engaging than other materials.
By emphasizing practical knowledge and skills over theory, author Allen Downey shows you how to use data structures to implement efficient algorithms, and then analyze and measure their performance. You'll explore the important classes in the Java collections framework (JCF), how they're implemented, and how they're expected to perform. Each chapter presents hands-on exercises supported by test code online.
Use data structures such as lists and maps, and understand how they work; Build an application that reads Wikipedia pages, parses the contents, and navigates the resulting data tree; Analyze code to predict how fast it will run and how much memory it will ...
JSON at WorkJSON is becoming the backbone for meaningful data interchange over the internet. This format is now supported by an entire ecosystem of standards, tools, and technologies for building truly elegant, useful, and efficient applications. With this hands-on guide, author and architect Tom Marrs shows you how to build enterprise-class applications and services by leveraging JSON tooling and message/document design.
JSON at Work provides application architects and developers with guidelines, best practices, and use cases, along with lots of real-world examples and code samples. You'll start with a comprehensive JSON overview, explore the JSON ecosystem, and then dive into JSON's use in the enterprise.
Get acquainted with JSON basics and learn how to model JSON data; Learn how to use JSON with Node.js, Ruby on Rails, and Java; Structure JSON documents with JSON Schema to design and test APIs; Search the contents of JSON documents with JSON Search tools; Convert JSON documents to other d ...
Machine Learning and SecurityCan machine learning techniques solve our computer security problems and finally put an end to the cat-and-mouse game between attackers and defenders? Or is this hope merely hype? Now you can dive into the science and answer this question for yourself. With this practical guide, you'll explore ways to apply machine learning to security issues such as intrusion detection, malware classification, and network analysis.
Machine learning and security specialists Clarence Chio and David Freeman provide a framework for discussing the marriage of these two fields, as well as a toolkit of machine-learning algorithms that you can apply to an array of security problems. This book is ideal for security engineers and data scientists alike.
Learn how machine learning has contributed to the success of modern spam filters; Quickly detect anomalies, including breaches, fraud, and impending system failure; Conduct malware analysis by extracting useful information from computer binaries; Uncover at ...
Hands-On Machine Learning with Scikit-Learn and TensorFlowThrough a series of recent breakthroughs, deep learning has boosted the entire field of machine learning. Now, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This practical book shows you how.
By using concrete examples, minimal theory, and two production-ready Python frameworks - scikit-learn and TensorFlow - author Aurélien Géron helps you gain an intuitive understanding of the concepts and tools for building intelligent systems. You'll learn a range of techniques, starting with simple linear regression and progressing to deep neural networks. With exercises in each chapter to help you apply what you've learned, all you need is programming experience to get started.
Explore the machine learning landscape, particularly neural nets; Use scikit-learn to track an example machine-learning project end-to-end; Explore several training models, including support vector machines, deci ...
Beginning Windows 8 Data DevelopmentThis book introduces novice developers to a range of data access strategies for storing and retreiving data both locally and remotely. It provides you with a range of fully working data access solutions and the insight you need to know when, and how, to apply each of the techniques to best advantage.
Focussing specifically on how the Windows 8 app developer can work with the Windows Runtime (often called Windows RT) framework this book provides careful analysis of the many options you have open to you, along with a comparision of their strengths and weaknesses under different conditions. With the days of a single database being the right choice for almost all development projects long gone. You will lean that the right choice for your app now depends on a variety of factors and getting it right will be critical to your customer's end user experience. ...
Pro Core Data for iOS, 2nd EditionFully updated for Xcode 4.2, Pro Core Data for iOS explains how to use the Core Data framework for iOS SDK 5 using Xcode 4.2.
This book starts by giving you a solid grounding in Core Data, providing a foundation for the rest of the book. With this knowledge, you'll have all you need to master Core Data and power your data-driven applications. You'll see how to work with SQLite and how to create an efficient data model to represent your data. Once you've established your data model, you'll learn how to work with data objects and refine result sets to get the most out of the stored data. ...
Redis EssentialsRedis is the most popular in-memory key-value data store. It's very lightweight and its data types give it an edge over the other competitors. If you need an in-memory database or a high-performance cache system that is simple to use and highly scalable, Redis is what you need.
Redis Essentials is a fast-paced guide that teaches the fundamentals on data types, explains how to manage data through commands, and shares experiences from big players in the industry.
We start off by explaining the basics of Redis followed by the various data types such as Strings, hashes, lists, and more. Next, Common pitfalls for various scenarios are described, followed by solutions to ensure you do not fall into common traps.
After this, major differences between client implementations in PHP, Python, and Ruby are presented. Next, you will learn how to extend Redis with Lua, get to know security techniques such as basic authorization, firewall rules, and SSL encryption, and discover how to use Tw ...
Learning ELK StackThe ELK stack - Elasticsearch, Logstash, and Kibana, is a powerful combination of open source tools. Elasticsearch is for deep search and data analytics. Logstash is for centralized logging, log enrichment, and parsing. Kibana is for powerful and beautiful data visualizations. In short, the Elasticsearch ELK stack makes searching and analyzing data easier than ever before.
This book will introduce you to the ELK (Elasticsearch, Logstash, and Kibana) stack, starting by showing you how to set up the stack by installing the tools, and basic configuration. You'll move on to building a basic data pipeline using the ELK stack.
Next, you'll explore the key features of Logstash and its role in the ELK stack, including creating Logstash plugins, which will enable you to use your own customized plugins. The importance of Elasticsearch and Kibana in the ELK stack is also covered, along with various types of advanced data analysis, and a variety of charts, tables ,and maps.
Finally, by th ...
Fluent PythonPython's simplicity lets you become productive quickly, but this often means you aren't using everything it has to offer. With this hands-on guide, you'll learn how to write effective, idiomatic Python code by leveraging its best - and possibly most neglected - features. Author Luciano Ramalho takes you through Python's core language features and libraries, and shows you how to make your code shorter, faster, and more readable at the same time.
Many experienced programmers try to bend Python to fit patterns they learned from other languages, and never discover Python features outside of their experience. With this book, those Python programmers will thoroughly learn how to become proficient in Python 3. ...
Building a Virtual Assistant for Raspberry PiBuild a voice-controlled virtual assistant using speech-to-text engines, text-to-speech engines, and conversation modules. This book shows you how to program the virtual assistant to gather data from the internet (weather data, data from Wikipedia, data mining); play music; and take notes. Each chapter covers building a mini project/module to make the virtual assistant better. You'll develop the software on Linux or OS X before transferring it to your Raspberry Pi, ready for deploying in your own home-automation or Internet of Things applications.
Building a Virtual Assistant for Raspberry Pi walks you through various STTs and TTSs and the implementation of these components with the help of Python. After that you will start implementing logic for handling user queries and commands, so that the user can have conversations with Melissa. You will then work to improve logic handling to detect what the user wants Melissa to do. You will also work on building some useful applications/modu ...