Browsed by
分类:Tech

用Makefile简化重复的多个命令

用Makefile简化重复的多个命令

经常会通过编译安装一些Linux包,最熟悉的就是make test, make install 这类命令了,以为make只适用于编译安装.
实际上发现Makefile/makefile在简化一些常用命令(多行命令或长命令)时也非常方便.

# Makefile
install:
    @go get github.com/revel/cmd/revel
    @dep ensure
server:
    revel run github.com/xulz/webapp

Makefile规则

<目标>:<执行的前提条件,即有文件更新才执行>
(tab) 具体的命令

  • 默认执行第一个目标.
  • 在命令前添加@ 表示不打印正在执行的命令

Makefile的一些语法

# 定义变量, 使用 $(LDIR) 引用
LDIR =../lib

自动化变量:
* $< 表示所有的依赖目标集
* $@ 表示目标集

调试

带参数 -n或–just-print, 只显示命令而不执行.

扩展阅读

用Jupyter/iPython Notebook做笔记

用Jupyter/iPython Notebook做笔记

ipython作为一个必备的学习/调试环境, notebook可以看做其增强版, 支持Markdown格式说明, 很适合用笔记或者演示/培训用途,基本是机器学习的标配.

安装及运行

python3 -m pip install jupyter
jupyter notebook

新版的iPython要求Python 3.3以上,因此建议在python3环境使用

如果在本地没有运行环境,有想打开一个包含笔记的GitHub仓库, 可以使用binder在云端打开.

更多使用笔记之后更新.

扩展阅读

你的网站账号密码安全吗

你的网站账号密码安全吗

今天看了Django开发者的一篇文章,关于web安全的子项目, 其中提到了一个用于检测用户密码是否安全的API.

不同于普通的密码强度检测,它的检测原理基于最近这些年大型的互联网公司数据库泄漏事件,比如CSDN,天涯,HiAPK安卓网,网易等.

对普通用户,提供两个主要的网页查询功能:

  • 你邮件账户的密码是否已泄漏[1]
  • 你正在使用的密码是否存在于泄漏数据库及被其他用户泄漏的次数[2]

    Read More Read More

pytest测试框架

pytest测试框架

单元测试最初流行是从JUnit,而他的发明者Kent Beck大神的经典名作<测试驱动开发>这本小书却引领了TDD的风潮,产生了xUnit各个语言系列.

初次接触pytest,感觉不像个xUnit,因为既看不到对TestCase的继承,也找不到Setup/Teardown这些建立/销毁函数.当然这些基本功能肯定是支持的.

pytest虽然作为一个Python单元测试框架的扩展版, 但是它丰富的功能和灵活的特性也很适合做功能测试, 其中的精华就是fixtures.

Read More Read More

分布式系统的那些论文及开源实现

分布式系统的那些论文及开源实现

近几年总能看到大数据,云计算这些buzz word/时髦词, 可是说来惭愧,对近10来年历史上那些著名论文及主要内容却知道的很少.

之前零散的看到分布式系统的一些文章,接下来总结下主要内容,也打算读几本书系统的学习下.

今天先看看这些经典论文及衍生的开源系统.

按时间顺序/影响力最大的应该就是谷歌的老三篇了,即 GFS + MapReduce + BigTable.

Read More Read More