分类 分享 下的文章

总体上说,软件开发和技术是以非常快的速度发展的领域,所以持续学习是必不可少的。在互联网上花几分钟找一下,在 Twitter、媒体、RSS 订阅、Hacker News 和其它专业网站和社区等地方,就可以从文章、案例研究、教程、代码片段、新应用程序和信息中找到大量有用的信息。

保存和组织所有这些信息可能是一项艰巨的任务。在这篇文章中,我将介绍一些我用来组织信息的工具。

我认为在知识管理方面非常重要的一点就是避免锁定在特定平台。我使用的所有工具都允许以标准格式(如 Markdown 和 HTML)导出数据。

请注意,我的流程并不完美,我一直在寻找新工具和方法来优化它。每个人都不同,所以对我有用的东西可能不适合你。

用 NotionHQ 做知识库

对我来说,知识管理的基本部分是拥有某种个人知识库或维基。这是一个你可以以有组织的方式保存链接、书签、备注等的地方。

我使用 NotionHQ 做这件事。我使用它来记录各种主题,包括资源列表,如通过编程语言分组的优秀的库或教程,为有趣的博客文章和教程添加书签等等,不仅与软件开发有关,而且与我的个人生活有关。

我真正喜欢 NotionHQ 的是,创建新内容是如此简单。你可以使用 Markdown 编写它并将其组织为树状。

这是我的“开发”工作区的顶级页面:

Image

NotionHQ 有一些很棒的其他功能,如集成了电子表格/数据库和任务板。

如果您想认真使用 NotionHQ,您将需要订阅付费个人计划,因为免费计划有所限制。我觉得它物有所值。NotionHQ 允许将整个工作区导出为 Markdown 文件。导出功能存在一些重要问题,例如丢失页面层次结构,希望 Notion 团队可以改进这一点。

作为一个免费的替代方案,我可能会使用 VuePressGitBook 来托管我自己的知识库。

用 Pocket 保存感兴趣的文章

Pocket 是我最喜欢的应用之一!使用 Pocket,您可以创建一个来自互联网上的文章的阅读列表。每当我看到一篇看起来很有趣的文章时,我都会使用 Chrome 扩展程序将其保存到 Pocket。稍后,我会阅读它,如果我发现它足够有用,我将使用 Pocket 的“存档”功能永久保存该文章并清理我的 Pocket 收件箱。

我尽量保持这个阅读清单足够小,并存档我已经处理过的信息。Pocket 允许您标记文章,以便以后更轻松地搜索特定主题的文章。

如果原始网站消失,您还可以在 Pocket 服务器中保存文章的副本,但是您需要 Pocket Premium 订阅计划。

Pocket 还具有“发现”功能,根据您保存的文章推荐类似的文章。这是找到可以阅读的新内容的好方法。

用 SnippetStore 做代码片段管理

从 GitHub 到 Stack Overflow 的答案,到博客文章,经常能找到一些你想要保存备用的好代码片段。它可能是一些不错的算法实现、一个有用的脚本或如何在某种语言中执行某种操作的示例。

我尝试了很多应用程序,从简单的 GitHub Gists 到 Boostnote,直到我发现 SnippetStore

SnippetStore 是一个开源的代码片段管理应用。SnippetStore 与其他产品的区别在于其简单性。您可以按语言或标签整理片段,并且可以拥有多个文件片段。它不完美,但是可以用。例如,Boostnote 具有更多功能,但我更喜欢 SnippetStore 组织内容的简单方法。

对于我每天使用的缩写和片段,我更喜欢使用我的编辑器 / IDE 的代码片段功能,因为它更便于使用。我使用 SnippetStore 更像是作为编码示例的参考。

Cacher 也是一个有趣的选择,因为它与许多编辑器进行了集成,他有一个命令行工具,并使用 Gi​​tHub Gists 作为后端,但其专业计划为 6 美元/月,我觉这有点太贵。

用 DevHints 管理速查表

Devhints 是由 Rico Sta. Cruz 创建的一个速查表集合。它是开源的,是用 Jekyll 生成的,Jekyll 是最受欢迎的静态站点生成器之一。

