前有 Python 之父加盟微软,后有 Adama 语言创始人发力开源,不甘退休的技术开创者们

本文主要是介绍前有 Python 之父加盟微软,后有 Adama 语言创始人发力开源,不甘退休的技术开创者们,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

整理 | 宋彤彤
责编 | 屠敏

12 月 19 日,Adama 编程语言创始人 Jeffrey M. Barber 在 Adama 官网中发布博文,称“我退休了,接下来我可以好好地专注于我的开源项目。”尤记得在去年 11 月,64 岁的 Python 之父也曾表示退休太无聊,决定复出加入微软开发部门;而在 CSDN 组织的 1024 程序员节中,中国第一代程序员求伯君也表示,在自己退休的生活中,没事会写写代码、为自己写写游戏。

Python 想必大家都知道,但 Adama 你听说过嘛?技术大佬 Jeffrey 的退休生活又是怎么样的呢?快跟着小编一起来了解了解吧!

Adama:棋盘游戏编程语言

据悉,Adama-Lang 是由 JVM 驱动的棋盘游戏编程语言。它以数据为中心,可以构建微型持久的游戏服务器,从而从根本上降低棋盘游戏的工程和运营成本,其使命是简化在线棋盘游戏的构建。

它有以下功能,并且还在持续改进:

  • 单一文件基础设施:单一文件负责所有的基础设施,将玩家连接在一起,享受持久和有状态的棋盘游戏体验。它就像一整套 AWS服务(如 EC2、Lambda、S3、SWF、SQS、DynamoDB 和 RDS)都在一个包里;
  • 作为服务的 Dungeon-Master :Adama 允许玩家在各种连接中执行复杂的交易。用户不再操纵和查询数据,数据也不再操纵和监控用户!这改变了建模的游戏,也改变了在棋盘建模游戏中出现的人与人之间复杂互动;
  • “活”的文件:文档不再是坐在那里的“死”字节。相反,它们是有生命的、有表达能力的自动机器,包含用户希望它们拥有的任何意志,是存储和计算的结合产生的一个异常微小的新服务器模型。

那么,这个东西是什么呢?下面这个 GIF 动画来给你答案:

在这里插入图片描述

图片来源:GitHub

从上述可以知道该语言非常整洁。Adama 语言是一种布局状态,然后定义如何在封闭容器内操纵该状态的方法。状态的操纵由人们通过消息完成,文档的计算类似于 Excel。目前,它的整个目的是在线棋盘游戏的娱乐,但这远远超出了棋盘游戏。然而,体现这些价值观还需要时间的长河来考验。

开源 Adama,服务大众

在 Jeffrey 开始准备进入退休时,他既期待又在思考,期待作为退休人员可以将全部的精力投入到该项目,同时又思考,自己真正想要从这个项目中得到什么,成功又意味着什么?他将遇到“是什么”、“为什么”和“怎么做”这有争议的“三位一体”。

Jeffrey 说,如果他开始了一种新的基础设施业务,创建了一种新的 SaaS ,这会很有趣,并且从中会有一些商业方面的事情需要学习,学习也很有趣。但 Jeffrey 写道,“基础设施是一个艰难的工作,因为你必须在腿上拴着一个铁球的情况下平衡推进。这种业务最终会成为一种‘监狱’,而我是偏向于最大限度的自由,”因此他不能 100% 独自完成。

但同时矛盾的是通过某种 SaaS 产品是展示他所现有东西的最佳方式,因此他开始反思为什么运行基础设施如此之难,“从本质上讲,它归结为最大限度地减少停机时间以最大限度地提高可靠性。我可以写很多关于构建可靠服务需要什么的文章,但关键是控制和预见混乱。困难的部分是要向客户坦诚面对现实。诚实可能是任何基础设施服务的工作,现实是难以抗衡的。”

当 Jeffrey 考虑到如果要理智地管理服务,设定合理的期望以及考虑定价计划的话,这是一个复杂又繁琐的过程,因此这个时候开源就能很好的发挥作用。不需要考虑上述的种种,只需要按照自己的想法来构建产品,对于自己打算发布的棋盘游戏产品,一周可以有 10 分钟的停机时间来供自己对故障进行改进。因此,这就是 Jeffrey 构建 Adama 的原因。

Jeffrey 构建 Adama,并用它来构建棋盘游戏。当用户将“micro-vm”与持久存储和套接字相结合时,潜力很大;它将网络,存储和计算三位一体融合在一起。到博文最后 Jeffrey 才开始理解到成功的意义,成功意味着人们会发现与 Adama 合作很有趣,同时它有助于构建在线产品或游戏。自己的产品受人欢迎、喜爱,这成就感不就来了嘛?

Jeffrey 表示 2022 年的使命是推出合理且最小的 SaaS 产品,使人们能够略微拿出小型 Web 资产来解锁他的棋盘游戏“野心”。对于大规模产品的话,他表示蓝图将可用,但需要进一步投资。

Adama 背后的故事

Adama 的名字源于一只特殊的拉曼恰山羊,是 Jeffrey 和他的妻子一直养大的一只羊,很可爱、喜欢拥抱,但后来它因钙结石堵塞尿管而去世。Jeffrey 很喜欢它,因此以它的名字命名了这个项目。

在 Adama 官网中 Jeffrey 写道,Adama 编程语言的诞生是为了将伟大的棋盘游戏带入网络棋盘游戏 Battlestar Galactica,Jeffrey 很喜欢棋盘游戏,但每当他尝试一些棋盘游戏时,他会对自己所使用的的一切技术感到恼怒。

从本质上来说,他任务棋盘游戏代表了技术和产品复杂性的一个极限点,而传统的网络技术在这个点上“崩溃”了。虽然老式的游戏技术效果更好,但这些老式的技术也有自己的问题。因此,Adama 项目的第一个动机是为网络和老式游戏技术能够以一种凝聚力的方式共同工作来架起桥梁。

Jeffrey 已经为该项目工作和修补了一段时间,他称“Adama 是将 20 年的问题和经验整合到单一语言、运行时间和平台三者间的结晶。”同时这种语言的目的是利基和有限,他特别想坦诚表明这一点。他不想过度承诺这种语言将带来任何幻想的宏伟主张,但他坚信他们可以做得更好。

前有 Python 之父退休太无聊,加盟微软聚焦 Python 开发;现有 Adama 变成语言创始人退休后闲不下来,专攻开源项目!这退休生活,好不潇洒!技术大佬们的退休生活可谓是根本停不下来呀!那么你有想过退休之后想做什么吗?

参考链接:
https://github.com/mathgladiator/adama-lang
http://www.adama-lang.org/
http://www.adama-lang.org/blog/retirement-going-all-in
http://www.adama-lang.org/docs/why-the-origin-story

这篇关于前有 Python 之父加盟微软,后有 Adama 语言创始人发力开源,不甘退休的技术开创者们的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/522299

相关文章

Python将博客内容html导出为Markdown格式

《Python将博客内容html导出为Markdown格式》Python将博客内容html导出为Markdown格式,通过博客url地址抓取文章,分析并提取出文章标题和内容,将内容构建成html,再转... 目录一、为什么要搞?二、准备如何搞?三、说搞咱就搞!抓取文章提取内容构建html转存markdown

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Python Websockets库的使用指南

《PythonWebsockets库的使用指南》pythonwebsockets库是一个用于创建WebSocket服务器和客户端的Python库,它提供了一种简单的方式来实现实时通信,支持异步和同步... 目录一、WebSocket 简介二、python 的 websockets 库安装三、完整代码示例1.

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4