大家好!欢迎来到 Functional February,这是 #12in23 挑战的第一个主题月。
如果我说到 #12in23 时,你完全不知道我在讲什么,我会在简介里放几个视频链接,给你更多信息。不过说到底,我们想挑战你在 2023 年尝试 12 种不同的语言。每个月都有不同的主题,而这个月是函数式编程语言。
先说这个月的目标吧!就是让你尝试函数式语言;如果你以前用过,那就再深入一点!去探索函数式语言独有的那些理念,比如模式匹配、不可变性、高阶函数,学会用函数式的方式思考,最重要的是玩得开心。
这个月我们选了 9 种语言作为重点,并建议你从 Elixir、F# 或 Clojure 中的一种开始,它们几个在 Exercism 上都有很棒的学习模式!尤其是 Elixir,它是全站最详尽、打磨最精细的学习路径之一,要学的概念多达 57 个。另外 6 种语言是 Erlang、Haskell、OCaml、Scala、StandardML,以及 Exercism 上最新的语言 Gleam!
对很多人来说,最重要的问题大概是怎么拿到 Functional February 徽章!其实很简单!从我刚才提到的语言里选一种,在里面解答并发布 5 道练习即可!除了“Hello World”,你可以任意挑选练习来解答,不过我们特别推荐你在这个月里找时间试试其中 5 道。它们是 Hamming(探索高阶函数)、Collatz-conjecture(练习递归)、Robot Simulator(玩转不可变性),以及 Yacht 和 Protein Translation(模式匹配和高阶函数)。这些在 #12in23 页面上都有列出,你之后可以去看看!
那么除了做练习,我们还为你们准备了什么?首先,我们安排了几场重磅访谈。排在首位的是跟 Elixir 的创造者 Jose Valim 的对话。我会和 Jose 聊聊,探讨他为什么选择把 Elixir 做成函数式语言,也会向他提出你的问题。其次,我会和 Louis Pilfold 聊聊,他是最新兴的函数式语言之一 Gleam 的创造者。Louis 还会直播自己在 Exercism 上解答一些 Gleam 练习,这样你就能看到他是怎么思考函数式编程的!
我们真的希望这是一个大家一起学习的月份,因此也想鼓励社区分享自己的函数式编程经验。整个月里,我们会和各个重点语言的贡献者一起,直播各种讲解和解题环节。所有直播都会在我们全新的 Twitch 频道上进行,地址是 https://twitch.tv/exercismlive,请订阅它,这样就不会错过任何内容。我们还会在网站主页的仪表盘上加一个小部件,你可以随时留意。
在 Exercism 论坛上,除了关于函数式语言的日常交流和遇到卡壳时互相帮助之外,我们还会开一个官方帖子,把学习和理解函数式编程语言的最佳资源都汇总起来。如果你是经验丰富的函数式编程开发者,欢迎过来告诉我们,你在学习时哪些资源帮到了你!
我们还会有一些专属的 Functional February 周边,只在这个月发售!所以请留意我们的发售时间。
在正式进入和 Erik 的对话之前,先快速说 2 件小事。
第一,申请指导的人还不够多,如果你还没申请过,那你可就亏大了。当你用一种自己不太熟悉的语言解答练习时,指导应该是你第一时间想到的东西!让比你更有经验的人给你个性化的指点和小建议,是提升自己的绝佳方式,而且在 Exercism 上完全免费,还特别有趣。所以这个月,当你解完一道题、又不确定自己有没有写出函数式编程高手的水准,就去申请指导吧!
第二,Exercism 要靠捐赠才能生存下去。我们是一家非营利组织,想尽可能帮助更多的人,为此我们保持免费,让任何处境的人都能学习。如果你很幸运,现在经济状况不错,能匀出一点钱来支持我们的工作,请考虑捐款。说实话,如果大家不支持我们,我们就无法生存。如果你负担不起,那完全没关系,这正是我们免费的原因,这样我们才能帮助那些买不起 Exercism 这类产品的人!最后,如果你已经捐过款,谢谢你,这对我们意义重大。
观看完整视频,看与 Erik 的访谈。
感谢观看!