GDG DevFest Rome 2014

The Google web multiverse (September 19th, 2015)

150919-multiple-universe.jpg

The multiverse (or meta-universe) is the hypothetical set of infinite or finite possible universes (including the Universe we consistently experience) that together comprise everything that exists
The various universes within the multiverse are also called "parallel universes" or "alternate universes".

https://en.wikipedia.org/wiki/Multiverse, image from Wikipedia, credit

Introduction

The “Google web multiverse” is the story of a journey inside the Google technologies for software developers.

I used the term “multiverse” because today Google offers multiple technologies for web development that often overlap each other in a confused and inconsistent way.
I believe that “Big G” is undertaking a social-technological experiment, proposing multiple eco-systems for web development assuming that only the best will survive as a sort of Darwinian selection, the survivor of the fittest.
Multiple web ecosystems means multiple universes: hence the title.
The story begins with an unscheduled event in which I participated in November 2014: the Rome Google DevFest.
It was like landing on an unknown planet and finding it inhabited by beings similar to humans and at the same time different: our twins, but living and speaking with a partial different logic.
A fantastic parallel universe, a dystonia, requiring an in-depth investigation.
So I began to contact the people who had spoken at the event speakers to ask them for more information about what they had presented; the conversations quickly turned into interviews.
Below I have collected all the interviews together in order to present alternative technologies and to better understand Google’s programming strategies.

The series

(Italian translation)

Premessa

Il “Google Web multiverso” è il racconto di un viaggio all’interno delle tecnologie di Google per gli sviluppatori software.
Ho usato il termine “Multiuniverso” perché oggi Google propone molteplici tecnologie per lo sviluppo web che spesso si sovrappongono tra loro in modo confuso e poco coerente.
Credo che Big G stia tentando un esperimento social-tecnologico: proporre contemporaneamente più eco-sistemi per lo sviluppo web puntando sul fatto che sopravvivranno solo i migliori.
Molteplici ecosistemi web significa molteplici universi: ecco perché questo titolo.
Questo racconto nasce da un evento a cui ho partecipato, in modo un po’ casuale, nel novembre 2014: la Google DevFest di Roma di Novembre 2014.
È stato come sbarcare su un pianeta sconosciuto e trovarlo abitato da umanoidi simili agli esseri umani e contemporaneamente diversi: nostri gemelli che però vivono e parlano con logiche in parti dissimili.
Una fantastica distonia che richiedeva un approfondimento di indagini.
Così ho cominciato a contattare i relatori dell’evento per chiedere loro maggiori informazioni su quello che avevano presentato; i colloqui si sono presto trasformati in interviste.
Le interviste in un percorso di ricerca.

AG-Vocabolario: 

Job in the Time of Web – Interview with Massimo Chiriatti (November 24, 2014)

(This post is part of a serie on GDG Rome DevFest 2014, Italian translation available here)

massimochiriatti.png

Agatino Grillo: Hello Massimo. Would you like to introduce yourself?

Massimo Chiriatti: Hello everyone. I am a technologist, blogger and expert in the digital economy and blogger for “Il Sole 24 Ore” the most important Italian business newspaper. I have a degree in Political Science and a Masters in Information Systems Governance. My primary focus is on the areas of intersection between technology and the digital economy.
You can contact me via email, Twitter, Facebook, Linkedin.

locandina2-devfest-2.png

Agatino Grillo: Why did you participate in Google DevFest in Rome last November 8, 2014?

Massimo Chiriatti: The friends of the Rome Google Developer Group invited me to participate as a speaker at the morning conference where various speakers related their experiences that the new technologies and innovations are bringing to their particulars fields.

Agatino Grillo: Your speech was entitled “Work games” (here available in pdf) a tribute to the famous eighties movie “War Games” (here on Wikipedia)" and at the same time a warning that there is increasing competition between man and machine also in the workplace.

141124-work-games.jpg

Massimo Chiriatti: In my presentation I started by noting that more and more machines and advanced software are able to replace work activities previously managed only by humans. This began with the automation of repetitive jobs - typically: agriculture and manufacturing assembly lines in the manufacturing sector – and then changed the computerization of work with high information content: airplane ticket sales and check-ins, virtualized stores such Amazon, online banks and insurance services. The immediate future is represented by machines with predictive capabilities based on the storage of so called big-data that thanks to “abductive” logic software will be capable of making diagnose based on symptoms, for example. My provocative conclusions are that it is not convenient any more to compete with machines: rather we have to work with them to increase and multiply output and share them more equally among humanity.

Agatino Grillo: What does it mean?

Massimo Chiriatti: Nowadays technological innovations are increasingly sophisticated and less expensive so companies obviously try to replace human labour wherever possible with the work of  machines; the only areas where this is not possible yet are those related to creative work and those where empathy with other human beings still plays a vital role. So to preserve jobs or to find one it is important to be innovative, to be able to communicate one’s own capabilities, to be able to work in teams and online in communities. In other words: the middle class is destined to disappear due to this new social, economic and cultural system that is in continuous change and does not require unskilled workers but specialized talents. The Network offers us the possibility to be more visible and rapidly engaged by companies in search of our abilities. But be careful: the web allows everyone to show off their abilities thus exacerbates the competition.

Agatino Grillo: So?

Massimo Chiriatti: Before, anyone looking for work had to review the ads in newspaper or on the Web, now it is an algorithm that searches for the keywords. It is not the same thing. For years we put our CV online so that we are now in a data matrix. So when a job is matched with an application, we will be found and this will be announced by a message on our Smartphone

Agatino Grillo: What about the risk of excessive professional individualism? Is Italy ready for these challenges? Does Italy now being increasingly marginalized by big corporations?  

