Navigation path

Left navigation

Additional tools

Archive for November, 2014

On Computer Aided Education (CAE) …….

Saturday, November 29th, 2014

A few weeks ago, I participated in a very interesting Programming Language Seminar at the Electrical Engineering and Computer Science School about Computer Aided Education and I wanted to report about it.

As you probably know, I was a Secondary School Teacher and a Lecturer at the University and my wife is a Secondary School Teacher as well. We both have always been interested in how to improve the education process and that is why I wanted to attend the Seminar.

The seminar was about how logical reasoning and search techniques (inspired from the programming languages community) can be used to automate two key tasks in Education, namely problem generation and feedback generation. The speaker illustrated the approach using recent research results that have been applied to various STEM (Science, Technology, Engineering and Mathematics) subject domains including mathematics, programming, logic, and automata theory. The results make advance the state-of-the-art in intelligent tutoring, and can play a significant role in enabling personalized and interactive education in both standard classrooms and MOOCs.

The speaker was Sumit Gulwani, who obtained his PhD in Computer Science from UC-Berkeley in 2005 , for which he was awarded the ACM SIGPLAN Outstanding Doctoral Dissertation Award, a principal researcher at Microsoft Research, and an adjunct faculty in the Computer Science Department at IIT Kanpur. He has expertise in formal methods and automated program analysis and synthesis techniques. As part of his vision to empower masses, he has recently focused on cross-disciplinary areas of automating end-user programming (for systems like spreadsheets, smartphones, and robots), and building intelligent tutoring systems (for various subject domains including programming, math, logic, and automata). Sumit’s programming-by-example work led to the famous Flash Fill feature of Microsoft Excel 2013 that is used by hundreds of millions of people around the world.

In his presentation , “Example-based Learning in Computer Aided Education”, Sumit explained that human learning and communication is often structured around examples, possibly a student trying to understand or master a certain concept through examples or a teacher trying to understand a student’s misconceptions or provide feedback through example behaviours. Example-Based Reasoning is also used in Computer-Aided Programming (CAP) to analyze programs, including to find bugs through test-input-generation techniques and prove correctness through inductive reasoning or random examples and synthesize programs through input/output examples or demonstrations such example-based reasoning techniques developed in the programming languages community can also help automate certain repetitive and structured tasks in education, including problem generation, solution generation, and feedback generation.

The approach is very promising; Example-Based Reasoning Techniques developed in the area of CAP community can help automate several tasks in Education and therefore CAP research can fuel research in Computer-Aided Education (CAE) and vice versa.

In Computer Aided Education (CAE) a number of importnt tasks can be carried out: Problem Generation, Solution Generation and Feedback Generation and they can be applied to Procedural Content (Mathematical or Algorithmic Procedures) or Conceptual Content (Proofs or Constructions).

