Don Watkins 发布的文章

Zint 可以轻松生成 50 多种类型的自定义条码。

 title=

二维码是一种很好的可以向人们提供信息的方式,且没有打印的麻烦和费用。大多数人的智能手机都支持二维码扫描,无论其操作系统是什么。

你可能想使用二维码的原因有很多。也许你是一名教师,希望通过补充材料来测试你的学生,以增强学习效果,或者是一家餐厅,需要在遵守社交距离准则的同时提供菜单。我经常行走于自然小径,那里贴有树木和其他植物的标签。用二维码来补充这些小标签是一种很好的方式,它可以提供关于公园展品的额外信息,而无需花费和维护标识牌。在这些和其他情况下,二维码是非常有用的。

在互联网上搜索一个简单的、开源的方法来创建二维码时,我发现了 Zint。Zint 是一个优秀的开源 (GPLv3.0) 生成条码的解决方案。根据该项目的 GitHub 仓库:“Zint 是一套可以方便地对任何一种公共领域条形码标准的数据进行编码的程序,并允许你将这种功能集成到你自己的程序中。”

Zint 支持 50 多种类型的条形码,包括二维码(ISO 18004),你可以轻松地创建这些条形码,然后复制和粘贴到 word 文档、博客、维基和其他数字媒体中。人们可以用智能手机扫描这些二维码,快速链接到信息。

安装 Zint

Zint 适用于 Linux、macOS 和 Windows。

你可以在基于 Ubuntu 的 Linux 发行版上使用 apt 安装 Zint 命令:

$ sudo apt install zint

我还想要一个图形用户界面(GUI),所以我安装了 Zint-QT:

$ sudo apt install zint-qt

请参考手册的安装部分,了解 macOS 和 Windows 的说明。

用 Zint 生成二维码

安装好后,我启动了它,并创建了我的第一个二维码,这是一个指向 Opensource.com 的链接。

 title=

Zint 的 50 多个其他条码选项包括许多国家的邮政编码、DotCode、EAN、EAN-14 和通用产品代码 (UPC)。项目文档中包含了它可以渲染的所有代码的完整列表。

你可以将任何条形码复制为 BMP 或 SVG,或者将输出保存为你应用中所需要的任何尺寸的图像文件。这是我的 77x77 像素的二维码。

 title=

该项目维护了一份出色的用户手册,其中包含了在命令行GUI 中使用 Zint 的说明。你甚至可以在线试用 Zint。对于功能请求或错误报告,请访问网站发送电子邮件


via: https://opensource.com/article/21/2/zint-barcode-generator

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

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

Mu 让你轻松学会如何编写 Python 代码。

在学校里,教孩子们编程是非常流行的。很多年前,在 Apple II 和 Logo) 编程的年代,我学会了创建 乌龟 turtle 绘图。我很喜欢学习如何对虚拟乌龟进行编程,后来也帮助学生进行编程。

大约五年前,我了解了 Python 的 turtle 模块,这是我 Python 之旅的转折点。很快,我开始使用 turtle 模块来教学生 Python 编程基础,包括使用它来创建有趣的图形。

开始使用 Python 的 turtle 模块

在 Linux 或 macOS 电脑上,你只需打开一个终端,输入 python,你就会看到 Python shell。

如果你使用的是 Windows 电脑,则需要先安装 Python,到 Python 网站上下载最新的稳定版。

接下来,用 import turtleimport turtle as tturtle 模块导入 Python 中。然后你就可以开始享受创建乌龟绘图的乐趣了。

认识一下 Mu

在我的 Python 冒险的早期,我使用了 IDLE,它是 Python 的集成开发环境。它比在 Python shell 中输入命令要容易得多,而且我可以编写和保存程序供以后使用。我参加了一些在线课程,阅读了许多关于 Python 编程的优秀书籍。我教老师和学生如何使用 IDLE 创建乌龟绘图。

IDLE 是一个很大的改进,但在克利夫兰的 PyConUS 2019 上,我看到了 Nicholas Tollervey的演讲,这改变了我学习和教授 Python 的方式。Nick 是一位教育家,他创建了 Mu,一个专门为年轻程序员(甚至像我这样的老程序员)设计的 Python 编辑器。Mu 可以安装在 Linux、macOS 和 Windows 上。它很容易使用,并且附带了优秀的文档教程

