Programming Scala, 2nd EditionGet up to speed on Scala, the JVM language that offers all the benefits of a modern object model, functional programming, and an advanced type system. Packed with code examples, this comprehensive book shows you how to be productive with the language and ecosystem right away, and explains why Scala is ideal for today's highly scalable, data-centric applications that support concurrency and distribution.
This second edition covers recent language features, with new chapters on pattern matching, comprehensions, and advanced functional programming. You'll also learn about Scala's command-line tools, third-party tools, libraries, and language - aware plugins for editors and IDEs. This book is ideal for beginning and advanced Scala developers alike. ...
Learning ScalaWhy learn Scala? You don't need to be a data scientist or distributed computing expert to appreciate this object-oriented functional programming language. This practical book provides a comprehensive yet approachable introduction to the language, complete with syntax diagrams, examples, and exercises. You'll start with Scala's core types and syntax before diving into higher-order functions and immutable data structures.
Author Jason Swartz demonstrates why Scala's concise and expressive syntax make it an ideal language for Ruby or Python developers who want to improve their craft, while its type safety and performance ensures that it's stable and fast enough for any application. ...
Elixir CookbookThis book is a set of recipes grouped by topic that acts as a good reference to get ideas from or to quickly search for a solution to a problem. You will begin by launching an IEx session and using it to test some ideas. Next, you will perform various operations like loading and compiling modules, inspecting your system, generating a supervised app, and so on. Furthermore, you will be introduced to immutability, working with data structures, performing pattern matching, and using stream modules to generate infinite data sequences. You will learn about everything from joining strings to determining the word frequency in text. With respect to modules and functions, you will also discover how to load code from other modules and use guards and pattern matching in functions. ...
Make: Getting Started with SensorsTo build electronic projects that can sense the physical world, you need to build circuits based around sensors: electronic components that react to physical phenomena by sending an electrical signal. Even with only basic electronic components, you can build useful and educational sensor projects.
But if you incorporate Arduino or Raspberry Pi into your project, you can build much more sophisticated projects that can react in interesting ways and even connect to the Internet. This book starts by teaching you the basic electronic circuits to read and react to a sensor. It then goes on to show how to use Arduino to develop sensor systems, and wraps up by teaching you how to build sensor projects with the Linux-powered Raspberry Pi. ...
Understanding ContextTo make sense of the world, we're always trying to place things in context, whether our environment is physical, cultural, or something else altogether. Now that we live among digital, always-networked products, apps, and places, context is more complicated than ever-starting with "where" and "who" we are.
This practical, insightful book provides a powerful toolset to help information architects, UX professionals, and web and app designers understand and solve the many challenges of contextual ambiguity in the products and services they create. You'll discover not only how to design for a given context, but also how design participates in making context. ...
Swift Pocket ReferenceGet quick answers for developing and debugging applications with Swift, Apple's multi-paradigm programming language. This pocket reference is the perfect on-the-job tool for learning Swift's modern language features, including type safety, generics, type inference, closures, tuples, automatic memory management, and support for Unicode.
Designed to work with Cocoa and Cocoa Touch, Swift can be used in tandem with Objective-C, and either of these languages can call APIs implemented in the other. Swift is still evolving, but it's clear that Apple sees it as the future language of choice for iOS and OS X software development. ...
Android for the BeagleBone BlackThis book explores using the Android OS on the BeagleBone Black hardware platform and provides an introduction to Android's unique approach to hardware interfacing. You'll be walked through the process of installing and configuring Android on your BeagleBone Black, as well as preparing your PC development environment to create Android applications that directly interface with hardware devices. Several example projects within this book introduce you to using the GPIO, SPI, and I2C hardware interfaces of the BeagleBone Black.
You'll create Android apps that communicate directly with actual hardware components such as sensors, memory chips, switches, and LEDs. Step-by-step guidance through both the software and hardware portions of these projects is provided. Combining all of the previous projects into a single project that uses GPIO, SPI, and I2C together, you will explore the details of creating an advanced hardware interfacing app. Finally, you'll be provided with information on tra ...
Microsoft Hyper-V PowerShell AutomationWindows PowerShell is a task-based command-line shell and scripting language designed especially for system administration. Hyper-V is Microsoft's hypervisor that creates and runs virtual machines. Hyper-V for Windows PowerShell provides IT pros with an easy way to enable automation of management tasks within Windows Server. The Hyper-V PowerShell module includes several significant features that extend its use, improve its usability, and allow you to control and manage your Hyper-V environment with more granular control.
This book explores the new features made available with Hyper-V version 3, and breaks down the mystery and confusion that surrounds which feature to use and when. It also teaches you the PowerShell way to automate the usage of these features. It will take you through a number of practical examples that will help you take advantage of the Hyper-V version 3 cmdlets efficiently. You will also learn how to use Hyper-V version 3 PowerShell cmdlets to install and configu ...
Python Penetration Testing EssentialsThis book is a practical guide that shows you the advantages of using Python for pentesting with the help of detailed code examples.
We start by exploring the basics of networking with Python and then proceed to network hacking. Next, we delve into hacking the application layer where we start with gathering information from a website. We then move on to concepts related to website hacking such as parameter tampering, DDoS, XSS, and SQL injection.
By reading this book, you will learn different techniques and methodologies that will familiarize you with the art of pentesting as well as creating automated programs to find the admin console, SQL injection, and XSS attack. ...
Xamarin Cross-platform Application Development, 2nd EditionDeveloping a mobile application for just one platform is becoming a thing of the past. Companies expect their apps to be supported on both iOS and Android, while leveraging the best native features on both. Xamarin's tools help ease this problem by giving developers a single toolset to target both platforms.
This book is a step-by-step guide to building real-world applications for iOS and Android. The book walks you through building a chat application, complete with a backend web service and native features such as GPS location, camera, and push notifications. Additionally, you'll learn how to use external libraries with Xamarin and Xamarin.Forms to create shared user interfaces and make app-store-ready applications. This second edition has been updated with new screenshots and detailed steps to provide you with a holistic overview of the new features incorporated in Xamarin 3. By the end of the book, you will have gained expertise to build on the concepts learned and effectively de ...