2019年6月

想要找个开源的私人助理么?Mycroft 可以让你运行一个开源的服务,从而更好地控制你的数据。

在 Fedora 上安装 Mycroft

Mycroft 目前不存在于官方软件包集合中,但它可以轻松地从源码安装。第一步是从 Mycroft 的 GitHub 仓库下载源码。

$ git clone https://github.com/MycroftAI/mycroft-core.git

Mycroft 是一个 Python 应用,它提供了一个脚本负责在安装 Mycroft 及其依赖项之前创建虚拟环境。

$ cd mycroft-core
$ ./dev_setup.sh

安装脚本会提示用户以帮助他完成安装过程。建议运行稳定版本并获取自动更新。

当提示在本地安装 Mimic 文字转语音引擎时,请回答否。因为根据安装描述,这可能需要很长时间,并且 Mimic 有适合 Fedora 的 rpm 包,因此可以使用 dnf 进行安装。

$ sudo dnf install mimic

开始使用 Mycroft

安装完成后,可以使用以下脚本启动 Mycroft 服务。

$ ./start-mycroft.sh all

要开始使用 Mycroft,需要注册运行服务的设备。因此需要一个帐户,可以在 https://home.mycroft.ai/ 中创建。

创建帐户后,可以在 https://account.mycroft.ai/devices 中添加新设备。添加新设备需要配对码,你的设备会在所有服务启动后告诉你。

现在可以使用该设备了。

使用 Mycroft

Mycroft 提供了一组默认启用的技能,它们或者可以从市场下载。刚开始,你可以简单地向 Mycroft 问好,或天气如何。

Hey Mycroft, how are you ?

Hey Mycroft, what's the weather like ?

如果你对它是如何工作的感兴趣,start-mycroft.sh 脚本提供了一个命令行选项,它能让你使用命令行交互。它也会显示用于调试的有用信息。

Mycroft 总在学习新技能,并且有很多方法给 Mycroft 社区做贡献

Przemyslaw Marczynski 摄影,发布于 Unsplash


via: https://fedoramagazine.org/personal-assistant-with-mycroft-and-fedora/

作者:Clément Verna 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

简单介绍一下编程方式的历史演变。

在计算机诞生不久的早期年代,硬件非常昂贵,而程序员比较廉价。这些廉价程序员甚至都没有“程序员”这个头衔,并且常常是由数学家或者电气工程师来充当这个角色的。早期的计算机被用来快速解决复杂的数学问题,所以数学家天然就适合“编程”工作。

什么是程序?

首先来看一点背景知识。计算机自己是做不了任何事情的,它们的任何行为都需要程序来引导。你可以把程序看成是非常精确的菜谱,这种菜谱读取一个输入,然后生成对应的输出。菜谱里的各个步骤由操作数据的指令构成。听上去有点儿复杂,不过你或许知道下面这个语句是什么意思:

1 + 2 = 3

其中的加号是“指令”,而数字 1 和 2 是数据。数学上的等号意味着等式两边的部分是“等价”的,不过在大部分编程语言中对变量使用等号是“赋值”的意思。如果计算机执行上面这个语句,它会把这个加法的结果(也就是“3”)储存在内存中的某个地方。

计算机知道如何使用数字进行数学运算,以及如何在内存结构中移动数据。在这里就不对内存进行展开了,你只需要知道内存一般分为两大类:“速度快/空间小”和“速度慢/空间大”。CPU 寄存器的读写速度非常快,但是空间非常小,相当于一个速记便签。主存储器通常有很大的空间,但是读写速度就比寄存器差远了。在程序运行的时候,CPU 不断将它所需要用到的数据从主存储器挪动到寄存器,然后再把结果放回到主存储器。

汇编器

当时的计算机很贵,而人力比较便宜。程序员需要耗费很多时间把手写的数学表达式翻译成计算机可以执行的指令。最初的计算机只有非常糟糕的用户界面,有些甚至只有前面板上的拨动开关。这些开关就代表一个内存“单元”里的一个个 “0” 和 “1”。程序员需要配置一个内存单元,选择好储存位置,然后把这个单元提交到内存里。这是一个既耗时又容易出错的过程。

 title=

程序员Betty Jean Jennings (左) 和 Fran Bilas (右) 在操作 ENIAC 的主控制面板

