Implementing Event-Driven Microservices Architecture using Functional programming

*PLEASE NOTE THIS TALK WILL TAKE PLACE IN BMS BUILDING – SEMINAR ROOM 113*

BIO: Nikhil Barthwal is a polyglot programmer currently working as a Senior Software Engineer at Jet.com, an e-commerce startup recently acquired by Walmart. He works in the Tools & Productivity team with the aim of making developers more productive, as well as improving the quality of the code. Outside of work, he is involved with local meetups in New York city where he gives talks on various topics related to technology. He holds a Master’s in Computer Science with special focus on Distributed Systems and a Bachelor’s in Electrical Engineering.

ABSTRACT: Web services are typically stateless entities, that need to operate at scale at large. Functional paradigm can be used to model these web services work and offer several benefits like scalability, productivity, and correctness.

This talk describes how Jet.com implemented their Event-Driven Microservices using F#. It covers topics like their Microservices, Event-Sourcing, Kafka, Build & Deployment pipeline. The objective of the talk is show how to create a scalable & highly distributed web service in F#, and demonstrate how various characteristics of functional paradigm capture the behavior of such services architecture very naturally.

Event details

  • When: 8th March 2017 15:00 - 16:00
  • Where: TBA
  • Series: CS Colloquia Series
  • Format: Colloquium, Seminar

SACHI Seminar: Dr Alice Toniolo – An argumentation-based approach to facilitate and improve human reasoning

Title:  An argumentation-based approach to facilitate and improve human reasoning.

Abstract:  The ability of understanding and reasoning about different alternatives for a decision is fundamental for making informed choices. Intelligent autonomous systems have the potential to improve the quality of human-decision making but the use of such systems may be hampered by human difficulties to interact and trust their outputs. This talk will focus on the potential of argumentation-based models of reasoning to support users in making sense of incomplete and inconsistent information.   I will present a tool called CISpaces (Collaborative Intelligence Spaces) that combines a graphical representation of arguments and autonomous reasoning to facilitate collaboration in the context of intelligence analysis. I will present initial results from a few follow-up studies showing that argumentation may help bridge the gap between human and autonomous reasoning.

Biography:  Dr Alice Toniolo has joined the School of Computer Science as a lecturer in October 2016. Previously Alice was a Research Fellow in the Agent, Reasoning and Knowledge group in the Computing Science Department at the University of Aberdeen, where she was also awarded her PhD. Her research interests are within multi-agent systems to support human reasoning and decision-making. In particular, she is interested in computational argumentation-based models of reasoning with recent applications in intelligence analysis, social media and the built environment. Alice has also worked with researchers within Philosophy to investigate rich forms of deliberation dialogue.

Event details

  • When: 28th February 2017 14:00 - 15:00
  • Where: Cole 1.33a
  • Format: Seminar

The technology driving the evolution of internet advertising, targeted advertising or intrusive surveillance?

BIO

 Tim Palmer read Computational Science in St Andrews graduating in 1993.

 Initially working for Oracle in London then San Francisco, he went on to work in Investment Banking Technology for over a decade.

 Most recently Tim was CTO for The Exchange Lab – a programmatic marketing company.

 He is now Senior Partner in Digiterre, a technology consultancy working for a wide variety of software projects across London.

 

ABSTRACT

 In 1997 internet advertising consisted of simple “click me” banner adverts.

 By 2011 around two hundred digital marketing firms followed us around the internet encouraging us to “complete that purchase”.

 Today more than four thousand technology firms provide marketing technology seemingly to help us keep track of The Kardashians.

 In the seminar, a simple HTML and JavaScript snippet will be used to explain the basics of digital marketing; how these building blocks are making fortunes for some and providing free internet for everyone; and how the technology presents a real challenge to protect our online privacy.

 Or to put it another way, the 8 Most Shocking Secrets of Digital Marketing – you won’t believe the 7th one.

 

Event details

  • When: 27th February 2017 14:00 - 15:00
  • Where: Cole 1.33b
  • Format: Colloquium, Seminar

 “Unfrying your brain with F#”  Andrea Magnorsky, Workday Software Ltd

