Exploring Graphs with Elixir

Exploring Graphs with Elixir

Author: Tony Hammond

Publisher: Pragmatic Bookshelf

Published: 2022-11-02

Total Pages: 393

ISBN-13:

DOWNLOAD EBOOK

Data is everywhere - it's just not very well connected, which makes it super hard to relate dataset to dataset. Using graphs as the underlying glue, you can readily join data together and create navigation paths across diverse sets of data. Add Elixir, with its awesome power of concurrency, and you'll soon be mastering data networks. Learn how different graph models can be accessed and used from within Elixir and how you can build a robust semantics overlay on top of graph data structures. We'll start from the basics and examine the main graph paradigms. Get ready to embrace the world of connected data! Graphs provide an intuitive and highly flexible means for organizing and querying huge amounts of loosely coupled data items. These data networks, or graphs in math speak, are typically stored and queried using graph databases. Elixir, with its noted support for fault tolerance and concurrency, stands out as a language eminently suited to processing sparsely connected and distributed datasets. Using Elixir and graph-aware packages in the Elixir ecosystem, you'll easily be able to fit your data to graphs and networks, and gain new information insights. Build a testbed app for comparing native graph data with external graph databases. Develop a set of applications under a single umbrella app to drill down into graph structures. Build graph models in Elixir, and query graph databases of various stripes - using Cypher and Gremlin with property graphs and SPARQL with RDF graphs. Transform data from one graph modeling regime to another. Understand why property graphs are especially good at graph traversal problems, while RDF graphs shine at integrating different semantic models and can scale up to web proportions. Harness the outstanding power of concurrent processing in Elixir to work with distributed graph datasets and manage data at scale. What You Need: To follow along with the book, you should have Elixir 1.10+ installed. The book will guide you through setting up an umbrella application for a graph testbed using a variety of graph databases for which Java SDK 8+ is generally required. Instructions for installing the graph databases are given in an appendix.


A Little Tea Book

A Little Tea Book

Author: Sebastian Beckwith

Publisher: Bloomsbury Publishing USA

Published: 2018-10-16

Total Pages: 131

ISBN-13: 1632869047

DOWNLOAD EBOOK

From tea guru Sebastian Beckwith and New York Times bestsellers Caroline Paul and Wendy MacNaughton comes the essential guide to exploring and enjoying the vast world of tea. Tea, the most popular beverage in the world after water, has brought nations to war, defined cultures, bankrupted coffers, and toppled kings. And yet in many ways this fragrantly comforting and storied brew remains elusive, even to its devotees. As down-to-earth yet stylishly refined as the drink itself, A Little Tea Book submerges readers into tea, exploring its varieties, subtleties, and pleasures right down to the process of selecting and brewing the perfect cup. From orange pekoe to pu-erh, tea expert Sebastian Beckwith provides surprising tips, fun facts, and flavorful recipes to launch dabblers and connoisseurs alike on a journey of taste and appreciation. Along with writer and fellow tea-enthusiast Caroline Paul, Beckwith walks us through the cultural and political history of the elixir that has touched every corner of the world. Featuring featuring charming, colorful charts, graphs, and illustrations by bestselling illustrator Wendy MacNaughton and Beckwith's sumptuous photographs, A Little Tea Book is a friendly, handsome, and illuminating primer with a dash of sass and sophistication. Cheers!


Graph Databases in Action

Graph Databases in Action

Author: Dave Bechberger

Publisher: Manning Publications

Published: 2020-11-24

Total Pages: 336

ISBN-13: 1617296376

DOWNLOAD EBOOK