后来有一名 电气工程师 认为自己的时间很宝贵,就写了一个程序,能够把人们可以读懂的“菜谱”一样的输入转换成计算机可以读懂的版本。这就是最初的“汇编器”,在当时引起了不小的争议。这些昂贵机器的主人不希望把计算资源浪费在人们已经能做的任务上(虽然又慢又容易出错)。不过随着时间的推移,人们逐渐发现使用汇编器在速度和准确性上都胜于人工编写机器语言,并且计算机完成的“实际工作量”增加了。

尽管汇编器相比在机器面板上切换比特的状态已经是很大的进步了,这种编程方式仍然非常专业。上面加法的例子在汇编语言中看起来差不多是这样的:

01 MOV R0, 1
02 MOV R1, 2
03 ADD R0, R1, R2
04 MOV 64, R0
05 STO R2, R0

每一行都是一个计算机指令,前面是一个指令的简写,后面是指令所操作的数据。这个小小的程序首先会将数值 1 “移动”到寄存器 R0,然后把 2 移动到寄存器 R1。03 行把 R0 和 R1 两个寄存器里的数值相加,然后将结果储存在 R2 寄存器里。最后,04 行和 05 行决定结果应该被放在主存储器里的什么位置(在这里是地址 64)。管理内存中存储数据的位置是编程过程中最耗时也最容易出错的部分之一。

编译器

汇编器已经比手写计算机指令要好太多了,不过早期的程序员还是渴望能够按照他们所习惯的方式,像书写数学公式一样地去写程序。这种需求推动了高级编译语言的发展,其中有一些已经成为历史,另一些如今还在使用。比如 ALGO 就已经成为历史了,但是像 FortranC) 这样的语言仍然在不断解决实际问题。

 title=

ALGO 和 Fortran 编程语言的谱系树

这些“高级”语言使得程序员可以用更简单的方式编写程序。在 C 语言中,我们的加法程序就变成了这样:

int x;
x = 1 + 2;

第一个语句描述了该程序将要使用的一块内存。在这个例子中,这块内存应该占一个整数的大小,名字是 x。第二个语句是加法,虽然是倒着写的。一个 C 语言的程序员会说这是 “X 被赋值为 1 加 2 的结果”。需要注意的是,程序员并不需要决定在内存的什么位置储存 x,这个任务交给编译器了。

这种被称为“编译器”的新程序可以把用高级语言写的程序转换成汇编语言,再使用汇编器把汇编语言转换成机器可读的程序。这种程序组合常常被称为“工具链”,因为一个程序的输出就直接成为另一个程序的输入。

编译语言相比汇编语言的优势体现在从一台计算机迁移到不同型号或者品牌的另一台计算机上的时候。在计算机的早期岁月里,包括 IBM、DEC、德州仪器、UNIVAC 以及惠普在内的很多公司都在制造除了大量不同类型的计算机硬件。这些计算机除了都需要连接电源之外就没有太多共同点了。它们在内存和 CPU 架构上的差异相当大,当时经常需要人们花费数年来将一台计算机的程序翻译成另一台计算机的程序。

有了高级语言,我们只需要把编译器工具链迁移到新的平台就行了。只要有可用的编译器,高级语言写的程序最多只需要经过小幅修改就可以在新的计算机上被重新编译。高级语言的编译是一个真正的革命性成果。

 title=

1983 发布的 IBM PC XT 是硬件价格下降的早期例子。

程序员们的生活得到了很好的改善。相比之下,通过高级语言表达他们想要解决的问题让事情变得轻松很多。由于半导体技术的进步以及集成芯片的发明,计算机硬件的价格急剧下降。计算机的速度越来越快,能力也越来越强,并且还便宜了很多。从某个时间点往后(也许是 80 年代末期吧),事情发生了反转,程序员变得比他们所使用的硬件更值钱了。

解释器

随着时间的推移,一种新的编程方式兴起了。一种被称为“解释器”的特殊程序可以直接读取一个程序将其转换成计算机指令以立即执行。和编译器差不多,解释器读取程序并将它转换成一个中间形态。但和编译器不同的是,解释器直接执行程序的这个中间形态。解释型语言在每一次执行的时候都要经历这个过程;而编译程序只需要编译一次,之后计算机每次只需要执行编译好的机器指令就可以了。