Abstract

 F#, just like other non-pure functional languages, allows you find the sweet spot between FP practices and OO language pragmatism. Most of the advanced features of F# give you the power to change the language and to introduce a higher level of abstraction to your code. In this talk, we will discuss active patterns, computation expressions, parsers, using type providers and more. These language features help you make your code simpler and easier to maintain.

 

Bio

 I ended up as a Software Developer, I am pretty sure there was no other viable option. My current technical interests are F#, games, programming languages and philosophy of computing .

I really enjoy finding different ways to write code, sometimes for performance, other times for succinctness, sometimes, just because you can, there is no better way to learn than trying.

When I am not working I tend to play with Haskell or other languages or cats

Event details

  • When: 6th March 2017 16:00 - 17:00
  • Where: Cole 1.33a
  • Format: Colloquium, Seminar

Seminar: The technology driving the evolution of internet advertising, targeted advertising or intrusive surveillance?

“The technology driving the evolution of internet advertising, targeted advertising or intrusive surveillance?”

 Tim Palmer, Senior Partner, Digiterre (http://www.digiterre.com)

 

Event details

  • When: 27th February 2017 14:00 - 15:00
  • Where: Cole 1.33a
  • Series: CS Colloquia Series
  • Format: Seminar

SACHI Seminar: The design of digital technologies to support transitional events in the human lifespan

Title:  The design of digital technologies to support transitional events in the human lifespan

Abstract:  This talk will focus on (i) qualitative research undertaken to understand how digital technologies are being used during transitional periods across the human lifespan, such as becoming an adult, romantic breakup, and end of life, and (ii) the opportunities for technology design that have emerged as a result. Areas of focus include presentation of self online, group social norms, and the problematic nature of ‘ownership’ of digital materials.

Biography – Professor Wendy Moncur, FRSA:  I hold an Interdisciplinary Chair in Digital Living at the University of Dundee, where I work across Duncan of Jordanstone College of Art & Design and the School of Nursing and Health Sciences. I am also a Visiting Scholar at the University of Technology Sydney, Australia, and an Associate of the Centre for Death and Society (University of Bath).

The work of my group, Living Digital (www.livingdigital.ac.uk) is grounded in Human Computer Interaction, and focuses on human experiences enacted in a digital age – for example, becoming an adult, becoming a parent, relationship breakdown, and the end of life.

I have been involved in grants totalling £2.7 Million since 2011, through an EPSRC Personal Fellowship and as a Principal Investigator/Co-investigator. Full details of my publications can be found at http://bit.ly/1kQx2zH. My next large research project, ‘TAPESTRY’, is funded under the EPSRC TIPS program, and explores normative online behaviour in social groups.

Event details

  • When: 14th February 2017 14:00 - 15:00
  • Where: Cole 1.33a
  • Format: Seminar

Type-Driven Development of Communicating Systems using Idris

Speaker: Jan de Muijnck-Hughes

Abstract

Communicating protocols are a cornerstone of modern system design.
However, there is a disconnect between the different tooling used to design, implement and reason about these protocols and their implementations.
Session Types are a typing discipline that help resolve this difference by allowing protocol specifications to be used during type-checking to ensure that implementations adhere to a given specification.

Idris is a general purpose programming language that supports full-dependent types, providing programmers with the ability to reason more precisely about programs.
This talk introduces =Sessions=, our implementation of Session Types in Idris, and demonstrates =Sessions= ability to design and realise several common protocols.

=Sessions= improves upon existing Session Type implementations by introducing value dependencies between messages and fine-grained channel management during protocol design and implementation.
We also use Idris’ support for EDSL construction to allow for protocols to be designed and reasoned about in the same language as their implementation.
Thereby allowing for an intrinsic bond to be introduced between a protocol’s implementation and specification, and also with its verification.

Using =Sessions=, we can reduce the existing disconnect between the tooling used for protocol design, implementation, and verification.

 

 

 

Event details

  • When: 23rd February 2017 13:00 - 15:00
  • Where: Cole 1.33b
  • Format: Colloquium, Seminar, Talk

SACHI Seminar – The Collaborative Design of Tangible Interactions in Museums

Title: The Collaborative Design of Tangible Interactions in Museums

Abstract: Interactive technology for cultural heritage has long been a subject of study for Human-Computer Interaction. Findings from a number of studies suggest that, however, technology can sometime distance visitors from heritage holdings rather than enabling people to establish deeper connections to what they see. Furthermore, the introduction of innovative interactive installations in museum is often seen as an interesting novelty but seldom leads to substantive change in how a museum approaches visitor engagement. This talk will discuss work on the EU project “meSch” (Material EncounterS with Digital Cultural Heritage) aimed at creating a do-it-yourself platform for cultural heritage professionals to design interactive tangible computing installations that bridge the gap between digital content and the materiality of museum objects and exhibits. The project has adopted a collaborative design approach throughout, involving cultural heritage professionals, designers, developers and social scientist. The talk will feature key examples of how collaboration unfolded and relevant lessons learned, particularly regarding the shared envisioning of tangible interaction concepts at a variety of heritage sites including archaeology and art museums, hands-on exploration centres and outdoor historical sites.

Biography: Dr. Luigina Ciolfi is Reader in Communication at Sheffield Hallam University. She holds a Laurea (Univ. of Siena, Italy) and a PhD (Univ. of Limerick, Ireland) in Human-Computer Interaction. Her research focuses on understanding and designing for human situated practices mediated by technology in both work and leisure settings, particularly focusing on participation and collaboration in design. She has worked on numerous international research projects on heritage technologies, nomadic work and interaction in public spaces. She is the author of over 80 peer-reviewed publications, has been an invited speaker in ten countries, and has advised on research policy around digital technologies and cultural heritage for several European countries. Dr. Ciolfi serves in a number of scientific committees for international conferences and journals, including ACM CHI, ACM CSCW, ACM GROUP, ECSCW, COOP and the CSCW Journal. She is a member of the EUSSET (The European Society for Socially Embedded Technologies) and of the ACM CSCW Steering Groups. Dr. Ciolfi is a senior member of the ACM. Full information on her work can be found at http://luiginaciolfi.com

Event details

  • When: 31st January 2017 14:00 - 15:00
  • Where: Cole 1.33a
  • Format: Seminar

Seminar: Jacob Howe on Propagation and Reification

Jacob Howe, Senior Lecturer at City University London, and sabbatical visitor, will be giving a seminar to the AI Research Group at 2pm on Thursday 15th December in JC 1.33a.

The title and abstract are:

Propagation and Reification: SAT and SMT in Prolog

This talk will describe how a watched literal DPLL based Satisfiability (SAT)
solver can be succinctly coded in 20 lines of Prolog. The extension of
this solver to an Satisfiability Modulo Theories (SMT) solver will be discussed with a particular focus on
the case where the theory is that of rational-tree constraints, and its
application in a reverse engineering problem.

Event details

  • When: 15th December 2016 14:00 - 15:00
  • Where: Cole 1.33a
  • Format: Seminar

Seminar: Alice Toniolo on Computational Argumentation

Alice Toniolo, a new lecturer in Computer Science at St Andrews, will be giving a seminar to the Artificial Intelligence Research Group on Thursday 1st December 2016, 2pm, in JC 1.33a. All are welcome.

Computational argumentation: an overview of current reasoning and dialogue models and their applications

Abstract: Argumentation is the process of arriving at a decision for a controversial standpoint. Computational models of argumentation aim to imitate the human decision-making process by modelling reason for or against certain decisions and extract justifiable options. This talk will draw from philosophical studies to present the core concepts of argumentation theory in AI through a range of abstract, logical and dialogical models. I will focus on the potential of argumentation-based models employed by software agents to support reasoning and dialogue in the presence of incomplete, inconsistent and uncertain information. An application of argumentation-based reasoning is presented in the context of intelligence analysis. The agent-based tool discussed, called CISpaces (Collaborative Intelligence Spaces), employs argumentation to help analysts make sense of information in collaboration and provenance to establish the credibility of hypotheses.

Event details

  • When: 1st December 2016 14:00 - 15:00
  • Where: Cole 1.33a
  • Format: Seminar