Monday at Dyalog ‘15

There is so much going on at Dyalog ’15. The general theme of the day was set with Morten Kromberg’s Technical Road Map. Dyalog is constantly refining and expanding APL’s capabilities and ease of use, quickly adding functionality to tie into new technologies, and adapting to emerging trends. Here are some highlights from the day:

ride-blogRIDE: A New Way to Interact with the Interpreter

Nick Nickolov gave a humorous and informative presentation of his big project – a brand new interface to Dyalog APL, separating the front-end from the actual interpreter. Built on established modern technologies, RIDE (Remote IDE) is inherently cross-platform, ensuring a quality front-end to Dyalog for all the systems that the future may bring. Nick inspired several old-IDE-using members of the audience to try out this new and upcoming interface.

nicegraphCore Performance

While 14.1 did not bring many new language features like 14.0 did, there were many less visible changes. As the ratio between blue and red areas in the above chart shows, significant work has been done on performance: Jay Foad and Roger Hui enlightened us all with a peek behind the curtain on the challenges and pathways to improving Dyalog’s performance.

IMG_5034Cross-platform User Interfaces

Morten Kromberg introduced us to MiServer, Dyalog’s new tool for creating UI that is rendered in a browser, and is therefore inherently platform-independent. MiServer is already very usable – in fact a number of brand new applications are under development. However, MiServer continues to be under active development – new features are on the way.

IMG_5040Cross-platform File Functions

Richard surprised everyone (including Morten) with a working prototype of version 15.0 that included a whole suite of long awaited system functions that will make it easier to interact with the native file system in the same way on all platforms without code changes. Functions include (but were not limited to) listing of files, creation of folders, and automatic parsing of path-filename-extension strings.

How to Save an Italian School with APL

Blog post from presentation by Roberto Minervini with 4 of his students; Arianna Greco, Samuele Luigi Di Gioia, Kariman Admed and Silvana Maria Belén Colman Cabrera – all from Liceo Classico S.M. Legnani, a Public Secondary School.

By Vibeke Ulmann #Dyalog15

Getting the message of the power of Dyalog APL to young people, is one we have worked with for many years, as we need to recruit the next generation of APL programmers into our community.

Today was exceptional for the Dyalog User Meeting here in Sicily, as we had the pleasure of welcoming 19 young students  – all around the age of 14 – who have been taught Dyalog APL for the purpose of using it for Maths.

Roberto Minervini has a background as an APL programmer, having worked 5 years in APL Italiana. Last year he left the Company to follow his dream of becoming a teacher.

He persuaded the school to let him teach a Dyalog APL class, and a team of 25 young people enrolled in extra classes after School in order to learn the language.

The presentation they gave today was enourmously fun with video clips with music, dancing and general ‘chaos’, which –  from my point of view –  seems to be the best way to have fun whilst learning a new (programming) language.

Roberto and his Students

From Roberto’s point of view, he told us that we are faced with some serious issues when it comes to teaching our young people. There is increased competition between Schools to produce good results (i.e. higher number of students with high marks), there is a rigid curriculum which has to be followed, and it does not allow pupils to choose subjects they are interested in, or think would be fun. ‘Bad results’ is punished by ‘Bad marks’, which further de-motivates students. Bascially, today’s school and teaching is using methods that were developed for the age of Industrialiam. Whilst politicians have tried to introduce the concept of La Buona Scuola (The Good School) in Italy,  there is confusion between what the goals and intentions of the Poitics behind the concept is, and how the teachers experience their everyday work.

Having used APL for many years, Roberto knows that APL is a ‘Tool of Thought’, and he decided that it would be better to try an engage the students in solving mathematic problems than teach them straight forward ‘maths by the book’.

Taking their offset in  Kakuro – a Maths game which is the equivalent of a Cross Word puzzle, and an article written by Dan Baronet, as well as using other ‘guru’s from the world of teaching, writing and illustration/drawing-  the class set to work.

