Adám Brudzewsky: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
(42 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''Adám Gall 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 command]]s.
[[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, Adam. Tribute in [http://danielbaronet.rip/ Daniel Baronet 1956 – 2016].</ref>. Brudzewsky quickly had an impact on the langauge, suggesting the [[Nest]] (⊆), 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]].
== 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></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]].


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]] (⍛).
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>⍤</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>).


Brudzewsky is active on the [[APL Orchard]] as well as Stack Exchange's [[Code golf]] site. Because of his participation in these sites he was involved in Dyalog's hiring of interns Marinus Oosters<ref>[[Dyalog Ltd.]] [https://www.dyalog.com/blog/2016/10/winning-the-apl-programming-contest-bioinformatics-category/ "Winning the APL Programming Contest – Bioinformatics Category"]</ref> and Will Robertson, as well as employee Nathan Rogers<ref>[[Dyalog Ltd.]] [https://www.dyalog.com/blog/2019/08/welcome-nathan-rogers/ "Welcome Nathan Rogers"]</ref>.
== 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 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.<ref>[https://abrudz.github.io/aplnaatot/ APLNAATOT podcast]</ref>


== 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]
* [[APL Germany]] Journal: [https://apl-germany.de/wp-content/uploads/2021/11/APL_Journal_2020_1u2.pdf#page=34 A Notation for APL Arrays]
* [[Vector Journal]]: [https://vector.org.uk/a-vendor-agnostic-logo-for-apl/ A Vendor-Agnostic Logo for APL]
</div>
=== Dyalog user meetings ===
=== Dyalog user meetings ===
 
{{Main|Dyalog user meeting}}
<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 36:
* [[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])
* [[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])
</div>
=== Dyalog webinars ===
{{Main|Dyalog webinar}}
<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/playlist?list=PLA9gQgjzcpKGD4HTiKjA3fe9NStmPMf1Q Language Features of Dyalog version 18.0 in Depth] (5 parts)
* [https://www.youtube.com/playlist?list=PLA9gQgjzcpKHi3OtHPTq7Z2LTzG6ZwMY7 Error Handling] (5 parts)
* [https://dyalog.tv/Webinar/?v=kufxBzDfB4Y Computing Check Digits – Fast]
* [https://dyalog.tv/Webinar/?v=jBxQZemmA1w User-Defined Operators]
</div>
=== Array Cast episodes ===
{{Main|Array Cast}}
<div style="column-width:30em">
* [https://www.arraycast.com/episodes/episode-00-why-i-like-array-languages Why We Like Array Languages]
* [https://www.arraycast.com/episodes/episode-02-challenges-facing-the-array-languages What Challenges Face the Array Languages?]
* [https://www.arraycast.com/episodes/episode-03-what-is-an-array What is an Array?]
* [https://www.arraycast.com/episodes/episode-06-henry-richs-deep-dive-into-j Henry Rich’s Deep Dive into J]
* [https://www.arraycast.com/episodes/episode-07-marshall-lochbaum-and-the-bqn-array-language Marshall Lochbaum and the BQN array language]
* [https://www.arraycast.com/episodes/episode-08-attila-vrabecz-and-the-k-group-of-programming-languages Attila Vrabecz and the k group of programming languages]
* [https://www.arraycast.com/episodes/episode-09-tacit-programming Tacit #3 (and other topics)]
* [https://www.arraycast.com/episodes/episode10-eric-iverson Eric Iverson Eric Iverson]
* [https://www.arraycast.com/episodes/episode13-roger-hui Roger Hui (1953-2021)]
* [https://www.arraycast.com/episodes/episode17-tacit4-the-dyadic-hook Tacit #4 - the dyadic hook]
* [https://www.arraycast.com/episodes/episode18-henry-rich-presents-j903 Henry Rich presents J903]
* [https://www.arraycast.com/episodes/episode22-josh-david APL in industry]
* [https://www.arraycast.com/episodes/episode23-andrew-sengul Andrew Sengul - The April APL Compiler]
* [https://www.arraycast.com/episodes/episode24-apl-seeds-2022 APL Seeds 2022]
* [https://www.arraycast.com/episodes/episode25-vanessa-mchale Vanessa McHale]
* [https://www.arraycast.com/episodes/episode26-stevan-apter Stevan Apter]
* [https://www.arraycast.com/episodes/episode28-rank-and-leading-axis Rank and Leading Axis Theory]
* [https://www.arraycast.com/episodes/episode29-transpose Transpose]
* [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/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>
=== 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]
* 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])


== External links ==
* 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]
* GitHub: [https://github.com/abrudz/ Profile], [https://abrudz.github.io Pages]
== References ==
== References ==


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

Revision as of 15:30, 6 December 2022

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, 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[7].

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.[8]

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

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