这些速查表是用 Markdown 编写的,带有一些额外的格式化支持,例如支持列。

我非常喜欢其界面的外观,并且不像可以在 Cheatography 等网站上找到 PDF 或图像格式的速查表, Markdown 非常容易添加新内容并保持更新和进行版本控制。

因为它是开源,我创建了自己的分叉版本,删除了一些我不需要的速查表,并添加了更多。

我使用速查表作为如何使用某些库或编程语言或记住一些命令的参考。速查表的单个页面非常方便,例如,可以列出特定编程语言的所有基本语法。

我仍在尝试这个工具,但到目前为止它的工作很好。

Diigo

Diigo 允许您注释和突出显示部分网站。我在研究新东西时使用它来注释重要信息,或者从文章、Stack Overflow 答案或来自 Twitter 的鼓舞人心的引语中保存特定段落!;)


就这些了。某些工具的功能方面可能存在一些重叠,但正如我在开始时所说的那样,这是一个不断演进的工作流程,因为我一直在尝试和寻找改进和提高工作效率的方法。

你呢?是如何组织你的知识的?请随时在下面发表评论。

谢谢你的阅读。


作者简介:Bruno Paz,Web 工程师,专精 #PHP 和 @Symfony 框架。热心于新技术。喜欢运动,@FCPorto 的粉丝!


via: https://dev.to/brpaz/how-do-i-organize-my-knowledge-as-a-software-engineer-4387

作者:Bruno Paz 选题:oska874 译者:wxy 校对:wxy

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

COPR 是软件的个人存储库的集合,它包含那些不在标准的 Fedora 仓库中的软件。某些软件不符合允许轻松打包的标准。或者它可能不符合其他 Fedora 标准,尽管它是自由开源的。COPR 可以在标准的 Fedora 包之外提供这些项目。COPR 中的软件不受 Fedora 基础设施的支持,或者是由项目自己背书的。但是,它是尝试新的或实验性软件的一种很好的方法。

这是 COPR 中一组新的有趣项目。

MindForger

MindForger 是一个 Markdown 编辑器和笔记本。除了你预期的 Markdown 编辑器的功能之外,MindForger 还允许你将单个文件拆分为多个笔记。组织笔记并在文件之间移动、搜索它们都很容易。我已经使用 MindForger 一段时间来记录学习笔记了,现在可以在 COPR 中找到它啦。

安装说明

该仓库目前在 Fedora 29 和 Rawhide 中提供 MindForger。要安装 MindForger,请使用以下命令:

sudo dnf copr enable deadmozay/mindforger
sudo dnf install mindforger

Clingo

Clingo 是使用回答集编程(ASP)建模语言解决逻辑问题的程序。使用 ASP,你可以将问题声明为一个逻辑程序,然后 Clingo 来解决。最后,Clingo 以逻辑模型的形式产生问题的解决方案,称为回答集。

安装说明

该仓库目前为 Fedora 28 和 29 提供 Clingo。要安装 Clingo,请使用以下命令:

sudo dnf copr enable timn/clingo
sudo dnf install clingo

SGVrecord

SGVrecord 是一个用于录制屏幕的简单工具。它允许你捕获整个屏幕或仅选择其中的一部分。此外,有没有声音都可以进行录制。SGVrecord 以 WebM 格式生成文件。

安装说明

该仓库目前为 Fedora 28、29 和 Rawhide 提供 SGVrecord。要安装 SGVrecord,请使用以下命令:

sudo dnf copr enable youssefmsourani/sgvrecord
sudo dnf install sgvrecord

Watchman

Watchman 是一个对文件更改进行监视和记录的服务。你可以为指定 Watchman 监视的目录树,以及定义指定文件发生更改时触发的操作。

安装说明

该仓库目前为 Fedora 29 和 Rawhide 提供 Watchman。要安装 Watchman,请使用以下命令:

sudo dnf copr enable eklitzke/watchman
sudo dnf install watchman

via: https://fedoramagazine.org/4-try-copr-december-2018/

作者:Dominik Turecek 选题:lujun9972 译者:geekpi 校对:wxy

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

