Dyalog '14 was held in Eastbourne, England, from 21-25 September 2014

Programme (PDF) Materials Presentation Videos

Dyalog Presentations

D01: Welcome summary | slides (660 KB) | video (20 mins)
Gitte Christensen, Managing Director (CEO)

Dyalog's CEO opens the user meeting.

D02: Technical Road Map summary | slides (1.2 MB) | video (32 mins)
Morten Kromberg, Technical Director (CTO)

As usual, the Road Map provides a high level view of recently completed projects and active development and a declaration of intent with respect to the areas where Dyalog Ltd is likely to invest significant energy in the next few years.

Keywords: performance, parallel computing, development tools for web, desktop and mobile applications.

D03: Gestures and Desktop Scaling in Windows 8 summary | slides (2.5 MB) | related blog | video (29 mins)
John Daintree, Chief Architect

Coming somewhat late to the party, Dyalog Ltd intends to bring support for Microsoft Windows gestures and desktop DPI scaling to version 14.1. John demonstrates how this works and how it can improve your application's usability.

D04: News from the Documentation Department summary | slides (2.3 MB) | video (20 mins)
Fiona Smith, Documentation Manager

The documentation set provided with each release of Dyalog has changed over the last eighteen months and the coming year will see further changes. Fiona discusses her plans for existing and new documents and looks for input from the user community to help determine prioritisation and requirements for printed and electronic documentation…what improvements to the documentation would help you?

Fiona also introduces the new website and social media strategy that were launched in the summer. She summarises the various channels that we're now using to keep everyone up to date and explains how we're using them – follow your favourite(s) to get all the latest news and receive advance notice of scheduled events.

D05: Your New Dyalog Portal summary | video (16 mins)
Jason Rivers, IT Manager

Jason explains how the process of keeping your installation up-to-date will be improved with the soon-to-be-released personalised portal. Following his presentation he'd appreciate your feedback to ensure that what we deliver really does meet your requirements!

D06: The Tuning Pipeline summary | materials (200 KB) | video (50 mins)
Roger Hui & Kimmo Kekäläinen, KJK-Tieto (Finland)

Roger and Kimmo describe some of the interpreter performance improvements that have been implemented over the last year or are being contemplated…a few of these depend on pipeline techniques.

D07: RIDE 1.0 summary
Jonathan Manktelow & Nick Nickolov

The RIDE (Remote Integrated Development Environment) is a graphical front end that can be used to develop and maintain Dyalog applications, no matter what computer the Dyalog engine is running on.

RIDE provides a significant productivity boost over the character-based environment for AIX and Linux users. It still has a way to go before it can compete with the existing Microsoft Windows IDE, but provides new capabilities for debugging APL applications that run as Windows services.

After some false starts and mid-stream course corrections, the first version of the RIDE is ready. After a brief review of the history of the project, Jonathan and Nick will demonstrate RIDE V1.0 for Windows Desktop and discuss the project roadmap.

D08: Parallel Programming with Dyalog v14.0 summary | materials (270 KB) | video (28 mins)
Morten Kromberg, Technical Director (CTO)

The world is full of idle processors – your own computer probably has between one and seven processors that are doing nothing most of the time, even when you hit the "Compute" button in your application. Version 14.0 introduces futures and isolates, language features that are specifically designed to make it easy to run parts of your application on multiple cores and speed up your applications. Morten will take us through some worked examples. Make sure to unclog the air vents on your laptop, it will get quite a lot hotter when you unleash all the available power!

D09: Distractions summary | slides (250 KB) | video (28 mins)
John Scholes

Some techniques for avoiding distractions when you're trying to progra…oh look, a squirrel!

D10: Reducing Interpreter Overhead summary | slides (5 KB) | video (45 mins)
Nick Nickolov

APL primitives perform really well on large rectangular arrays. Unfortunately, not all data is nice and square and you may end up writing intricate functions to process it. That's when interpretative overhead manifests itself.

Find out about our efforts to squeeze performance out from the glue between the squiggles.

D11: The SharpPlot Chart Wizard summary | slides (380 KB) | video (29 mins)
Nicolas Delcros & Gitte Christensen, Managing Director (CEO)

