如何把 Google 云端硬盘当做虚拟磁盘一样挂载到 Linux
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/07/163810vcne2fd7iek1c3du.png">Media</a><a href="https://www.google.com/drive/">Google 云端硬盘</a> 是全球比较受欢迎的云存储平台. 直到 2017 年, 全球有超过 8 亿的活跃用户在使用它。即使用户数在持续增长,但直到现在 Google 还是没有发布一款可以在 Linux 平台使用的客户端。但这难不倒 Linux 社区。不时就有一些开发者给 Linux 操作系统带来一些客户端。下面我将会介绍三个用于 Linux 系统非官方开发的 Google 云端硬盘客户端。使用这些客户端,你能把 Google 云端硬盘像虚拟磁盘一样挂载到 Linux 系统。请继续阅读。1、Google-drive-ocamlfusegoogle-drive-ocamlfuse 把 Google 云端硬盘当做是一个 FUSE 类型的文件系统,它是用 OCam 语言写的。FUSE 意即用户态文件系统Filesystem in Userspace,此项目允许非管理员用户在用户空间创建虚拟文件系统。google-drive-ocamlfuse 可以让你把 Google 云端硬盘当做磁盘一样挂载到 Linux 系统。支持对普通文件和目录的读写操作,支持对 Google dock、表单和演示稿的只读操作,支持多个 Googe 云端硬盘用户,重复文件处理,支持访问回收站等等。安装 google-drive-ocamlfusegoogle-drive-ocamlfuse 能在 Arch 系统的 <a href="https://aur.archlinux.org/packages/google-drive-ocamlfuse/">AUR</a> 上直接找到,所以你可以使用 AUR 助手程序,如 <a href="https://www.ostechnix.com/yay-found-yet-another-reliable-aur-helper/">Yay</a> 来安装。<pre class="prettyprint linenums">$ yay -S google-drive-ocamlfuse</pre>在 Ubuntu 系统:<pre class="prettyprint linenums">$ sudo add-apt-repository ppa:alessandro-strada/ppa$ sudo apt-get update$ sudo apt-get install google-drive-ocamlfuse</pre>安装最新的测试版本:<pre class="prettyprint linenums">$ sudo add-apt-repository ppa:alessandro-strada/google-drive-ocamlfuse-beta$ sudo apt-get update$ sudo apt-get install google-drive-ocamlfuse</pre>使…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/07/163810vcne2fd7iek1c3du.png">Media</a><a href="https://www.google.com/drive/">Google 云端硬盘</a> 是全球比较受欢迎的云存储平台. 直到 2017 年, 全球有超过 8 亿的活跃用户在使用它。即使用户数在持续增长,但直到现在 Google 还是没有发布一款可以在 Linux 平台使用的客户端。但这难不倒 Linux 社区。不时就有一些开发者给 Linux 操作系统带来一些客户端。下面我将会介绍三个用于 Linux 系统非官方开发的 Google 云端硬盘客户端。使用这些客户端,你能把 Google 云端硬盘像虚拟磁盘一样挂载到 Linux 系统。请继续阅读。1、Google-drive-ocamlfusegoogle-drive-ocamlfuse 把 Google 云端硬盘当做是一个 FUSE 类型的文件系统,它是用 OCam 语言写的。FUSE 意即用户态文件系统Filesystem in Userspace,此项目允许非管理员用户在用户空间创建虚拟文件系统。google-drive-ocamlfuse 可以让你把 Google 云端硬盘当做磁盘一样挂载到 Linux 系统。支持对普通文件和目录的读写操作,支持对 Google dock、表单和演示稿的只读操作,支持多个 Googe 云端硬盘用户,重复文件处理,支持访问回收站等等。安装 google-drive-ocamlfusegoogle-drive-ocamlfuse 能在 Arch 系统的 <a href="https://aur.archlinux.org/packages/google-drive-ocamlfuse/">AUR</a> 上直接找到,所以你可以使用 AUR 助手程序,如 <a href="https://www.ostechnix.com/yay-found-yet-another-reliable-aur-helper/">Yay</a> 来安装。<pre class="prettyprint linenums">$ yay -S google-drive-ocamlfuse</pre>在 Ubuntu 系统:<pre class="prettyprint linenums">$ sudo add-apt-repository ppa:alessandro-strada/ppa$ sudo apt-get update$ sudo apt-get install google-drive-ocamlfuse</pre>安装最新的测试版本:<pre class="prettyprint linenums">$ sudo add-apt-repository ppa:alessandro-strada/google-drive-ocamlfuse-beta$ sudo apt-get update$ sudo apt-get install google-drive-ocamlfuse</pre>使…
远程工作生存指南
今天,我想 分享一些个人如何做好远程工作的建议。不管你是全职远程工作者,或者是可以选择一周某几天在家工作的人,希望这篇文章对你有用。Media
via https://linux.cn/article-10518-1.html
今天,我想 分享一些个人如何做好远程工作的建议。不管你是全职远程工作者,或者是可以选择一周某几天在家工作的人,希望这篇文章对你有用。Media
via https://linux.cn/article-10518-1.html
远程工作生存指南
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/07/201108wh989r7787r86trf.jpg">Media远程工作似乎是最近的一个热门话题。CNBC 报道称,<a href="https://www.cnbc.com/2018/05/30/70-percent-of-people-globally-work-remotely-at-least-once-a-week-iwg-study.html">70% 的专业人士至少每周在家工作一次。同样地,CoSo Cloud 调查发现, <a href="http://www.cosocloud.com/press-release/connectsolutions-survey-shows-working-remotely-benefits-employers-and-employees">77% 的人在远程工作时效率更高 ,而 aftercollege 的一份调查显示,<a href="https://www.aftercollege.com/cf/2015-annual-survey">8% 的千禧一代会更多地考虑提供远程工作的公司。 这看起来很合理:技术、网络以及文化似乎越来越推动了远程工作的发展。哦,自制咖啡也比以前任何时候更好喝了。目前,我准备写另一篇关于公司如何优化远程工作的文章(所以请确保你加入我们的会员以持续关注——这是免费的)。但今天,我想 <strong>分享一些个人如何做好远程工作的建议</strong>。不管你是全职远程工作者,或者是可以选择一周某几天在家工作的人,希望这篇文章对你有用。眼下,你需要明白,<strong>远程工作不是万能药</strong>。当然,穿着睡衣满屋子乱逛,听听反社会音乐,喝一大杯咖啡看起来似乎挺完美的,但这不适合每个人。有的人需要办公室的空间。有的人需要办公室的社会元素。有的人需要从家里走出来。有的人在家里缺乏保持专注的自律。有的人因为好几年未缴退税而怕政府工作人员来住处敲门。<strong>远程工作就好像一块肌肉:如果你锻炼并且保持它,那么它…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/07/201108wh989r7787r86trf.jpg">Media远程工作似乎是最近的一个热门话题。CNBC 报道称,<a href="https://www.cnbc.com/2018/05/30/70-percent-of-people-globally-work-remotely-at-least-once-a-week-iwg-study.html">70% 的专业人士至少每周在家工作一次。同样地,CoSo Cloud 调查发现, <a href="http://www.cosocloud.com/press-release/connectsolutions-survey-shows-working-remotely-benefits-employers-and-employees">77% 的人在远程工作时效率更高 ,而 aftercollege 的一份调查显示,<a href="https://www.aftercollege.com/cf/2015-annual-survey">8% 的千禧一代会更多地考虑提供远程工作的公司。 这看起来很合理:技术、网络以及文化似乎越来越推动了远程工作的发展。哦,自制咖啡也比以前任何时候更好喝了。目前,我准备写另一篇关于公司如何优化远程工作的文章(所以请确保你加入我们的会员以持续关注——这是免费的)。但今天,我想 <strong>分享一些个人如何做好远程工作的建议</strong>。不管你是全职远程工作者,或者是可以选择一周某几天在家工作的人,希望这篇文章对你有用。眼下,你需要明白,<strong>远程工作不是万能药</strong>。当然,穿着睡衣满屋子乱逛,听听反社会音乐,喝一大杯咖啡看起来似乎挺完美的,但这不适合每个人。有的人需要办公室的空间。有的人需要办公室的社会元素。有的人需要从家里走出来。有的人在家里缺乏保持专注的自律。有的人因为好几年未缴退税而怕政府工作人员来住处敲门。<strong>远程工作就好像一块肌肉:如果你锻炼并且保持它,那么它…
计算机实验室之树莓派:课程 3 OK03
虽然我们的操作系统除了做 课程 2:OK02 中的事情,还做不了别的任何事情,但我们已经学会了函数和格式有关的知识,并且我们现在可以更好更快地编写新特性了。Media
via https://linux.cn/article-10519-1.html
虽然我们的操作系统除了做 课程 2:OK02 中的事情,还做不了别的任何事情,但我们已经学会了函数和格式有关的知识,并且我们现在可以更好更快地编写新特性了。Media
via https://linux.cn/article-10519-1.html
计算机实验室之树莓派:课程 3 OK03
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/225754zmxkmdok4dx83ybz.jpg">Media</a>OK03 课程基于 OK02 课程来构建,它教你在汇编中如何使用函数让代码可复用和可读性更好。假设你已经有了 <a href="https://linux.cn/article-10478-1.html">课程 2:OK02</a> 的操作系统,我们将以它为基础。1、可复用的代码到目前为止,我们所写的代码都是以我们希望发生的事为顺序来输入的。对于非常小的程序来说,这种做法很好,但是如果我们以这种方式去写一个完整的系统,所写的代码可读性将非常差。我们应该去使用函数。一个函数是一段可复用的代码片断,可以用于去计算某些答案,或执行某些动作。你也可以称它们为过程procedure、例程routine或子例程subroutine。虽然它们都是不同的,但人们几乎都没有正确地使用这个术语。你应该在数学上遇到了函数的概念。例如,余弦函数应用于一个给定的数时,会得到介于 -1 到 1 之间的另一个数,这个数就是角的余弦。一般我们写成 cos(x) 来表示应用到一个值 x 上的余弦函数。在代码中,函数可以有多个输入(也可以没有输入),然后函数给出多个输出(也可以没有输出),并可能导致副作用。例如一个函数可以在一个文件系统上创建一个文件,第一个输入是它的名字,第二个输入是文件的长度。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/225958r9kfp7hot9ofc08c.png">Function as black boxes</a>函数可以认为是一个“黑匣子”。我们给它输入ʌ…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/225754zmxkmdok4dx83ybz.jpg">Media</a>OK03 课程基于 OK02 课程来构建,它教你在汇编中如何使用函数让代码可复用和可读性更好。假设你已经有了 <a href="https://linux.cn/article-10478-1.html">课程 2:OK02</a> 的操作系统,我们将以它为基础。1、可复用的代码到目前为止,我们所写的代码都是以我们希望发生的事为顺序来输入的。对于非常小的程序来说,这种做法很好,但是如果我们以这种方式去写一个完整的系统,所写的代码可读性将非常差。我们应该去使用函数。一个函数是一段可复用的代码片断,可以用于去计算某些答案,或执行某些动作。你也可以称它们为过程procedure、例程routine或子例程subroutine。虽然它们都是不同的,但人们几乎都没有正确地使用这个术语。你应该在数学上遇到了函数的概念。例如,余弦函数应用于一个给定的数时,会得到介于 -1 到 1 之间的另一个数,这个数就是角的余弦。一般我们写成 cos(x) 来表示应用到一个值 x 上的余弦函数。在代码中,函数可以有多个输入(也可以没有输入),然后函数给出多个输出(也可以没有输出),并可能导致副作用。例如一个函数可以在一个文件系统上创建一个文件,第一个输入是它的名字,第二个输入是文件的长度。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/225958r9kfp7hot9ofc08c.png">Function as black boxes</a>函数可以认为是一个“黑匣子”。我们给它输入ʌ…
Asciinema:在云端记录并分享你的终端会话
asciinema 是一个自由开源的用于录制终端会话并将它们分享到网络上的解决方案。Media
via https://linux.cn/article-10520-1.html
asciinema 是一个自由开源的用于录制终端会话并将它们分享到网络上的解决方案。Media
via https://linux.cn/article-10520-1.html
Asciinema:在云端记录并分享你的终端会话
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/233016gh6peg96l0lp2js5.jpg">Media</a>这个众所周知的话题我们早已经写过了足够多的文章。即使这样,我们今天也要去讨论相同的话题。其他的工具都是在本地运行的,但是 Asciinema 可以以相同的方式在本地和 Web 端运行。我的意思是我们可以在 Web 上分享这个录像。默认情况下,每个人都更愿意使用 history 命令来回看、调用之前在终端内输入的命令。不过,不行的是,这个命令只展示了我们运行的命令却没有展示这些命令上次运行时的输出。在 Linux 下有很多的组件来记录终端会话活动。在过去,我们也写了一些组件,不过今天我们依然要讨论这同一类心的工具。如果你想要使用其他工具来记录你的 Linux 终端会话活动,你可以试试 <a href="https://www.2daygeek.com/script-command-record-save-your-terminal-session-activity-linux/">Script 命令</a>、<a href="https://www.2daygeek.com/terminalizer-a-tool-to-record-your-terminal-and-generate-animated-gif-images/">Terminalizer 工具</a> 和 <a href="https://www.2daygeek.com/Asciinema-record-your-terminal-sessions-as-svg-animations-in-linux/">Asciinema 工具</a>。不过如果你想要找一个 <a href="https://www.2daygeek.com/category/gif-recorder/">GIF 录制工具</a>,可以试试 <a href="https://www.2daygeek.com/gifine-create-animated-gif-vedio-recorder-linux-mint-debian-ubuntu/">Gifine</a>、<a href="https://www.2daygeek.com/kgif-create-animated-gif-file-active-window-screen-recorder-capture-arch-linux-mint-fedora-ubuntu-debian-opensuse-centos/">Kgif</a> 和 <a href="https://www.2daygeek.com/peek-create-animated-gif-screen-recorder-capture-arch-linux-mint-fedora-ubuntu/">Peek</a>。什么是 Asciinemaasciinema 是一个自由开源的用于录制终端会话并将它们分享到网络上的解决方案。当你在你的终端内运行 asciinema rec 来启动录像时,你输入命令的时候,终端内的所有输出都会被抓取。ô…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/233016gh6peg96l0lp2js5.jpg">Media</a>这个众所周知的话题我们早已经写过了足够多的文章。即使这样,我们今天也要去讨论相同的话题。其他的工具都是在本地运行的,但是 Asciinema 可以以相同的方式在本地和 Web 端运行。我的意思是我们可以在 Web 上分享这个录像。默认情况下,每个人都更愿意使用 history 命令来回看、调用之前在终端内输入的命令。不过,不行的是,这个命令只展示了我们运行的命令却没有展示这些命令上次运行时的输出。在 Linux 下有很多的组件来记录终端会话活动。在过去,我们也写了一些组件,不过今天我们依然要讨论这同一类心的工具。如果你想要使用其他工具来记录你的 Linux 终端会话活动,你可以试试 <a href="https://www.2daygeek.com/script-command-record-save-your-terminal-session-activity-linux/">Script 命令</a>、<a href="https://www.2daygeek.com/terminalizer-a-tool-to-record-your-terminal-and-generate-animated-gif-images/">Terminalizer 工具</a> 和 <a href="https://www.2daygeek.com/Asciinema-record-your-terminal-sessions-as-svg-animations-in-linux/">Asciinema 工具</a>。不过如果你想要找一个 <a href="https://www.2daygeek.com/category/gif-recorder/">GIF 录制工具</a>,可以试试 <a href="https://www.2daygeek.com/gifine-create-animated-gif-vedio-recorder-linux-mint-debian-ubuntu/">Gifine</a>、<a href="https://www.2daygeek.com/kgif-create-animated-gif-file-active-window-screen-recorder-capture-arch-linux-mint-fedora-ubuntu-debian-opensuse-centos/">Kgif</a> 和 <a href="https://www.2daygeek.com/peek-create-animated-gif-screen-recorder-capture-arch-linux-mint-fedora-ubuntu/">Peek</a>。什么是 Asciinemaasciinema 是一个自由开源的用于录制终端会话并将它们分享到网络上的解决方案。当你在你的终端内运行 asciinema rec 来启动录像时,你输入命令的时候,终端内的所有输出都会被抓取。ô…
Go 编程语言的简单介绍
Go 有 C 风格的语法(没有预处理器)、垃圾回收机制,而且类似它在贝尔实验室里被开发出来的前辈们Media
via https://linux.cn/article-10521-1.html
Go 有 C 风格的语法(没有预处理器)、垃圾回收机制,而且类似它在贝尔实验室里被开发出来的前辈们Media
via https://linux.cn/article-10521-1.html
Go 编程语言的简单介绍
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/000738div64l4tidkdv6vj.png">Media</a>(以下内容是我的硕士论文的摘录,几乎是整个 2.1 章节,向具有 CS 背景的人快速介绍 Go)Go 是一门用于并发编程的命令式编程语言,它主要由创造者 Google 进行开发,最初主要由 Robert Griesemer、Rob Pike 和 Ken Thompson 开发。这门语言的设计起始于 2007 年,并在 2009 年推出最初版本;而第一个稳定版本是 2012 年发布的 1.0 版本。<a href="#fn1">1</a>Go 有 C 风格的语法(没有预处理器)、垃圾回收机制,而且类似它在贝尔实验室里被开发出来的前辈们:Newsqueak(Rob Pike)、Alef(Phil Winterbottom)和 Inferno(Pike、Ritchie 等人),使用所谓的 Go 协程goroutines和信道channels(一种基于 Hoare 的“通信顺序进程”理论的协程)提供内建的并发支持。<a href="#fn2">2</a>Go 程序以包的形式组织。包本质是一个包含 Go 文件的文件夹。包内的所有文件共享相同的命名空间,而包内的符号有两种可见性:以大写字母开头的符号对于其他包是可见,而其他符号则是该包私有的:<pre class="prettyprint linenums">func PublicFunction() { fmt.Println("Hello world")}func privateFunction() { fmt.Println("Hello package")}</pre>类型Go 有一个相当简单的类型系统:没有子类型(但有类型转换),没有泛型,没有多态函数,只有一些基本的类型:基本类型:int、int64、int8、uint、float32、float64 等structinterface:一组方法的集合map[K, V]:一个从键类型到值类型的映射[number]Type:一些 Type 类型的元素组成的数组[]Type:某种类型的切片(具有长度和功能的数组的指针)chan Type:一个线&#…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/000738div64l4tidkdv6vj.png">Media</a>(以下内容是我的硕士论文的摘录,几乎是整个 2.1 章节,向具有 CS 背景的人快速介绍 Go)Go 是一门用于并发编程的命令式编程语言,它主要由创造者 Google 进行开发,最初主要由 Robert Griesemer、Rob Pike 和 Ken Thompson 开发。这门语言的设计起始于 2007 年,并在 2009 年推出最初版本;而第一个稳定版本是 2012 年发布的 1.0 版本。<a href="#fn1">1</a>Go 有 C 风格的语法(没有预处理器)、垃圾回收机制,而且类似它在贝尔实验室里被开发出来的前辈们:Newsqueak(Rob Pike)、Alef(Phil Winterbottom)和 Inferno(Pike、Ritchie 等人),使用所谓的 Go 协程goroutines和信道channels(一种基于 Hoare 的“通信顺序进程”理论的协程)提供内建的并发支持。<a href="#fn2">2</a>Go 程序以包的形式组织。包本质是一个包含 Go 文件的文件夹。包内的所有文件共享相同的命名空间,而包内的符号有两种可见性:以大写字母开头的符号对于其他包是可见,而其他符号则是该包私有的:<pre class="prettyprint linenums">func PublicFunction() { fmt.Println("Hello world")}func privateFunction() { fmt.Println("Hello package")}</pre>类型Go 有一个相当简单的类型系统:没有子类型(但有类型转换),没有泛型,没有多态函数,只有一些基本的类型:基本类型:int、int64、int8、uint、float32、float64 等structinterface:一组方法的集合map[K, V]:一个从键类型到值类型的映射[number]Type:一些 Type 类型的元素组成的数组[]Type:某种类型的切片(具有长度和功能的数组的指针)chan Type:一个线&#…
Python Web 应用程序 Tornado 框架简介
在比较 Python 框架的系列文章的第三部分中,我们来了解 Tornado,它是为处理异步进程而构建的。Media
via https://linux.cn/article-10522-1.html
在比较 Python 框架的系列文章的第三部分中,我们来了解 Tornado,它是为处理异步进程而构建的。Media
via https://linux.cn/article-10522-1.html
Python Web 应用程序 Tornado 框架简介
在比较 Python 框架的系列文章的第三部分中,我们来了解 Tornado,它是为处理异步进程而构建的。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/180056b6yyzfwvvaanavrw.jpg">Media</a>在这个由四部分组成的系列文章的前两篇中,我们介绍了 <a href="https://opensource.com/article/18/5/pyramid-framework">Pyramid</a> 和 <a href="https://opensource.com/article/18/4/flask">Flask</a> Web 框架。我们已经构建了两次相同的应用程序,看到了一个完整的 DIY 框架和包含了更多功能的框架之间的异同。现在让我们来看看另一个稍微不同的选择:<a href="https://tornado.readthedocs.io/en/stable/">Tornado 框架</a>。Tornado 在很大程度上与 Flask 一样简单,但有一个主要区别:Tornado 是专门为处理异步进程而构建的。在我们本系列所构建的应用程序中,这种特殊的酱料(LCTT 译注:这里意思是 Tornado 的异步功能)在我们构建的 app 中并不是非常有用,但我们将看到在哪里可以使用它,以及它在更一般的情况下是如何工作的。让我们继续前两篇文章中模式,首先从处理设置和配置开始。Tornado 启动和配置如果你一直关注这个系列,那么第一步应该对你来说习以为常。<pre class="prettyprint linenums">$ mkdir tornado_todo$ cd tornado_todo$ pipenv install --python 3.6$ pipenv shell(tornado-someHash) $ pipenv install tornado</pre>创建一个 setup.py 文件来安装我们的应用程序相关的东西:<pre class="prettyprint linenums">(tornado-someHash) $ touch setup.py# setup.pyfrom setuptools import setup, find_packagesrequires = [ 'tornado', 'tornado-sqlalchemy', 'psycopg2',]setup( name='tornado_todo', version='0.0', description='A To-Do List built with Tornado', author='<Your name>', author_email='<Your email>', keywords='web tornado', packages=find_packages(), install_requires=requires, entry_points={ 'console_scripts': [ 'serve_app = todo:main', ], },)</pre>因为 Tornado 不需要任何外部配置,所以我们可以直接编写 Python É…
在比较 Python 框架的系列文章的第三部分中,我们来了解 Tornado,它是为处理异步进程而构建的。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/180056b6yyzfwvvaanavrw.jpg">Media</a>在这个由四部分组成的系列文章的前两篇中,我们介绍了 <a href="https://opensource.com/article/18/5/pyramid-framework">Pyramid</a> 和 <a href="https://opensource.com/article/18/4/flask">Flask</a> Web 框架。我们已经构建了两次相同的应用程序,看到了一个完整的 DIY 框架和包含了更多功能的框架之间的异同。现在让我们来看看另一个稍微不同的选择:<a href="https://tornado.readthedocs.io/en/stable/">Tornado 框架</a>。Tornado 在很大程度上与 Flask 一样简单,但有一个主要区别:Tornado 是专门为处理异步进程而构建的。在我们本系列所构建的应用程序中,这种特殊的酱料(LCTT 译注:这里意思是 Tornado 的异步功能)在我们构建的 app 中并不是非常有用,但我们将看到在哪里可以使用它,以及它在更一般的情况下是如何工作的。让我们继续前两篇文章中模式,首先从处理设置和配置开始。Tornado 启动和配置如果你一直关注这个系列,那么第一步应该对你来说习以为常。<pre class="prettyprint linenums">$ mkdir tornado_todo$ cd tornado_todo$ pipenv install --python 3.6$ pipenv shell(tornado-someHash) $ pipenv install tornado</pre>创建一个 setup.py 文件来安装我们的应用程序相关的东西:<pre class="prettyprint linenums">(tornado-someHash) $ touch setup.py# setup.pyfrom setuptools import setup, find_packagesrequires = [ 'tornado', 'tornado-sqlalchemy', 'psycopg2',]setup( name='tornado_todo', version='0.0', description='A To-Do List built with Tornado', author='<Your name>', author_email='<Your email>', keywords='web tornado', packages=find_packages(), install_requires=requires, entry_points={ 'console_scripts': [ 'serve_app = todo:main', ], },)</pre>因为 Tornado 不需要任何外部配置,所以我们可以直接编写 Python É…
Linux 上最好的五款音乐播放器
Jack Wallen 盘点他最爱的五款 Linux 音乐播放器。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/232031rtjn0tiwwjxjjjgg.jpg">Media</a>不管你做什么,你都有时会来一点背景音乐。不管你是开发、运维或是一个典型的电脑用户,享受美妙的音乐都可能是你在电脑上最想做的事情之一。同时随着即将到来的假期,你可能收到一些能让你买几首新歌的礼物卡。如果你所选的音乐是数字形式(我的恰好是唱片形式)而且你的平台是 Linux 的话,你会想要一个好的图形用户界面播放器来享受音乐。幸运的是,Linux 不缺好的数字音乐播放器。事实上,Linux 上有不少播放器,大部分是开源并且可以免费获得的。让我们看看其中的几款,看哪个能满足你的需要。Clementine我想从我用来许多年的默认选项的播放器开始。<a href="https://www.clementine-player.org/">Clementine</a> 可能是最好的平衡了易用性与灵活性的播放器。Clementine 是新停摆的 <a href="https://en.wikipedia.org/wiki/Amarok_(software)">Amarok</a> 音乐播放器的复刻,但它不仅限于 Linux; Clementine 在 Mac OS 和 Windows 平台上也可以获得。它的一系列特性十分惊艳,包括:內建的均衡器可定制的界面(将现在的专辑封面显示成背景,见图一)播放本地音乐或者从 Spotify、Last.fm 等播放音乐便于库导航的侧边栏內建的音频转码(转成 MP3、OGG、Flac 等)通过 <a href="https://play.google.com/store/apps/details?id=de.qspool.clementineremote">安卓应用</a> 远程控制便利的搜索功能选项卡式播放列表简单创建常规和智能化的播放&#…
Jack Wallen 盘点他最爱的五款 Linux 音乐播放器。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/232031rtjn0tiwwjxjjjgg.jpg">Media</a>不管你做什么,你都有时会来一点背景音乐。不管你是开发、运维或是一个典型的电脑用户,享受美妙的音乐都可能是你在电脑上最想做的事情之一。同时随着即将到来的假期,你可能收到一些能让你买几首新歌的礼物卡。如果你所选的音乐是数字形式(我的恰好是唱片形式)而且你的平台是 Linux 的话,你会想要一个好的图形用户界面播放器来享受音乐。幸运的是,Linux 不缺好的数字音乐播放器。事实上,Linux 上有不少播放器,大部分是开源并且可以免费获得的。让我们看看其中的几款,看哪个能满足你的需要。Clementine我想从我用来许多年的默认选项的播放器开始。<a href="https://www.clementine-player.org/">Clementine</a> 可能是最好的平衡了易用性与灵活性的播放器。Clementine 是新停摆的 <a href="https://en.wikipedia.org/wiki/Amarok_(software)">Amarok</a> 音乐播放器的复刻,但它不仅限于 Linux; Clementine 在 Mac OS 和 Windows 平台上也可以获得。它的一系列特性十分惊艳,包括:內建的均衡器可定制的界面(将现在的专辑封面显示成背景,见图一)播放本地音乐或者从 Spotify、Last.fm 等播放音乐便于库导航的侧边栏內建的音频转码(转成 MP3、OGG、Flac 等)通过 <a href="https://play.google.com/store/apps/details?id=de.qspool.clementineremote">安卓应用</a> 远程控制便利的搜索功能选项卡式播放列表简单创建常规和智能化的播放&#…
极客漫画:增强现实(AR) 2.0
增强现实技术(Augmented Reality),简称 AR,是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D 模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。Media
via https://linux.cn/article-10524-1.html
增强现实技术(Augmented Reality),简称 AR,是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D 模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。Media
via https://linux.cn/article-10524-1.html
极客漫画:增强现实(AR) 2.0
Media最近这几年我们一直听到虚拟现实(VR)和增强现实(AR),可很多人并不了解它们是什么。增强现实技术Augmented Reality,简称 AR,是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D 模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。这种技术可以让你将现实世界和虚拟世界结合起来,从而创造非常有趣的互动效果。可是,有一天 AR 里面的小鬼们真的出来了!via: http://turnoff.us/geek/augmented-reality-2/作者:Daniel Stori 译者 & 点评:wxy 校对 & 合成:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media
via https://linux.cn/article-10524-1.html?utm_source=rss&utm_medium=rss
Media最近这几年我们一直听到虚拟现实(VR)和增强现实(AR),可很多人并不了解它们是什么。增强现实技术Augmented Reality,简称 AR,是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D 模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。这种技术可以让你将现实世界和虚拟世界结合起来,从而创造非常有趣的互动效果。可是,有一天 AR 里面的小鬼们真的出来了!via: http://turnoff.us/geek/augmented-reality-2/作者:Daniel Stori 译者 & 点评:wxy 校对 & 合成:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media
via https://linux.cn/article-10524-1.html?utm_source=rss&utm_medium=rss
开始使用 eDEX-UI 吧,一款受《电子世界争霸战》影响的终端程序
使用 eDEX-UI 让你的工作更有趣,这是我们开源工具系列中的第 15 个工具,它将使你在 2019 年更高效。Media
via https://linux.cn/article-10525-1.html
使用 eDEX-UI 让你的工作更有趣,这是我们开源工具系列中的第 15 个工具,它将使你在 2019 年更高效。Media
via https://linux.cn/article-10525-1.html
开始使用 eDEX-UI 吧,一款受《电子世界争霸战》影响的终端程序
使用 eDEX-UI 让你的工作更有趣,这是我们开源工具系列中的第 15 个工具,它将使你在 2019 年更高效。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/10/222740fe2q0dh50999c024.jpg">Media</a>每年年初似乎都有疯狂的冲动想提高工作效率。新年的决心,渴望开启新的一年,当然,“抛弃旧的,拥抱新的”的态度促成了这一切。通常这时的建议严重偏向闭源和专有软件,但事实上并不用这样。这是我挑选出的 19 个新的(或者对你而言新的)开源工具中的第 15 个工具来帮助你在 2019 年更有效率。eDEX-UI当<a href="https://en.wikipedia.org/wiki/Tron">《电子世界争霸战》</a>上映时我才 11 岁。我不能否认,尽管这部电影充满幻想,但它对我后来的职业选择产生了影响。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/10/222822wb2kc18kkkckoeod.png">Media</a><a href="https://github.com/GitSquared/edex-ui">eDEX-UI</a> 是一款专为平板电脑和台式机设计的跨平台终端程序,它的用户界面受到《电子世界争霸战》的启发。它在选项卡式界面中有五个终端,因此可以轻松地在任务之间切换,以及显示有用的系统信息。在启动时,eDEX-UI 会启动一系列的东西,其中包含它所基于的 ElectronJS 系统的信息。启动后,eDEX-UI 会显示系统信息、文件浏览器、键盘(用于平板电脑)和主终端选项卡。其他四个选项卡(被标记为 EMPTY)没有加载任何内容,并且当你单击它时将启动一个 shell。eDEX-UI 中的默认 shell 是 Bash(如果在 Windows 上,则可…
使用 eDEX-UI 让你的工作更有趣,这是我们开源工具系列中的第 15 个工具,它将使你在 2019 年更高效。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/10/222740fe2q0dh50999c024.jpg">Media</a>每年年初似乎都有疯狂的冲动想提高工作效率。新年的决心,渴望开启新的一年,当然,“抛弃旧的,拥抱新的”的态度促成了这一切。通常这时的建议严重偏向闭源和专有软件,但事实上并不用这样。这是我挑选出的 19 个新的(或者对你而言新的)开源工具中的第 15 个工具来帮助你在 2019 年更有效率。eDEX-UI当<a href="https://en.wikipedia.org/wiki/Tron">《电子世界争霸战》</a>上映时我才 11 岁。我不能否认,尽管这部电影充满幻想,但它对我后来的职业选择产生了影响。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/10/222822wb2kc18kkkckoeod.png">Media</a><a href="https://github.com/GitSquared/edex-ui">eDEX-UI</a> 是一款专为平板电脑和台式机设计的跨平台终端程序,它的用户界面受到《电子世界争霸战》的启发。它在选项卡式界面中有五个终端,因此可以轻松地在任务之间切换,以及显示有用的系统信息。在启动时,eDEX-UI 会启动一系列的东西,其中包含它所基于的 ElectronJS 系统的信息。启动后,eDEX-UI 会显示系统信息、文件浏览器、键盘(用于平板电脑)和主终端选项卡。其他四个选项卡(被标记为 EMPTY)没有加载任何内容,并且当你单击它时将启动一个 shell。eDEX-UI 中的默认 shell 是 Bash(如果在 Windows 上,则可…
计算机实验室之树莓派:课程 4 OK04
OK04 课程在 OK03 的基础上进行构建,它教你如何使用定时器让 OK 或 ACT LED 灯按精确的时间间隔来闪烁。Media
via https://linux.cn/article-10526-1.html
OK04 课程在 OK03 的基础上进行构建,它教你如何使用定时器让 OK 或 ACT LED 灯按精确的时间间隔来闪烁。Media
via https://linux.cn/article-10526-1.html
计算机实验室之树莓派:课程 4 OK04
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/10/234202zj838rljquf9zy52.jpg">Media</a>OK04 课程在 OK03 的基础上进行构建,它教你如何使用定时器让 OK 或 ACT LED 灯按精确的时间间隔来闪烁。假设你已经有了 <a href="https://linux.cn/article-10519-1.html">课程 3:OK03</a> 的操作系统,我们将以它为基础来构建。1、一个新设备定时器是树莓派保持时间的唯一方法。大多数计算机都有一个电池供电的时钟,这样当计算机关机后仍然能保持时间。到目前为止,我们仅看了树莓派硬件的一小部分,即 GPIO 控制器。我只是简单地告诉你做什么,然后它会发生什么事情。现在,我们继续看定时器,并继续带你去了解它的工作原理。和 GPIO 控制器一样,定时器也有地址。在本案例中,定时器的基地址在 2000300016。阅读手册我们可以找到下面的表:表 1.1 GPIO 控制器寄存器地址大小 / 字节名字描述读或写200030004Control / Status用于控制和清除定时器通道比较器匹配的寄存器RW200030048Counter按 1 MHz 的频率递增的计数器R2000300C4Compare 00 号比较器寄存器RW200030104Compare 11 号比较器寄存器RW200030144Compare 22 号比较器寄存器RW200030184Compare 33 号比较器寄存器RW<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/10/234424z0ded7vccy4zz8y2.png">Flowchart of the system timer's operation</a>这个表只告诉我们一部分内容,在手册中描述了更多的字段。手册上解释说,定时器本质上是按每微秒将计数器递增 1 的方式来运行。每次它是这样做的,它将计数器的低 32 位(4 字节)与 4 个比较器寄存器进行比较,如果匹配&…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/10/234202zj838rljquf9zy52.jpg">Media</a>OK04 课程在 OK03 的基础上进行构建,它教你如何使用定时器让 OK 或 ACT LED 灯按精确的时间间隔来闪烁。假设你已经有了 <a href="https://linux.cn/article-10519-1.html">课程 3:OK03</a> 的操作系统,我们将以它为基础来构建。1、一个新设备定时器是树莓派保持时间的唯一方法。大多数计算机都有一个电池供电的时钟,这样当计算机关机后仍然能保持时间。到目前为止,我们仅看了树莓派硬件的一小部分,即 GPIO 控制器。我只是简单地告诉你做什么,然后它会发生什么事情。现在,我们继续看定时器,并继续带你去了解它的工作原理。和 GPIO 控制器一样,定时器也有地址。在本案例中,定时器的基地址在 2000300016。阅读手册我们可以找到下面的表:表 1.1 GPIO 控制器寄存器地址大小 / 字节名字描述读或写200030004Control / Status用于控制和清除定时器通道比较器匹配的寄存器RW200030048Counter按 1 MHz 的频率递增的计数器R2000300C4Compare 00 号比较器寄存器RW200030104Compare 11 号比较器寄存器RW200030144Compare 22 号比较器寄存器RW200030184Compare 33 号比较器寄存器RW<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/10/234424z0ded7vccy4zz8y2.png">Flowchart of the system timer's operation</a>这个表只告诉我们一部分内容,在手册中描述了更多的字段。手册上解释说,定时器本质上是按每微秒将计数器递增 1 的方式来运行。每次它是这样做的,它将计数器的低 32 位(4 字节)与 4 个比较器寄存器进行比较,如果匹配&…
将 Python 结合到数学教育中
身兼教师、开发者、作家数职的 Peter Farrell 来讲述为什么使用 Python 来讲数学课会比传统方法更加好。Media
via https://linux.cn/article-10527-1.html
身兼教师、开发者、作家数职的 Peter Farrell 来讲述为什么使用 Python 来讲数学课会比传统方法更加好。Media
via https://linux.cn/article-10527-1.html
将 Python 结合到数学教育中
身兼教师、开发者、作家数职的 Peter Farrell 来讲述为什么使用 Python 来讲数学课会比传统方法更加好。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/11/151256px4rqt4maadgft2a.png">Media</a>数学课一直都是很讨厌的一件事情,尤其对于在传统教学方法上吃过苦头的人(例如我)来说。传统教学方法强调的是死记硬背和理论知识,这种形式与学生们的现实世界似乎相去甚远。<a href="https://twitter.com/hackingmath">Peter Farrell</a> 作为一位 Python 开发者和数学教师,发现学生在数学课程中遇到了困难,于是决定尝试使用 Python 来帮助介绍数学概念。Peter 的灵感来源于 Logo 语言之父 <a href="https://en.wikipedia.org/wiki/Seymour_Papert">Seymour Papert</a>,他的 Logo 语言现在还存在于 Python 的 <a href="https://en.wikipedia.org/wiki/Turtle_graphics">Turtle 模块</a>中。Logo 语言中的海龟形象让 Peter 喜欢上了 Python,并且进一步将 Python 应用到数学教学中。Peter 在他的新书《<a href="https://nostarch.com/mathadventures">Python 数学奇遇记</a>Math Adventures with Python》中分享了他的方法:“图文并茂地指导如何用代码探索数学”。因此我最近对他进行了一次采访,向他了解更多这方面的情况。<strong>Don Watkins(LCTT 译注:本文作者):</strong> 你的教学背景是什么?<strong>Peter Farrell:</strong> 我曾经当过八年的数学老师,之后又做了十年的数学私教。我还在当老师的时候,就阅读过 Papert 的 《<a href="https://en.wikipedia.org/wiki/Mindstorms_(book)">头脑风暴</a>Mindstorms》并从中受到了启发,将 Logo 语言和海龟引入到了我所有的数学课上。<strong>DW:</strong> 你为什么开始使用 Python 呢?<strong>PF:</strong> 在我当家教的时候…
身兼教师、开发者、作家数职的 Peter Farrell 来讲述为什么使用 Python 来讲数学课会比传统方法更加好。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/11/151256px4rqt4maadgft2a.png">Media</a>数学课一直都是很讨厌的一件事情,尤其对于在传统教学方法上吃过苦头的人(例如我)来说。传统教学方法强调的是死记硬背和理论知识,这种形式与学生们的现实世界似乎相去甚远。<a href="https://twitter.com/hackingmath">Peter Farrell</a> 作为一位 Python 开发者和数学教师,发现学生在数学课程中遇到了困难,于是决定尝试使用 Python 来帮助介绍数学概念。Peter 的灵感来源于 Logo 语言之父 <a href="https://en.wikipedia.org/wiki/Seymour_Papert">Seymour Papert</a>,他的 Logo 语言现在还存在于 Python 的 <a href="https://en.wikipedia.org/wiki/Turtle_graphics">Turtle 模块</a>中。Logo 语言中的海龟形象让 Peter 喜欢上了 Python,并且进一步将 Python 应用到数学教学中。Peter 在他的新书《<a href="https://nostarch.com/mathadventures">Python 数学奇遇记</a>Math Adventures with Python》中分享了他的方法:“图文并茂地指导如何用代码探索数学”。因此我最近对他进行了一次采访,向他了解更多这方面的情况。<strong>Don Watkins(LCTT 译注:本文作者):</strong> 你的教学背景是什么?<strong>Peter Farrell:</strong> 我曾经当过八年的数学老师,之后又做了十年的数学私教。我还在当老师的时候,就阅读过 Papert 的 《<a href="https://en.wikipedia.org/wiki/Mindstorms_(book)">头脑风暴</a>Mindstorms》并从中受到了启发,将 Logo 语言和海龟引入到了我所有的数学课上。<strong>DW:</strong> 你为什么开始使用 Python 呢?<strong>PF:</strong> 在我当家教的时候…