在 Linux 上,你可以通过命令行安装 Mu。

在 Ubuntu 或 Debian 上:

$ sudo apt install mu-editor

在 Fedora 或类似的地方:

$ sudo dnf install mu

或者,你可以使用 Python 来进行安装。首先,确保你已经安装了 Python 3:

$ python --version

如果失败了,就试试:

$ python3 --version

假设你有 Python 3 或更高版本,使用 Python 包管理器 pip 安装 Mu。

$ python -m pip install mu-editor --user

然后你可以从命令行运行 Mu,或者创建一个快捷方式:

$ python -m pip install shortcut mu-editor --user

树莓派上默认安装了 Mu,这是一个很大的优点。在过去的几年里,我已经向学生介绍了使用树莓派和 Mu 编辑器的 Python 编程。

如何用 Mu 教授 Python

Mu 是向学生展示 Python 入门的好方法。下面是我如何教学生开始使用它。

  1. 打开 Mu 编辑器。

 title=

  1. 输入 import turtle 导入 turtle 模块,就可以让乌龟动起来了。我的第一课是用 Python 代码画一个简单的正方形。

 title=

  1. 保存这个程序,确保文件名以 .py 结尾。

 title=

  1. 运行程序。哪怕是运行这样一个简单的程序都会让人兴奋,看到你写的程序的图形输出是很有趣的。

 title=

超越基础知识

在上完这节简单的课后,我讲解了有一些方法可以简化和扩展学生所学的基础知识。一是创建一个更简单的 turtle 对象,import turtle as t。然后我介绍了一个 for 循环,用另外一种 turtle 方法画一个正方形。

 title=

接下来,我将展示如何创建一个 my_square 函数,作为另一种绘制正方形的方法。

 title=

后来,我通过介绍其他 turtle 模块方法,包括 penuppendownpencolor 来扩展这个概念。很快,我的学生们就开始开发更复杂的程序,并对其进行迭代。

 title=

我一直渴望学习,我很想知道你在学校或家里是如何教授 Python 的。请在评论中分享你的经验。


via: https://opensource.com/article/20/9/teach-python-mu

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

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

使用 ScreenFetch 和 Neofetch 与其他人轻松分享你的 Linux 环境。

你可能有很多原因想要与他人分享你的 Linux 配置。你可能正在寻求帮助来对系统上的问题进行故障排除,或者你对所创建的环境感到非常自豪,因此想向其他开源爱好者展示。

你可以在 Bash 提示符下使用 cat /proc/cpuinfolscpu 命令获取某些信息。但是,如果你想共享更多详细信息,例如你的操作系统、内核、运行时间、shell 环境,屏幕分辨率等,那么可以选择两个很棒的工具:screenFetch 和 Neofetch。

screenFetch

screenFetch 是 Bash 命令行程序,它可以产生非常漂亮的系统配置和运行时间的截图。这是方便的与它人共享系统配置的方法。

在许多 Linux 发行版上安装 screenFetch 很简单。

在 Fedora 上,输入:

$ sudo dnf install screenfetch

在 Ubuntu 上,输入:

$ sudo apt install screenfetch

对于其他操作系统,包括 FreeBSD、MacOS 等,请查阅 screenFetch 的 wiki 安装页面。安装 screenFetch 后,它可以生成详细而彩色的截图,如下所示:

 title=

ScreenFetch 还提供各种命令行选项来调整你的结果。例如,screenfetch -v 返回详细输出,逐行显示每个选项以及上面的显示。

screenfetch -n 在显示系统信息时消除了操作系统图标。

 title=

其他选项包括 screenfetch -N,它去除所有输出的颜色。screenfetch -t,它根据终端的大小截断输出。screenFetch -E,它可抑制错误输出。

请检查手册页来了解其他选项。screenFetch 在 GPLv3 许可证下的开源,你可以在它的 GitHub 仓库中了解有关该项目的更多信息。

Neofetch

Neofetch 是创建系统信息截图的另一个工具。它是用 Bash 3.2 编写的,在 MIT 许可证下开源。

根据项目网站所述,“Neofetch 支持近 150 种不同的操作系统。从 Linux 到 Windows,一直到 Minix、AIX 和 Haiku 等更晦涩的操作系统。”

 title=

该项目维护了一个 wiki,其中包含用于各种发行版和操作系统的出色的安装文档

