Ian Robinson (@iansrobinson) is Director of Customer Success for Neo Technology, the company behind Neo4j, the world's leading open source graph database. He is a co-author of 'REST in Practice' (O'Reilly) and a contributor to the forthcoming books 'REST: From Research to Practice' (Springer) and 'Service Design Patterns' (Addison-Wesley). He presents at conferences worldwide on the big Web graph of REST, and the awesome graph capabilities of Neo4j, and blogs at http://iansrobinson.com.
Graph databases are an esoteric but powerful member of the NoSQL family. For highly connected data, graph databases can be thousands of times faster than relational databases, making Neo4j popular for managing complex data across many domains, from finance to social, telecoms to geospatial.
This tutorial covers the core functionality from the Neo4j graph database, providing a mixture of theory and accompanying practical sessions to demonstrate the capabilities of graph data and the Neo4j database. Specifically, you'll learn about:
Each session (apart from the fundamentals and architecture) will be a mixture of a small amount of theory combined with a set of practical exercises designed to reinforce how to achieve sophisticated goals with Neo4j. The practical parts of the tutorial consist of Koan-style lessons where a specific aspect of the Neo4j stack is presented as a set of failing unit tests which participants will work to fix, gradually becoming more challenging until the attendees are capable of implementing sophisticated graph operations against Neo4j.
Attendees won't need any previous experience with Neo4j or NoSQL databases, but will require some fluency in Java, a little familiarity with a modern IDE, and a basic understanding of JUnit to help complete the lab tasks.
Many organisations today are frustrated by success: their rapid, ad hoc growth has resulted in a “tube map” systems estate that is costly to operate, and which inhibits business agility.
In this talk, I show how an organisation can take its first steps to resolve this impasse by teasing apart strategy and execution. I discuss how our models of what the business does and what it's trying to achieve influence the progress of large software initiatives, and describe a number of practices and activities that together create a useful representation of a firm's operating model - one that can be used to identify, prioritise and plan strategic IT investments, and guide the evolution of the systems estate in an incremental, sustainable fashion.
This talk is all about what happens before the first line of code is written, about how we can create the foundations for success. It draws on recent experience with clients from a range of industries, including communications and media, entertainment, financial services, and oil and gas. It is of interest to business and technology leaders alike.
REST is ready for the enterprise. Imagine an information platform that is open and available to systems throughout the enterprise estate. A platform that eschews integration in favour of composition, connected data over siloed databases. A networked data structure with the power to implement valuable business behaviours: a distributed, hypermedia-driven application platform.
In this session you'll learn how to design and implement RESTful services to support complex business processes. With a detailed example, I show how to model business processes as domain application protocols; implement them in terms of resource lifecycles; and advertise and execute them using HTTP idioms, media types and link relation values.
Do you know what your enterprise apps get up to in their time off? Fighting fantasy, pick-your-path, hypermedia-driven, RESTful Web application adventures – of course.
With techniques drawn from the forthcoming O'Reilly book REST in Practice, this session challenges the notion that REST is suitable only for simple CRUD-based data services, suggesting instead that the Web’s architecture provides everything we need to model and implement sophisticated business processes in Web-based applications.
In this speculative dungeon delve I show how hypermedia-driven Web applications implement rich workflows. In the course of the session we'll tackle the many-headed Hydra of HATEOAS, the “Hypermedia as the Engine of Application State” monster; level up through the Web services maturity heuristic; and meet the dwarves with grudges. On the way, we'll learn how to model business processes as domain application protocols, implement them in terms of resource lifecycles, and advertise them using HTTP idioms, media types and link relation values.
The Web is fast becoming a serious competitor to traditional enterprise architecture approaches. This full day workshop will provide an introduction to RESTful Web Service techniques, both from a theoretical and practical perspectives.
This full day workshop is broken down as follows:
Participants should be comfortable with distributed computing concepts, but won't need any particular integration or middleware experience
The Web doesn't care for your finely-honed application architecture principles - for your orthodox tell-don't-ask, information hiding dictums, separated concerns, and guaranteed and reliable delivery strategies. It's an irresponsible place, where exposing your data, polling for results and making your errors the client's problem are considered acceptable behaviour. If it wasn't so successful, it'd be dismissed as an architectural clown.
But despite its disregard for polite architectural society, the Web consistently beats your enterprise application efforts - and all at massive scale. It's time to find out why.
Web services have been used for many years. In this time, developers and architects have encountered a number of recurring design challenges related to their usage, and have learned that certain service design approaches work better than others to solve certain problems.
In Service Design Patterns, Rob Daigneau codifies proven design solutions for web services that follow the REST architectural style or leverage the SOAP/WSDL specifications. This catalogue identifies the fundamental topics in web service design and lists the common design patterns for each topic. All patterns identify the context in which they may be used, explain the constituent design elements, and explore the relative strengths and trade-offs. Code examples are provided to help you better understand how the patterns work but are kept general so that you can see how the solutions may be applied to disparate technologies that will inevitably change in the years to come.
This book will help readers answer the following questions:
This book is an invaluable resource for enterprise architects, solution architects, and developers who use web services to create enterprise IT applications, commercial or open source products, and Software as a Service (SaaS) products that leverage emerging Cloud platforms.
This volume provides an overview and an understanding of REST (Representational State Transfer). Discussing the constraints of REST the book focuses on REST as a type of web architectural style. The focus is on applying REST beyond Web applications (i.e., in enterprise environments), and in reusing established and well-understood design patterns when doing so. The reader will be able to understand how RESTful systems can be designed and deployed, and what the results are in terms of benefits and challenges encountered in the process.
Since REST is relatively new as an approach for designing Web Services, the more advanced part of the book collects a number of challenges to some of the assumptions and constraints of REST, and looks at current research work on how REST can be extended and applied to scenarios that often are considered not to be a good match for REST.
This work will help readers to reach a deeper understanding of REST on a practical as well as on an advanced level.
Why don't typical enterprise projects go as smoothly as projects you develop for the Web? Does the REST architectural style really present a viable alternative for building distributed systems and enterprise-class applications?
In this insightful book, three SOA experts provide a down-to-earth explanation of REST and demonstrate how you can develop simple and elegant distributed hypermedia systems by applying the Web's guiding principles to common enterprise computing problems. You'll learn techniques for implementing specific Web technologies and patterns to solve the needs of a typical company as it grows from modest beginnings to become a global enterprise.
ThoughtWorks is a well-known global consulting firm; ThoughtWorkers are leaders in areas of design, architecture, SOA, testing, and agile methodologies. This collection of essays brings together contributions from well-known ThoughtWorkers such as Martin Fowler, along with other authors you may not know yet. While ThoughtWorks is perhaps best known for their work in the Agile community, this anthology confronts issues throughout the software development life cycle. From technology issues that transcend methodology, to issues of realizing business value from applications, you'll find it here.