顺便说一句,这个特性就是导致人们感觉解释型程序运行得比较慢的原因。不过现代计算机的性能出奇地强大,以至于大多数人无法区分编译型程序和解释型程序。

解释型程序(有时也被成为“脚本”)甚至更容易被移植到不同的硬件平台上。因为脚本并不包含任何机器特有的指令,同一个版本的程序可以不经过任何修改就直接在很多不同的计算机上运行。不过当然了,解释器必须得先移植到新的机器上才行。

一个很流行的解释型语言是 perl。用 perl 完整地表达我们的加法问题会是这样的:

$x = 1 + 2

虽然这个程序看起来和 C 语言的版本差不多,运行上也没有太大区别,但却缺少了初始化变量的语句。其实还有一些其它的区别(超出这篇文章的范围了),但你应该已经注意到,我们写计算机程序的方式已经和数学家用纸笔手写数学表达式非常接近了。

虚拟机

最新潮的编程方式要数虚拟机(经常简称 VM)了。虚拟机分为两大类:系统虚拟机和进程虚拟机。这两种虚拟机都提供一种对“真实的”计算硬件的不同级别的抽象,不过它们的作用域不同。系统虚拟机是一个提供物理硬件的替代品的软件,而进程虚拟机则被设计用来以一种“系统独立”的方式执行程序。所以在这个例子里,进程虚拟机(往后我所说的虚拟机都是指这个类型)的作用域和解释器的比较类似,因为也是先将程序编译成一个中间形态,然后虚拟机再执行这个中间形态。

虚拟机和解释器的主要区别在于,虚拟机创造了一个虚拟的 CPU,以及一套虚拟的指令集。有了这层抽象,我们就可以编写前端工具来把不同语言的程序编译成虚拟机可以接受的程序了。也许最流行也最知名的虚拟机就是 Java 虚拟机(JVM)了。JVM 最初在 1990 年代只支持 Java 语言,但是如今却可以运行 许多 流行的编程语言,包括 Scala、Jython、JRuby、Clojure,以及 Kotlin 等等。还有其它一些不太常见的例子,在这里就不说了。我也是最近才知道,我最喜欢的语言 Python 并不是一个解释型语言,而是一个 运行在虚拟机上的语言

虚拟机仍然在延续这样一个历史趋势:让程序员在使用特定领域的编程语言解决问题的时候,所需要的对特定计算平台的了解变得越来越少了。

就是这样了

希望你喜欢这篇简单介绍软件背后运行原理的短文。有什么其它话题是你想让我接下来讨论的吗?在评论里告诉我吧。


via: https://opensource.com/article/19/5/primer-assemblers-compilers-interpreters

作者:Erik O'Shaughnessy 选题:lujun9972 译者:chen-ni 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Linux 提供了几个可以让你通过终端发送电子邮件的命令,下面来展示一些有趣的方法。

Molnia/iStock

Linux 可以用多种方式通过命令行发送电子邮件。有一些方法十分简单,有一些相对会复杂一些,不过仍旧提供了很多有用的特性。选择哪一种方式取决于你想要什么 —— 向同事快速发送消息,还是向一批人群发带有附件的更复杂的信息。接下来看一看几种可行方案:

mail

发送一条简单消息最便捷的 Linux 命令是 mail。假设你需要提醒老板你今天得早点走,你可以使用这样的一条命令:

$ echo "Reminder: Leaving at 4 PM today" | mail -s "early departure" myboss

另一种方式是从一个文件中提取出你想要发送的文本信息:

$ mail -s "Reminder:Leaving early" myboss < reason4leaving

在以上两种情况中,你都可以通过 -s 来为邮件添加标题。

sendmail

使用 sendmail 命令可以发送一封不包含标题的快信。(用目标收件人替换 recip):

$ echo "leaving now" | sendmail recip

你可以用这条命令发送一条只有标题,没有内容的信息:

$ echo "Subject: leaving now" | sendmail recip

你也可以用 sendmail 发送一条包含一条标题行的完整信息。不过使用这个方法时,你的标题行会被添加到要发送的文件中,如下例所示:

Subject: Requested lyrics
I would just like to say that, in my opinion, longer hair and other flamboyant
affectations of appearance are nothing more ...

