Incremental Noir A literary experiment with API-First development https://github.com/greendemiurge/incremental_noir

The Concept • Art within boundaries fuels creativity • You are asked to contribute to a story, but just one small part • You can only see part of what came before • You have to incorporate one of three preselected words in your submission

Some Specifics • Each story lasts a specific, semi-random number of lines • Based on how many submissions there are, it suggests the part of the story arc you should submit (Exposition, Rising action, Turning point, Falling action, Conclusion)

Some Specifics (continued) • For the sake of continuity, the names and descriptions of key people, places and things stay visible at all times • In order to make the story “feel” like the Noir genre the pre-selected words are gathered from public domain Noir books • If you want to add a person, place or thing, there is a spot to submit it, but only so many are allowed at a time

Demo: Incremental Noir App

API-First Development • Application Programming interface • Desktop websites > Mobile First > API-First • Decouples presentation of data from the business logic that drives it, making it more adaptable • Begins by agreeing on a common language (interface) for the data provider and the data visualizer to use to talk to each other • Allows front and back end developers to work in parallel

RESTful APIs: Mandatory Technical Jargon • REST: Representative State Transfer • State: Data that changes based on user interaction • HATEOAS – Hypermedia as the Engine of Application State (means we are using familiar HTTP commands to communicate state between the front and the back) • Really this ultimately comes down to JSON in JSON out

Metaphor: A RESTaurant • Wait staff are the front end • The kitchen is the back end • Wait staff give tickets to the kitchen • Kitchen sends out food • We agree in advance on the tickets that can go in and the dishes that can come out. • Benefit: In the future we can add a drivethrough or delivery without changing the system

Demo: The Transactions POST /api/v1/post-prompt {

RESPONSE

{

threadId: 1,

threadId: 1,

threadLocator: "5qmbg",

newLine: "I'd only heard of Fawn Knutsen by

lines: [ { authorName: null,

her reputation as a compulsive gambler, so

line: "I knew right away I should never have picked up

I went to Shakey's to see if I could shake

that phone." }, { authorName: "Amber Gris",

down a clue.",

line: "Even over the line I could smell the whisky on the

newElement: {

man's breath, and I could tell he was a violent drunk.”},

type: "place",

{ authorName: "Raymond Hammet", line: "He said, \"You have until 1 1 A.M. tomorrow morning

name: "Shakey's",

to find Fawn Knutsen or I’ll see to it you are sent up the

description: "A seedy bar in the old part

river in her place!\"" }, { authorName: "Hank Scorpio",

of town, known as a hangout for bookies.”

line: "I'd only heard of Fawn Knutsen by her reputation as a

},

compulsive gambler, so I went to Shakey's to see if I could

authorName: "Hank Scorpio",

shake down a clue."}, ],

expires: 2018-06-01T17:20:54+00:00 }

completed: false }

Underlying technology • Back End – REST API written in Symfony 4 • Object-oriented PHP 7 • MySQL DB with Doctrine ORM

• Front End – React.js • • • •

Built using create react app Javascript in the ES6 standard Transpiled into browser-friendly ES5 by Babel Packaged and minified by Webpack

What is next for API-First Development? • GraphQL • A new query language that improves upon and provides an alternative to REST • Still JSON in JSON out, more opinionated about the data structure

• Websockets • Replaces the formal request/response pattern with full duplex communication • The server can now “push” information to the app

Incremental Noir presentation -

Jun 1, 2018 - just one small part. • You can only see part of what came before ... suggests the part of the story arc you should ... The kitchen is the back end.

198KB Sizes 0 Downloads 206 Views

Recommend Documents

PDF Download Montana Noir (Akashic Noir) By
Noir (Akashic Noir) ,best ebook reader Montana Noir (Akashic Noir) ,e book .... Noir (Akashic Noir) ,epub creator Montana Noir (Akashic Noir) ,convert pdf to ...

20180310 Noir -
Mar 10, 2018 - karena prostega a instead kithandi bat cllect his thoughts. IX. TWIN Lanus A eta thy-stort em. "Lit should come the first week, there. با ما اتعامل ...

Presentation
A fast, cheap and simple analytical method. .... limited data from Jordan ... data. • Some of those: Mishor Yamin,. Revivim – Mashabim, Sde-. Boker, Shivta ...

Presentation Title Presentation Sub-Title
April 2010, Prahran, Melbourne. • Direct impacts ... Victoria. Currently infrastructure and facilities are designed based on past climate, not future climate. ... Sensitivity of Materials to Climate Change Impacts. Material. CO. 2. Cyclones. & Stor

Presentation Title Presentation Sub-Title
Climate change impacts – impact upon cycling conditions and infrastructure. Infrastructure and climate change risks for Vic. Primary impacts – impact upon ...

Incremental Crawling - Research at Google
Part of the success of the World Wide Web arises from its lack of central control, because ... typically handled by creating a central repository of web pages that is ...

Presentation Title Presentation Sub-Title
Helen Millicer, Member, Glen Eira BUG and Bicycle. Victoria Board. Thanks for permission to use slides from presentations given to PACIA members in Vic and ...

Beirut-Noir-Akashic-Noir.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Beirut-Noir-Akashic-Noir.pdf. Beirut-Noir-Akashic-Noir.pdf. Open. Extract. Open with. Sign In. Main menu.

Presentation Information
Please arrive at the assigned meeting room 10 minutes before the session ... All meeting rooms are equipped with digital projectors and laptop computers.

pdf-1429\advanced-mathematics-an-incremental-development ...
Try one of the apps below to open or edit this item. pdf-1429\advanced-mathematics-an-incremental-development-solutions-manual-by-john-h-saxon.pdf.

Incremental Cooperative Diversity for Wireless ...
be used in cognitive wireless systems to mitigate interference and to improve spectrum .... the number of relays involved in the incremental phase is not fixed, i.e. ...

Incremental Learning of Nonparametric Bayesian ...
Jan 31, 2009 - Conference on Computer Vision and Pattern Recognition. 2008. Ryan Gomes (CalTech) ... 1. Hard cluster data. 2. Find the best cluster to split.

Complimentary aspects of Incremental & Radical ...
In contrast, established firms devote a small fraction of their resources to trying ... next-generation business model, create a buzz in the boardroom while lesser forms of ... computer workstations; the Java operating system, which has driven much i

GPU-Accelerated Incremental Storage and Computation - Usenix
chunking bandwidth compared to our optimized parallel implementation without a GPU on the same host system. .... The CUDA [6] programming ..... put data either from the network or the disk and trans- .... with Inc-HDFS client using a JAVA-CUDA interf

Privacy-Preserving Incremental Data Dissemination
In this paper, we consider incremental data dissemination, where a ..... In other words, the data provider must make sure that not only each ...... the best quality datasets, these data are vulnerable to inference attacks as previously shown.