如果你使用的是 Fedora、RHEL 或 CentOS,那么可以在 Bash 提示符下使用以下命令安装 Neofetch:

$ sudo dnf install neofetch

在 Ubuntu 17.10 及更高版本上,你可以使用:

$ sudo apt install neofetch

首次运行时,Neofetch 将 ~/.config/neofetch/config.conf 文件写入主目录(.config/config.conf),它让你可以自定义和控制 Neofetch 输出的各个方面。例如,你可以配置 Neofetch 使用图像、ASCII 文件、你选择的壁纸,或者完全不使用。config.conf 文件还让与它人分享配置变得容易。

如果 Neofetch 不支持你的操作系统或不提供所需选项,请在项目的 GitHub 仓库中打开一个问题。

总结

无论为什么要共享系统配置,screenFetch 或 Neofetch 都应该能做到。你是否知道在 Linux 上提供此功能的另一个开源工具?请在评论中分享你的最爱。


via: https://opensource.com/article/20/1/screenfetch-neofetch

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

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

Elementary OS 的最新版本 Hera 是一个令人印象深刻的平台,它可以让过时的 MacBook 得以重生。

当我安装苹果的 MacOS Mojave 时,它使我以前可靠的 MacBook Air 慢得像爬一样。我的计算机发售于 2015 年,具有 4 GB 内存、i5 处理器和 Broadcom 4360 无线卡,但是对于我的日常使用来说,Mojava 有点过分了,它不能和 GnuCash 一起工作,这激起了我重返 Linux 的欲望。我很高兴能重返,但是我深感遗憾的是,我的这台出色的 MacBook 被闲置了。

我在 MacBook Air 上尝试了几种 Linux 发行版,但总会有缺陷。有时是无线网卡;还有一次,它缺少对触摸板的支持。看了一些不错的评论后,我决定尝试 Elementary OS 5.0(Juno)。我用 USB 制作了启动盘,并将其插入 MacBook Air 。我来到了一个 现场 live 桌面,并且操作系统识别出了我的 Broadcom 无线芯片组 —— 我认为这可能行得通!

我喜欢在 Elementary OS 中看到的内容。它的 Pantheon 桌面真的很棒,并且其外观和使用起来的感觉对 Apple 用户来说很熟悉 —— 它的显示屏底部有一个扩展坞,并带有一些指向常用应用程序的图标。我对我之前期待的预览感到满意,所以我决定安装它,然后我的无线设备消失了。真的很令人失望。我真的很喜欢 Elementary OS ,但是没有无线网络是不行的。

时间快进到 2019 年 12 月,当我在 Linux4Everyone 播客上听到有关 Elementary 最新版本 v.5.1(Hera) 使 MacBook 复活的评论时,我决定用 Hera 再试一次。我下载了 ISO ,创建了可启动驱动器,将其插入电脑,这次操作系统识别了我的无线网卡。我可以在上面工作了。

 title=

我非常高兴我轻巧又功能强大的 MacBook Air 通过 Linux 焕然一新。我一直在更详细地研究 Elementary OS,我可以告诉你我印象深刻的东西。

Elementary OS 的功能

根据 Elementary 的博客,“新设计的登录和锁定屏幕问候语看起来更清晰、效果更好,并且修复了以前问候语中报告的许多问题,包括输入焦点问题,HiDPI 问题和更好的本地化。Hera 的新设计是为了响应来自 Juno 的用户反馈,并启用了一些不错的新功能。”

“不错的新功能”是在轻描淡写 —— Elementary OS 拥有我见过的最佳设计的 Linux 用户界面之一。默认情况下,系统上的“系统设置”图标位于扩展坞上。更改设置很容易,很快我就按照自己的喜好配置了系统。我需要的文字大小比默认值大,辅助功能是易于使用的,允许我设置大文字和高对比度。我还可以使用较大的图标和其他选项来调整扩展坞。

 title=

按下 Mac 的 Command 键将弹出一个键盘快捷键列表,这对新用户非常有帮助。

 title=

Elementary OS 附带的 Epiphany Web 浏览器,我发现它非常易于使用。它与 Chrome、Chromium 或 Firefox 略有不同,但它已经绰绰有余。

对于注重安全的用户(我们应该都是),Elementary OS 的安全和隐私设置提供了多个选项,包括防火墙、历史记录、锁定,临时和垃圾文件的自动删除以及用于位置服务开/关的开关。

 title=

