Adám Brudzewsky: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
m (Text replacement - "<source" to "<syntaxhighlight")
 
(14 intermediate revisions by the same user not shown)
Line 3: Line 3:


== History ==
== 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]] (<syntaxhighlight 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]].
Brudzewsky was taught APL by his father, Henri Brudzewsky, who, in the words of then Dyalog CEO [[Gitte Christensen]], "was a really good APLer".<ref>Christensen, Gitte. [https://www.youtube.com/watch?v=pL8OQIR5cB4&t=186s Welcome to Dyalog'15], [[Dyalog '15]]. 2015-09-07.</ref> As a student, Brudzewsky preferred APL to mathematical notation. 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]] (<syntaxhighlight lang=apl inline>⊆</syntaxhighlight>), 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]].
[[File:Adam speaking.jpg|thumb|left|Speaking at an internal Dyalog meeting.]]
In 2018, Brudzewsky created [[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]] (<syntaxhighlight lang=apl inline>⍤</syntaxhighlight>) and [[Over]] (<syntaxhighlight lang=apl inline>⍥</syntaxhighlight>) 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]] (<syntaxhighlight lang=apl inline>⍮</syntaxhighlight>), [[Select]] (<syntaxhighlight lang=apl inline>⊇</syntaxhighlight>), and [[Reverse Compose]] (<syntaxhighlight lang=apl inline>⍛</syntaxhighlight>).


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]] (<syntaxhighlight lang=apl inline></source>) and [[Over]] (<syntaxhighlight 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]] (<syntaxhighlight lang=apl inline>⍮</source>), [[Select]] (<syntaxhighlight lang=apl inline>⊇</source>), and [[Reverse Compose]] (<syntaxhighlight lang=apl inline>⍛</source>).
[[Dyalog APL 18.0]] made it impossible for Extended Dyalog to maintain [[backwards compatibility]] due to extending monadic <syntaxhighlight lang=apl inline></syntaxhighlight> to be [[Unique Mask]] rather than its proposed comparison with the [[type]] for all [[comparison function]]s. Therefore, Brudewsky retired Extended Dyalog in favour of his new [[Dyalog APL Vision]], changing some proposals. Notable are the [[system function]]s for creating, updating, and unpacking [[namespace]]s, because this part is being actively considered for inclusion in Dyalog APL.