The motivations for Problem Generation is clear: on one side the need to generate problems “similar to other problems” (while avoiding copyright issues and avoid cheating in “unsynchronized instructions” (ex. MOOCs) and on the other the generation of problems of a “specific difficulty level or usage” (allowing progression and personalized learning paths).

This facilitate the life of teachers; in fact sometimes the generation of a variant of a test with the above mentioned constrains may take as much as the generation of a new one !!!.

He explained the techniques using examples to make students learn arithmetic procedures of increasing degree of difficulty ,using “Traces”, a set of building blocks for procedural learning created by examining the specific set of decisions that the learner needs to make when solving a practice problem with a target procedure.

In this way the representation of the problem and progress is formalized and templates with placeholders are used for the generation.

The above mentioned techniques can also be applied to non-mathematical problems such as “sentence completion with multiple choice answers” ( like the ones that are used in the SAT exam in the States) or natural deduction problems.

Solution Generation is also very important; it is interesting to generate sample solutions to new problems, to generate customized solutions or complete unfinished ones or inform solution characteristics during problem generation. The application to conceptual content in the area of geometric problems using ruler and compass was particularly interesting.

Finally he spoke about feedback generation. Motivation is clear; on one side, it makes teachers more effective since it saves time and provides immediate insight on where the students are struggling; on the other side it can enable a rich interactive experience for students since it allows the generation of hints or may point to simpler problems depending on the kind of mistake to allow them to gain better understanding and facilitate progress and self-confidence.

For procedural content, he explained the use of Programming By Example (PBE) techniques to learn about “buggy procedures in the student mind” and in conceptual content using “inputs for which the solution is not correct” to show the effects.

Very interesting seminar on a very interesting subject indeed !!!

More to follow soon…

I start having some very interesting contacts with whom exchange information and experiences!!

Stay tuned …..




Saturday, November 15th, 2014

I was invited to deliver a speech at the 48th ICA-IT conference that took place in Ottawa from October 28th to October 30th. My speech, whose title was “Towards a New Generation of Digital Public Services” was about my research project at UC Berkeley.

The EC was some years ago member of the ICA organization ( We sent every year a Head of Unit to the meeting but I do not remember what happened to stop the membership.

As stated in their web site

“The International Council for Information Technology in Government Administration (ICA) is a non-profit organisation established to promote the information exchange of knowledge, ideas and experiences between Central Government IT Authorities on all aspects of the initiation, development and implementation of computer-based systems in and by Government.”

The theme of this year conference was Smart Investments for Future Digital Government .

Due to the crisis and the pressure on public finances, governments are facing a very real challenge – how to maintain and improve standards for their citizens and businesses. In the conference, the participants discussed how governments around the world are approaching investments in digital media and technology in the smartest possible way in order to transform the way they deliver services, gain efficiencies, empower citizens and boost economic growth, poised to become successful future digital governments.

The theme above isvery much in line with my research project; that is why I was asked to participate…. and the organization was happy to see the European Commission back to the Conference !!!

The conference was organized in tracks with presentations and discussions, breakout sessions and speeches by guest speakers.

There were around 48 participants with a good representation from Canada (the organizer country) , Israel, Japan, Singapore, Nederland, Estonia, Taiwan, etc.

I participated in panel 2: Future of e-Citizen Services & Engagement together with Juhani Korhonen, (Ministerial Adviser, Public Sector ICT Department, Ministry of Finance, Finland) who presented “Public e-services in Finland” and Yair Schindel (CEO, Digital Israel, Prime Minister’s Office, Israel) who presented “Digital Israel”. My presentation is here ( Ottawa )

I also participated in the breakout session on IT Portfolio Management (ITPM) together with representatives of Canada, Israel, Singapore and Japan. Progress in this area is slow. The silo oriented organization of governments does not make easy the management of the global portfolio and the number of projects is so big that trying to manage the full set becomes easily out of control. The discussions tend to drift towards project management or project inventory in the framework of the budgetary discussions. It looks that Singapore, Japan and Canada have made progress in the area and have managed to involve the senior management in the subject. For me the key success factors for a good portfolio management are: Transparency, Governance and Cost/Benefit. I have said this in the past and I think the discussions have confirmed my view. For those interested in how Japan is managing their portfolio investment they have the IT Dashboard information on the following link . I think is impressive.

I also participated in the breakout session on Cybersecurity together with representatives of Canada, Singapore and Mexico. I presented the EU Cybersecurity Strategy which was very much appreciated. Singapore referred to a defacement of the website of the president at the end of 2013. Since then, they have been strengthening their security posture and creating awareness among both the managers and the officials. There are regular cybersecurity exercises (including penetration testing for government sites) and awareness campaigns. For instance, all officials in government have to participate in compulsory cybersecurity training for end users and pass a test !!!.

There was a Technology Vignettes session, where Estonia, Japan and Israel presented their projects. Particularly impressive were the demos from Estonia focusing on “learning how to write code” for school kids and Israel who presented “Iron Dome, the missile shield”.

For those who remember the “Galaxy War” of President Ronal Reagan and the famous “interception missiles” (called Patriots), the system is alike but fully designed and developed in Israel. The system a use high volume market technology for the IT part and is several orders of magnitude cheaper that the Patriots while being as effective. The most surprising thing for me was that all the software was developed using MS .Net technologies ….. !

We had three guest speakers. The first one was Shantanu Narayen, President and Chief Executive Officer, Adobe Systems Incorporated, who spoke about the company transformation process in Adobe and the “reconversion to the Cloud”. One interesting question from the audience was about Adobe, the Cloud and the NSA…. he referred to his General Counsellor “for the details”… if you see what I mean .. 😉

The other two guest speakers were Grant Westcott, Chief Operating Officer of Shared Services Canada and Eugene Roman, Senior Vice-President for Information Technology and Chief Technology Officer, Canadian Tire Corporation Limited in Canada. In addition to their official titles they are running a small family business for wine production.

They spoke about Lessons from Retail, Banking, Small Business and Telecom for the Future of Government IT

Grant spoke about his experience going to a private bank from public administration and coming back to public administration again as head of Shared Services in the Federal Government of Canada and his IT approach for his private business. He said that “he will never put his financial system in the cloud” but he is using cloud services for the website and office automation.

Eugene , who has a very technical profile, was very proud of his title of “CTO” , there is no “CIO” in his company. He said that he and his team (with “plenty of geeks” who are real genius, in his own words) are transforming the company, concentrating on good IT Architecture and on supporting the front end of business , getting rid of silos, killing legacy systems at fast pace (he said that the week end before they “killed 60 legacy applications” and replaced them with a single one which integrated all the data). His budget has increased steadily over the last years because the Board has seen the results. He was very assertive and said “you cannot manage what you do not know” in reply to a question concerning whether IT would be better managed by “not IT” managers… no comments ;-).

I very much enjoyed the conference and I will recommend that the Commission joins ICA again or ,at least , participates in the 49th conference in Stockholm.

I will speak about the meeting with Intel in another post.

Stay tuned !!!



AirBnB or how the Bay Area companies hire in campus…

Sunday, November 2nd, 2014

I few days ago I participated in a meeting sponsored by UC Berkeley’s EECS (Electrical Engineering and Computer Science) School for the company AirBnB whose title was “AirBnB Info Session”. I wanted to know why a company of this type was organizing a meeting at the University.

For those who do not know the company , Airbnb is a website for people to rent out lodging. It has over 800,000 listings in 34,000 cities and 192 countries with more than 20 million guests registered. Founded in August 2008 and headquartered in San Francisco, California, the company is privately owned and operated by Airbnb, Inc. According to some sources, the current valuation of the company is over 12 B$. AirBnB stands for “Air Bed & Breakfast”.

Users of the site must register and create a personal online profile before using the site. Every property is associated with a host whose profile includes recommendations by other users, reviews by previous guests, as well as a response rating and private messaging system.

Hotels in all countries have complained to public administrations about the way the company operates. This has led to issuing regulations limiting the number of days private owners can rent their houses without registering as a company and asking AirBnB to collect taxes on customer payments.

The presentation was driven by the communication team of the company, called “Team X”. It took place late afternoon after the normal classroom time table and the great majority of participants were undergrad or grad students. The Wozniak meeting room at the Soda Hall was full.

The purpose of the meeting was to present the company, its work environment and its technology platform to the students and collect applications for traineeships and/or employment.

I discovered that Oracle and Pixar were organizing the same kind of meetings in the following days. I understood that there will be a number of undergrads and grads who will receive their diploma in December and now is good time for companies to come and hunt brilliant brains. Computer Science students at Berkeley had a very good reputation and the Silicon Valley is in need of good professionals. The fact of the matter is that most students get a job before the finish their studies or shortly after.

I was particularly interested in the part of the presentation concerning the IT infrastructure and working methods. The presentation was delivered by Lu Cheng, who graduated from UC Berkeley in December 2013 and was a former trainee at the company.

The company is structured in the following teams: Growth, Search, Discovery, Trust & Safety ,Production & Infrastructure, Data Infrastructure, Security, Mobile and Payments.

AirBnB’s IT infrastructure is hosted in the Amazon Web Services Cloud. The company makes extensive use of Open Source Software such as Ruby on Rail, Java, MySQL, Lucene , etc and to my surprise also uses Hadoop, Apache’s Mesos (with Chronos, a replacement for Cron open sourced by AirBnB) and Apache Spark (for high speed cluster computing) . A very good description of the use of Open Source at AirBnB can be found at For technical teams, I recommend the reading of some of the “conversations” in the Tech Talk tab. I think we have a lot to learn from these start-ups !!!.

For the future, the company wants to go from the “Where you want to go” to 3where we suggest you to go” by exploiting all the information they have in their databases.

They also want to exploit the information in reviews and queries by better understanding the text. They are creating a series of attributes using TF-IDF algorithms.

TF–IDF ( which stands for term frequency–inverse document frequency), is a numerical statistic that is intended to reflect how important a word is to a document in a collection or corpus. It is often used as a weighting factor in information retrieval and text mining. The TF–IDF value increases proportionally to the number of times a word appears in the document, but is offset by the frequency of the word in the corpus, which helps to control for the fact that some words are generally more common than others.

Variations of the TF–IDF weighting scheme are often used by search engines as a central tool in scoring and ranking a document’s relevance given a user query. TF–IDF can be successfully used for stop-words filtering in various subject fields including text summarization and classification. One of the simplest ranking functions is computed by summing the TF-IDF for each query term; many more sophisticated ranking functions are variants of this simple model.

They tailor the algorithms to search for locations, user experiences, etc.

At the end of the presentation Lu Cheng made a few interesting comments based on his experience as a new employee of the company: Come and work with us, we guarantee lack of bureaucracy, no or very little 24/7 fire fighting , interesting IT challenges, fun and fast deployment of new versions !!!.

At the end of the session students were queuing to hand their CV to the team or get a token to go on-line and register.

I will post soon on other events I attended in the past days and on my very interesting experience at the 48th ICA-IT conference that took place in Ottawa this week.

Stay tuned !!!