有关 Elementray OS 的更多信息

Elementary OS 最初于 2011 年发布,其最新版本 Hera 于 2019 年 12 月 3 日发布。 Elementary 的联合创始人兼 CXO 的 Cassidy James Blaede 是操作系统的 UX 架构师。 Cassidy 喜欢使用开放技术来设计和构建有用、可用和令人愉悦的数字产品。

Elementary OS 具有出色的用户文档,其代码(在 GPL 3.0 下许可)可在 GitHub 上获得。Elementary OS 鼓励参与该项目,因此请务必伸出援手并加入社区


via: https://opensource.com/article/20/2/macbook-linux-elementary

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

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

使用 GnuCash 管理你的个人或小型企业会计。

在过去的四年里,我一直在用 GnuCash 来管理我的个人财务,我对此非常满意。这个开源(GPL v3)项目自 1998 年首次发布以来一直成长和改进,2019 年 12 月发布的最新版本 3.8 增加了许多改进和 bug 修复。

GnuCash 可在 Windows、MacOS 和 Linux 中使用。它实现了一个复式记账系统,并可以导入各种流行的开放和专有文件格式,包括 QIF、QFX、OFX、CSV 等。这使得从其他财务应用转换(包括 Quicken)而来很容易,它是为取代这些而出现的。

借助 GnuCash,你可以跟踪个人财务状况以及小型企业会计和开票。它没有集成的工资系统。根据文档,你可以在 GnuCash 中跟踪工资支出,但你必须在该软件外计算税金和扣减。

安装

要在 Linux 上安装 GnuCash:

  • 在 Red Hat、CentOS 或 Fedora 中: $ sudo dnf install gnucash
  • 在 Debian、Ubuntu 或 Pop\_OS 中: $ sudo apt install gnucash

你也可以从 Flathub 安装它,我在运行 Elementary OS 的笔记本上使用它。(本文中的所有截图都来自此次安装)。

设置

安装并启动程序后,你将看到一个欢迎屏幕,该页面提供了创建新账户集、导入 QIF 文件或打开新用户教程的选项。

 title=

个人账户

如果你选择第一个选项(正如我所做的那样),GnuCash 会打开一个页面帮你起步。它收集初始数据并设置账户首选项,例如账户类型和名称、商业数据(例如,税号)和首选货币。

 title=

GnuCash 支持个人银行账户、商业账户、汽车贷款、CD 和货币市场账户、儿童保育账户等。

例如,首先创建一个简单的支票簿。你可以输入账户的初始余额或以多种格式导入现有账户数据。

 title=

开票

GnuCash 还支持小型企业功能,包括客户、供应商和开票。要创建发票,请在 “Business -> Invoice” 中输入数据。

 title=

然后,你可以将发票打印在纸上,也可以将其导出到 PDF 并通过电子邮件发送给你的客户。

 title=

获取帮助

如果你有任何疑问,它有一个优秀的帮助,你可在菜单栏的右侧获取指导。

 title=

该项目的网站包含许多有用的信息的链接,例如 GnuCash 功能的概述。GnuCash 还提供了详细的文档,可供下载和离线阅读,它还有一个 wiki,为用户和开发人员提供了有用的信息。

你可以在项目的 GitHub 仓库中找到其他文件和文档。GnuCash 项目由志愿者驱动。如果你想参与,请查看项目的 wiki 上的 Getting involved 部分。


via: https://opensource.com/article/20/2/gnucash

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

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

什么技术运行在 Linux 上?你可能会惊讶于日常生活中使用 Linux 的频率。

现在 Linux 几乎可以运行每样东西,但很多人都没有意识到这一点。有些人可能知道 Linux,可能听说过超级计算机运行着这个操作系统。根据 Top500,Linux 现在驱动着世界上最快的 500 台计算机。你可以转到他们的网站并搜索“Linux”自己查看一下结果。

NASA 运行在 Linux 之上

你可能不知道 Linux 为 NASA(美国国家航空航天局)提供支持。NASA 的 Pleiades 超级计算机运行着 Linux。由于操作系统的可靠性,国际空间站六年前从 Windows 切换到了 Linux。NASA 甚至最近给国际空间站部署了三台运行着 Linux 的“Astrobee”机器人。

电子书运行在 Linux 之上