SharpPlot, which is bundled with Dyalog for Microsoft Windows, is a flexible engine for the production of high quality business and technical graphics and can easily be embedded within applications written in Dyalog or other .NET languages. Dyalog version 14.0 introduces the SharpPlot Chart Wizard, a graphical front end that supports the interactive creation of SharpPlot graphics.

D12: MiServer 3.0 summary | slides (850 KB) | video (31 mins)
Brian Becker, APL Tools Group Manager

MiServer is an APL-based web server and a framework of tools to help Dyalog users easily develop applications that can be deployed on the web. MiServer's framework of tools includes interfaces to many controls and "widgets" enabling the user to build robust data-driven interfaces. This session provides a summary of MiServer 3.0's features, recent developments and forthcoming enhancements.

D13: Cryptography 101 summary | slides (305 KB) | video (42 mins)
Bjørn Christensen

Cryptography is not only about restricting information from general availability but also includes knowing that the data we receive has not been tampered with and is from the source we believe it to be from. Using the standard cryptographic dramatis personae but avoiding the standard cryptographic mathematical quagmire, Bjørn takes us through the toolbox that is being developed to enable encryption with Dyalog, introducing possibilities such as symmetric/asymmetric encryption, PKI, certificates and signatures that will be available with the Dyalog Cryptographic Library.

D14: Data Binding Reloaded summary | slides (670 KB) | video (43 mins)
John Daintree, Chief Architect

Dyalog version 14.0 introduced support for data binding to WPF and other compatible data consumers. John builds on last year's presentation and discusses planned and potential extensions coming in version 14.1.

D15: WPF Third Party Controls: Syncfusion and the APLGrid summary | materials (7.4 MB) | video (41 mins)
Morten Kromberg, Technical Director (CTO) & Michael Hughes (MJH Software Services Ltd.)

Syncfusion's Essential Studio for WPF is an Enterprise-class toolkit for WPF applications and contains more than 100 unique controls. Anyone with a licence to use version 14.0 of Dyalog for Microsoft Windows has the right to use these controls for application development. This presentation highlights the suite of controls that complement and enhance those offered natively as part of the .NET framework. The range of controls will be presented and a few selected to show how easy it is to manipulate and use them with APL.

The last control demonstrated is an adaption of Syncfusion's GridControl, which emulates the native Dyalog Grid control. All of the Syncfusion and native WPF controls can be adapted in the same way to make a more APL-friendly set of WPF controls if needed.

D16: Dyalog Component Files and the Dyalog File Server summary | slides (610 KB) | video (36 mins)
Richard Smith, Development Manager

Dyalog Component Files have evolved incrementally over the past few years and this presentation will examine what is new in Dyalog version 14.0 and what is being considered for the future. This presentation includes the Dyalog File Server (DFS) – a significant new development that will be made generally available later in the year to provide secure, remote, scalable, shared access to component and native files with a browser-based administrative console.

D17: Not A Lot of People Know That…Little-known Features of Dyalog summary | slides (325 KB) | video (27 mins)
Andy Shiers, Operations Manager (COO)

Andy will be concentrating on those new(ish) features of Dyalog that are buried deep in the documentation. He hopes that at the end of the session you will have picked up at least one or two hints and tips that will enhance your use of Dyalog; if any of the features he demonstrates suggest other enhancements that we could make, let us know.

back to top

 

Invited Guest and User Presentations

I01: There's DNA everywhere – an opportunity for APL summary | slides (3.0 MB) | video (62 mins)
Charles Brenner, DNA-View (U.S.A.)

Use a gun in a crime and, thanks to recent biochemical advances, you'll likely leave enough DNA to be detected. However, often the gun has also been handled by others and consequently the analysis of DNA mixtures has become increasingly important. The market for good DNA mixture software therefore has led me to recent and rapid progress in my long-delayed venture to convert my forensic DNA interpretation work into the modern world of Dyalog. Many people enjoy the scientific aspects of the story and I enjoy relating how, in my view, this project exemplifies the thesis that APL is a tool of thought. I credit APL with leading me to elegant and, therefore, very fast and flexible solutions to a problem for which the competing solutions are lumbered by complicated statistical and Monte Carlo methods.

