coolicer

Let's embrace the future together.

2014 年 03 月 16 日
by Ryan
评论关闭

这个博客,
是一个特别的名字。
暂时由 Ryan & Lemon 更新,
我们不一定会是发表技术相关,技术在世界上只是一个小目录。

我们喜欢结交各种朋友。

2014 年 04 月 11 日
by Ryan
0 comments

码农行列

想不到工作了4年,反而越来越像码农。

这份工作的挑战挺多,如果早2年做可能我会很兴奋。但,在这个时候,我一点都不兴奋,纯粹是为了工作为工作。如果以后只是作为一个写代码的人,这些经验是不错的。让我把基础再做一次,尝试没有尝试过的东西。

在这次过程中,最让我印象深刻的是要导出报表这件事。本次项目可以说是一个纯静态的项目。C++提供socket,前端只用Angular就能完成想要的效果。由于某些原因,报表就交到了我手上。在没有后端的情况下,我就是后端了,我使用了Nodejs。这里很感谢sail的ejsExcel的插件。没有这个插件和他的帮助,我可能完成不了这部分功能。

2014 年 03 月 16 日
by Ryan
1 Comment

重生或毁灭?

曾经一度,我忘了这个博客的存在。因为这段时间,我感觉自己转行了。

做的还是前端,但是脱离了web。这份工作开始2星期后,我便被公司派到外面出差。尽管不是很远,但是还是有点不习惯,工作快四年了,第一次出差。临行前是有点期待,现在是有点失望。但是工作还是必须的,所以还是要硬上了。工作上的问题不想多说,刚来的时候,接手上这个东西有点跟不上的感觉。毕竟上一家公司闲了大半年,以致于有了下手难的情景。

无论在工作还是生活,我试过要把2者区分,不想把两者的事情搅在一块。但事实上,感觉都失败了。到了今天,我发现了一切问题的原因,因为我不够踏实。无论是做为一个老公或者一个儿子一个父亲。我随性而行过了20几年,可能已经成为了一种习惯,小时候父亲也没有管过我们,所以,我很感谢他。但是同时带给我一个懒散的借口,在学生时代,我不求甚解。因为我不明白为了什么而学,在参加工作之时,我们因为浪费了太多的时候而匆忙地走上了IT之路。这一切,像是注定一样。但是,在今天,仿佛我可以改变一样。

人的一生都是在思考,我经常会自我反省。但是有什么用,有决心去做才是正道。希望看过这篇文章的人,都能想想,你现在的状态,是重生或者走向毁灭。

2014 年 03 月 06 日
by lemon
1 Comment

phantomjs前端性能测试

phantomjs 是基于Javascript驱动的命令行webkit引擎.简单的说就是命令行里的v8引擎.

安装:
下载地址(我这里是下win环境的安装包)

获取HAR生成网站瀑布流图表:

HAR(HTTP Archive),是一个用来储存HTTP请求/响应信息的通用文件格式,是基于JSON格式的。这个格式的出现可以使HTTP监测工具以一种通用的格式导出所收集的数据,这些数据可以被其他支持HAR的HTTP分析工具(包括Firebug,httpwatch,Fiddler等)所使用,来分析网站的前端性能瓶颈。目前HAR规范最新版本为HAR 1.2。HAR文件必须是UTF-8编码,有无BOM是无所谓的。

使用phantomjs提供的一个获取HAR的例子netsniff.js
在netsniff.js文件当前目录下运行:

phantomjs netsniff.js http://www.vip.com > har/vip%date:~3,4%-%date:~8,2%-%date:~11,2%.har

生成以当前时期命名的.har文件,再利用在线预览HAR工具har-viewer查看瀑布流图表


Continue Reading →

2014 年 02 月 24 日
by lemon
评论关闭

VML&SVG绘图

由于项目需要绘制饼图加上参考 raphaeljs 总结的一起方法.

VML:
使用shape的path属性绘制

