这是七月里一个正常的下午。我正在我的小角落里工作,对着摄像机讲话。孩子们在他们的房间里,倒退着。我离开卧室和办公室去拿咖啡。我的配偶在我们的小厨房里,一边揉面团,一边打自己的视频电话。我偷听了一分钟。她不是程序员,但她说的是数据库。该数据库列出了需要食物、厨师、司机和送货的人。
我们已经过了纽约市的新冠肺炎高峰。一切都开始重新开始了,但我们的社区陷入了困境,人们都在挨饿。有一座教堂为食品储藏室开辟了空间,有一位致力于为社区提供食物的餐厅老板,还有许多志愿者。你必须让人们摄入卡路里,所以你需要铝制托盘、发酵粉、煤气、时间表和电话号码。你需要知道谁是清真的还是素食的,谁想要火鸡翅。它是一个复杂的数据模型。它涉及日期字段、文本字段、整数、注释。你需要很多人登录,但你也需要保护私人数据。你会认为他们的计划对话会是关于制造大量大米的。但这只是一个数据点。
这个互助组织已经决定使用Airtable来跟踪一切,这是一个数据库即服务程序。您登录后,那里就是您的数据库。现在有很多这样的工具,“低码”或“无码”的软件,名字像Zapier、Coda或Appy Pie。亚马逊刚刚推出了自己的产品,名为Honeycode。乍一看,这些工具看起来像是与电子表格结合在一起的流程图,但它们是构建小型数据管理应用程序的强大方式。特别是Airtable,它无处不在地管理办公用品,安排约会时间,或者追踪《连线》杂志(Wire)谁在这个专栏上有一席之地。你使用的功能越多,他们收取的费用就越高,而且很快就会增加。我知道是因为我在我的公司看到了发票;我们用它来跟踪项目。(尽管Airtable已经为某些与Covid相关的活动免费提供了Airtable Pro计划,比如互助协会。)。
根据我的经验,“真正的”程序员经常嘲笑这类软件,甚至在只有FileMaker和Microsoft access管理花店或在动物收容所跟踪猫的时候也是如此。不难看出其中的原因。这些工具只是数据库,上面有一个表单制作界面,中间没有代码。它将软件开发的所有复杂性和巨大的盈利能力降低到一组简单的数据类型和表单元素。你不会在其中建立银行系统,也不会在游戏中建立银行系统。它缺乏甲骨文或IBM的DB2或PostgreSQL等大型成熟数据库的功能。因为这是业余的,所以最终结果看起来像是业余的。
但它确实起作用了。我注意到,当软件让非程序员做程序员的事情时,会让程序员感到紧张。突然,他们停止了放纵的微笑,开始谈论什么是“真正的编程”。例如,这就是万维网的历史。继续在Twitter上发布“HTML是真正的编程”,看着程序员出现在你提到的要走的地方,“好像”。除非您用HTML编写网页,否则您创建的数据模型将由浏览器解释。这就是编程的含义。
代码文化可能是唯我独尊的,令人精疲力竭。程序员们为分号的位置和正确的面向对象或函数式的方式而争论不休,无论是其他什么方式,都会让他们感觉自己处于控制之中,更聪明,更经济安全,我总是想反驳:代码本身是不够的。当代码耗尽时,我们会丢弃它;我们会将数据迁移到新的数据库中,这样就不会丢失任何宝贵的数据。代码是我们讲述的关于数据的故事。
但程序员文化往往会让数据贬值。数据库是枯燥、陈旧、古板的技术。管理它是一个缩写作业(DBA,表示数据库管理员)。您可以设置表和列,并添加数据行。编程是行动的关键所在。当然,您使用SWIFT、Java、C#或JavaScript编写的80%的代码都是关于从数据库中提取数据,然后再将数据放回数据库中。但另外20%才是行动的地方,在那里你会做出下一个震撼世界的大事。这真是太棒了!去!。但不要忘记,世界上大多数人都在试图用一个非常杂乱的电子表格来管理他们的小企业。
我一直很喜欢有人向你展示他们用来追踪自己读过的书或珠宝生意的东西的那一刻。业余软件很神奇,因为你可以看到接缝和人们是如何与电脑摔跤的。就像局外人的艺术。今天的科技行业很大程度上是为了让事情看起来专业,也许会说服苹果让你进入App Store,加入到其他应用程序中来。那是一款软件。当人们建造自己的Airtable来满足社区的需求时,这就是一种文化。
与此同时,我的妻子正在成为一名数据建模师。她在Slake上有了新朋友,他们已经把社区分成了几个区域,以便对送货进行分类。他们在Airtable的备注字段中写下备注,人们阅读并回复这些备注。社区就是这样发生的。社区创建数据,数据代表社区。总比什么都不做强。
我们庞大的社交网络也只是数据库。当然,他们拥有所有的数据和数据模型。你永远不会使用Instagram来管理送餐。Instagram用于无休止地上传照片、查看照片和点赞照片。但这里真正的不同之处在于,人们不再喜欢拍照--请注意,这并不是一个人能做的最糟糕的事情--而是确保一位善良的老年女士得到马蹄莲绿色。甚至是个脾气暴躁的老太太。或者甚至是沙拉。这是相同的基本技术交易,只是对话的能量流出社区,而不是流入平台。没有人拥有他们的网络,尽管数据存储在Airtable控制的服务器上。
我被问到很多关于学习编程的问题。当然可以,如果可以的话。这很有趣。但真正的行动,事情的关键,就在数据库里。获取一个小型的免费数据库,如SQLite。导入数百万行数据。使它们可搜索。这是人类已知的最令人欣慰的活动之一,它把一大堆杂乱无章的数据处理成关系数据库所需的僵硬结构。这才是真正的力量。或者玩弄Airtable或它的无代码同类。如果你做的时间足够长,并且和朋友一起工作,你就可以做很棒的事情。您可以构建足够好的数据模型来满足需要帮助的人的需求。这才是真正的节目。
🎙️收听“连线”,这是我们关于未来如何实现的新播客。收看最新剧集,订阅📩时事通讯,跟上我们所有节目的最新动态。
✨使用我们齿轮团队的最佳选择优化您的家庭生活,从机器人吸尘器到价格实惠的床垫再到智能扬声器