机器心脏报告
机器之心编辑部
Twitter能和电脑擦出什么样的火花?大多数人可能只是想在电脑上发微博。然而,有些人不这么认为。热爱计算机进化史和Twitter的多米尼克帕杰克(Dominic Pajak)创造了BBC微型机器人(BBC Micro Bot),它可以模拟一条280个字符的推文来创建一个3秒钟的视频。
开源社区总是鼓励人们共享代码。最近BBC举办了这样一个活动,叫做BBC微机器人。参赛选手需发推特账号@BBC微机器人。账号机器人会收集Twitter代码,然后在类似80年代的BBC微机上运行,输出一个3秒的gif动画,用Basic语言运行。
乍一看,这似乎并不难,但我们会发现,在一条推文的字数限制(280字)下,参赛选手们会尽可能地展示自己惊人的编程技巧。这些参赛选手很多都是大家耳熟能详的大神,比如树莓派创始人Ebon Upton。
该账号的发起者多米尼克帕亚克(Dominic Pajak)表示,@bot导出的帖子在短短几周内就达到了1000万次的访问量,每周大约运行1000个基础程序。
开发者的自动程序可以根据算法画出不同的图案。
厄普顿为BBC微机器人的原CPU即6520(8字节微处理器)写了150字节的数据和机器码。同时模拟器在处理上非常全面。然后,他使用Base64二进制到文本的编码方案,将二进制数据转换成可推文的文本,然后使用具有解码功能的基本小程序封装数据,启动机器码。从那以后,人们一直试图用更复杂的编码方案来封装更多的数据。
BBC Micro Bot 技术详解及演化
bbcbot的创始人Pajak是Arduino的业务发展副总裁。他非常热爱计算机进化史和Twitter,因此创建了这个项目。Pajak说,将计算机和Twitter结合起来的想法非常好。此外,他选择创建微型机器人还有技术上的原因。BBC Basic主要由Sophie Wilson开发,是目前为止最好的Basic实现。它的一些特性使得“收缩”代码成为可能。
多米尼克帕杰克,BBC微型机器人的创始人。
从技术上来说,Bot是用Javascript语言编写的,作为JSbeed模拟的前端。当bot找到一条推文时,它会过滤信息,然后将文本添加到模拟的BBC微型键盘缓冲区中。在30秒的模拟时间后,bot使用ffmpeg(一个完整的、跨平台的音频和视频录制、转换和流处理解决方案)创建一个3秒的视频。需要注意的是,bot最初是运行在Raspberry Pi 4上的,后来迁移到了Amazon Web Service上。
用户有什么样的反馈?Pajak说他收到了很多积极的反馈。人们对第一次通过Twitter使用BBC BASIC感到非常好奇,他们也在其中找到了很多乐趣。拉丁美洲用户甚至创造了许多口号和表情符号。
同时bot程序的复杂度也有了很大的提升,从简单的基础程序到Upton 《生命游戏》的实现,等等。随着程序的门槛越来越高,Pajak也在思考280个字符的代码是否真的能实现这些功能。因此,他转向使用凯蒂安德森(Katie Anderson)Windows 3.1徽标的半开玩笑编码,以及保罗马林(Paul Malin)的经典弹力球演示的再现,通过特殊的编码方法将361个ASCII字符代码压缩成Twitter内容的280个Unicode字符。
凯蒂安德森的Windows 3.1 logo搞笑代码。
保罗马林经典弹力球演示再现。
如果有人想在Apple II和Commodore电脑上创建类似的Bot,Pajak会给出指导和建议。此外,Pajak正在考虑在实体BBC Micro上执行这些推文,并表示已经将BBC Micro与Arduino MKR1010连接起来。
参考链接:https://谱。IEEE。org/tech-talk/computing/software/show-the-world-you-can-write-a-cold-program-inside-one-tweet