eSpeak 是一个可在 Linux 命令行中使用的开源的 TTS 合成器。

欢迎回到《24 天介绍 Linux 命令行小玩具》。如果这是你首次阅读本系列文章,你可能不知道什么是 Linux 命令行小玩具。无需担心,你只需要边看边体会。通常来说,它有可能是游戏或其它能让你在终端中娱乐的小程序。

或许你已经对一些玩具有了解了,不过我们相信,在本系列文章中总有那么几个你没见过的玩意。

年轻读者可能不知道,在 Alexa、Siri 或 Google Assistant 问世之前,计算机就能说话了。

我们也许永远不会忘记来自 2001 太空漫游) 中与机组人员交流的 HAL 9000。但是在 1960 年代到今天的时间里,是存在着许多能说话的计算机的。它们有些很出色,也有些不那么出色。

其中一个我最爱的是一个叫做 eSpeak 的开源项目。它以多种形式发布,比如可以嵌入你自己项目中的库。与此同时,它也提供了可供你安装的命令行版本。在我所用的发行版中,安装十分简单,只需使用:

$ sudo dnf install espeak

你既可以与 eSpeak 交互,也可以用它来输出其它程序的信息,甚至通过简单的 echo 命令来使用它。这里 有一些可供 eSpeak 使用的声音文件,你可以在无聊时切换他们。甚者你可以制作一个属于你自己的声音。

在 2015 年,一些希望继续 eSpeak 开发的开发者创建了一个名为 eSpeak NG (即 “Next Generation”,“下一代”的意思)的项目。eSpeak 目前在 GPL v3 许可证下开源,你可以在 SourceForge 上详细了解这个项目或下载源代码。

别急,我今天还会介绍一个额外的小程序,它叫 cava。我经常希望用一张独一无二的截图作为我文章的头图,更何况今天的玩具主要是关于声音的,这就图片更少了。因此,我需要一些东西来填补这些空白。Cava 是 基于 ALSA 的命令行音频可视化工具 console-based audio visualizer for ALSA 的简写(尽管它现在支持的比 ALSA 更多),它是一个优秀的命令行音频可视化工具,并且它正以 MIT 许可证开源。下面是一个将 eSpeak 输出可视化的命令:

$ echo "Rudolph, the red-nosed reindeer, had a very shiny nose." | espeak

你想让作者介绍你喜欢的命令行玩具吗?请前往原文下留言,作者可能会考虑介绍的。同时,你也可以去原文下评论你对文章的看法。

欢迎去看看我们昨天介绍的玩具,在 Linux 命令行中使用 nudoku 解决谜题。敬请期待我们明天的文章吧!


via: https://opensource.com/article/18/12/linux-toy-espeak

作者:Jason Baker 选题:lujun9972 译者:zhs852 校对:wxy

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

假如你在命令行模式下渡过了很长时间,那么你必定使用过或者听说过 BASH 的 反向搜索 功能,在 Bash 中执行反向搜索功能的快捷键是 Ctrl+r。通过使用这个特性,我们可以找到我们执行过的命令而无需再次输入它们。当然,你可以使用上下键来搜索你的 bash 命令记录,但使用 Ctrl+r 快捷键可以让这个搜索过程更简单快速。今天我找寻到了 Bash 历史命令搜索特性 Ctrl+r 的一个替代品,它就是 McFly。McFly 是一个使用 Rust 编程语言写就的简洁工具,自带一个智能的搜索引擎,用来替换默认的 Ctrl+r 这个 Bash 历史命令搜索功能。 McFly 提供的命令建议都是通过一个小巧的 神经网络 来实时排序给出的。

McFly 重新绑定了 Ctrl+r 快捷键,可以从你的 Bash 历史命令中找到所有最近执行过的命令。它通过追溯下面的信息来增强你的 shell 历史命令搜索特性:

  • 命令结束状态
  • 当你运行命令时的时间戳
  • 以及你运行命令的执行目录

它将所有追溯的信息保存在一个 SQLite 数据库中。由于它追溯了命令的历史结束状态,所以你可以很轻易地忽略掉失败的命令。听起来很酷,对吧?