Graph Databases in Action introduces you to graph database concepts by comparing them with relational database constructs. You'll learn just enough theory to get started, then progress to hands-on development. Discover use cases involving social networking, recommendation engines, and personalization. Summary Relationships in data often look far more like a web than an orderly set of rows and columns. Graph databases shine when it comes to revealing valuable insights within complex, interconnected data such as demographics, financial records, or computer networks. In Graph Databases in Action, experts Dave Bechberger and Josh Perryman illuminate the design and implementation of graph databases in real-world applications. You'll learn how to choose the right database solutions for your tasks, and how to use your new knowledge to build agile, flexible, and high-performing graph-powered applications! Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Isolated data is a thing of the past! Now, data is connected, and graph databases—like Amazon Neptune, Microsoft Cosmos DB, and Neo4j—are the essential tools of this new reality. Graph databases represent relationships naturally, speeding the discovery of insights and driving business value. About the book Graph Databases in Action introduces you to graph database concepts by comparing them with relational database constructs. You'll learn just enough theory to get started, then progress to hands-on development. Discover use cases involving social networking, recommendation engines, and personalization. What's inside Graph databases vs. relational databases Systematic graph data modeling Querying and navigating a graph Graph patterns Pitfalls and antipatterns About the reader For software developers. No experience with graph databases required. About the author Dave Bechberger and Josh Perryman have decades of experience building complex data-driven systems and have worked with graph databases since 2014. Table of Contents PART 1 - GETTING STARTED WITH GRAPH DATABASES 1 Introduction to graphs 2 Graph data modeling 3 Running basic and recursive traversals 4 Pathfinding traversals and mutating graphs 5 Formatting results 6 Developing an application PART 2 - BUILDING ON GRAPH DATABASES 7 Advanced data modeling techniques 8 Building traversals using known walks 9 Working with subgraphs PART 3 - MOVING BEYOND THE BASICS 10 Performance, pitfalls, and anti-patterns 11 What's next: Graph analytics, machine learning, and resources


Mining the Social Web

Mining the Social Web

Author: Matthew Russell

Publisher: "O'Reilly Media, Inc."

Published: 2011-01-21

Total Pages: 356

ISBN-13: 1449388345

DOWNLOAD EBOOK

Facebook, Twitter, and LinkedIn generate a tremendous amount of valuable social data, but how can you find out who's making connections with social media, what they’re talking about, or where they’re located? This concise and practical book shows you how to answer these questions and more. You'll learn how to combine social web data, analysis techniques, and visualization to help you find what you've been looking for in the social haystack, as well as useful information you didn't know existed. Each standalone chapter introduces techniques for mining data in different areas of the social Web, including blogs and email. All you need to get started is a programming background and a willingness to learn basic Python tools. Get a straightforward synopsis of the social web landscape Use adaptable scripts on GitHub to harvest data from social network APIs such as Twitter, Facebook, and LinkedIn Learn how to employ easy-to-use Python tools to slice and dice the data you collect Explore social connections in microformats with the XHTML Friends Network Apply advanced mining techniques such as TF-IDF, cosine similarity, collocation analysis, document summarization, and clique detection Build interactive visualizations with web technologies based upon HTML5 and JavaScript toolkits "Let Matthew Russell serve as your guide to working with social data sets old (email, blogs) and new (Twitter, LinkedIn, Facebook). Mining the Social Web is a natural successor to Programming Collective Intelligence: a practical, hands-on approach to hacking on data from the social Web with Python." --Jeff Hammerbacher, Chief Scientist, Cloudera "A rich, compact, useful, practical introduction to a galaxy of tools, techniques, and theories for exploring structured and unstructured data." --Alex Martelli, Senior Staff Engineer, Google


The New Deal

The New Deal

Author: Michael Hiltzik

Publisher: Simon and Schuster

Published: 2011-09-13

Total Pages: 514

ISBN-13: 1439154481

DOWNLOAD EBOOK

From first to last the New Deal was a work in progress, a patchwork of often contradictory ideas.


From Objects to Functions

From Objects to Functions

Author: Uberto Barbini

Publisher: Pragmatic Bookshelf

Published: 2023-09-12

Total Pages: 595

ISBN-13:

DOWNLOAD EBOOK

