最近一周,各大学校的期末考试也陆陆续续要考完了,大部分同学都是在异地求学,考完试就准备跟基友和男/女朋友道别,回家过年,再返校时已是一个多月之后,归去来兮之间,已不只千万言。
常有人会依依不舍,舍不得分开的方寸,但是短暂的告别其实带来的不是难受和烦恼,一去一归一来一往反而给时节的变化带来更多趣味和酝酿,用一些时空的短暂距离拉长彼此的倒影,填充人与人之间的缓存,下次再访问的时候,速度反而会更快。
来易来,去难去,别忘了我们这里还有鱼,分亦分,聚难聚,请记得年后两情就来续。归去来兮,芳草萋萋,分开的是冬凛,再见时将是春蕤。
作为新起点的一期周报这周也有些有意思的东西,#learnGitBranching# 可以让你自己动手方便的了解 Git 的工作流程;#QUICKLINK# 则可以预读下一个网页之后的链接进行加载;#qt# 则是 Go 与 Qt 的结合;#sherlock#可以让你在社交网络上寻找某个用户名;不过其中最现实的还是 #12306#,这玩意是拿来抢票用的……现在准备春节的车票应该还来得及对吧。
本周全球流行开源项目榜中榜
1.learnGitBranching
可视化 Git 教学
如果你是一个刚刚开始接触 GitHub 的萌新,对于 Git 的工作方式还不了解:分支是什么?推送之后会发生啥?这个项目可以很好的帮助你理解上述这些问题。你可以一边对着键盘敲一个 git commit,然后抬头看看——屏幕上会很清楚的显示出你究竟做了什么。如果要以此学习 Git 的话可以跟着它提供的关卡一步步进行下去;或者说你想要测试一下你的理解是否正确的话,它也提供了沙盒模式,你可以进行任何你想要的操作,然后看看究竟发生了什么,这用来干一些骚操作正合适。
2.QUICKLINK
#QUICKLINK# 小项目可以在我们浏览网页的空闲时间中,预取视区窗口内的链接,这样可以加快后续页面的加载速度,降低砸鼠标的概率,佛系冲浪。
具体运行原理是:先检测视区内的链接,然后等浏览器空闲(这样不会影响网民的冲浪体验),再检查用户的连接是否慢速、是否启用了数据保护,随即获取 url(含优先级的控制)。
当然,这个工具也非常小。
我们在使用时可以自定义设置认定为空闲的时间,设置 DOM 来检测链接,也可以自定义预取的 url,设置预取链接的优先级以及通过忽略列表过滤一些不好的“神秘”链接。
节省的 4 秒钟 可以搞很多事情,也挽救了不少鼠标和键盘。
3.Ant Design
Ant design 是一款企业级的用于 web 应用的 UI 设计系统。Ant design 拥有其高质量的 react 组件,在企业级项目开发中,你可能会需要 Redux 或者 MobX 这样的数据流方案,Ant Design React 作为一个 UI 库,可以和任何 React 生态圈内的数据流方案以及应用框架搭配使用。
同时 ant design 也同时提出了 dva,dva 是基于 redux 的轻量级数据流方案,目前在相关环境中得到了广泛的应用。
Ant design 最近一次大更新是对于基于其相关内容组件的大修复。
4.sherlock
犹如大侦探福尔摩斯的存在,Sherlock 提供了一个便捷的方法,让使用者只需输入想查找的人名,便会得到该人名在各大社交平台上的存在及连结,这个微项目使得想寻找失散多年的姐姐时,得以省下不少精力。
5.Auto.js
Auto.js 是一个以 JavaScript 为开发语言的支持无障碍服务的 Android 平台上自动化操作软件,其主要目的是方便日常工作,例如启动游戏时自动屏蔽通知、一键与特定联系人微信视频,贴吧自动签到,配合通知事件达到批量添加联系人、自动提取短信验证码等功能,解放你的双手,提高你的工作效率。以控件操作为基础,(如果手机拥有 root 权限,也可以精准点击坐标),相比于按键精灵等图色为主的自动化软件,兼容性更好,效率更高。同时,Auto.js 拥有强大的界面编写功能,不单单可以编写脚本,也可以写成一些轻量级的软件。
6.The Silver Searcher
类似于代码搜索工具ack,专注于速度。
Ag 的优点:
1. 比 ack 快一个数量级。
2. 它会忽略来自 .gitignore 和 .hgignore 的文件模式。
3. 如果源仓库中有您不想搜索的文件,只需将其模式添加到 .ignore 文件中即可。
4. 命令名称相比 ack 缩短了 33%,并且所有键都在主行上!(all keys are on the home row)
Ag 快的原因:
- Ag 使用 Pthreads 来利用多个 CPU 内核并并行搜索文件。
-
文件采用 (mmap()) 的方式,而不是载入缓存。
-
使用 Boyer-Moore strstr 进行文字字符串搜索。
-
正则表达式搜索使用 PCRE 的 JIT 编译器( PCRE's JIT compiler)。5.Ag 在对每个文件上执行相同的正则表达式之前调用 pcre_study()。非正则表达式模式被载入到数组和二进制搜索中,而不是在忽略文件中的每个模式上调用 fnmatch()。
7.qt
想必大家都或多或少的听说过 qt 了,这次可不是 qt 在 github 上的项目,而是用 go 编写 qt 程序。对于同时对 go 和 qt 感兴趣的同学来说这个项目可以说是不容错过的,他们已经提供了试用的 demo,感兴趣的话在下载之前可以去试用一下。兴许再过不久,和 pyqt 差不多的 goqt 就要由这个项目发展而来了。
8.homemade-machine-learning
机器学习依旧保持着极高的热度,越来越多的人希望探索这个领域。但机器学习对许多人来说似乎过于高深了,这可能是因为这一领域与一些复杂而抽象的数学理论密切相关。尽管如此,我们仍然有机会了解一些简单的机器学习案例的工作机理,并且这一切仅仅以一些简单的数学理论为基础。
本次介绍的项目 homemade-machine-learning 即是一个侧重于机器学习教学的项目,这一项目包含了一些经典的机器学习示例,其中的代码是由 Python 实现的,你甚至可以自己调整相关的参数,看一看这对结果会有何种影响。该项目的目的主要是让读者更好地理解机器学习的相关算法,因而其不适合用于产品的开发。
9.Sidekiq
Sidekiq 能够高效,快速的处理后台进程。它基于多线程技术,能在同一时间处理很多工作。并且它不需要 rails 但却能紧密集成 rails,使后台处理更加简单。
Sidekiq 与 Resque 兼容,它们使用相同的信息格式。所以你可以让它们协同工作,这能极大的提升工作效率。
但是 Sidekiq 也有自己的缺点,Sidekiq 里的任务基本都是爬虫脚本,都需要请求外部网站。但是有些网站的响应时间或者读取时间太久,就会一直卡在那里,使得后面的任务不能执行。
10.12306
春节将至,高铁抢票成为了大家最关心的问题。本次为大家推荐的项目是 12306 刷票、订票系统,顾名思义,就是为大家提供了抢票的便利,是一个我们生活中非常实用的项目。该系统的代码主要由 python 实现,依赖若快和项目依赖包运行。下载便利,能够真正意义上加速大家抢票的过程,可以说是新年必备项目了!