在给出一个命令建议时,它将考虑如下因素:

  • 你在哪个目录执行的这个命令,将来你很有可能在相同的目录重复这个命令
  • 在你执行这个命令之前,执行过什么命令
  • 你执行这个命令有多频繁
  • 你最后执行该命令的时间
  • 你是否在 McFly 中选择过这个命令
  • 以及这个命令的历史结束状态。因为你很有可能不会去执行失败过的命令,对吧?

McFly 维护着你的默认 Bash 历史文件,所以你可以随时停止使用它。McFly 也并不只服务于 BASH, 它也可以扩展到其他 shell 程序。

安装 McFly

在 Linux 中,McFly 可以使用 Linuxbrew 来安装。如若你还没有安装过 Linuxbrew,那么你可以参考下面的这个链接。(LCTT 译注:从其 GitHub 主页了解到也可以下载其二进制来使用。)

一旦安装好了 Linuxbrew,运行下面的命令来安装 McFly:

$ brew tap cantino/mcfly https://github.com/cantino/mcfly

$ brew install mcfly

在安装完成后,你将看到下面的输出:

==> Installing mcfly from cantino/mcfly
==> Downloading https://github.com/cantino/mcfly/releases/download/v0.2.5/mcfly-v0
==> Downloading from https://github-production-release-asset-2e65be.s3.amazonaws.c
######################################################################## 100.0%
==> ONE MORE STEP! Edit ~/.bashrc and add the following:

if [ -f $(brew --prefix)/opt/mcfly/mcfly.bash ]; then
. $(brew --prefix)/opt/mcfly/mcfly.bash
fi
/home/linuxbrew/.linuxbrew/Cellar/mcfly/v0.2.5: 4 files, 3.5MB, built in 33 seconds

正如你上面看到的那样,在使用 McFly 之前我们需要再做一些配置。

将下面几行添加到你的 ~/.bashrc 文件中:

if [ -f $(brew --prefix)/opt/mcfly/mcfly.bash ]; then
. $(brew --prefix)/opt/mcfly/mcfly.bash
fi

最后,再运行下面的命令来让更改生效。

$ source ~/.bashrc

当你第一次执行上面的这个命令时,你的 BASH 历史将会被导入 McFly 的数据库。依据你的 bash 历史文件的大小,这个过程将花费一些时间。一旦导入完成,你讲看到下面的提示信息。

McFly: Importing Bash history for the first time. This may take a minute or two...done.

现在你就可以使用 McFly 了。

使用方法

要在你的命令历史中执行搜索,只需要键入 mcfly search 再加上命令名的一部分,最后敲击回车键即可。Mcfly 将会基于你刚才键入的搜索查询语句给出命令建议。

$ mcfly search <part-of-the-command>

例如我键入了下面的命令:

$ mcfly search mk

下面展示的是我 Ubuntu 机子上的示例输出:

如你所见,我已经使用过 mkdir 这个命令两次。假如你想从这些命令建议中执行其中之一,只需使用上下键来选择它,然后敲击回车键来执行它就可以了。假如你想编辑其中一个命令,则需要先选择它,然后敲 TAB 键将这个命令放置到终端中,最后在运行它之前更改它就行了。要从历史中删除已经选择的命令,按 F2 即可。

或者,输入下面的命令来打开历史搜索,然后输入任意一个命令或者命令的一部分来从你的历史命令中查看它提供的建议。

$ mcfly search

在你输入的同时, McFly 将会展示命令的提示。

下面是一个介绍 McFly 的简短演示视频:

你还可以使用下面的命令来查看帮助:

$ mcfly --help

移除 McFly

不喜欢 McFly,没问题!可以使用下面的命令来移除它:

$ brew uninstall mcfly

$ brew untap cantino/mcfly

最后,移除先前添加到 ~/.bashrc 文件中的几行命令。

好了,这些就是所有了,更多精彩内容敬请期待,请保存关注!

干杯!


via: https://www.ostechnix.com/mcfly-a-replacement-to-ctrlr-bash-history-search-feature/

作者:SK 选题:lujun9972 译者:FSSlc 校对:wxy

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