Build applications quicker and with less effort using functional programming and Kotlin. Learn by building a complete application, from gathering requirements to delivering a microservice architecture following functional programming principles. Learn how to implement CQRS and EventSourcing in a functional way to map the domain into code better and to keep the cost of change low for the whole application life cycle. If you're curious about functional programming or you are struggling with how to put it into practice, this guide will help you increase your productivity composing small functions together instead of creating fat objects. Switching to the functional paradigm isn't easy when you're used to object-oriented programming. You need more than just lambdas and mapping over collections to get a declarative style and disentangle the state from the computations. Use transformations and compositions to help you write less code with better results. Boost your productivity and harness the power of functional programming by creating real-world applications rather than focusing on theoretical concepts. Work through a series of short exercises to find and compose pure functions, and create data structures that work like algebra. Get rid of mutable state in your software to eliminate the main source of bugs. Apply CQRS and EventSourcing patterns to translate stakeholder requirements into functional design and then into code. See how Kotlin's easy-to-learn syntax and functional-friendly approach make it a great option for a pragmatic language that integrates well with existing Java code and libraries. Leverage functional programming to build and deliver robust applications in less time and with fewer defects. What You Need: The code in this book is designed to allow you to build your application from scratch on Windows, Mac and Linux. You will need a recent IDE, we recommend IntelliJ Community Edition, and Kotlin 1.3.x or later.


Functional Programming in Java

Functional Programming in Java

Author: Venkat Subramaniam

Publisher: Pragmatic Bookshelf

Published: 2023-07-20

Total Pages: 369

ISBN-13:

DOWNLOAD EBOOK

Imagine writing Java code that reads like the problem statement, code that's highly expressive, concise, easy to read and modify, and has reduced complexity. With the functional programming capabilities in Java, that's not a fantasy. This book will guide you from the familiar imperative style through the practical aspects of functional programming, using plenty of examples. Apply the techniques you learn to turn highly complex imperative code into elegant and easy-to-understand functional-style code. Updated to the latest version of Java, this edition has four new chapters on error handling, refactoring to functional style, transforming data, and idioms of functional programming. Don't struggle with the limitations of the imperative style; instead learn to combine object-oriented programming with the functional style to reduce the accidental complexity. Harness the functional programming capabilities of Java to create applications where the program reveals its intentions and your team can quickly understand and modify code to align with changing business requirements. Unlock the power of lambda expressions and the Streams API to turn the oft-written spaghetti code into highly concise, expressive, elegant, and maintainable code. See how Streams make the arduous task of parallelizing code as easy as flipping a switch when superior speed is necessary. Apply design patterns built around lambda expressions, safely manage resource allocations, use memoization, and learn to transform data into different forms, all while honoring immutability, and providing thread safety to leverage lazy evaluation for efficiency and parallel execution for performance. Move beyond the basics, explore the idioms for writing functional programs. Learn to think functionally by refactoring legacy code into the functional style. And, if your code runs aground due to failures, learn to properly handle errors the functional way. Don't drown in theory; instead learn the practical functional programming techniques to create superior Java code. What You Need: Java version 8 or newer.


Effective Haskell

Effective Haskell

Author: Rebecca Skinner

Publisher: Pragmatic Bookshelf

Published: 2023-07-18

Total Pages: 841

ISBN-13:

DOWNLOAD EBOOK

