Adám Brudzewsky: Difference between revisions
(Created page with "'''Adám Brudzewsky''' is a lifelong APL programmer and the creator of Extended Dyalog APL and APLcart. An employee of Dyalog Ltd., Brudzewsky has made several con...") |
m (→Activities) |
||
(24 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
'''Adám Brudzewsky''' is a lifelong APL programmer and the creator of [[Extended Dyalog APL]] and [[APLcart]]. An employee of [[Dyalog Ltd.]], Brudzewsky has made several contributions to the [[Dyalog APL]] language in addition to his work on components of the interpreter written in APL such as [[user | [[File:Adám Manchester 1986.jpg|thumb|right|During [[APL86]] at age 1]] | ||
'''Adám Gall Brudzewsky''' is a lifelong APL programmer, founder of the [[APL Orchard]], and the creator of [[Extended Dyalog APL]] and [[APLcart]]. An employee of [[Dyalog Ltd.]], Brudzewsky has made several contributions to the [[Dyalog APL]] language in addition to his work on components of the interpreter written in APL such as [[user command]]s. | |||
Brudzewsky was taught APL by his father, and preferred it to mathematical notation as a student. He was hired by [[Dyalog Ltd.]] in May 2015<ref>[[Dyalog Ltd.]] [http://www.dyalog.com/dyalogue-newsletters.htm?nl=26&a=150 "May we introduce Adám Brudzewsky – the newest member of the Dyalog Tools Group"]</ref>, and worked closely with [[Dan Baronet]]<ref>Brudzewsky, | == History == | ||
Brudzewsky was taught APL by his father, Henri Brudzewsky, and preferred it to mathematical notation as a student. He was hired by [[Dyalog Ltd.]] in May 2015<ref>[[Dyalog Ltd.]] DYALOGue Newsletter. [http://www.dyalog.com/dyalogue-newsletters.htm?nl=26&a=150 "May we introduce Adám Brudzewsky – the newest member of the Dyalog Tools Group"]. Summer 2016.</ref>, and worked closely with [[Dan Baronet]]<ref>Brudzewsky, Adám. Tribute in [http://danielbaronet.rip/ Daniel Baronet 1956 – 2016].</ref>. Brudzewsky quickly had an impact on the langauge, suggesting the [[Nest]] (<source lang=apl inline>⊆</source>), or Enclose if Simple, primitive<ref>[[John Scholes|Scholes, John]]. [https://dfns.dyalog.com/n_eis.htm n_eis] from the [[dfns workspace]].</ref> and later working to design Dyalog's [[array notation]]. | |||
Since creating it in 2018, Brudzewsky maintains [[Extended Dyalog APL]], a cover over [[Dyalog APL]] which uses APL models to extend existing primitives and implement new ones. The extensions include both functionality taken from other APLs and new functionality, and are sometimes adopted by Dyalog or [[dzaima/APL]]. The [[Constant operator]] appeared first in Extended Dyalog, as did the versions of [[Atop]] and [[Over]] later implemented by Dyalog (Brudzewsky's changes relative to [[Sharp APL]] were to exchange the glyphs, and remove the concept of [[close composition]]). dzaima/APL has adopted Extended Dyalog's [[Pair]] (⍮), | Since creating it in 2018, Brudzewsky maintains [[Extended Dyalog APL]], a cover over [[Dyalog APL]] which uses APL models to extend existing primitives and implement new ones. The extensions include both functionality taken from other APLs and new functionality, and are sometimes adopted by Dyalog or [[dzaima/APL]]. The [[Constant operator]] appeared first in Extended Dyalog, as did the versions of [[Atop]] (<source lang=apl inline>⍤</source>) and [[Over]] (<source lang=apl inline>⍥</source>) later implemented by Dyalog (Brudzewsky's changes relative to [[Sharp APL]] were to exchange the glyphs, and remove the concept of [[close composition]]). dzaima/APL has adopted Extended Dyalog's [[Pair]] (<source lang=apl inline>⍮</source>), [[Select]] (<source lang=apl inline>⊇</source>), and [[Reverse Compose]] (<source lang=apl inline>⍛</source>). | ||
Brudzewsky is active | == Activities == | ||
Brudzewsky is active Stack Exchange's [[Code golf]] site (as ''Adám''), where he started the [[APL Orchard]] chat room in 2017, and where he often invites and welcomes newcomers, as well assisting existing users with technical and programming help. Through this, he was involved in Dyalog's hiring of interns Marinus Oosters<ref>[[Dyalog Ltd.]] [[Blog]]. [https://www.dyalog.com/blog/2016/10/winning-the-apl-programming-contest-bioinformatics-category/ "Winning the APL Programming Contest – Bioinformatics Category"]. October 11, 2016.</ref>, Will Robertson, as well as employees Nathan Rogers<ref>Dyalog Ltd. Blog. [https://www.dyalog.com/blog/2019/08/welcome-nathan-rogers/ "Welcome Nathan Rogers"]. August 13, 2019.</ref>, Rodrigo Girão Serrão (who started as an intern)<ref>Dyalog Ltd. Blog. [https://www.dyalog.com/blog/2021/03/welcome-rodrigo-girao-serrao/ "Welcome Rodrigo Girão Serrão"]. March 9, 2021.</ref>, and Karta Kooner. | |||
Brudzewsky frequents [[BAA sessions]] and often presents at [[Dyalog webinar]]s and [[Dyalog user meeting|user meetings]], where he usually leads at least one workshop, in addition to leading corporate workshops and presenting APL at schools. He occasionally broadcasts live programming sessions on [[wikipedia:Twitch|Twitch]]. In 2021, Brudzewsky began as a recurring panellist on the [[Array Cast]] podcast, and started the [[APL Campfire]] meetup. | |||
== Publications == | == Publications == | ||
<div style="column-width:30em"> | |||
* [https://www.jsoftware.com/papers/TAOaxioms.htm "TAO Axioms"] (with [[Jay Foad]] and [[Roger Hui]]). | * [https://www.jsoftware.com/papers/TAOaxioms.htm "TAO Axioms"] (with [[Jay Foad]] and [[Roger Hui]]). | ||
* [[APLcart]], a searchable list of answers on "how-to" questions. | |||
* [https://abrudz.github.io/style/ APL style] guide to improve [[readability]] and maintainability. | |||
* [https://dyalog.com/getting-started/tips.htm Tips] for using [[Dyalog APL]]. | |||
* [[Dyalog Ltd.|Dyalog]] [[Blog]]: [https://www.dyalog.com/blog/2018/09/enhanced-debugging-with-function-keys/ Enhanced Debugging with Function Keys] | |||
* Dyalog Blog: [https://www.dyalog.com/blog/2020/12/enhanced-debugging-with-function-keys-evaluate-selection/ Enhanced Debugging with Function Keys – Evaluate selection] | |||
</div> | |||
=== Dyalog user meetings === | === Dyalog user meetings === | ||
<div style="column-width:30em"> | |||
* [[Dyalog '15]] D05: [https://dyalog.tv/Dyalog15/?v=ktsFyXnEspo User Commands Update] (with [[Dan Baronet]]) | * [[Dyalog '15]] D05: [https://dyalog.tv/Dyalog15/?v=ktsFyXnEspo User Commands Update] (with [[Dan Baronet]]) | ||
* Dyalog '15 D10: [https://dyalog.tv/Dyalog15/?v=rB2ztjvqrNs MiServer UI Controls] ([https://www.dyalog.com/uploads/conference/dyalog15/presentations/D10_MiServer_UI_Controls.pdf slides]) (with [[Dan Baronet]]) | * Dyalog '15 D10: [https://dyalog.tv/Dyalog15/?v=rB2ztjvqrNs MiServer UI Controls] ([https://www.dyalog.com/uploads/conference/dyalog15/presentations/D10_MiServer_UI_Controls.pdf slides]) (with [[Dan Baronet]]) | ||
Line 23: | Line 33: | ||
* [[Dyalog '19]] D05: [https://dyalog.tv/Dyalog19/?v=4cEqsBRMdW0 Link] ([https://www.dyalog.com/uploads/conference/dyalog19/presentations/D05_Link.zip materials (zip file)]) (with [[Morten Kromberg]]) | * [[Dyalog '19]] D05: [https://dyalog.tv/Dyalog19/?v=4cEqsBRMdW0 Link] ([https://www.dyalog.com/uploads/conference/dyalog19/presentations/D05_Link.zip materials (zip file)]) (with [[Morten Kromberg]]) | ||
* Dyalog '19 U14: [https://dyalog.tv/Dyalog19/?v=r3owA7tfKE8 APLcart: A Novel Approach to Finding Your Way in APL] ([https://www.dyalog.com/uploads/conference/dyalog19/presentations/U14_APLcart.zip slides (zip file)]) | * Dyalog '19 U14: [https://dyalog.tv/Dyalog19/?v=r3owA7tfKE8 APLcart: A Novel Approach to Finding Your Way in APL] ([https://www.dyalog.com/uploads/conference/dyalog19/presentations/U14_APLcart.zip slides (zip file)]) | ||
* [[Dyalog '20]] D09: [https://dyalog.tv/Dyalog20/?v=5drncJiWOM4 Array Notation RC1] ([https://www.dyalog.com/uploads/conference/dyalog20/presentations/D09_Array_Notation_RC1.pdf slides]) | |||
</div> | |||
=== Dyalog Webinars === | |||
<div style="column-width:30em"> | |||
* [https://dyalog.tv/Webinar/?v=3FjYly2G_QI APL CodeGolf Autumn Tournament] | |||
* [https://dyalog.tv/Webinar/?v=8zcUYjdEPG0 Namespace-Directory Synchronisation] (with [[Morten Kromberg]] ) | |||
* [https://dyalog.tv/Webinar/?v=8cbPLRAcC7M Total Array Ordering] (with [[Jay Foad]]) | |||
* [https://dyalog.tv/Webinar/?v=LWJzRGrOC3k Creating and managing your own User Commands] | |||
* [https://dyalog.tv/Webinar/?v=P7rGW5ZMq9w Jupyter Notebook support for Dyalog APL] | |||
* [https://dyalog.tv/Webinar/?v=6SAsgEvUmkU Progressive set functions] | |||
* [https://www.youtube.com/watch?v=6qygPslrXnM Meet the new APL Wiki] ([[BAA Webinar]]) | |||
* [https://dyalog.tv/Webinar/?v=Hln3zryunsw Language Features of Dyalog version 18.0 in Depth - Part 1] | |||
* [https://dyalog.tv/Webinar/?v=9sSFdQcu2dU Language Features of Dyalog version 18.0 in Depth - Part 2] | |||
* [[aplcart]].info turns 1 ([[BAA Webinar]]) | |||
* [https://dyalog.tv/Webinar/?v=OA-a04-mJ04 Language Features of Dyalog version 18.0 in Depth - Part 3] | |||
* [https://dyalog.tv/Webinar/?v=Me5hhP07ySw Language Features of Dyalog version 18.0 in Depth - Part 4] | |||
* [https://dyalog.tv/Webinar/?v=HU8jebyXKqc Language Features of Dyalog version 18.0 in Depth - Part 5] | |||
* [https://dyalog.tv/Webinar/?v=tDK0AKXXRAk Error Handling - Part 1] | |||
* [https://dyalog.tv/Webinar/?v=PSrXyk5tN6o Error Handling - Part 2] | |||
* [https://dyalog.tv/Webinar/?v=jkD-iQfjo_Q Error Handling - Part 3] | |||
</div> | |||
=== Other talks === | |||
* Live-programming: [https://www.youtube.com/watch?v=CGdvYvcP2Eo Load-on-Demand], [https://www.youtube.com/watch?v=f3-FaVZpeY4 Delayed status message], [https://www.youtube.com/watch?v=EoF4sE4U9oQ A new user command] | |||
* [[BAA Webinar]]: [https://www.youtube.com/watch?v=6qygPslrXnM Meet the new APL Wiki], ''aplcart.info turns 1'' | |||
* [[APL Germany]]: [http://apl-germany.de/wp-content/uploads/2020/11/Brudzewski20201124ArrayNotationRC1.pdf Array Notation RC1] | |||
* [[Array Cast]]: [https://www.arraycast.com/episodes/episode-00-why-i-like-array-languages Why We Like Array Languages], | |||
== References == | == References == | ||
<references /> | <references /> | ||
{{APL community}}{{DEFAULTSORT:Brudzewsky}}[[Category:People]][[Category:Dyalog Ltd. employees]][[Category:Designers]] |
Revision as of 18:13, 12 July 2021
Adám Gall Brudzewsky is a lifelong APL programmer, founder of the APL Orchard, and the creator of Extended Dyalog APL and APLcart. An employee of Dyalog Ltd., Brudzewsky has made several contributions to the Dyalog APL language in addition to his work on components of the interpreter written in APL such as user commands.
History
Brudzewsky was taught APL by his father, Henri Brudzewsky, and preferred it to mathematical notation as a student. He was hired by Dyalog Ltd. in May 2015[1], and worked closely with Dan Baronet[2]. Brudzewsky quickly had an impact on the langauge, suggesting the Nest (⊆
), or Enclose if Simple, primitive[3] and later working to design Dyalog's array notation.
Since creating it in 2018, Brudzewsky maintains Extended Dyalog APL, a cover over Dyalog APL which uses APL models to extend existing primitives and implement new ones. The extensions include both functionality taken from other APLs and new functionality, and are sometimes adopted by Dyalog or dzaima/APL. The Constant operator appeared first in Extended Dyalog, as did the versions of Atop (⍤
) and Over (⍥
) later implemented by Dyalog (Brudzewsky's changes relative to Sharp APL were to exchange the glyphs, and remove the concept of close composition). dzaima/APL has adopted Extended Dyalog's Pair (⍮
), Select (⊇
), and Reverse Compose (⍛
).
Activities
Brudzewsky is active Stack Exchange's Code golf site (as Adám), where he started the APL Orchard chat room in 2017, and where he often invites and welcomes newcomers, as well assisting existing users with technical and programming help. Through this, he was involved in Dyalog's hiring of interns Marinus Oosters[4], Will Robertson, as well as employees Nathan Rogers[5], Rodrigo Girão Serrão (who started as an intern)[6], and Karta Kooner.
Brudzewsky frequents BAA sessions and often presents at Dyalog webinars and user meetings, where he usually leads at least one workshop, in addition to leading corporate workshops and presenting APL at schools. He occasionally broadcasts live programming sessions on Twitch. In 2021, Brudzewsky began as a recurring panellist on the Array Cast podcast, and started the APL Campfire meetup.
Publications
- "TAO Axioms" (with Jay Foad and Roger Hui).
- APLcart, a searchable list of answers on "how-to" questions.
- APL style guide to improve readability and maintainability.
- Tips for using Dyalog APL.
- Dyalog Blog: Enhanced Debugging with Function Keys
- Dyalog Blog: Enhanced Debugging with Function Keys – Evaluate selection
Dyalog user meetings
- Dyalog '15 D05: User Commands Update (with Dan Baronet)
- Dyalog '15 D10: MiServer UI Controls (slides) (with Dan Baronet)
- Dyalog '16 D04: Tools Group Update (with Brian Becker and Dan Baronet)
- Dyalog '17 D11: Literal Notation for Arrays and Namespaces (slides)
- Dyalog '17 D12: Try APL Online (slides) (with Brian Becker)
- Dyalog '17 D16: User Command Developments (slides) (with Michael Baas)
- Dyalog '18 D04: Array Notation Mk III (slides)
- Dyalog '18 D12: Jupyter Notebooks (slides)
- Dyalog '19 D05: Link (materials (zip file)) (with Morten Kromberg)
- Dyalog '19 U14: APLcart: A Novel Approach to Finding Your Way in APL (slides (zip file))
- Dyalog '20 D09: Array Notation RC1 (slides)
Dyalog Webinars
- APL CodeGolf Autumn Tournament
- Namespace-Directory Synchronisation (with Morten Kromberg )
- Total Array Ordering (with Jay Foad)
- Creating and managing your own User Commands
- Jupyter Notebook support for Dyalog APL
- Progressive set functions
- Meet the new APL Wiki (BAA Webinar)
- Language Features of Dyalog version 18.0 in Depth - Part 1
- Language Features of Dyalog version 18.0 in Depth - Part 2
- aplcart.info turns 1 (BAA Webinar)
- Language Features of Dyalog version 18.0 in Depth - Part 3
- Language Features of Dyalog version 18.0 in Depth - Part 4
- Language Features of Dyalog version 18.0 in Depth - Part 5
- Error Handling - Part 1
- Error Handling - Part 2
- Error Handling - Part 3
Other talks
- Live-programming: Load-on-Demand, Delayed status message, A new user command
- BAA Webinar: Meet the new APL Wiki, aplcart.info turns 1
- APL Germany: Array Notation RC1
- Array Cast: Why We Like Array Languages,
References
- ↑ Dyalog Ltd. DYALOGue Newsletter. "May we introduce Adám Brudzewsky – the newest member of the Dyalog Tools Group". Summer 2016.
- ↑ Brudzewsky, Adám. Tribute in Daniel Baronet 1956 – 2016.
- ↑ Scholes, John. n_eis from the dfns workspace.
- ↑ Dyalog Ltd. Blog. "Winning the APL Programming Contest – Bioinformatics Category". October 11, 2016.
- ↑ Dyalog Ltd. Blog. "Welcome Nathan Rogers". August 13, 2019.
- ↑ Dyalog Ltd. Blog. "Welcome Rodrigo Girão Serrão". March 9, 2021.