<style type="text/css">
  .rvml {
    BEHAVIOR: url(#default#VML)
  }
</style>
<?xml:namespace prefix = "rvml" ns = "urn:schemas-microsoft-com:vml" />
<rvml:shape class=rvml style="HEIGHT: 1px; WIDTH: 1px; POSITION: absolute; LEFT: 0px; FILTER: none; TOP: 0px" coordsize = "1,1" fillcolor = "#cf0" strokecolor = "white" strokeweight = "2.25pt" path = " ar100,100,500,500,499,306,200,126 l300,300 x e"></rvml:shape>

VML需要设置style和名字空间,参考了raphaeljs于是有了以下代码

var doc = window.document;
doc.createStyleSheet().addRule('.rvml', 'behavior:url(#default#VML)');

!doc.namespaces.rvml && doc.namespaces.add('rvml', 'urn:schemas-microsoft-com:vml');
var createNode = function(tagName) {
  return doc.createElement('');
};

Continue Reading →

2014 年 02 月 10 日
by Ryan
2 Comments

2013我几乎停滞的一年

2013,我辞掉了在的第一份工作,当然是从广州回来算起。

休息兼玩了1个多月,在广州和珠海两地中作斗争,选择前者可以带来多一些的经济收入。但是我经常会在想,我努力工作赚钱为谁,一个人在广州有什么意思。最后我选择还是在珠海,虽然工资不高,但是每周都可以回家看看女儿,哪怕我是回去玩游戏。至少我有看见她。刚来这家公司,挺忙的。但一个多月后发生了变化,我变成了一个没有用的人。项目停止了,但我还在岗位上。一直待到了年后,空闲的时间学得比较杂。唯一的一点是记了些东西下来,现在我是什么都不记得了。如果再给我一次这么有空的时间,我还是不懂怎么做,有时候人是改变不了环境的。当我决定要走了,才是我坚持下去的动力。因为还有两三个月过年了,心想着明年再去找工作吧。在这里挺感谢经理,如果在很久的时候就炒掉我,我的命运应该会不一样了。这一切,都是坚持下来的结果,虽然这一年什么也没有做出来,但是感觉是一个新的开始。

停滞,似乎专为我代言。我的工作过程一直都充满各种停滞,这也许就是命。有的人工作很顺利,有的人不会。但我也不属于很差的,因为我还活着。

我讨厌总结,也许是为了逃避。以至于到了2014年我才敢回来写下2013的笼统总结,随性的人崇尚自由生活。但前提是有这个资格,我越发感觉我不是一个好的IT人,但我目前只能做这个工作。为了生存,我必须再次定一些计划,让自己可以适应新的环境。

2014 年 01 月 08 日
by Ryan
评论关闭

Angular文章:$watch,$digest,$apply

http://angular-tips.com/blog/2013/08/watch-how-the-apply-runs-a-digest/

http://www.benlesh.com/2013/08/angularjs-watch-digest-and-apply-oh-my.html

http://stackoverflow.com/questions/15112584/using-scope-watch-and-scope-apply

简单言之,$watch为主动监听某个属性,$digest为循环$watch的事件,$apply把angular作用域外的属性加入监听,或者称为将其加入$scope的context中。

2014 年 01 月 02 日
by lemon
评论关闭

Ubuntu搭建svn Server

1.安装svn

sudo apt-get install subversion

2.创建svn仓库

sudo svnadmin create /home/svn/demo

3.修改配置文件
/home/svn/demo/conf/authz

[aliases]

[groups]

#目录
[/]

#用户权限
admin = root
@admin =rw
* = r

/home/svn/demo/conf/passwd

[users]

#用户名密码
root = 123456

/home/svn/demo/conf/svnserve.conf

[general]
anon-access = read
auth-access = write
password-db = passwd
[sasl]

4.启动svn服务

svnserve -d -r /home/svn

5.checkout

svn checkout svn://127.0.0.1/demo --username root --password 123456 /usr/share/nginx/html/demo

6.同步更新
/home/svn/demo/hooks/post-commit

#!/bin/sh
export LANG=zh_CN.UTF-8
sudo /usr/bin/svn update /usr/share/nginx/html/demo --username root --password 123456

ps:此为可执行文件

7.开机自启动
新建sh文件

sudo touch /etc/init.d/svnd.sh

修改sh为可执行文件

sudo chmod 777 /etc/init.d/svnd.sh

/etc/init.d/svnd.sh

#!/bin/bash
### BEGIN INIT INFO
# Provides:          svnserver startup
# Required-Start:
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: svnserver startup
# Description:       svnserver startup
### END INIT INFO

sudo /usr/bin/svnserve -d -r /home/svn

添加自启动

update-rc.d svnd.sh defaults

重启

2013 年 12 月 30 日
by Ryan
评论关闭

Compass新手指南(2)

看Lemon同学的笔记有点晕,毕竟写这么短只有自己能懂。所以我才把我自己的记下来,方便别人和自己。像Sass这样的元语言是不需要学习的。只要懂Css,你就能秒懂。不过有一些东西你有可能不了解,例如开发实战。

从官网的例子看出,使用了一个_base.scss的文件来做初始文件。

$blueprint-grid-columns : 24;
//一些变量

@import "compass/reset";
@import "compass/utilities";
//引入一些自带的模块

@mixin mixin-name {
   ....
}
//这里可以是mixin,何为minix自己去找

这样做有2大好处,一个自然是@import “base”;就可以给需要的文件引用。另外这个以下划线开头的scss不会生成出来,只是内部生成样式的时候引用。扯完了一些常识,我们就可以来做合并图片。

下面我使用IDE(webstrom6.0.2)来演示,请确保Sass-support开启,这个默认都开启的。其实这个原理也很简单,就是IDE帮我们运行命令罢了。

打开设置->External Tools,新增一个就可以了。大致是最后三个比较重要:

program: C:\Ruby193\bin\ruby.exe
parameters: C:\Ruby193\bin\compass compile
working directory: E:\Ruby\sass_project

使用的时候右键那个scss文件就可以在菜单看到设置的External tool,可以不想这么麻烦,可以把compile换成watch。


合并小图不外乎是做好配置文件,在项目里,有一个叫config.rb的配置文件,具体参数可以去http://compass-style.org/help/tutorials/configuration-reference/。

这里推荐一个视频:http://www.alloyteam.com/2013/10/use-sass-compass-etc-bond-graph/

演示项目打包下载:http://pan.baidu.com/s/1o6AY1JG

2013 年 12 月 30 日
by Ryan
评论关闭

Compass新手指南(1)

在Lemon同学的推荐下,我看了有关Compass的一个非常有用的技巧,合并sprite。过去我们常常使用PS来做这件事,其实我很早就很讨厌用PS来合并。一来是要自己切图,二来是摆得不好看。有了这个合图工具,真的是好啊。从前不喜欢用Sass之类的CSS框架,但是当配置上Compass这样的工具,让人有兴趣想写了。

既然是新手指南就是从一个菜鸟就可以未完成的,首先我们来安装Ruby。

1、搜索RubyInstaller,找一个大于1.8.6的版本
这个坑我就试了,低于1.8.6是不能安装Compass的。

2、修改gem源
自己去看这个网址:http://ruby.taobao.org/

3、安装Compass
gem install compass

接下来可以使用compass创建一个项目了,测试一下吧。

4、创建测试项目
compass create sass_project

创建后,你会看到里面有3个文件夹和一个.rb的配置文件。通常sass都放sass里(废话),然后通过简单的命令可以让生成的css进入stylesheets这个文件夹。一般我们用 compass compile 和 compass watch。更多的用法可以去官网查看相关资料。创建项目时,好像内置的是一个叫blueprint的CSS框架。可以无视之,毕竟现在有优秀的bootstrap。但是bootstrap用的是Less,这也无妨。毕竟应该可以搜到sass版本吧。