Put the power of Haskell to work in your programs, learning from an engineer who uses Haskell daily to get practical work done efficiently. Leverage powerful features like Monad Transformers and Type Families to build useful applications. Realize the benefits of a pure functional language, like protecting your code from side effects. Manage concurrent processes fearlessly. Apply functional techniques to working with databases and building RESTful services. Don't get bogged down in theory, but learn to employ advanced programming concepts to solve real-world problems. Don't just learn the syntax, but dive deeply into Haskell as you build efficient, well-tested programs. Haskell is a pure functional programming language with a rich ecosystem of tools and libraries. Designed to push the boundaries of programming, it offers unparalleled power for building reliable and maintainable systems. But to unleash that power, you need a guide. Effective Haskell is that guide. Written by an engineer who understands how to apply Haskell to the real world and uses it daily to get practical work done, it is your ticket to Haskell mastery. Gain deep understanding of how Haskell deals with IO and the outside world by writing a complete Haskell application that does several different kinds of IO. Reinforce your learnings with practice exercises in every chapter. Write stable and performant code using Haskell's type system, code that is easier to grow and refactor. Leverage the power of pure functional programming to improve collaboration, make concurrency safe and easy, and make large code bases manageable. Implement type-safe web services, write generative tests, design strongly typed embedded domain-specific languages, and build applications that exploit parallelism and concurrency without fear of deadlocks and race conditions. Create and deploy cloud-native Haskell applications. Master the performance characteristics of functional applications to make them run faster and use less memory. Write Haskell programs that solve real-world business problems. What You Need: Intel based Mac, M1 Macs, Linux PC, or Windows with WSL2 ghcup (http://www. Haskell.org/ghcup/) An active internet connection will be required for some projects.


Oregon Viticulture

Oregon Viticulture

Author: Edward William Hellman

Publisher:

Published: 2003

Total Pages: 304

ISBN-13:

DOWNLOAD EBOOK

Oregon Viticulture is a comprehensive, easy-to-use guide to successful strategies and methods for commercial vineyards in Oregon that will be extremely valuable both for current winegrape growers and for prospective growers. It is unique in its approach of combining the expertise and experience of university researchers with that of professional grape growers and winemakers -- most chapters were written by at least two authors with different perspectives. Oregon Viticulture is the successor to the popular Oregon Winegrape Growers Guide, with both broader coverage of more topics and greater depth of coverage than the earlier book. It emphasizes the importance of understanding the characteristics of a vineyard site, matching grape varieties to the site, and selecting and adjusting the most appropriate management practices for each unique site. The structure and physiology of grapevines is concisely summarized, and viticulture principles are introduced throughout the book. Standard production practices are described, and separate chapters discuss sustainable viticulture practices and organic grape growing. In addition, Oregon Viticulture addresses important business management topics not usually found in similar books, including economics, marketing and contracts, compliance with government regulations, and labor management. Commercial winegrape growers, students, researchers, serious home viticulturists, and individuals with a strong interest in Northwest wines and the wine industry will find Oregon Viticulture to be a valuable reference and easy-to-use textbook and guide.


Exercises for Programmers

Exercises for Programmers

Author: Brian P. Hogan

Publisher: Pragmatic Bookshelf

Published: 2015-09-04

Total Pages: 120

ISBN-13: 1680503480

DOWNLOAD EBOOK

When you write software, you need to be at the top of your game. Great programmers practice to keep their skills sharp. Get sharp and stay sharp with more than fifty practice exercises rooted in real-world scenarios. If you're a new programmer, these challenges will help you learn what you need to break into the field, and if you're a seasoned pro, you can use these exercises to learn that hot new language for your next gig. One of the best ways to learn a programming language is to use it to solve problems. That's what this book is all about. Instead of questions rooted in theory, this book presents problems you'll encounter in everyday software development. These problems are designed for people learning their first programming language, and they also provide a learning path for experienced developers to learn a new language quickly. Start with simple input and output programs. Do some currency conversion and figure out how many months it takes to pay off a credit card. Calculate blood alcohol content and determine if it's safe to drive. Replace words in files and filter records, and use web services to display the weather, store data, and show how many people are in space right now. At the end you'll tackle a few larger programs that will help you bring everything together. Each problem includes constraints and challenges to push you further, but it's up to you to come up with the solutions. And next year, when you want to learn a new programming language or style of programming (perhaps OOP vs. functional), you can work through this book again, using new approaches to solve familiar problems. What You Need: You need access to a computer, a programming language reference, and the programming language you want to use.