Massimo Chiriatti: It must be clear that the world changes despite our fears. The facts are these: large enterprises are increasing number, they are decentralizing e and have a shorter life. From 1988 to 2007 they have doubled, we have gone from 25 million to 50 million companies worldwide. These are also the benefits of globalization, which are often overlooked, because often new jobs are not created in our territory. The key drivers of this trend are the falling costs of both the transport of goods and information, both processing and storage. In other words: money has always been moved where it will yield maximum profit and today it moves where there are the best minds, not where labor costs less or in a defined area. We have mistakenly still the idea that companies are very old but it is not so: the biggest enterprises are born about ten years ago; at this rate try to imagine what - and especially who - will be starting up companies in the next decade. Now capital - and technology – find opportunities in start-ups and little companies even created by a single talented person.

Agatino Grillo: Thanks Massimo

Massimo Chiriatti: Thank you all

Slides of Massimo at Rome Google DevFest 2014

  • Massimo Chiriatti, “Work Games”, Google DevFest 2014, Roma , 8 novembre 2014 (pdf, 14 slide, 790 K)

Insights

How to contact Massimo Chiriatti

Connected posts

Let's build an immersive storytelling - Interview with Serena Zonca (November 12th, 2014)

(This post is part of a serie on GDG Rome DevFest 2014, Italian translation available here)
serena.jpeg

Agatino Grillo: Hi, Serena. Do you want to introduce yourself quickly?

Serena Zonca: Hello everyone. My name is Serena Zonca. I was born in Bergamo, Italy, on 1967. A degree in Foreign Languages and Literature, journalist. My job is on paper and digital publishing. I am founder of www.autopubblicarsi.it  a web site dedicated to new forms of publishing, and in particular to self-publishing. I like to experiment and I think ebooks are the starting point of the new publishing universe. More information about me can be found on my blog. Obviously I can be contacted via Facebook, Linkedin and Twitter  or directly through my website.

twitter-gdg-4.png

Agatino Grillo: What were you doing at Google DevFest Rome last November 8, 2014 among programmers, engineers and various nerds?

Serena Zonca: Rome Google Developer Group asked me for a contribution to the general conference of the morning on how new technologies are transforming the way people work and so I gave a speech on the subject of virtual reality and the “virtual storytelling”.

Agatino Grillo:  Let’s begin with virtual reality. For many years VR has promised to revolutionize our lives and our way of interacting with digital universes but actually isn’t it is a big disappointment? Are there significant results yet or not?

Serena Zonca: VR has moved a long way since it debuted. As I said in my speech at Google conference, I experienced for the first time virtual reality in 1992 in an event titled “Virtual Workshops” organized by the Triennale in Milan. I had to wear a helmet and a huge belt, connected by a bunch of cables to a computer which at the time seemed monstrous and today would evoke tenderness to tell the truth. I was ashamed not just at the idea of winding myself in that way, also because a small crowd laughed watching the volunteers so masked. But, once connected, I found myself in a new virtual universe: a white room, bare, some little airplanes were suspended in the air, a handful of polygons. The pixels were as big as pancakes and the frame rate of 4-5 fps. But ... I was there. The room existed, it was true! Since then I am always interested in virtual reality.

Agatino Grillo: Can you explain what “virtual storytelling” is?

Serena Zonca: Telling stories is part of the nature of human beings and therefore storytelling is a proven and powerful mechanism to capture attention, communicate and generate emotions, as advertising well knows! Despite being an anthropological constant, even the narrative evolved over time. It is passed from oral form of primordial stories to writing form taking the forms of theater, novel, screenplay film and television, the track of a video game. It has been constantly adapting  to the technical means from time to time available.
The challenge of “virtual storytelling” is to merge the narrative with current technology, including virtual reality, to create a new narrative means that you will no longer receive passively as the current books or movies, but in an interactive way: the stories will not be limited as now by a beginning and an end but propose multiple junctions and endings. To realize this “virtual storytelling” writers would work with software developers, digital graphics, 3D modelers ...

Agatino Grillo: What is the connection between “virtual storytelling” and virtual reality?

Serena Zonca: The connection is the immersion, which is another constant of the cultural history. Human beings have always tried to recreate the illusion of worlds and be part of them, to be surrounded by 360 °. The earliest examples date back to classical antiquity: I refer to the frescoes of the Villa of Livia at Prima Porta, in Rome, the trompe l'oeil of the Room of the Villa Farnesina in Rome and ever so many other examples up to the Cinerama and Sensorama in sixties of 1900.
Thus we come to 1992 mentioned earlier. Virtual reality promised an immersive revolution which hasn’t been realized yet. The computers were too slow; the display, the position detectors, the gloves too expensive and cumbersome. The princely progress  of VR has suffered a setback before that the apocalyptic predictions of detractors had time to occur.
Today, however, the context returns to appear favorable. On one hand we assist to the advancement of technology and on the other hand the user interfaces are today more friendly and people easily deal with computers and the network.
Today a VR platform is available and it costs more or less one thousand of euros:Oculus Rift, Microsoft Kinect and Virtuix Omni. It permits everyone to enter into an artificial world moving and interacting naturally with its components.

141112-sensorama.jpg

Agatino Grillo: How do you think the publishing industry will evolve in the coming years? Many fear that new technologies can wipe out the world we know now, and have justified fears. In 10 years will there still books? Or will they die out as vinyl records did?

Serena Zonca: The world does not stop for our fears. The real challenge is managing this change not to oppose it. I'm sure that paper books will continue to exist for decades. What we need to work is to build new languages and new tools that allow us to exploit the opportunities that technology offers us today and to meet the needs of a new audience. For this I was very pleased to attend the Google meeting and to confront with Google engineers who design digital tools essential to the cultural development of mankind.