Elegance and simplicity lead to several concrete benefits. The first is conceptual development. I made notes in APL as solutions to various aspects of the problem occurred to me last year. These brief APL notes ensured that the ideas really made sense, that they worked together and that I would not forget them. The brevity also revealed a simple but important point that others had overlooked: nesting the computation loops in the right order saves orders of magnitude in computation time. For another, execution speed makes it much easier to see the forest in many ways – testing, developing, designing. Competing programs take hours to find a partial answer, then having worked that hard succumb to a natural tendency to call it a day. The APL "DNA-VIEW Mixture Solution" program does the same in seconds which makes it much easier to think through to the fact that there's a lot more work to do before the result is logically defensible. At the end of 2013 I implemented the Mixture Solution and tested it on examples including a set of 5 proficiency exercises created at the National Institute of Standards and Technology. More than one hundred entrants, including the leading competition, had contributed analyses. One of the competitors (supported by years and millions of dollars of government grants) got four problems right and came close on the fifth, viewing it as a three person mixture although in fact it was four. Mixture Solution alone correctly analysed all five – as a bonus it correctly diagnosed one suspect as a mixed race person. We APLers try to be modest but it's not always easy. Sometimes there's just not much to be modest about!

U02: Pension Microsimulation Model ELSI summary | slides (340 KB) | video (24 mins)
Heikki Tikanmäki, Finnish Centre for Pensions (Finland)

Pension microsimulation model ELSI has been built in the Finnish Centre for Pensions using Dyalog. ELSI models the statutory pension system of Finland. It is used for reform analysis and long-term projections. In a typical simulation run, we have 500,000 individuals and 70 simulation years.

U03: Acre – the APL Code Repository summary | video (43 mins)
Kai Jaeger, APL Consultant (U.K.) & Phil Last, Independent APL Programmer (U.K.)

Acre, the APL Code Repository, is a code management system that covers everything a team of APL developers might need – once you've seen it in action you'll wonder how you managed to survive without it!

From APLers for APLers, Acre was written by Phil on behalf of the Carlisle Group (the company behind FlipDB, a relational database fully written in Dyalog).

Phil and Kai briefly cover the basic concepts behind Acre then demonstrate in a development session how to convert an application into one or more Acre projects, check out the code, make changes, perform backups, watch what others are doing and check in changes after solving conflicts along the way.

Both Acre and Acre Server, a RDBMS that acts as the repository, will be available free-of-charge from the APL Wiki after this presentation.

U04: Let's Talk about Maintainability! summary | slides (website) | video (41 mins)
Gianfranco Alongi, Ericsson AB (Sweden)

The professional programmer strives for maintainable code, well aware that an unmaintained codebase gradually transforms from a well-tended garden to a dark haunted forest that requires animal sacrifice if left to its own devices. Far too many systems have "that" piece of code – the unmaintained marsh, the mess that causes nausea and elevated blood pressure. Some people swear developers have lost parts of their souls in there and you can hear screaming if you work late enough for long enough...

This talk lays bare some of the underlying mechanics of maintainability, presenting a definition of maintainability based on human cognition and sharing a language that might help when talking and reasoning about maintainability. Ultimately we are all responsible for maintaining our codebase; software entropy is real and we pay in blood, sweat and tears if we choose to ignore it.

U05: Taming Statistics with Limited-Domain Operators summary | slides (390 KB) | video (36 mins)
Stephen Mansour, Carlisle Group and University of Scranton (U.S.A.)

Statistical functions are numerous, but they can be categorised into groups. We can reduce the total number of statistical functions by creating a few functions and designing various operators to modify them. For instance, most statistical distributions come in three general forms; the density or probability mass function, the cumulative distribution function and the inverse or critical value function. Limited-Domain Operators are designed to work with specific classes of functions. For example, probability is a dyadic operator whose left operand must be a density or probability mass function and whose right operand must be a relational function. Other limited-domain operators include criticalValue, randomVariable, theoretical, goodnessOfFit, confidenceInterval and hypothesis.