== Activities ==
== 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<ref>Dyalog Ltd. Blog. [https://www.dyalog.com/blog/2021/08/welcome-karta-kooner/ "Welcome Karta Kooner"]. August 23, 2021.</ref>.
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, and Kamila Szewczyk, 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<ref>Dyalog Ltd. Blog. [https://www.dyalog.com/blog/2021/08/welcome-karta-kooner/ "Welcome Karta Kooner"]. August 23, 2021.</ref>.


Brudzewsky frequents [[BAA sessions]] and often presents at [[Dyalog webinar]]s, [[Dyalog user meeting|user meetings]], and [[:Category:user groups|user group]] meetings, where he usually leads at least one workshop, in addition to leading corporate workshops and presenting APL at schools and other venues. He occasionally broadcasts live programming sessions on [[wikipedia:Twitch|Twitch]], later to publish them on [[wikipedia:YouTube|YouTube]] together with his other APL videos. He ran the [[APL Cultivation]]s from 2017 to 2020, began as a recurring panellist on the [[Array Cast]] podcast and started the [[APL Campfire]] meetup in 2021, and launched the [[APL Quest]] chat and video series in 2022, with the goal of completing 100 consecutive weekly episodes.
Brudzewsky frequents [[BAA sessions]] and often presents at [[Dyalog webinar]]s, [[Dyalog user meeting|user meetings]], and [[:Category:user groups|user group]] meetings, where he usually leads at least one workshop, in addition to leading corporate workshops and presenting APL at schools and other venues. He occasionally broadcasts live programming sessions on [[wikipedia:Twitch|Twitch]], later to publish them on [[wikipedia:YouTube|YouTube]] together with his other APL videos. He ran the [[APL Cultivation]]s from 2017 to 2020, began as a recurring panellist on the [[Array Cast]] podcast and started the [[APL Campfire]] meetup in 2021. In 2022, he launched the [[APL Quest]] chat and video series in 2022 and the APL Notation As A Tool Of Thought podcast, later renamed to the [[APL Show]].<ref>[https://abrudz.github.io/aplnaatot/ APLNAATOT podcast]</ref>


== Publications ==
== Publications ==
Line 37: Line 39:
*  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])
* [[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])
* [[Dyalog '21]] D06: Highlights of Dyalog v18.2 ([https://www.dyalog.com/uploads/conference/dyalog21/presentations/D06_Highlights_of_Dyalog_v18.2.pdf slides])
* [[Dyalog '21]] D06: [https://dyalog.tv/Dyalog21/?v=etEhV2ZDuyA Highlights of Dyalog v18.2] ([https://www.dyalog.com/uploads/conference/dyalog21/presentations/D06_Highlights_of_Dyalog_v18.2.pdf slides])
* [[Dyalog '22]] D15: [https://dyalog.tv/Dyalog22/?v=itGiA56NSl8 Filling the Core Language Gaps] ([https://www.dyalog.com/uploads/conference/dyalog22/presentations/D15_Filling_the_Core_Language_Gaps.pdf slides])
* [[Dyalog '23]] D04: [https://dyalog.tv/Dyalog23/?v=eya2FlHinHE Setting and Getting Variable Values] ([https://www.dyalog.com/uploads/conference/dyalog23/materials/D04_SettingAndGettingVariableValues.pdf slides])
* [[Dyalog '23]] D13: [https://dyalog.tv/Dyalog23/?v=BXUpQUS9pQE Giving Key a Vocabulary] ([https://www.dyalog.com/uploads/conference/dyalog23/materials/D13_GivingKeyAVocabulary.pdf slides])
</div>
</div>


=== Dyalog webinars ===
=== Dyalog webinars ===
{{Main|Dyalog webinar}}
{{Main|Dyalog webinar}}
<div style="column-width:30em">
* [https://dyalog.tv/Webinar/?v=3FjYly2G_QI APL CodeGolf Autumn Tournament]
* [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=8zcUYjdEPG0 Namespace-Directory Synchronisation] (with [[Morten Kromberg]])
Line 52: Line 58:
* [https://dyalog.tv/Webinar/?v=kufxBzDfB4Y Computing Check Digits – Fast]
* [https://dyalog.tv/Webinar/?v=kufxBzDfB4Y Computing Check Digits – Fast]
* [https://dyalog.tv/Webinar/?v=jBxQZemmA1w User-Defined Operators]
* [https://dyalog.tv/Webinar/?v=jBxQZemmA1w User-Defined Operators]
</div>


=== Array Cast episodes ===
=== Array Cast episodes ===
Line 76: Line 83:
* [https://www.arraycast.com/episodes/episode30-our-first-year Looking Back at Our First Year]
* [https://www.arraycast.com/episodes/episode30-our-first-year Looking Back at Our First Year]
* [https://www.arraycast.com/episodes/episode31-jeremy-howard Jeremy Howard - Data Scientist]
* [https://www.arraycast.com/episodes/episode31-jeremy-howard Jeremy Howard - Data Scientist]
* [https://www.arraycast.com/episodes/episode32-control-structures Control Structures in the Array Languages]
* [https://www.arraycast.com/episodes/episode35-lib-gibson Lib Gibson - IP Sharp’s ‘Zookeeper’]
* [https://www.arraycast.com/episodes/episode36-what-makes-an-array-language What Makes a Language an Array Programming Language?]
* [https://www.arraycast.com/episodes/episode39-iverson-or-array-language Iversonian language or Array language?]
* [https://www.arraycast.com/episodes/episode40-michal-wallace Michal Wallace, k programmer and J video producer]
* [https://www.arraycast.com/episodes/episode41-john-earnest John Earnest and Versions of k]
</div>
</div>


Line 82: Line 95:
* [[BAA Webinar]]: [https://www.youtube.com/watch?v=6qygPslrXnM Meet the new APL Wiki], ''aplcart.info turns 1''
* [[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]
* [[APL Germany]]: [http://apl-germany.de/wp-content/uploads/2020/11/Brudzewski20201124ArrayNotationRC1.pdf Array Notation RC1]
* Informational videos: [https://www.youtube.com/watch?v=AHoiROI15BA Parsing content from text files using Dyalog APL's <syntaxhighlight lang=apl inline>⎕CSV</source>] ([https://github.com/abrudz/parsing companion code repository])
* Informational videos: [https://www.youtube.com/watch?v=AHoiROI15BA Parsing content from text files using Dyalog APL's <syntaxhighlight lang=apl inline>⎕CSV</syntaxhighlight>] ([https://github.com/abrudz/parsing companion code repository])
* [[FinnAPL]]: [https://www.dyalog.com/uploads/files/presentations/FinnAPL_APLAN_and_Vision.pdf Array Notation and Language Vision]


== External links ==
== External links ==
* Video channels: [https://www.youtube.com/user/abrudz YouTube], [https://www.twitch.tv/adambrudz/ Twitch]
* Video channels: [https://www.youtube.com/user/abrudz YouTube], [https://www.twitch.tv/adambrudz/ Twitch]
* Social media profiles: [https://www.linkedin.com/in/adám-brudzewsky-0322b373 LinkedIn], [https://twitter.com/a_brudz Twitter]
* Social media profiles: [https://www.linkedin.com/in/adám-brudzewsky-0322b373 LinkedIn], [https://twitter.com/a_brudz Twitter], [https://vmst.io/@abrudz Mastodon], [https://stackexchange.com/users/3114363/ad%C3%A1m Stack Exchange], [https://discord.com/users/651823008347979793 Discord]
* GitHub: [https://github.com/abrudz/ Profile], [https://abrudz.github.io Pages]
* GitHub: [https://github.com/abrudz/ Profile], [https://abrudz.github.io Pages]
== References ==
== References ==


<references />
<references />
{{APL community}}{{DEFAULTSORT:Brudzewsky}}[[Category:People]][[Category:Dyalog Ltd. employees]][[Category:Designers]]
{{APL community}}{{DEFAULTSORT:Brudzewsky}}[[Category:People]][[Category:Dyalog Ltd. employees]][[Category:Designers]]

Latest revision as of 09:42, 26 January 2024

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 commands.

History

Brudzewsky was taught APL by his father, Henri Brudzewsky, who, in the words of then Dyalog CEO Gitte Christensen, "was a really good APLer".[1] As a student, Brudzewsky preferred APL to mathematical notation. He was hired by Dyalog Ltd. in May 2015[2], and worked closely with Dan Baronet[3]. Brudzewsky quickly had an impact on the langauge, suggesting the Nest (), or Enclose if Simple, primitive[4] and later working to design Dyalog's array notation.

Speaking at an internal Dyalog meeting.

In 2018, Brudzewsky created 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 ().

Dyalog APL 18.0 made it impossible for Extended Dyalog to maintain backwards compatibility due to extending monadic to be Unique Mask rather than its proposed comparison with the type for all comparison functions. Therefore, Brudewsky retired Extended Dyalog in favour of his new Dyalog APL Vision, changing some proposals. Notable are the system functions for creating, updating, and unpacking namespaces, because this part is being actively considered for inclusion in Dyalog APL.

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[5], Will Robertson, and Kamila Szewczyk, as well as employees Nathan Rogers[6], Rodrigo Girão Serrão (who started as an intern)[7], and Karta Kooner[8].

Brudzewsky frequents BAA sessions and often presents at Dyalog webinars, user meetings, and user group meetings, where he usually leads at least one workshop, in addition to leading corporate workshops and presenting APL at schools and other venues. He occasionally broadcasts live programming sessions on Twitch, later to publish them on YouTube together with his other APL videos. He ran the APL Cultivations from 2017 to 2020, began as a recurring panellist on the Array Cast podcast and started the APL Campfire meetup in 2021. In 2022, he launched the APL Quest chat and video series in 2022 and the APL Notation As A Tool Of Thought podcast, later renamed to the APL Show.[9]

Publications

Dyalog user meetings

Main article: Dyalog user meeting

Dyalog webinars

Main article: Dyalog webinar

Array Cast episodes

Main article: Array Cast

Other talks

External links

References

  1. Christensen, Gitte. Welcome to Dyalog'15, Dyalog '15. 2015-09-07.
  2. Dyalog Ltd. DYALOGue Newsletter. "May we introduce Adám Brudzewsky – the newest member of the Dyalog Tools Group". Summer 2016.
  3. Brudzewsky, Adám. Tribute in Daniel Baronet 1956 – 2016.
  4. Scholes, John. n_eis from the dfns workspace.
  5. Dyalog Ltd. Blog. "Winning the APL Programming Contest – Bioinformatics Category". October 11, 2016.
  6. Dyalog Ltd. Blog. "Welcome Nathan Rogers". August 13, 2019.
  7. Dyalog Ltd. Blog. "Welcome Rodrigo Girão Serrão". March 9, 2021.
  8. Dyalog Ltd. Blog. "Welcome Karta Kooner". August 23, 2021.
  9. APLNAATOT podcast
APL community [edit]
Conferences and activities Advent of CodeAPL CampfireAPL CultivationAPL Meetup (Portuguese) ∙ APL ShowAPL Problem Solving CompetitionAPL ChallengeAPL QuestAPL SeedsArray CastBAA sessionsCode golfDyalog user meetingsDyalog webinarsIverson Award
Chat rooms and forums APL FarmAPL Orchard
User groups APL et J (France) ∙ APL Germany (terminology) ∙ APL ∊ BCN (Spain) ∙ BAA (UK) ∙ FinnAPL (Finland) ∙ SIGAPL (USA) ∙ Tokyo APL/J/K Meetup (Japan)
People Phil AbramsBrian BeckerBob BerneckyLarry BreedCharles BrennerJim BrownAdám BrudzewskyGitte ChristensenPeter DonnellyJohn EarnestAdin FalkoffGarth FosterLib GibsonAaron HsuRoger HuiKen IversonMorten KrombergDick LathwellMarshall LochbaumEugene McDonnellRoger MooreTrenchard MoreAlan PerlisHenry RichAl RoseJohn ScholesIan SharpBob SmithGeoff StreeterArthur Whitney
Other APL Quote QuadAPL WikiBlogsBooksCase studiesFamous APL usersHumourJobsMerchandisePapersPodcastsTryAPLTry It OnlineVideo channels