google-devfest-2.jpg

Agatino Grillo: Is there any specific project you're working at on this front?

Serena Zonca: Just at Google Rome DevFest we launched the proposal to create a true “story immersive” ebook thanks to the power and wealth of the community that this type of event collects. Another goal would be to develop new tools to bring the authors to immersivity  and give them major autonomy in experimenting new languages. Immersive storytelling requires, I think, sharing cultural and technological experiences.

Agatino Grillo: Thanks Serena

Serena Zonca: Thank you all.

Slides of the presentation

  • Serena Zonca, “Virtual Storytelling”, Google DevFest 2014, Roma , 8 novembre 2014

How contact Serena Zonca

Connected posts

Google DevFest Rome 2014 (University Roma TRE, November 8, 2014)

(This post is part of a serie on GDG Rome DevFest 2014, Italian translation available here)

locandina2-devfest-2.png

  • photos & images taken by Google+ and Twitter

On November 8, 2014 I participated to the Developer Fest hosted by the Department of Engineering at the University Roma TRE and organized by Rome Google Developer Group (GDG).
I would like to get an idea of what was cooking in the Big G the “best company in the world” according to Fortune 2014 and a “Great Place to Work” as many worldwide job classifications.
I only attended the conference in the morning which was more “philosophical” than technological and not the “code-labs” scheduled in the afternoon which proposed practical sessions focused on the various development environments and solutions offered by Google.
Entering the conference-room I expected a formal context (read: boring!) as usual in these slide-centered meetings but - surprise ! –instead it was a sort of mega cheerful and improvised assembly unlacking funny incidents (Murphy's Law!): a microphone that did not work, fire alarm siren that sounded at inopportune moments, and so on.
Here are my impressions and notes!

locandina-devFestSmall-2.jpg

The agenda

The program, strict and multicolored as the Google homepage, simply recited:

     9:30 Welcome - Paul Merialdo and Antonella Blasetti
     10:00 Serena Zonca - Virtual Storytelling
     10:45 Massimo Chiriatti - Work Games
     11:30 Darius Arya - Ancient (and Modern) Rome live
     12:15 Sergio Paolini - The Web and neurosurgery
     13:00 The Lab and the Group's activities
     14:30 The Lab
     17:00: Treasure Hunt

Paolo Merialdo and Antonella Blasetti: get the party started!

paolo-merialdo.png

The conference began with Paolo, professor at the University Roma TRE and starter-up, who gave the welcome to all present and Antonella (the “boss” of the event), which clarified the spirit of the conference: the Google DevFest is not a formal lecture-meeting but an interactive party where people meet to exchange experiences, strengthen motivation and plan joint activities to do together.

antonella-blasetti.jpg
“We are not here just to talk about new technologies” underlied Antonella “but primarily to share information, to understand how the world changes around us and imagine together how we can facilitate this change thanks to the tools provided by Google”.
“To accomplish this” continued Antonella “we begin with three different speakers linked by two elements in common:

  • the passion and excellence in their own professional activity,
  • the need to adopt innovative technologies to do better quality-work”.

Serena Zonca: Virtual Storytelling

serena-zonca.jpeg

The first speaker was Serena, editor, journalist, editor and founder of www.autopubblicarsi.it .
She conducted an elegant and passionate presentation on virtual reality (VR) and in conclusion proposed to engage all of us in a collective project for the realization of an “immersive” electronic book that could allow the reader to enjoy and co-participate to the narrative using, for example, a VR platform already available and chipper: Oculus, Kinect and date-glove.

Massimo Chiriatti: Work Games

massimochiriatti.png

Massimo is a technologist, blogger and contributor for “Il Sole 24 Ore” the most important Italian business newspaper.
He gave a ironic and nice presentation (here in pdf, 14 slides, 790 K) on the real “world of work”  illustrating risks & opportunities arising from new technologies.
According to Massimo we need to abandon the idea of working all our work-life with a single employer: the average life of the big US companies is decreasing while simultaneously human life expectancy, also working, is increasing.
The present (and the future) of work requires adopting a nomadic attitude that is the capability of rapidly moving between industries keeping in mind that the competition between those who aspire to be hired is based both on the specialization of his own skills and on his ability to “communicate” and sell his expertise especially through the new digital media.

Darius Arya: let’s develop immersive multimedia experiences about history

darius-arya.jpg

Darius is a (multi-platform) archaeologist, TV documentarian and social media influencer.
His talk focused on how to tell Rome’s history through social and digital media like YouTube, Instagram, Twitter, Facebook and so on.
He presented a couple of videos: “Ancient Rome Live” (Youtube) and “Save Rome: Preserving the Eternal City in the 21st Century” (YouTube), to explain the idea that we can better preserve our common history and heritage through new media outlets.
According to Darius YouTube offers a great venue combined with other learning platforms and applications.

Sergio Paolini: the Web and neurosurgery

sergio-paolini-2.jpg

Sergio, who is a neurosurgeon, gave a brilliant presentation on how the web has radically altered the field of surgery in the last 10 years both in the doctor-patient interaction and for training and also the clinical practice of doctors.
Sergio also highlighted the limits and delays of Italy in this field especially as concerns the public administration.
According to Sergio new technologies can play a key role in this field: the entry of the Internet in the operating room is producing significant improvements in medical practice by sharing information between operators; further progress can be expected thanks to the so-called wearable computing like Google Glass.

Conclusions

antonella-speaking-2.jpg

The first part of GDG Rome DevFest 2014 ended with some quick conclusions by Antonella Blasetti:

  • we are here to establish a real community where everyone can contribute to;
  • this is a new world so we have to think in a new way: technology solutions must be built “from below” and realized by joint actions;
  • often the “users” of the new technologies are ahead in terms of knowledge compared to the technicians as demonstrated by the present speakers;
  • different skills enrich the solutions.

Concluding, Antonella proposed to work on the projects launched during the speeches: virtual storytelling, integrated communication, web-enriched cultural heritage; the idea is to merge all of these exciting proposals to realize for example a new rich experience web site following the model that Google already produced for the city of Marseille.

Rome DevFest 2014 code-labs

tipi-google-2.jpg

Connected posts

AngularJS and the future of web programming: a talk with Vittorio Conte (February, 4th 2015)

angularjsintro2.jpg

(This post is part of a serie on GDG Rome DevFest 2014)

Agatino Grillo: Hi Vittorio. Could you introduce yourself?

Vittorio Conte: I am a software developer at Engineering Ingegneria Informatica SPA a multinational company leader in Italy in software and IT services. I live in Rome and I love travels/girlfriend/family/dogs.

Agatino Grillo: What is AngularJS?

Vittorio Conte: AngularJS is a JavaScript framework, designed to simplify the web developer’s experience. It provides a very structured approach and several feature to easily and quickly develop web sites and applications.
Created by Google developers, today is an open source project powered by Google and with hundreds of open source contributors around the world.

Agatino Grillo: The web programming scene is every day more crowded: why Google proposed another framework?

Vittorio Conte: There are a lot of alternative but most of these frameworks use an imperative approach for DOM manipulation. Through their usage the code maintenance and organization is not so simple. AngularJS, instead, is based on MVC pattern and gives you a mental model for “where to put what”. It’s provides a declarative approach to extend the HTML functionalities, improving code reusability and maintenance.
Developing a single-page application is, than, fast and easy.

Agatino Grillo: What is a single-page application?

Vittorio Conte: A single-page application (SPA), is a web application or web site that fits on a single web page with the goal of providing a more fluid user experience akin to a desktop application. In a SPA, either all necessary code – HTML, JavaScript, and CSS – is retrieved with a single page load or the appropriate resources are dynamically loaded and added to the page as necessary, usually in response to user actions. The page does not reload at any point in the process, nor does control transfer to another page, although modern web technologies (such as those included in HTML5) can provide the perception and navigability of separate logical pages in the application.

Agatino Grillo: What about data binding?

Vittorio Conte: In traditional web frameworks the controller combines data from models and mashes templates to deliver a view to the user. This combination reflect the state of the model at the time of the view rendering.
AngularJS takes a different approach. Instead of merging data into a template and replacing a DOM element, AngularJS creates live templates as a view. Individual components of the views are dynamically interpolated live. This feature is one of the most important in AngularJS and allows us to write less JavaScript Code.

locandina2-devfest-2.png

Agatino Grillo: At Rome Google Developer Group (GDG) Fest on 8th November 2014 your code-lab was dedicated to getting started with AngularjJS. What did you propose?

Vittorio Conte: GDG DevFest’s codelabs are hands-on lab sessions to allow attendees to learn Google technologies by practical examples from experts sharing their knowledge and passion. You can find slides and code of my AngularJS here. I proposed a rapid overview of AngulaJS features and how you can have a simple Angular apps in minutes thanks to its features like 2-way binding, directives, dependency injection, etcetera. I would thank my friend Alessandro Relati who get the codelab with me.

Agatino Grillo: Google already announced AngularJS 2.0 release?

Vittorio Conte: The next version of AngularJS is currently in a design and prototype phase. As per Google, AngularJS 2.0 will focus on mobile apps but desktop architecture will be supported too.

Agatino Grillo: Thanks Vittorio

Vittorio Conte: Thanks to you

VittorioConte31.jpg

How to contact Vittorio Conte

Slides and code

Links

Connected posts

Rome GDGFest 2014: how replicate classic arcade “Space Invaders” in Unity3d, by Vincenzo Favara (12th January 2015)

(This post is part of a serie on GDG Rome DevFest 2014)

150112-vincenzo-favara2.jpg

(Claudio d’Angelis and Giovanni Laquidara)

Agatino Grillo: Hi Vincenzo. Can you introduce yourself?

Vincenzo Favara: Analyst developer, I’m a true computer geek with an open mind. I compose poems for my pleasure and that of my friends. I’m very talkative, always learning about new technologies and new ways of thinking. Member of Google Developers Group - Lazio/Abruzzo (GDG Lab).

Agatino Grillo: Motto?

Vincenzo Favara: “The impossible is the first step towards possible”

Agatino Grillo: You get a talk at Rome Google Developer Group (GDG) Fest on 8th November 2014 in a code-lab dedicated to Unity3d. What about it?

Vincenzo Favara: Unity3d is a game development ecosystem: a powerful rendering engine fully integrated with a complete set of intuitive tools and rapid workflows to create interactive 3D and 2D content. It includes a rendering and physics engine, a scripting interface to program interactive content, a content exporter for many platforms (desktop, web, mobile) and a growing knowledge sharing community.

150112-unity3d.png

Agatino Grillo: Why a codelab about Unity3d in a Google Developer Group Fest?  Unity3d doesn’t belong to Google universe …

Vincenzo Favara: Google Developer Groups are a major initiative for Google but each GDG is an independent group so we can contaminate Big G technologies with other topics in our conferences. But of course you can using Unity3d to develop a game for Android. Unity3D has devoted more time to prepare and to develop apps on the Android platform.

Agatino Grillo: What topics did you talk about in your codelab?

Vincenzo Favara: The goal of my codelab was to teach how quickly implement a 2D game in Unit3d showing how replicate classic arcade “Space Invaders”, just a simple example for beginners. Slides are available here, code in GitHub.

150112-Space_Invaders_flyer.jpg

Agatino Grillo: Advantages of using Unity3d in game development?

Vincenzo Favara: The main advantage is that Unity3d offers a rich, fully integrated development engine for the creation of interactive 2D and 3D content. The second point is that using Unity3d you can publish your game on several different platforms programming in Java Script, C # or Boo. Finally Unity3d has a large asset store where you can buy scripts, tools and textures to use in the game.

Agatino Grillo: Computer games are rapidly evolving in their sophistication and it is now possible use their potential to develop inexpensive, immersive and realistic media experiences. What is your opinion on this matter?

Vincenzo Favara: Video games are a primary component of digital interactive media industry and a form of digital art. I believe video games are an exciting opportunity and instrument to realize innovative experiences of immersive and interactive media. Recently Unity3d announced a full free integration for Oculus  a virtual reality platform. You can use Unity 4.6 and the Oculus integration package to deploy any sort of virtual reality content imaginable to the Oculus Rift, a VR head-mounted display.

Agatino Grillo: Thanks Vincenzo

Vincenzo Favara: Thanks to you

How to contact Vincenzo Favara

Codelab: code and slides

Links

Connected posts

The Dart side of web development: a conversation with Claudio d’Angelis and Giovanni Laquidara (11th January 2015)

(This post is part of a serie on GDG Rome DevFest 2014)

150111-claudio-giovanni.jpg

(Claudio d’Angelis and Giovanni Laquidara)

Everything you always wanted to know about Dart but were afraid to ask

Agatino Grillo: Hi Claudio, hi Giovanni. Could you introduce yourselves?

Claudio d’Angelis: I am a web and software developer located in Fondi (near Rome), working in IT as a configuration manager and programmer, experienced in digitization and document management systems, UNIX administration, modern web development. When not working, I like to dedicate to Dart language, trying to contribute to its spread: I'm building an italian support community, writing articles and tutorials at Engeene.it, presenting episodes for the Google Developers Live program and speaking at conferences.

Giovanni Laquidara: I am a Software Engineer working in Air Traffic Control and Command & Control System development field. Active member in GDG-Rome and CodeInvaders Communities having fun developing Android and Web Application. Startupper in love with new and life changing technologies. Android and Dart and Go enthusiast.

Agatino Grillo: You were speakers at the Google Developer Group (GDG) Fest on 8th November in Rome with a code-lab dedicated to web development using Dart language. What about it?

Claudio & Giovanni: In the code lab we developed, using Polymer-Dart, a showcase app of 700+ interesting monuments you can find in Rome! You can find the slide here on SlideShare or here in ppt and pdf format.

Dart_logo_wordmark.png

Agatino Grillo: What is Dart? Why another web programming language?

Claudio & Giovanni: Dart is an open-source Web programming language developed by Google designed to be easy to write development tools for, well-suited to modern app development, and capable of high-performance implementations. Dart is a class-based, single inheritance, object-oriented language with C-style syntax. It supports interfaces, abstract classes, reified generics, and optional typing. Most importantly, Dart compiles to JavaScript so that your Dart apps can run all over the web.

Agatino Grillo:  Does the Web really need another language?

Claudio & Giovanni: Dart is more than a language. The project is also building an Editor, core libraries, a static analyzer, and even a virtual machine. The Dart VM can run Dart code directly on the command line for server-side apps.  Nowadays web developers’ expectations require a platform familiar to programmers of different backgrounds, and that is structured to enable the larger, more complex apps that users are demanding. So Dart brings fresh ideas to web programming, and this innovation help push the web forward for app developers and users.

Agatino Grillo: Could you better explain Dart’s innovations?

Claudio & Giovanni: Google wants web apps to load quickly, run smoothly, and present engaging and fun experiences to users. At the same time Google wants developers of all backgrounds to be able to build great experiences for the browser.
Modern HTML5-compliant browsers offer a lot of new features in tablets and phones field also.
Despite these improvements in the web platform, the developer experience hasn’t improved as much as we’d like. It should be easier to build larger, more complex web apps. It’s taken far too long for productive tools to emerge, and they still don’t match the capabilities offered by other developer platforms. You shouldn’t have to be intimately familiar with web programming to start building great apps for the modern web.
So Dart improves developers activities in two main ways:

  1. better performance because it is a structured language designed for optimize coding and based on a new Virtual Machine enabling faster startup,
  2. better productivity because its support for libraries and packages helps you work with other developers and easily reuse code from other projects.

Agatino Grillo: What about the app developed in your code-lab?

Claudio & Giovanni: We realized a web app you can test live here  which exposes Rome’s monuments data come from the City of Rome’s OpenData hub: dati.comune.roma.it. Source code is available on Github . Slides here on SlideShare or here in ppt and pdf format.

Agatino Grillo: Your app uses Polymer-Dart too. What is Polymer?

Claudio & Giovanni: Polymer is a library for creating Web Components, which are a set of W3C standards and upcoming browser APIs for defining your own custom HTML elements. Polymer-Dart  is a Dart port of Polymer to build structured, encapsulated, client-side web apps with Dart and web components.

Agatino Grillo: Thanks Claudio, thanks Giovanni.

Claudio & Giovanni: Thanks to you

Codelab: code, demo and slides

How to contact Claudio d’Angelis

How to contact Giovanni Laquidara

Links

Connected posts

Towards Web 3.0, an interview with Roberto Navigli and Daniele Vannella (9th January 2014)

(This post is part of a serie on GDG Rome DevFest 2014)

150109-roberto-daniele.jpg

(Roberto Navigli and Daniele Vannella)

Agatino Grillo: Hi Roberto, hi Daniele. Could you introduce yourselves?

Roberto Navigli: I am a professor in the Department of Computer Science at the Sapienza University of Rome. Since I was a child, I have always been very interested in the complexity of language and this is the reason why, as a computer science student, I was quickly fascinated by research in the field of Natural Language Processing and decided to start a Ph.D. on the topic of word sense disambiguation. In 2010 I was the first Italian winner of a prestigious ERC Starting Grant in Computer Science and Informatics (I was only 32 years old with an amazing 1.3 million-euro contract!). Now I manage a group of 10 Ph.D. students doing research in many areas of Natural Language Processing, including Word Sense Disambiguation, Knowledge Acquisition, Ontology Learning, Semantic Information Retrieval, the Semantic Web and its applications. You can find more information on me at http://wwwusers.di.uniroma1.it/~navigli

Daniele Vannella: I am a Ph.D. student at Department of Computer Science at “La Sapienza” University of Rome under the supervision of prof. Navigli. I have a B.Sc. degree and an MSc in Computer Science both from “La Sapienza”. My research interests are in the areas of Word Sense Induction and Lexical Substitution . My curriculum is available at
http://www.di.uniroma1.it/sites/default/files/cv/curriculum-Vannella.pdf

Agatino Grillo: You were a speakers at the Google Developer Group (GDG) Fest on 8th November in Rome in a code-lab titled “Towards Web 3.0 with BabelNet e Babelfy”. What is the Web 3.0?

Roberto & Daniele: The Web 3.0 is sometimes used as a synonym for “Semantic Web” which, using the definition of Tim Berners-Lee, is a “common framework” to allows data to be shared and reused across application, enterprise, and community boundaries. More simply, we can say, using the Wikipedia’s definition that the Semantic Web aims at converting the current Web, dominated by unstructured and semi-structured documents, into a “web of data”, where data are interoperable and semantically connected.

150109-babelnet.png

(source: Wikipedia, click to enlarge)

Agatino Grillo: What is BabelNet?

Roberto & Daniele: A key recent development in the Semantic Web area is the Linguistic Linked Open Data cloud. However, this cloud does not contain many rich resources and, with the exception of DBpedia, it is mostly monolingual. To address this and many other issues in semantics, we have introduced BabelNet, a very large multilingual semantic network that was created by automatically integrating existing knowledge resources, including machine-readable dictionaries such as WordNet, OmegaWiki and Wiktionary, and encyclopedic knowledge from Wikipedia and Wikidata.

Agatino Grillo: Could you explain BabelNet in more detail?

Roberto & Daniele: BabelNet is a sort of multilingual encyclopedic dictionary which connects concepts and named entities in a very large network of semantic relations, made up of more than 13 million entries, called Babel synsets. Each Babel synset represents a given meaning and contains all the synonyms which express that meaning in a range of different languages.
BabelNet provides, for example, lexical knowledge about the concept apple as a fruit, with its part of speech, its definitions and its set of synonyms in multiple languages, as well as encyclopedic knowledge about, among other entities, the Apple Inc. company, along with definitions in multiple languages, connections to other concepts and entities, etc.
Thanks to the semantic relations it is furthermore possible to learn that apple is an edible fruit (or a fruit comestible, a frutta, an essbare Früchte) and that Apple Inc. is related to Mac and Mountain View California. While 6 languages were covered in version 1.0, BabelNet 3.0 makes giant strides in this respect and covers the amazing number of 271 languages!

150109-babelnet2.jpg

Agatino Grillo: Why a “multilingual” approach?

Roberto & Daniele: The tremendous growth in the amount of multilingual text on the Web has significantly increased the need for multilingual resources in many research areas. Multilingual lexical knowledge is indispensable for implementing the next step towards the multilingual Semantic Web, i.e. a Web in which multilinguality is not a barrier, but an opportunity for sharing and spreading information across cultures and languages. As a result BabelNet provides a unified multilingual repository of knowledge for solving issues in many areas such as computer-assisted translation, localization, multilingual semantic processing of text, cross-lingual information retrieval, etc.

Agatino Grillo: And Babelfy?

Roberto: Having developed the largest multilingual knowledge repository, the first natural step was to use it to address the language ambiguity issue. With Andrea Moro, another Ph.D. student in my research group, we therefore conceived and developed Babelfy, a unified approach to word sense disambiguation and entity linking in arbitrary languages, with performance on both tasks on a par with, or surpassing, those of task-specific state-of-the-art supervised systems.

Agatino Grillo: Recently you announced BabelNet 3.0, covering 271 languages. What is new?

Roberto: BabelNet 3.0 is the result of the automatic integration of six different resources:

  • WordNet 3.0, a popular computational lexicon of English,
  • The Open Multilingual WordNet, a collection of wordnets available in different languages,
  • Wikipedia, the largest collaborative multilingual Web encyclopedia,
  • OmegaWiki, a large collaborative multilingual dictionary,
  • Wiktionary, a collaborative project to produce a free-content multilingual dictionary,
  • Wikidata, a free knowledge base that can be read and edited by humans and machines alike.

Additionally, it contains translations obtained from sense-annotated sentences. BabelNet is fully integrated with our Babelfy multilingual disambiguation and entity linking system as well as the Wikipedia Bitaxonomy, a state-of-the-art taxonomy of Wikipedia pages aligned to a taxonomy of Wikipedia categories. Don't forget to join our facebook group at: https://www.facebook.com/groups/babelnet/

Agatino Grillo: Thanks Roberto, thanks Daniele.

Roberto & Daniele: Thanks to you!

Links

  • R. Navigli and S. Ponzetto. BabelNet: The Automatic Construction, Evaluation and Application of a Wide-Coverage Multilingual Semantic Network. Artificial Intelligence, 193, Elsevier, 2012, pp. 217-250. http://babelnet.org
  • A. Moro, A. Raganato, R. Navigli. Entity Linking meets Word Sense Disambiguation: a Unified Approach. Transactions of the Association for Computational Linguistics (TACL), 2, pp. 231-244, 2014. http://babelfy.org

Videos

  • Daniele Vannella - Linguistic Computing Laboratory (LCL) @ Università la Sapienza di Roma, BabelNet 2.0: un dizionario enciclopedico multilingue in formato elettronico  (video, 30.9) 20th November 2013
  • Roberto Navigli (University of Rome): Babelfying the Multilingual Web. (video)  23rd June 2014

Contacts

Roberto Navigli

Daniele Vannella

●    https://it-it.facebook.com/daniele.vannella
●    https://sites.google.com/a/di.uniroma1.it/danielevannella/
●    https://www.linkedin.com/pub/daniele-vannella/99/842/854

Connected posts

GDG Rome Devfest 2014 - An introduction to Go by Alessandro Mancini (8th January 2015)

(This post is part of a serie on GDG Rome DevFest 2014)

150108-alessandro-mancini-golang.jpg

(Alessandro Mancini)

Agatino Grillo: Hi Alessandro. Can you introduce yourself?

Alessandro Mancini: I am a software developer with several years of experience in military defense area, particularly focused in Human-Machine interface system, Real-Time radar system, Object Oriented application using C/C++ and Java.
I am an active member of Google Developers Group - Lazio/Abruzzo (GDG lab) since the summer of 2013.
I am a Go enthusiast and an Android developer and a speaker in several IT conferences.
Beside this geek/nerd things, my interests are music (I am a very expert and enthusiast of many genres of music and spend hours of my days listen good albums) and I try sometimes to snowboard.

Agatino Grillo: You get a talk at Rome Google Developer Group (GDG) Fest on 8th November 2014 in a code-lab dedicated to Go language. What about it?

Alessandro Mancini: GDG DevFest’s codelabs are hands-on lab sessions to allow attendees to learn Google technologies by practical examples from experts sharing their knowledge and passion. Rome Devefest 2014  was hosted by Rome University TRE. The full agenda of Rome Devefest 2014 is available here. I was the speaker of GO codelab that was a sort of “introduction of Go language”: why adopt it, its advantages against other programming languages, etcetera. You can find the slides here  with the code examples I proposed.

Agatino Grillo: Okay let’s start from basics. What is Go? Why another web programming language?

Alessandro Mancini: Go language (better known as Go lang or just GO) was conceived in 2007 by Google to solve some of the problems born by the interconnection of modern software infrastructures: multicore processors, networked systems, massive computation clusters, and the continuous update of web programs. Go was designed and developed to improve productivity in this complex environment. Its better-known aspects are built-in concurrency and garbage collection but Go has other important features: a rigorous dependency management, adaptability of software architecture as systems grow, robustness across the boundaries between components.
The article "Go at Google"  discusses the background and motivation behind the design of the Go language, as well as providing more details.

Agatino Grillo: That means Go is the best choice only for construction of system software on multicore machines?

Alessandro Mancini: Absolutely no. Go is efficient, scalable, and productive in every architectures and some programmers find it fun to work in. The goals of the Go project were to eliminate the slowness and clumsiness of software development and thereby to make the process more productive and scalable. The language was designed by and for people who write and read and debug and maintain large software systems.

Agatino Grillo: What are the most important characteristics of Golang?

Alessandro Mancini: To summarize Golang is

  • lightweight, avoids unnecessary repetition
  • statically typed
  • object oriented, but not in the usual way
  • concurrent, in a way that keeps you sane
  • designed for working programmers
  • funny.

Agatino Grillo: What does it mean “Object Oriented, but not in the usual way”?

Alessandro Mancini: Golang requires a different way to think about Object Oriented Programming. Although Go has types and methods and allows an object-oriented style of programming, there is no type hierarchy. The concept of “interface” in Go provides a different approach that is more easy to use and in some ways more general. There are also ways to embed types in other types to provide something analogous - but not identical - to subclassing. Moreover, methods in Go are more general than in C++ or Java: they can be defined for any sort of data, even built-in types such as plain, “unboxed” integers. They are not restricted to structs (classes).
Go has types and values rather than classes and objects.
Go doesn’t fit the typical schema of other OOP language but it provides many of the same features, in a different way:

  • methods on any type we define, with no boxing or unboxing
  • automatic message delegation via embedding
  • polymorphism via interfaces
  • namespacing via exports.

There is no inheritance in Go and so you have to realize OO design in terms of composition.

Agatino Grillo: Your suggestions on getting started with Golang?

Alessandro Mancini: At Google I/O 2012 the Google Developers team launched the Google Developers Academy, a program that provides training materials on Google technologies. Go is one of those technologies. A good point to start is for example: “Getting Started with Go, App Engine and Google+ API”  an introduction to writing web applications in Go updated on September 2014. It demonstrates how to build and deploy App Engine applications and make calls to the Google+ API using the Google APIs Go Client. This is a great entry point for Go programmers to get started with Google’s developer ecosystem.
After going through basic materials the second step for acquiring knowledge in Go is to get started writing code solving actual problems. And of course joining Go community https://groups.google.com/forum/#!forum/golang-nuts . There are a lot of gophers eager to help you improve your skills.

tipi-google-2.jpg

Agatino Grillo: Alessandro you’re a member of the Google Developer Group Rome. What’s the tech scene in Rome? What about Golang spread in Italy?

Alessandro Mancini: The tech scene in Rome is growing up thanks to developer groups like GDG Roma and GolangIt http://www.meetup.com/golangit/ which have a key role in bringing innovation and tech knowledge into the programmers communities. In Italy in the last years there has been a relevant growth of tech events as well as tech communities.

Agatino Grillo: Thanks Alessandro

Alessandro Mancini: Thank you

How to contact Alessandro Mancini

Slides

Links

Connected posts

Rome Dev Fest 2014: Android TV & Chromecast, a conversation with Matteo Bonifazi and Alessandro Martellucci (2nd January 2015)

(This post is part of a serie on GDG Rome DevFest 2014)

150102-alessandro-matteucci-matteo-bonifazi2.jpg
(Alessandro Martellucci e Matteo Bonifazi)

Agatino Grillo: Hi Matteo, hi Alessandro. Could you introduce yourselves in a few sentences?

Matteo Bonifazi: Mobile Software Engineer, I work as Android developer at Open Reply. Member of Google Developer Group Lazio-Abruzzo (GDG L-ab) . Author of the book  “Sviluppare applicazioni per Android in 7 giorni” (“Create Android apps in seven days”). Living in Rome IT, computer addicted, traveller tireless, boxer by chance.

Alessandro Martellucci: I am Computer Scientist and I work at Open Reply as Senior Android developer and specialist in mobile development sector. What I’d like is tempt to make sure everything would be innovative everyday. I’ve experience in mobile-side and server-side development, domain modelling, analysis requirements but always careful of world changes.

Agatino Grillo: Matteo, what are GDGs?

Matteo Bonifazi: Google Developer Groups (GDGs) are communities of people interested in Google’s developer technologies and solutions. GDGs are not just programmers’ groups: we want to foster a community for developers, designer, computer science students and teachers, startuppers who build on Google’s platforms.

Agatino Grillo: Both of you work at Open Reply. What about it?

Alessandro & Matteo: Founded in 1996 Reply Group is made up of a network of highly specialised companies which operates in Italy, Germany, UK, Benelux, USA and Brasil. Open Reply is the company of Reply Group focused on open source software, multichannel web solutions and mobile applications. Based in Rome and Milan, OpenReply is a team of about 30 engineers, specialized in Android, iOS and Windows Phone development and our skills are pretty focused on broadcasting, banking and Android OS customisation.

150102-video-streaming-slide1.jpg

Agatino Grillo: At Rome Google DevFest on 8th November 2014 you gave a presentation titled “Video Streaming: from the native Android player to unconventional devices” (here the slides in pptx and pdf format in Italian, here a similar one in English presented at Droidcon London some days before). Could you summarize it?

Alessandro & Matteo: In this talk we gave an overview about the streaming in Android. Starting from video streaming on mobile devices, we explored the evolution of the development through Chromecast up to Android TV illustrating with our experiences developing mobile television applications for the main Italian broadcaster providers.

Agatino Grillo: What is the Google proposition in this field?

Alessandro & Matteo: Getting a streaming video in your Android smartphone or tablet is no longer enough.In the latest period, Google shows how to push this concept forward to new appliances. Chromecast and Android TV are two of the most promising gadgets for upsetting the way users enjoy video streaming.

Agatino Grillo: In which sense?

Alessandro & Matteo:Nowadays the evolution of video streaming is towards mobility experience. Chromecast and Android TV represent an additional mode of use of the video itself because final users can benefit from new forms of interaction and new kinds of information.
In our presentation  we analized the Android multimedia framework also which permits to play several media types from media file stored inside the application (raw resources, standalone files) or for OTT streaming. However documentation of the media framework is enough just for simple test case and MediaPlayer Framework documentation is kind of nightmare (lot of events and error are not documented at all).
Finally, we concluded with examples on video streaming using Android TV and Chromecast.

150102-video-streaming-slide2.jpg

Agatino Grillo: What is Android TV?

Alessandro & Matteo: Android TV is a smart TV platform developed by Google announced at Google I/O 2014 as a successor to Google's earlier attempt at smart TV, Google TV. Android TV has inside the same Android multimedia framework of normal devices. Android TV can be built into both TVs and standalone set-top boxes. Users will have access to the Google Play Store to download Android apps, including media streaming services as well as games.

Agatino Grillo: Chromecast at a glance?

Alessandro & Matteo: Chromecast is a digital media player developed by Google. It is a HDMI dongle playing audio/video content on a high-definition display by directly streaming it via Wi-Fi from the Internet or a local network.

App-Android-7-giorni.jpg

Agatino Grillo: Matteo you recently published “Sviluppare applicazioni per Android in 7 giorni” (“Create Android apps in seven days”). Could you summarize it contents?

Matteo Bonifazi: “Sviluppare applicazioni per Android in 7 giorni” provides a comprehensive and state-of-art guide of the various steps involved with the development of Android apps. It follows the “seven days” schema to assure a practical approach and better motivate the readers. The last chapter gave a brief introduction to Android Wear, a version of Google's Android operating system designed for smartwatches and other wearables.

Agatino Grillo: Thanks Alessandro, thanks Matteo

Slides

  • Matteo Bonifazi & Alessandro Martellucci, “Video Streaming: from the native Android player to uncoventional devices”, Rome Google DevFest, 8th November 2014  (pptx and pdf, in Italian)

Links

How to contact Alessandro

How to contact Matteo

Connected posts

Pages