U06: Parsing APL for Static Analysis summary | slides (410 KB) | video (40 mins)
Anders Schack-Nielsen, Simcorp (Denmark)

At SimCorp we rely heavily on static analysis and type checking to maintain our large APL code base. We have recently rewritten our analysis tool from scratch as the old version had some flaws and relied on ad-hoc parsing. The new tool solves the APL parsing problem using a two-step parsing algorithm with a crucial kind inference algorithm in between; this allows the resulting parser to use standard LALR(1) parsing generated from a BNF by a standard Yacc. Furthermore, the BNF grammar is conflict-free, so no precedence or associativity declarations are needed as there are no shift-reduce or reduce-reduce conflicts, making maintenance of the grammar easier.

U07: Co-dfns Report: Performance and Reliability Prototyping summary | slides (1.5 MB) | video (40 mins)
Aaron Hsu, Indiana University (U.S.A.)

The Co-dfns project aims to deliver a high performance compiler for a parallel extension of the dfns language. This report will provide an update on new features and platforms for the compiler, including GPU execution, massively parallel distributed computing and significant sequential performance improvements. It will also cover new frameworks to make APL development safer, faster and easier.

U08: The InRisk Asset Allocation Platform summary | slides (330 KB) | video (44 mins)
Claus Madsen, Fine Analytics (Denmark)

Fine Analytics have taken advantage of the WPF capabilities and Syncfusion controls available with Dyalog 14.0 to build a generic asset allocation platform with special focus on the professional investor. A specially designed .NET class facilitates the separation of the administrative and analytical sections of the application and a flexible calculation engine that allows a user to define type/structure/order is an integral part of the platform. All assumptions can be controlled from the professional-looking user interface; the user interface can also be used to change/import/construct/delete/add/copy/export a portfolio as well as add new assets in asset groups.

Programming keywords: docking manager, treeview, gridcontrol, sfchart, tabcontrol, menu, toolbar, statusbar, groupbar, tileview, databinding, datatemplate, events, triggers, commands, xaml, combobox, listbox, doubleedit, maskededit, fonts, updown, Grid, stackpanel, rangeslider, save, open, explorer and more...

U09: Dyalog at Vallourec summary
Stephan Poßberg, Vallourec (Germany)

Vallourec is a world leader in premium tubular solutions primarily serving energy markets (oil and gas, power generation). Its expertise also extends to the industry sector (including mechanical engineering, automotive and construction). With more than 24,000 employees, sales of €5.6 billion in 2013, integrated manufacturing facilities in more than 20 countries and cutting-edge R&D, Vallourec provides customers with innovative global solutions that respond to the energy challenges of the 21st century.

Dyalog is used to develop planning tools for the tube production in the German and Chinese plants. This presentation will give an overview of the functionalities of the major applications written in Dyalog. These tools are small in sense of users, but very important for the planning department. The rules inside the system cover the experience in tube production for many years. Java is used for new applications at Vallourec Germany but this presentation will show a few examples of why APL can still compete with "modern" programming languages.

About the speaker: Stephan Poßberg is Project and Process Engineer at Vallourec Deutschland GmbH and responsible for APL development (among other things). He holds a PhD in Mechanical Engineering from the University of Paderborn.

U10: How I Won the APL Problem Solving Competition – Introduction summary | slides (670 KB) | video (10 mins)
Brian Becker, APL Tools Group Manager & Walt Syzonenko, Fiserv (U.S.A.)

The sixth annual International APL Programming Contest took place earlier this year. Brian introduces the contest and winners and Walt presents them with their certificates in the Prize Ceremony.

U10: How I Won the APL Problem Solving Competition – Part I summary | slides (260 KB) | video (22 mins)
Emil Bremer Orloff, Aarhus Universitet (Denmark)

Emil Bremer Orloff is the grand prize winner of the sixth annual International APL Programming Contest. Following the prize ceremony, Emil will describe his experiences of Dyalog and tell us how he managed to master enough of it to win the competition.