视频只能在 GUI 下看么?再想想。

我们即将结束为期 24 天的 Linux 命令行玩具日历。希望你一直在看,如果没有,请回到这里开始,自己试试。你会发现 Linux 终端有很多游戏,消遣和奇怪的东西。

虽然你之前可能已经看过我们日历中的一些玩具,但我们希望对每个人至少有一个新事物。

今天我们要在昨天的玩具 MPlayer 上再加上一个 youtube-dl

正如其名称所暗示的那样,youtube-dl 是一个用于下载 YouTube 视频的命令行程序,但它也可以从其他许多站点下载视频,而且它是一个有着丰富文档的功能齐全的程序,从而使视频获取变得容易。注意:请勿在任何违反你所在司法辖区的版权法的情况下使用 youtube-dl

youtube-dl 使用的是 Unlicense 这个公共领域许可,类似于 Creative Common 的 CC0。这里还有哪些公共领域贡献适用于开源领域的法律意见,但它通常被认为与现有的开源许可证兼容,即使是不推荐使用它的组织也是如此。

最简单地,我们将使用 youtube-dl 来获取视频以便在终端中播放。首先,使用适用于你发行版的方法安装它。对我来说,在 Fedora 中,它被打包在我的仓库中,因此安装非常简单:

$ sudo dnf install youtube-dl

然后,获取一个视频。YouTube 允许你按照许可证进行搜索,所以今天我们将根据知识共享署名许可证查看来自 Gemmy’s Videos 中的壁炉视频。对于 YouTube 视频,你可以像这样用文件 ID 下载,我们也可以指定输出文件名。我故意选择了一个短片,因为长视频会变得很大!

$ youtube-dl pec8P5K4s8c -o fireplace.mp4

如果你昨天没有安装 MPlayer,请继续安装好,如果你之前没有安装 libcaca 则需要安装它。如果你直接用 MPlayer 在命令行中播放视频 ( $ mplayer fireplace.webm ),它能够播放,但是会在一个自己的窗口中,这不是我们想要的。

首先,我设置将 libcaca 强制使用 ncurses 作为显示驱动,使输出保持在我的终端:

$ export CACA_DRIVER=ncurses

然后,我放大了终端(“像素”越多越好),并使用以下命令播放文件(强制使用 libcaca 并静默 MPlayer 的文本输出):

$ mplayer -really-quiet -vo caca fireplace.mp4

这就完成了!

你有特别喜欢的命令行小玩具需要我介绍的吗?提交今年的建议有点晚了,但我们仍然希望在新的一年里有一些很酷的命令行玩具。请在下面的评论中告诉我,我会查看的。让我知道你对今天的玩具有何看法。

一定要看看昨天的玩具,在 Linux 终端收听广播,明天还要再来!


via: https://opensource.com/article/18/12/linux-toy-youtube-dl

作者:Jason Baker 选题:lujun9972 译者:geekpi 校对:wxy

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

新接触 Linux 游戏并想知道从哪里来 下载 Linux 游戏?我们列出了最好的资源,在这里你既能 下载免费的 Linux 游戏 ,也能购买优质的 Linux 游戏。

Linux 和游戏?从前,很难想象这两者走到一起。然而随着时间流逝,很多事情都在变化。到如今,有成千上万在 Linux 上可以玩的游戏,而大公司和独立开发者们正在开发更多的游戏。

在 Linux 上玩游戏 现在已经是现实。今天我们将去看看,你在哪里可以找到 Linux 平台游戏、搜索到你喜欢的游戏。

在哪里来下载 Linux 游戏?

下载 Linux 游戏的网站

首先,看看你的 Linux 发行版的软件中心(如果有的话)。在这里你也能找到大量的游戏。

但是,这不意味着你应该将自己的视野局限于软件中心上。让我们来为你列出一些可以下载 Linux 游戏网站。

1. Steam

如果你是老练的玩家,你应该听过 Steam。如果你还不知道的话,没错,Steam 在 Linux 上也是可用的。Steam 推荐运行在 Ubuntu 上,但是它也能运行在其它主要的发行版上。如果你真的对 Steam 很狂热,这里甚至还有一个玩 Steam 游戏的专用操作系统:SteamOS。我们在上一年 最佳的 Linux 游戏发行版 文章中提及了它。