我读了很多书,我的首选设备是亚马逊 Kindle Paperwhite,它运行 Linux(虽然大多数人完全没有意识到这一点)。如果你使用亚马逊的任何服务,从亚马逊弹性计算云(Amazon EC2) 到 Fire TV,你就是在 Linux 上运行。当你问 Alexa 现在是什么时候,或者你最喜欢的运动队得分时,你也在使用 Linux,因为 Alexa 由 Fire OS(基于 Android 的操作系统)提供支持。实际上,Android) 是由谷歌开发的用于移动手持设备的 Linux,而且占据了当今移动电话的76% 的市场

电视运行在 Linux 之上

如果你有一台 TiVo,那么你也在运行 Linux。如果你是 Roku 用户,那么你也在使用 Linux。Roku OS 是专为 Roku 设备定制的 Linux 版本。你可以选择使用在 Linux 上运行的 Chromecast 看流媒体。不过,Linux 不只是为机顶盒和流媒体设备提供支持。它也可能运行着你的智能电视。LG 使用 webOS,它是基于 Linux 内核的。Panasonic 使用 Firefox OS,它也是基于 Linux 内核的。三星、菲利普斯以及更多厂商都使用基于 Linux 的操作系统支持其设备。

智能手表和平板电脑运行在 Linux 之上

如果你拥有智能手表,它可能正在运行 Linux。世界各地的学校系统一直在实施一对一系统,让每个孩子都有自己的笔记本电脑。越来越多的机构为学生配备了 Chromebook。这些轻巧的笔记本电脑使用 Chrome OS,它基于 Linux。

汽车运行在 Linux 之上

你驾驶的汽车可能正在运行 Linux。 汽车级 Linux(AGL) 是一个将 Linux 视为汽车标准代码库的项目,它列入了丰田、马自达、梅赛德斯-奔驰和大众等汽车制造商。你的车载信息娱乐(IVI)系统也可能运行 Linux。GENIVI 联盟在其网站称,它开发了“用于集成在集中连接的车辆驾驶舱中的操作系统和中间件的标准方法”。

游戏运行在 Linux 之上

如果你是游戏玩家,那么你可能正在使用 SteamOS,这是一个基于 Linux 的操作系统。此外,如果你使用 Google 的众多服务,那么你也运行在 Linux上。

社交媒体运行在 Linux 之上

当你刷屏和评论时,你可能会意识到这些平台正在做的很多工作。也许 Instagram、Facebook、YouTube 和 Twitter 都在 Linux 上运行并不令人惊讶。

此外,社交媒体的新浪潮,去中心化的联合社区的联盟节点,如 MastodonGNU SocialNextcloud(类似 Twitter 的微博平台)、Pixelfed(分布式照片共享)和Peertube(分布式视频共享)至少默认情况下在 Linux 上运行。由于开源,它们可以在任何平台上运行,这本身就是一个强大的优先级。

商业和政务运行在 Linux 之上

与五角大楼一样,纽约证券交易所也在 Linux 上运行。美国联邦航空管理局每年处理超过 1600 万次航班,他们在 Linux 上运营。美国国会图书馆、众议院、参议院和白宫都使用 Linux。

零售运行在 Linux 之上

最新航班座位上的娱乐系统很可能在 Linux 上运行。你最喜欢的商店的 POS 机可能正运行在 Linux 上。基于 Linux 的 Tizen OS 为智能家居和其他智能设备提供支持。许多公共图书馆现在在 EvergreenKoha 上托管他们的综合图书馆系统。这两个系统都在 Linux 上运行。

Apple 运行在 Linux 之上

如果你是使用 iCloud 的 iOS 用户,那么你也在使用运行在 Linux 上的系统。Apple 公司的网站在 Linux 上运行。如果你想知道在 Linux 上运行的其他网站,请务必使用 Netcraft 并检查“该网站运行在什么之上?”的结果。

路由器运行在 Linux 之上

在你家里将你连接到互联网的路由器可能正运行在 Linux 上。如果你当前的路由器没有运行 Linux 而你想改变它,那么这里有一个优秀的方法

如你所见,Linux 从许多方面为今天的世界提供动力。还有什么运行在 Linux 之上的东西是人们还没有意识到的?请让我们在评论中知道。


via: https://opensource.com/article/19/8/everyday-tech-runs-linux

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

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