{"id":6242,"date":"2019-11-15T12:00:13","date_gmt":"2019-11-15T12:00:13","guid":{"rendered":"https:\/\/www.dyalog.com\/blog\/?p=6242"},"modified":"2019-11-15T14:06:15","modified_gmt":"2019-11-15T14:06:15","slug":"dyalog-19-videos-week-4","status":"publish","type":"post","link":"https:\/\/www.dyalog.com\/blog\/2019\/11\/dyalog-19-videos-week-4\/","title":{"rendered":"Dyalog &#8217;19 Videos: Week 4"},"content":{"rendered":"<p>Welcome to week 4 of the Dyalog &#8217;19 recordings! This week, Tommy Johannesen of Jersie Data tells us about an interesting application that he has written in Dyalog APL. In the Copenhagen area, many school children are &#8220;fed with APL&#8221; in the sense that Tommy&#8217;s APL system connects the parents of ten thousand hungry children to about 60 vendors of school lunches. The service currently handles about 100,000 users with a system that runs under IIS and uses Dyalog as an ASP.NET implementation language. Each year 10,000 children leave after 10 years at school and another 10,000 enter grade 0; over the 30 years that Tommy has been in business, he has served more than a quarter of a million users.<\/p>\n<div id=\"attachment_6256\" style=\"width: 210px\" class=\"wp-caption alignleft\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-6256\" class=\"size-medium wp-image-6256\" src=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/11\/20190909-05-TJ-300x300.jpg\" alt=\"Tommy Johannesen of Jersie Data\" width=\"200\" height=\"200\" srcset=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/11\/20190909-05-TJ-300x300.jpg 300w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/11\/20190909-05-TJ-150x150.jpg 150w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/11\/20190909-05-TJ-768x768.jpg 768w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/11\/20190909-05-TJ.jpg 1000w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><p id=\"caption-attachment-6256\" class=\"wp-caption-text\">Tommy Johannesen of Jersie Data ApS<\/p><\/div>\n<p>Peak time is Sunday evening, when parents and children log on to order meals for the coming week. Tommy tells the story of how he has been struggling with a memory leak that caused some user requests to fail when loads grew large; obviously not a good thing! Since upgrading to Dyalog version 17.0 he has been chasing this problem together with John Daintree \u2013 it was not completely solved at the time Tommy was at Dyalog &#8217;19, but I am happy to be able to report that we believe it finally bit the dust in October!<\/p>\n<p>The other two recordings in week 4 are centred around the topic of source code management. First, Ad\u00e1m Brudzewsky and I introduce the tool called &#8220;Link&#8221; which is included with version 17.1. Link creates a link (hence the name) between each function (or other &#8220;code object&#8221;) in an active workspace and a corresponding text file. The namespace structure of the workspace corresponds to the directory structure that the workspace is linked to. Changes made to either side of such a link \u2013 to code in the workspace or to files outside it \u2013 are immediately reflected on the other side.<\/p>\n<div id=\"attachment_6121\" style=\"width: 310px\" class=\"wp-caption alignright\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-6121\" class=\"size-medium wp-image-6121\" src=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190909-08-PM-300x200.jpg\" alt=\"Paul Mansour of the Carlisle Group\" width=\"300\" height=\"200\" srcset=\"https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190909-08-PM-300x200.jpg 300w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190909-08-PM-768x512.jpg 768w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190909-08-PM-1024x683.jpg 1024w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190909-08-PM-450x300.jpg 450w, https:\/\/www.dyalog.com\/blog\/wp-content\/uploads\/2019\/09\/20190909-08-PM.jpg 1500w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><p id=\"caption-attachment-6121\" class=\"wp-caption-text\">Paul Mansour demonstrates Git integration with AcreTools<\/p><\/div>\n<p>The intention of a tool like Link is to enable the use of source code management systems like SVN or Git to manage source in the form of text files. These source code management systems allow the implementation of many different &#8220;workflows&#8221;, defined by parameters like how branches are used, how frequently merges are done, and how conflicts are handled. Git allows a lot of freedom, which many small teams (and that includes one-man-bands ?) don&#8217;t need. Immediately following the talk on Link, Paul Mansour took the stage at Dyalog &#8217;19 to talk about tools that he has developed to implement a simple but effective Git workflow, suitable for many APL projects.<\/p>\n<p>Summary of this week\u2019s videos:<\/p>\n<ul>\n<li><a href=\"https:\/\/dyalog.tv\/Dyalog19\/?v=4gA5SGypGUI\" target=\"_blank\" rel=\"noopener\">U01: Feeding Children with APL (Tommy Johannesen, Jersie Data ApS)<\/a><\/li>\n<li><a href=\"https:\/\/dyalog.tv\/Dyalog19\/?v=4cEqsBRMdW0\" target=\"_blank\" rel=\"noopener\">D05: Link (Morten Kromberg and Ad\u00e1m Brudzewsky)<\/a><\/li>\n<li><a href=\"https:\/\/dyalog.tv\/Dyalog19\/?v=VuAYeDYmh6g\" target=\"_blank\" rel=\"noopener\">U02: A Git Workflow for Dyalog APL (Paul Mansour, The Carlisle Group)<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Welcome to week 4 of the Dyalog &#8217;19 recordings! This week, Tommy Johannesen of Jersie Data tells us about an interesting application that he has written in Dyalog APL. In the Copenhagen area, many school children are &#8220;fed with APL&#8221; &hellip; <a href=\"https:\/\/www.dyalog.com\/blog\/2019\/11\/dyalog-19-videos-week-4\/\">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-6242","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\/6242","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=6242"}],"version-history":[{"count":11,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/posts\/6242\/revisions"}],"predecessor-version":[{"id":6276,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/posts\/6242\/revisions\/6276"}],"wp:attachment":[{"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/media?parent=6242"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/categories?post=6242"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dyalog.com\/blog\/wp-json\/wp\/v2\/tags?post=6242"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}