U10: How I Won the APL Problem Solving Competition – Part II summary | slides (2.1 MB) | video (22 mins)
Iryna Pashenkovska, SimCorp (Ukraine)

Iryna Pashenkovska is the winner of the non-student category in the sixth annual International APL Programming Contest. Following the prize ceremony, Iryna will describe her experiences of Dyalog and tell us how she managed to master enough of it to win the competition.

U11: School Laser System with NFC Registration and Alerts summary | slides (1.8 MB) | video (40 mins)
Chris "Ziggi" Paul, Laser Learning Ltd (U.K.)

We have been working with a new Academy free school, which is located over two main sites and has an external catering hall. The school is for pupils aged from four to eleven years and provides before-school and after-school clubs and mini-bus services.

We designed our school "LASER" system as a complete communication and information system between parents and school staff; recently we have expanded the system to use NFC (near field communication) to provide teachers and staff with up-to-date, relevant information. Each pupil in the school is issued with an NFC wristband and tags for their bags and key items of uniform. Staff use NFC-enabled mobile phones or NFC readers connected to PCs to log a pupil at key points, for example, on and off a bus or at the dining hall. The NFC tags let the lunch staff know what food order the parents have requested each day and can give a full itinerary of clubs and school activities. Alerts of allergies or other critical medical information is displayed when a tag is scanned.

back to top

 

Workshops

SA1: Application Development – Part I summary
Kai Jaeger (APL Consultant)

The purpose of this workshop and SP1 is to demonstrate how to develop an application from scratch by using

  • user commands available from the APL Wiki
  • software modules available from the APL Wiki
  • modern techniques available in Dyalog, such as dfns, references and a bit of object-oriented programming. The vast majority of the features used in this tutorial have been available since Dyalog version 13.0 but a couple of newer features, including version 14.0 features, will be introduced as well
  • third-party tools for integrating CHM help files, comparing APL objects and performing source code management

Participants can expect to gain insight into how an experienced APL application programmer starts developing a typical Microsoft Windows application. This includes discussing how to:

  • structure code
  • pass parameters
  • manage (semi-)global variables
  • integrate test cases from the start (much less expensive than adding them later)
  • document code and the application itself
  • establish a general mechanism for error trapping
  • write maintainable and even automatically-testable GUIs
  • optimise the configuration of Dyalog for efficiency

NOTE: This workshop has two parts, with part II (SP1) building upon part I (SA1); it will be hard – although not impossible – to understand/follow part II without attending part I.

Participants will become acquainted with many time-saving techniques and tricks collected during a 34-year career as an APL application programmer. Examples include how to:

  • put function keys to a good use
  • switch the keyboard layout effortlessly and how avoid doing so accidentally
  • improve drag-and-drop
  • bring back invisible windows
  • avoid common traps
  • ...and many more

This is not an introduction to APL – a reasonable level of APL knowledge is a prerequisite.

Part I covers implementing the overall structure of an application, including how to:

  • establish the folder structure for the application
  • initialise the application:
    • process a configuration (INI) file
    • prevent multiple instances
    • establish error trapping on a general level; create an error workspace (or a DCF if threads are involved), an HTML page with basic error information and send an email
    • establish logging
    • save and restore settings in the Windows Registry
  • implement a graceful shutdown
  • prepare the test framework

SA2: Introduction to MiServer 3.0 summary | slides (2.3 MB)
Brian Becker, APL Tools Group Manager

MiServer is designed to make it easy for the Dyalog user to build and deploy web applications. More than just a web server, MiServer is also a suite of tools to help generate web content and give Dyalog applications a web interface.

With MiServer 3.0, Dyalog Ltd aims to make it possible to develop web applications while requiring minimal knowledge of web technologies like HTML, JavaScript and CSS while retaining the capability to fully exploit those technologies for the user who is familiar with them.

New in MiServer 3.0 are data binding between the client and server and an ever-growing collection of widgets and controls to provide a rich user interface.

You should attend this workshop if:

  • you have a legacy application that you'd like to enhance with a more modern user interface
  • you want to make your application available on multiple platforms, for example, PCs, tablets, phones and phablets
  • you want to learn more about building Dyalog applications on the web

