Today we are introducing to you Carlos Baquero Moreno, who is an Assistant Professor and teaches Distributed Systems at Universidade do Minho, Portugal. In our expert to expert interview our program committee member Steve Loughran – a member of technical staff at Hortonworks, where he works on leading-edge developments within the Hadoop ecosystem – wants to know why we should care about causality.
Steve Loughran: Hi Carlos, we really appreciate that you take the time to talk with us. What is your talk about, and why should people attend?
Carlos Baquero Moreno: My talk is on causality. I have been studying it since late 1970s focusing on small clusters, co-ordination and problems. Causality is the tool developed. Now we are building bigger systems, we are finding problems with stronger co-ordination. Global systems have different latency and reliability and larger in scale (# of machines) and spread across the world. These things create problems - bigger ones. People are starting to rediscover the work and use it — but without understanding the fundamentals.
A colleague and I have just published a paper in the Communications of the ACM ("Why logical clocks are easy"); an introductory article to explain the concept of Causality. This talk is to go with the paper
What is causality and why should I care?
People assume that there is a "universal time", but see "there is no now" to show that's not true. We show that even if there was a now, it's not always relevant. What is relevant is how things arrive rather than when they happen. It's better to have a notion of causality rather than rely on a universal time that doesn't quite exist.
Where do you see the area of technology you work in going in the next few years?
I'd like to see all these parts of cloud, develop towards working offline, once there's no connection.
There was work done in the 80s-90s ton coping with offline-ness, but our phone apps nowadays assume they will always be connected.
Even though connectivity will improve, it's not always that hard to handle failures. Your app can be designed to handle it. Classic example: Central failure of something like google or AWS is a SPOF for phone apps.
Edge+ IoT generates a lot of info; today we are thinking "I'm just going to ship this to the datacenter", but in future it may change, and it doesn't make much sense today. People follow the easy routes. Example: I can't open the garage door to my car or turn my lights on when the network is down.
Having looked at the other talks — what do you hope to learn from the conference yourself?
I have never attended Buzzwords before, although I have seen some of the videos —and liked it. It's got a really good reputation. There was a talk a few years ago on replicated data types which first brought the conference to my attention.
There are lots of talks about stream processing; I hope to find out more about them. I am looking forward to talks from Flavio, Sam B. Alvo from twitter to hearing stuff you don't know. It's good to have a mix of subjects. I've been to other similar conferences and its good to have that mix.
It'll be my first time in Berlin, so I'll also be looking forward to discovering the city.
What are you most enjoying working on at the moment?
"Replicated Datatypes": more efficient ways to sync data across locations.
Emacs, vi or something else?
Mainly vi + gnu-vim. Latex, C++.
Thank you for taking the time to talk with us, Carlos! See you at Berlin Buzzwords 2016.