{"id":6199,"date":"2019-11-08T12:00:47","date_gmt":"2019-11-08T12:00:47","guid":{"rendered":"https:\/\/www.dyalog.com\/blog\/?p=6199"},"modified":"2019-11-08T13:19:54","modified_gmt":"2019-11-08T13:19:54","slug":"dyalog-19-videos-week-3","status":"publish","type":"post","link":"https:\/\/www.dyalog.com\/blog\/2019\/11\/dyalog-19-videos-week-3\/","title":{"rendered":"Dyalog &#8217;19 Videos: Week 3"},"content":{"rendered":"<div id=\"attachment_6046\" style=\"width: 310px\" class=\"wp-caption alignright\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-6046\" class=\"size-medium wp-image-6046\" src=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-06-SN-300x200.jpg\" alt=\"Stig Nielsen of SimCorp\" width=\"300\" height=\"200\" srcset=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-06-SN-300x200.jpg 300w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-06-SN-768x512.jpg 768w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-06-SN-1024x683.jpg 1024w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-06-SN-450x300.jpg 450w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-06-SN.jpg 1500w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><p id=\"caption-attachment-6046\" class=\"wp-caption-text\">Stig Nielsen of SimCorp<\/p><\/div>\n<p>In the third week of Dyalog &#8217;19 recordings, Stig Nielsen from SimCorp A\/S talks about recent work to turn a very large body of APL code, originally designed to work well on workstations, into a 3-tier solution. This requires turning everything &#8220;inside out&#8221;, making the application a service that can be called from cloud-based components. Fortunately, the parts of the application that have been implemented in APL have been using a model-driven approach to user interface specification for decades. This makes the task a lot simpler compared to some of the code written in other languages (which needs a complete rewrite). Stig explains both the obvious solution and the one that might actually work.<\/p>\n<div id=\"attachment_6048\" style=\"width: 310px\" class=\"wp-caption alignleft\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-6048\" class=\"size-medium wp-image-6048\" src=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-09-BB-300x200.jpg\" alt=\"Brian Becker shows us the HTMLRenderer\" width=\"300\" height=\"200\" srcset=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-09-BB-300x200.jpg 300w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-09-BB-768x512.jpg 768w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-09-BB-1024x683.jpg 1024w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-09-BB-450x300.jpg 450w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-09-BB.jpg 1500w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><p id=\"caption-attachment-6048\" class=\"wp-caption-text\">Brian Becker shows us the HTMLRenderer<\/p><\/div>\n<p>The other two talks that we are releasing this week are also related to producing portable user interfaces. The HTMLRenderer is a component that is integrated with Dyalog APL under Microsoft Windows, GNU Linux and Apple macOS. It allows APL applications to use HTML\/JavaScript to produce Desktop applications that behave identically on all these platforms \u2013 in much the same way that NodeJS allows. Brian Becker introduces new features of the HTMLRenderer in version 17.1, and a number of tools that allow you to build user interfaces that run not only on the HTMLRenderer, but also as a Web Server.<\/p>\n<div id=\"attachment_6055\" style=\"width: 1546px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-6055\" class=\"size-full wp-image-6055\" src=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-10-Josh.jpg\" alt=\"Josh David demonstrates his Easy GUI\" width=\"1536\" height=\"599\" srcset=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-10-Josh.jpg 1536w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-10-Josh-300x117.jpg 300w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-10-Josh-768x300.jpg 768w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-10-Josh-1024x399.jpg 1024w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190910-10-Josh-500x195.jpg 500w\" sizes=\"auto, (max-width: 1536px) 100vw, 1536px\" \/><p id=\"caption-attachment-6055\" class=\"wp-caption-text\">Josh David demonstrates his Easy GUI<\/p><\/div>\n<p>Josh David follows up with a talk about &#8220;EasyGUI&#8221;, a tool that he built as his final year project at Scranton University. EasyGUI is built upon the HTMLRenderer, and allows applications to have a very simple UI for collecting input from the user and for displaying progress bars, simple reports or graphics. It does this without requiring that the user learn any HTML, JavaScript or CSS \u2013 it is all generated by a set of very simple functions.<\/p>\n<p>Summary of this week&#8217;s videos:<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li><a href=\"https:\/\/dyalog.tv\/Dyalog19\/?v=ZSOjTNp8eYQ\">U07: Web Enabling SimCorp Dimension (Stig Nielson, SImCorp)<\/a><\/li>\n<li><a href=\"https:\/\/dyalog.tv\/Dyalog19\/?v=C66wAhafG0Q\">D10: What&#8217;s New with HTMLRenderer? (Brian Becker)<\/a><\/li>\n<li><a href=\"https:\/\/dyalog.tv\/Dyalog19\/?v=G6p6G1ewokg\">D11: Easy Cross-Platform GUI Creation (Josh David)<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>See you next week for the next three recordings from Dyalog \u201919.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the third week of Dyalog &#8217;19 recordings, Stig Nielsen from SimCorp A\/S talks about recent work to turn a very large body of APL code, originally designed to work well on workstations, into a 3-tier solution. This requires turning &hellip; <a href=\"https:\/\/www.dyalog.com\/blog\/2019\/11\/dyalog-19-videos-week-3\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35,12,36,6],"tags":[],"class_list":["post-6199","post","type-post","status-publish","format-standard","hentry","category-community","category-cto","category-dyalog-19","category-videos"],"_links":{"self":[{"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/posts\/6199","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/comments?post=6199"}],"version-history":[{"count":9,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/posts\/6199\/revisions"}],"predecessor-version":[{"id":6246,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/posts\/6199\/revisions\/6246"}],"wp:attachment":[{"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/media?parent=6199"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/categories?post=6199"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/tags?post=6199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}