In this workshop you'll learn to install and configure MiServer and build a simple, yet functional, web application.

SA3: Parallel Programming with Futures and Isolates summary | materials (1.2 MB)
Morten Kromberg, Technical Director (CTO) & Dan Baronet

Futures and Isolates are designed to put parallel programming at the fingertips of the APL users, meaning that you can take advantage of all the cores that your computer (or cluster of computers) has available. The workshop will explain how to use the new features to divide and conquer your data in less time than ever before and drive the CPU Monitor on your computer to 100%. Exercises will be provided so that you can immediately practise your new-found skills!

SA4: Introduction to Direct Workspace Access (DWA) summary
John Daintree, Chief Architect

For many years, Dyalog Ltd has provided a ?NA toolkit that allows third-party developers to write external libraries that can be called by APL code. However, these libraries require data to be copied from the workspace into the external library. Direct Workspace Access (DWA) is a C/C++ toolkit that can be used to write external libraries, but with DWA data is not copied out of the workspace. This can result in significant performance gains, but is not without complications. Come to this workshop to experience some of those complications first hand. Not for the faint of heart...

NOTE: The workshop only serves as an introduction to DWA. Dyalog Ltd requires commercial developers to attend a more comprehensive course before using DWA libraries in commercial environments.

SP1: Application Development – Part II summary
Kai Jaeger (APL Consultant)

NOTE: This workshop has two parts, with part II (SP1) building upon part I (SA1); it will be hard – although not impossible – to understand/follow part II without attending part I.

Part II covers how to:

  • implement the workhorse, including the GUI
  • write test cases
  • (time permitting) prepare the application for running as a:
    • user command
    • Microsoft Windows scheduled task
    • Microsoft Windows service

SP2: The Ins and Outs of Data (SQAPL, XML, JSON, Excel, Syncfusion Data Objects, ZIP files, …) summary | materials (13.7 MB)
Brian Becker, APL Tools Group Manager & Dan Baronet

Data is everywhere. While APL stands out for its ability to manipulate data, Dyalog raises it to a new level with its myriad of utilities, tools and techniques to read, write and manipulate data from a disparate set of sources. In this workshop we will examine these tools and learn to read and write data from a variety of sources including (but not limited to):
  • relational databases accessed using SQAPL
  • data from the Web – XML, HTML, FTP, web scraping, JSON
  • different file formats – text files, CSV files, ZIP files, UTF-8 files
  • component files using DFS and native component file functions
  • third-party formats – Microsoft Office, Google Docs

If there are other data sources not listed above that you would like to know more about, please let us know prior to the workshop and we will try to include them.

SP3: WPF and Syncfusion – Part I summary
Morten Kromberg, Technical Director (CTO) & Michael Hughes (MJH Software Services Ltd.)

This workshop will assume no prior knowledge of WPF or Syncfusion. All attendees will be expected to participate at all stages in starting to construct their own version of a simple project.

The project will be a simple Grid Data Entry using WPF native controls, Syncfusion controls and the WPF emulation of the APL/W Grid control. A simple use of the Microsoft Excel engine from Syncfusion will be included. The intention is to use as much of the WPF system as possible. All of the code will be in APL – no XAML or C# will be used.

WPF controls and their properties, methods, events and commands will be used with APL to build the project.

Attendees will be given guidance where necessary, but the intention is to encourage the use of the reference material by the attendees themselves. This is to emphasise the use of the reference material so that the attendees will feel more confident to progress further after the workshop is complete.

The intention is to complete a simple version of the project but it is considered more important to reinforce the principles rather than to complete the project. At the end of this introduction, attendees should feel confident enough to start their own work with WPF and in using the reference material available.

SP4: Exploring Index-Of summary | materials (32 KB)
Roger Hui

The performance of index-of and associates often plays an outsized role in the overall performance of an application. In this workshop we will examine the detailed workings of index-of. Topics covered include:
  • ?
  • ? extension in 14.0
  • ? ? n ~
  • x?x
  • small-range algorithm
  • 8?, inverted table index-of
  • f?
  • (??)x
