用p5.js制作烟花特效

前言

之前看过一篇文章,使用processing制作烟花特效。效果如下
fireworks

网上调查了一圈了,发现processing是一个互动编程软件,java语言发展而来。而且动画效果是跑在processing专门的模拟器上。
不过好在也有对应的web扩展语言,有processing.js和p5.js。
processing.js在github上已经好几年没有人维护了,一些processing的特性支持不了。为此踩了不少坑,
本文就集中讲解如何用p5.js写烟花特效。

Continue reading

ubuntu(16.04)启动时间分析与apt-daily.service优化

启动时间查询

mingfeng@thinking:~$ systemd-analyze
Startup finished in 8.199s (kernel) + 7.865s (userspace) = 16.064s

各启动项消费的时间查询

mingfeng@thinking:~$ systemd-analyze blame 
          6.196s NetworkManager-wait-online.service
          1.069s mysql.service
          1.015s dev-sda2.device
           331ms apparmor.service
           301ms php7.0-fpm.service
           280ms accounts-daemon.service
           253ms ModemManager.service
           253ms systemd-udevd.service
           227ms networking.service
           207ms systemd-logind.service
           198ms console-setup.service
           192ms lightdm.service
           180ms systemd-cryptsetup@cryptswap1.service
...

Continue reading

JUPITER+PYTHON+SELENIUM(UBUNTU)

前言

jupiter是一款开源软件。可以借助jupiter通过web进行编写python, nodejs等语言及调试。
说得有点官方了。通常我们更关心,它能用来做什么?
那我们就来说说场景吧。

  • 场景1
    作者所属的公司团队里,赶时髦也在推进测试的自动化。但团队里的测试人员的编码水平还有待提升。如何迅速地推进自动化测试在业务项目中落地是一个重大课题。
    首先我们明确下需求。需求是什么? 测试人员编写自动化测试代码!!!
    测试人员需要关心IDE安装? 不需要
    测试人员需要很高深的编码技巧? 只是自动化测试的话,够用就行! 如果测试代码写得比业务代码还复杂,那可能南辕北辙了。
    测试人员可能需要开发帮助定位问题或修改测试代码? 开发可能要跑到测试的工位上或测试抱着电脑找开发,想想都觉得low了。
  • 场景2
    像作者这种python半吊子,还停留在看懂借助手册才能写代码阶段(其实是伪/复制代码)的程序员。只是单纯地跑下程序片段观察效果的,用jupiter就刚好合适。

Continue reading

Shell script防止重复启动

如何保证shell脚本在系统里同一时间点,不会被重复执行。只需要在shell脚本头部追加以下代码。

_process=`basename $0`

_pcnt=`pgrep -fo ${_process} | wc -l`

if [ ${_pcnt} -gt 1 ]; then
  echo "This script has been running now. proc : ${_pcnt}"
  exit 1
fi

Git alias

Git alias列表


[alias] recom = commit --amend diffh = diff HEAD diffhh = diff HEAD^ cbran = rev-parse --abbrev-ref HEAD cancel = reset --soft HEAD^ cpush = !git push origin `git cbran` cpull = !git pull origin `git cbran` fpull = !git fetch origin `git cbran` && git reset --hard origin/`git cbran` slog = log --pretty=format:'%C(yellow)[%ad] %C(green)%h %Creset: %s' --date=iso delete-brans = !git branch --merged | grep -v \\* | grep -v 'master\\|release' | xargs -I % git branch -d %

Continue reading

Google VR VIEW FOR THE WEB

Google VR?

使用谷歌提供的VR View JS脚本可以将全景照片,视频等资源简单地展示在网站上。本文主要讲解如果通过谷歌的脚本实现图片的VR化。

支持的格式

如上图VR View支持mono 和stereo 360两种图片。支持图片扩展格式为png, jpeg, gif。推荐使用jpeg来提高压缩。

Mono图片推荐宽高比例是2:1 (如:4096:2048)

Stereo图片推荐宽高比例是1:1 (如:4096:4096)

Continue reading