Steam 商店

Steam 有最大的 Linux 游戏商店。当写这篇文章的时候,在 Linux 平台上,确切地说有 3487 款游戏,这真的是很多了。你可以从宽广的类型中寻找游戏。至于 数字版权管理(DRM),大多数的 Steam 游戏都有某种 DRM 。

对于使用 Steam ,要么你必须在你的 Linux 系统上安装 Steam 客户端,要么使用 SteamOS。Steam 的一个优势是,在初始化安装后,对于大多数的游戏,你不需要担心依赖关系和复杂的安装过程。 Steam 客户端将为你做这些繁重的任务。

2. GOG

如果你只对免 DRM 的游戏感兴趣,GOG 收集了相当多的这种游戏。此刻,GOG 在它们的库中有 1978 种免 DRM 游戏。GOG 因它大量收集了免 DRM 游戏而闻名。

GOG 商店

GOG 游戏官方支持 Ubuntu LTS 版本和 Linux Mint。所以,Ubuntu 和它的衍生版在安装它们时将没有问题。在其他发行版上安装它们时可能需要一些额外的工作,例如,你需要安装正确的依赖关系。

从 GOG 中下载游戏,你不需要额外的客户端。所有购买的游戏都可在你的账户区内找到。你可以使用你最爱的下载管理器直接下载它们。

3. Humble 商店

Humble 商店是另一个你可以查找各种各样 Linux 游戏的地方。在 Humble 商店中有免 DRM 和非免 DRM 的游戏。非免 DRM 游戏通常来自 Steam。在 Humble 商店中,当前有超过 1826 款 Linux 游戏。

Humble 商店

Humble 商店因另一个原因而著名。它们有一个被称为 Humble 独立包的活动,其中打包提供了一批游戏,带有令人不可抗拒的限时优惠。关于 Humble 的另一件事是,当你购买时,你的购买金额的 10% 将捐给慈善机构。

Humble 不需要额外的客户端来下载它们的游戏。

4. itch.io 商店

itch.io 是给独立数字创作者的一个开放市场,其致力于独立视频游戏。itch.io 有一些你能找到的最有趣、最独特的游戏。在 itch.io 的大多数游戏是免 DRM 的。

itch.io 商店

现今,itch.io 在它的商店中有 9514 款 Linux 平台的游戏。

itch.io 有它自己的 客户端,可以轻松地下载、安装、更新和玩它们的游戏。

5. LGDB

LGDB 是 Linux 游戏数据库 Linux Game DataBase 的缩写。虽然从技术上说它不是一个游戏商店,它收集有大量的 Linux 游戏,以及关于它们的各种各样的信息。每一款游戏都有你可以在哪里找到它们的链接。

Linux 游戏数据库

如今,在该数据库中有 2046 款游戏。它们也有很长的关于 模拟器工具游戏引擎 的列表。

6. Game Jolt 商店

Game Jolt 有一个非常可观的集合,在它的库藏中大约有 5000 个 Linux 独立游戏。

Game Jolt 商店

Game Jolt 有一个(预览版)客户端,可用于轻松地下载、安装、更新和玩游戏。

其他

有很多其他的销售 Linux 游戏的商店。也有很多你能找到免费游戏的地方。这是它们中的两个:

  • Bundle Stars:当前有 814 个 Linux 游戏和 31 个游戏包。
  • GamersGate:现在有 595 个 Linux 游戏。既有免 DRM 的,也有非免 DRM 的。

应用商店、软件中心 & 软件库

Linux 发行版有它们自己的应用商店或软件库。尽管不是很多,但是在这里你也能找到各种各样的游戏。

今天到此为止。你知道这里有这么多 Linux 上可玩的游戏吗?你使用一些其他的网站来下载 Linux 游戏吗?与我们分享你的收藏。


via: https://itsfoss.com/download-linux-games/

作者:Munif Tanjim 译者:robsean 校对:wxy

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