你也可以发送这样的文件(lyric 文件包含标题和正文):

$ sendmail recip < lyrics

sendmain 的输出也可以很冗长。如果你感到好奇并希望查看发送系统和接收系统之间的交互,请添加 -v (verbose)选项。

$ sendmail -v [email protected] < lyrics

mutt

mutt 是通过命令行发送邮件的一个很好的工具,在使用前你需要安装它。mutt 的一个很方便的优势就是它允许你在邮件中添加附件。

使用 mutt 发送一条快速信息:

$ echo "Please check last night's backups" | mutt -s "backup check" recip

从文件中获取内容:

$ mutt -s "Agenda" recip < agenda

使用 -a 选项在 mutt 中添加附件。你甚至可以添加不止一个附件 —— 如下一条命令所示:

$ mutt -s "Agenda" recip -a agenda -a speakers < msg

在以上的命令中,msg 文件包含了邮件中的正文。如果你没有其他补充的内容,你可以这样来代替之前的命令:

$ echo "" | mutt -s "Agenda" recip -a agenda -a speakers

mutt 另一个有用的功能是可以添加抄送(-c)和密送(-b)。

$ mutt -s "Minutes from last meeting" [email protected] -c myboss < mins

telnet

如果你想深入了解发送电子邮件的细节,你可以使用 telnet 来进行电子邮件交互操作。但正如所说的那样,你需要“学习术语”。邮件服务器期望一系列命令,其中包括自我介绍(EHLO 命令)、提供发件人(MAIL FROM 命令)、指定收件人(RCPT TO 命令),然后添加消息(DATA)并以 . 结束消息。并不是所有的电子邮件服务器都会响应这些请求。此方法通常仅用于故障排除。