According to Arianna, “we have no computer classes at school, so this was a completely new experience for all of us. We met once a week at lunch to discuss our progress and we quickly realised that with APL you can codify logic. I have personally found the language of the future!”

Kariman said, ” We started the project without any money at all – and although it was a bit strange to learn the APL squiggles – once you grasped them, it was fun.”

Roberto stated that in today’s society, failure is considered to be bad – and is hence punished with bad grades. The result is that pupils give up, and do not learn enough mathematics. On the other hand, we also know that in Technology and Science, failure is considered a good thing, because it forces you to learn new things and find new ways. So by implementing this approach instead, we were effectively “building the road as we walked on it.”.

According to Roberto, “We also took our offset in the book  “A Matematician’s Lament” – by Paul Lockhard – which supports intuitive learning of math. Maths is really an ‘art’ – but today is taught in a boring way, with fixed exersizes  and no real problems to solve.”

Samuel said that, “How to solve a problem involves deduction versus Induction.”

The process the class used for learning to solve problems using Dyalog APL was this:

If you cannot solve a problem – then there is an easier problem you can solve, so go find it!

However, Roberto warned, when teaching APL do NOT start with symbols. Learning APL is a Journey and once you have started this journey and apply it to learning Mathematics, maths almost becomes Utopia.  The trick is to start with Key Words and key symbols, then practise and continue to practise, until it become ‘natural’.

Asked about what is the coolest thing about APL – the answer was a unanimous: It can do things by ilself!

Asked about what the biggest challenge had been, the answer was ” To learn the language and try to use it at home. You learn APL by using it, not by describing it!”

The students had also found that problems presented in the Programming contest 2015 had been helpful.

I can only encourage our blog readers to check back on the Dyalog website when the Videos from Dyalog’15 are posted and enjoy the presentation from Roberto and his pupils.

The Importance of Communication, Transparency and Practice

Blog post from Presentation by Gianfranco Alongi from Ericsson AB

By Vibeke Ulmann #Dyalog15

Those of you who have been following my blog posts from Dyalog User meetings the past couple of years, will know that I am a always alert when we take a departure from talking about ‘coding’ or ‘technology solutions’, and ‘target achievement in production environments’. And this is usually what Gianfranco is challenging us with in his presentations. Today was no exception.

In his pursuit of mastery for teams of programmers Gianfranco had been looking into the softer issues this year. Performing mob-programming where all team members share the same computer while solving problems issues with communication becomes very important. Gianfranco pointed us to Non-Violent communcation (also known as Giraff language) as a way to improve communication within a team and not least applied to one self as a mean to self insight.

Moving to Transparancy-  on a personal level this is about being more open as a person not hiding your emotions and your true self at Work.

Gianfranco used the Johari Window as illustration – inserted below:

The Johari Model

By allowing yourself to be more open about your personal life, feelings etc. team members can forge a higher degree of trust among each other – almost to the degree that they can feel like a ‘family’. The tool is an awareness tool to promote more openness between co-workers.

On a corporate level transparency is about making everyone aware of the company’s strategy and direction, enough to let it guide you in all of the decision you have to make on the company’s behalf every day.

Lastly: Practise makes perfect. How do we get better at the personal level. Gianfranco mentioned the now widely established fact that contrary to all business school knowledge money does not incentivise knowledge workers. On the contrary, trying to reward or using stick/carrot methods to achieve better performance with this Group of people slow them down. What does motivate “us” is Purpose, Mastery and Autonomy.

So to achive mastery in a team the most important things to be aware of is to make people feel part of something bigger  – and preferably beautiful –  and to allow them the freedom to nurse their mastery by practising alongside their work.

The most discussion afterwards was caused by a fact mentioned by Gianfranco – that intelligence tests and aptitude tests fail to reveal who will later become experts!
Only the amount of pratice determines whether you become really good at coding.