After the workshop you should be able to answer the following questions:
  • Which cases of x?y are fast?
  • Which cases of x?y can be faster?

TP1: Others and Our Own Legacy summary
Gianfranco Alongi (Ericsson AB)

This workshop is a take-care-of-others'-code-and-leave-your-own-code-for-others kind of workshop, where participants will code vigorously on different codebases and then switch code with others. The idea is to reflect on what code we find maintainable and, conversely, our own behaviour when it comes to maintainability. The way this will work is that we will have a pair of coding stations set up (Dyalog environments) and work in pairs. The same problem will be worked on by all pairs for 20 minutes. Then all pairs rotate, thus ending up on the codebase from someone else. We continue working on the same problem and then we rotate again, and so on. This repeats either until we have done a couple of rotations or the problem is solved on all machines. We then start a detailed discussion by looking at the code on all machines, and discuss maintainability perspectives. All participants are equally valuable; your opinions will help shape future discussions on maintainability and Dyalog.

When you leave this workshop, you should have a new and deepened perspective on maintainability and the global patterns regarding maintainability in the Dyalog community.

TP2: Advanced MiServer 3.0 summary | slides (535 KB)
Brian Becker, APL Tools Group Manager

With MiServer 3.0, Dyalog Ltd aims to make it possible to develop web applications while requiring minimal knowledge of web technologies like HTML, JavaScript and CSS while retaining the capability to fully leverage those technologies for the user who is familiar with them.

New in MiServer 3.0 are data binding between the client and server and an ever-growing collection of widgets and controls to provide a rich user interface.

In this workshop you'll have the opportunity to learn about some advanced features and uses of MiServer 3.0. The agenda for this workshop is flexible, allowing us to cover those topics that are of particular interest to the attendees. Among the topics that can be covered are:

  • deploying in a corporate environment by running MiServer behind IIS or Apache web servers
  • using a relational database with MiServer and SQAPL
  • advanced MiServer configuration – defining templates and virtual resources
  • developing web content for both desktop and mobile browsers
  • data binding and advanced callbacks
  • detailed examination of controls and widgets that are of particular interest
  • extending MiServer 3.0 by adding new controls and widgets

Prior experience with MiServer is recommended but not necessary (for example, attendance of the SA2 workshop).

TP3: WPF and Syncfusion – Part II summary
Morten Kromberg, Technical Director (CTO) & Michael Hughes (MJH Software Services Ltd.)

This workshop follows the same format as the introductory session and builds on the project created in the SP3 workshop. A version of the project at the point reached by the end of the SP3 workshop will be available for people who didn't attend that session on the understanding that the principles up to that point are understood.

If necessary, the introductory project will be completed.

Data binding will be introduced to simplify the project, and a Syncfusion Chart will be added to display the data.

XAML will be introduced and various examples built including a User Control, the XAML of which will be compiled into a simple WPF control made available to use with ?NEW.

The last half hour will be opened up to a discussion of any issues encountered by attendees during the workshop. This could include a discussion on style, design or structure, depending on the interest of the attendees.

At the end of this workshop, attendees should feel confident enough to experiment with the more advanced areas of WPF, Syncfusion, Data Binding, XAML and Visual Studio.

TP4: Version 14.0 Language Features in Practice summary | slides (424 KB)
Dan Baronet

Version 14.0 includes many exciting language extensions, such as the new Rank (?) and Key (?) operators, the function Tally (?), function trains, and an extension of dyadic iota (?) to higher-rank arrays. In this workshop we will examine each new feature in detail and finish each section with exercises for the participants.

NOTE: The extensions to dyadic iota are covered in greater depth in SP4, Roger Hui's "Exploring Index-Of" workshop.

back to top

 

Copyright and Trademarks

UNIX® is a registered trade mark in the United States and other countries, licensed exclusively through X/Open Company Limited.
Windows® is a registered trademark of Microsoft Corporation in the United States and other countries.
Oracle® and Java™ are registered trademarks of Oracle and/or its affiliates.
All other trademarks are the property of their respective owners.

back to top