$ telnet emailsite.org 25
Trying 192.168.0.12...
Connected to emailsite.
Escape character is '^]'.
220 localhost ESMTP Sendmail 8.15.2/8.15.2/Debian-12; Wed, 12 Jun 2019 16:32:13 -0400; (No UCE/UBE) logging access from: mysite(OK)-mysite [192.168.0.12]
EHLO mysite.org                <== introduce yourself
250-localhost Hello mysite [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5
250-DELIVERBY
250 HELP
MAIL FROM: [email protected]       <== 指定发件人
250 2.1.0 [email protected]... Sender ok
RCPT TO: recip             <== 指定收件人
250 2.1.5 recip... Recipient ok
DATA                   <== 邮件内容开始
354 Enter mail, end with "." on a line by itself
This is a test message. Please deliver it for me.
.                  <== 内容结束
250 2.0.0 x5CKWDds029287 Message accepted for delivery
quit                   <== 结束交互

向多个收件人发送电子邮件

如果你希望通过 Linux 命令行向一大组收件人发送电子邮件,你可以使用一个循环来帮助你完成任务,如下面应用在 mutt 中的例子:

$ for recip in `cat recips`
do
    mutt -s "Minutes from May meeting" $recip < May_minutes
done

总结

有很多方法可以从 Linux 命令行发送电子邮件。有些工具提供了相当多的选项。


via: https://www.networkworld.com/article/3402027/how-to-send-email-from-the-linux-command-line.html

作者:Sandra Henry-Stocker 选题:lujun9972 译者:Modrisco 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

通过将这些资源加入你自己的私人学习网络以拓展 Python 知识。

我使用和教授 Python 已有很长时间了,但我总是乐于增加我对这门实用语言的知识。这就是为什么我一直试着拓展我的 Python 个人学习网络 personal learning network (PLN),这是一个描述用于分享信息的非正式的互惠型网络的概念。

教育学家 Kelly ParedesSean Tibor 最近在他们的播客 Teaching Python 上谈到了如何搭建 Python PLN。我在克里夫兰的 PyCon 2019 遇到他们之后就订阅了这个频道(并把它们加入到我的 Python PLN 当中)。这个播客激发了我对 Python PLN 中的人的思考,包括那些我最近在 PyCon 遇到的人们。

我会分享一些我找到 PLN 成员的地方;可能它们也可以变成你的 Python PLN 的一部分。

Young Coders 导师

Python 基金会的活动协调者 Betsy Waliszewski 是我的 Python PLN 中的一员。当我们在 PyCon2019 见到时,因为我是个老师,她推荐我看看为十二岁及以上的孩子打造的 Young Coders 工作室。在那我遇到了正在负责这个计划的 Katie Cunningham,它会教参与者如何搭建和配置树莓派并使用 Python 项目。年轻学生也会收到两本书 Jason Briggs 的 《Python for Kids》 和 Craig Richardson 的 《Learn to Program with Minecraft》。我一直寻找提升我教学水平的新方式,因此我在该会议上的 NoStarch Press 展台迅速拿到了两本 Minecraft 书。Katie 是一名优秀的教师,也是一名多产作家,拥有一个充满 Python 培训视频的 YouTube 精彩频道。

我把 Kattie 与我在 Young Coders 工作室碰到的另外两个人加入我的 PLN:Nat DunnSean Valentine。像 Katie 一样,他们自愿花时间把 Python 介绍给青年程序员们。Nat 是 Webucator 的总裁,这是一家 IT 培训公司,多年来一直是 Python 软件基金会赞助商,并赞助了 PyCon 2018 教育峰会。在将 Python 教他 13 岁的儿子和 14 岁的侄子之后,他决定在 Young Coders 任教。Sean 是 Hidden Genius 项目 的战略计划总监,这是一个针对黑人男性青年的技术及领导力打造的教导项目。Sean 说许多 Hidden Genius 参与者“用 Python 打造项目因此我们认为 [Young Coders] 是一个很好的合作机会”。了解 Hidden Genius 项目激发了我更深层次地思考编程的未来以及其改变生活的威力。

Open Spaces 聚会

我发现 PyCon 的 Open Spaces —— 这是一个一小时左右的自组织的即兴聚会 —— 跟正式的项目活动一样有用。我的最爱之一是 Circuit Playground Express 设备,它是我们会议主题包的一部分。我很喜欢这个设备,并且 Open Space 提供了学习它的一条大道。组织者提供了工作表和一个 Github 仓库,其中包含有我们成功所需要的所有工具,也提供了一个上手实践的机会以及探索这个独特硬件的方向。

这次会面激起了了我对学习 Circuit Playground Express 更新信息的兴趣,因此在 PyCon 之后, 我在 Twitter 上接触到了在会议上就该设备编程发表主旨演讲的 Nina Zakharenko。Nina 自从去年秋天我在 All Things Open 上听过她的演讲后就在我的 Python PLN 里了。我最近报名参加了她的 Python 基础课程以加深我的学习。Nina 推荐我将 Kattni Rembor 加入我的 Python PLN。他的示例代码正帮助我学习用 CircuitPython 编程。

我的 PLN 中的其他资源

我在 PyCon 2019 也遇见了 Opensource.com 社区版主 Moshe Zadka,并和他来了场长谈。他分享了几个新的 Python 资源,包括 如何像电脑科学家一样思考。社区版主 Seth Kenlon 是我的 PLN 中的另一名成员;他发表了许多优秀的 Python 文章,我也推荐你关注他。

我的 Python PLN 每天都在持续扩大。除了我已经提到的,我同样推荐你关注 Al SweigartEric Matthes 以及 Adafruit他们分享的优质内容。我也推荐这本书《制作:由 Adafruit Circuit Playground Express 开始》和《Podcast.\_\_init\_\_》,这是一个关于 Python 社区的播客。这两个都是我从我的 PLN 中了解到的。

谁在你的 Python PLN 中?请在留言区分享你的最爱。


via: https://opensource.com/article/19/5/resources-learning-python

作者:Don Watkins 选题:lujun9972 译者:tomjlw 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Mattermost,作为 Slack 的开源替代品,获得了 5000 万美元的 B 轮融资。这个消息极其令人振奋。

Slack 是一个基于云的团队内部沟通协作软件。企业、初创企业、甚至全球化的开源项目都在使用 Slack 进行同事及项目成员间的沟通。

Slack 在 2019 年 6 月的估值为 200 亿美元,由此可见其在科技行业的巨大影响,当然也就有更多产品想与之竞争。

5000 万美元开源项目

就我个人而言,我并不知道 MatterMost 这个产品。但 VentureBeat 对这则新闻的报道,激发了我的好奇心。这次融资由 Y Combinator 的 Continuity 与一家新的投资方 BattleVentures 领投,现有投资者 Redpoint 和 S28 Captial 共同跟投。

公告中,他们也提到:

今天的公告中,Mattermost 成为了 YC 有史以来规模最大的 B 轮投资项目,更重要的是,它是 YC 迄今为止投资额最高的开源项目。

下面是摘自 VentureBeat 的报道,你可以从中了解到一些细节:

本次资本注入,是继 2017 年 2 月的种子轮 350 万融资和今年 2 月份的 2000 万 A 轮融资之后进行的,并使得这家总部位于美国加州 帕罗奥图 Palo Alto 的公司融资总额达到了约 7000 万美元。

如果你对他们的规划感兴趣,可以阅读官方公告

尽管听起来很不错,但可能你并不知道 Mattermost 是什么。所以我们先来作个简单了解:

Mattermost 快览

Mattermost

前面已经提到,Mattermost 是 Slack 的开源替代品。

乍一看,它几乎照搬了 Slack 的界面外观,没错,这就是关键所在,你将拥有你可以轻松使用的软件的开源解决方案。

它甚至集成了一些流行的 DevOps 工具,如 Git、自动机器人和 CI/CD。除了这些功能外,它还关注安全性和隐私。

同样,和 Slack 类似,它支持和多种应用程序与服务的集成。

听起来很有前景?我也这么认为。

定价:企业版和团队版

如果你希望由 Mattermost 托管该服务(或获得优先支持),应选择其企业版。但如果你不想使用付费托管,可以下载团队版,并将其安装到基于 Linux 的云服务器或 VPS 服务器上。

当然,我们不会在此进行深入探究。我确想在此提及的是,企业版并不昂贵。

总结

MatterMost 无疑相当出色,有了 5000 万巨额资金的注入,对于那些正在寻求安全的并能提供高效团队协作支持的开源通讯平台的用户,Mattermost 很可能成为开源社区重要的部分。

你觉得这条新闻怎么样?对你来说有价值吗?你是否已了解 Mattermost 是 Slack 的替代品?

请在下面的评论中给出你的想法。


via: https://itsfoss.com/mattermost-funding/

作者:Ankush Das 选题:lujun9972 译者:wahailin 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

The State Of Smart Contracts Now

继续我们的前面的关于智能合约的文章,这篇文章旨在讨论智能合约的发展形势,重点介绍目前正在该领域进行开发的一些项目和公司。如本系列前一篇文章中讨论的,智能合约是在区块链网络上存在并执行的程序。我们探讨了智能合约的工作原理以及它们优于传统数字平台的原因。这里描述的公司分布于各种各样的行业中,但是大多涉及到身份管理系统、金融服务、众筹系统等,因为这些是被认为最适合切换到基于区块链的数据库系统的领域。

开放平台

诸如 Counterparty 和 Solidity(以太坊)等平台是完全公用的构建模块,开发者可以以之创建自己的智能合约。大量的开发人员参与此类项目使这些项目成为开发智能合约、设计自己的加密货币令牌系统,以及创建区块链运行协议的事实标准。许多值得称赞的项目都来源于它们。摩根大通派生自以太坊的 Quorum,就是一个例子。而瑞波是另一个例子。

管理金融交易

通过互联网转账加密货币被吹捧为在未来几年会成为常态。与此相关的不足之处是:

  • 身份和钱包地址是匿名的。如果接收方不履行交易,则付款人没有任何第一追索权。
  • 错误交易(如果无法追踪任何交易)。
  • 密码生成的哈希密钥很难用于人类,人为错误是主要关注点。

在这种情况下,可以让其他人暂时接受该交易并在接受尽职调查后与接收方结算。

EscrowMyEtherPAYFAIR 是两个这样的托管平台。基本上,托管公司采用商定的金额并向接收方发送令牌。一旦接收方通过相同的托管平台提供付款人想要的内容,两者都会确认并最终付款。 这些得到了自由职业者和业余爱好者收藏家广泛在线使用。

金融服务

小额融资和小额保险项目的发展将改善世界上大多数贫穷或没有银行账户的人的银行金融服务。据估计,社会中较贫穷的“无银行账户”人群可以为银行和机构的增加 3800 亿美元收入 1 。这一金额要远远超过银行切换到区块链分布式账本技术(DLT)预期可以节省的运营费用。

位于美国中西部的 BankQu Inc. 的口号是“通过身份而尊严”。他们的平台允许个人建立他们自己的数字身份记录,其中所有交易将在区块链上实时审查和处理。在底层代码上记录并为其用户构建唯一的在线标识,从而实现超快速的交易和结算。BankQu 案例研究探讨了他们如何以这种方式帮助个人和公司,可以在这里看到。

Stratumn 正在帮助保险公司通过自动化早期由人类微观管理的任务来提供更好的保险服务。通过自动化、端到端可追溯性和高效的数据隐私方法,他们彻底改变了保险索赔的结算方式。改善客户体验以及显著降低成本为客户和相关的公司带来双赢局面。

法国保险公司 AXA 目前正在试行类似的努力。其产品 fizzy 允许用户以少量费用订阅其服务并输入他们的航班详细信息。如果航班延误或遇到其他问题,该程序会自动搜索在线数据库,检查保险条款并将保险金额记入用户的帐户。这样就用户或客户无需在手动检查条款后提出索赔,并且就长期而言,一旦这样的系统成为主流,就增加了航空公司的责任心。

跟踪所有权

理论上可以利用 DLT 中的带时间戳的数据块来跟踪媒体的创建到最终用户消费。Peertracks 公司和 Mycelia 公司目前正在帮助音乐家发布内容,而不必担心其内容被盗或被滥用。他们帮助艺术家直接向粉丝和客户销售,同时获得工作报酬,而无需通过权利和唱片公司 2

身份管理平台

基于区块链的身份管理平台可以将你的身份存储在分布式分类帐本中。设置帐户后,会对其进行安全加密,然后将其发送给所有参与节点。但是,作为数据块的所有者,只有该用户才能访问该数据。一旦你在网络上建立身份并开始交易,网络中的自动程序将验证与你的帐户关联的先前所有的交易,在检查要求后将其发送给监管备案,并在程序认为交易合法时自动执行结算。这里的好处是,由于区块链上的数据是防篡改的,而智能合约以零偏差(或主观性)检查输入,如前所述,交易不需要任何人的监督或批准,并且需要小心是即刻生效的。

ShoCardCreditsOneName 这样的初创公司目前正在推出类似的服务,目前正在与政府和社会机构进行谈判,以便将它们整合到主流用途中。

开发商的其他独立项目如 Chris Ellis 和 David Duccini 分别开发或提出了替代的身份管理系统,分别是 “世界公民”和 IDCoin。Ellis 先生甚至通过在区块链网络上创建护照来证明他的工作能力。

资源共享

Share & Charge (Slock.It) 是一家欧洲的区块链初创公司。他们的移动应用程序允许房主和其他个人投入资金建立充电站与其他正在寻找快速充电的人分享他们的资源。这不仅使业主能够收回他们的一些投资,而且还允许 EV 司机在其近地域获得更多的充电点,从而允许供应商以方便的方式满足需求。一旦“客户”完成对其车辆的充电,相关的硬件就会创建一个由数据组成的安全时间戳块,并且在该平台上工作的智能合约会自动将相应的金额记入所有者账户。记录所有此类交易的跟踪并保持适当的安全验证。有兴趣的读者可以看一下这里,了解他们产品背后的技术角度。该公司的平台将逐步使用户能够与有需要的个人分享其他产品和服务,并从中获得被动收入。

我们在这里看到的公司,以及一个很短的正在进行中的项目的清单,这些项目利用智能合约和区块链数据库系统。诸如此类的平台有助于构建一个安全的“盒子”,其中包含仅由用户自己、其上的代码或智能合约访问的信息。基于触发器对信息进行实时审查、检查,并且算法由系统执行。这样的平台人为监督最小化,这是在安全数字自动化方面朝着正确方向迈出的急需的一步,这在以前从未被考虑过如此规模。

下一篇文章将阐述不同类型的区块链。单击以下链接以了解有关此主题的更多信息。


  1. B. Pani, “Blockchain Powered Financial Inclusion,” 2016.
  2. M. Gates, “Blockchain. Ultimate guide to understanding blockchain bitcoin cryptocurrencies smart-contracts and the future of money.pdf.” 2017.

via: https://www.ostechnix.com/blockchain-2-0-ongoing-projects-the-state-of-smart-contracts-now/

作者:editor 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出