爬爬网

放鞭放炮,赶在201314交替之际,爬爬网的alpha版,终于千呼万唤终于始出来啦。

爬爬网

本人是爬爬科技的ceo,我们爬爬科技的口号是:爬你,爬我,爬他全家。。。

搭建eclipse+maven+scala-ide的scala web开发环境

江湖传闻,scala开发的最佳利器乃 JetBrains 的神作 IntelliJ IDEA,外加构建工具 sbt 是也。

但因历史原因,项目组成员对 Eclipse+Maven组合更为熟悉,为了快速实现项目原型,不增加不确定因素带来的风险,搭建一套 Eclipse+Maven+Scala-IDE 的开发环境。

基本原则是,必须完全满足但不限于以下几点内容:

  • 方便重构,方便调试,支持热部署。
  • 可直接使用已有maven的本地和私服仓库。
  • 可以无束缚的只用自己熟悉的语言编写代码。
  • 可以快速混合编译scala+java代码,包括交叉引用的文件。

如果你有洁癖,可以自己下载Eclipse,然后安装各种插件。但是可能会遇到插件依赖包版本冲突之类的问题,为了速度,我直接下载官方打包好的 Scala-IDE,有各种平台可供选择。

使用 Git 管理项目源代码,需要安装 EGit 插件,Eclipse插件更新地址 EGit Updates

假设项目名称为 feeling,使用 JDK 1.7,Servlet 3.0,最终目录结构如下。

.
├── .settings #eclipse工程目录
├── .classpath #eclipse classpath文件
├── .project #eclipse project文件
├── src #源代码
| ├── main #源代码主目录
| | ├── java #java代码
| | ├── scala #scala代码
| | ├── resources #资源文件
| | └── webapp #web主目录
| | ├── WEB-INF #WEB-INF目录
| | | └── web.xml #web.xml文件
| | └── index.jsp #主页面
| └── test #测试代码
| ├── java #java测试代码
| ├── scala #scala测试代码
| └── resources #测试资源文件
├── .gitignore #git忽略配置
├── target #编译输出目录
├── README.md #markdown格式的说明文件
└── pom.xml #maven的pom文件

如何在Amazon EC2中挂载EBS作为永久存储

如何在Amazon AWS上申请EC2不再多说,很多前辈给出了教程,本文只说如何挂载那免费的30G EBS。我申请的一年的免费的32位Red Hat Enterprise Linux,详细参数:

Red Hat Enterprise Linux 6.4 - ami-80bbf3d2 (64-bit) / ami-9cbbf3ce (32-bit)
Red Hat Enterprise Linux version 6.4, EBS-boot.
Root device type: ebs Virtualization type: paravirtual

对传统BI的思考和吐槽

声明:本文是用 iPad 写于上班路上,所有观点解释权归本人 Bruce-Sha 所有。在大数据和移动互联网风起云涌的13年末,本文是对自己四年工作的总结,也是对未来的从业思考。

在做了四年BI之后,我对中国式的BI有一些自己的看法。传统BI厂商早已黔驴技穷,注定穷途末路。

我在一个国内著名的企业软件厂商工作。其BI团队虽小,但是该做的事情一样都没落下,从静态报表工具到OLAP多维分析,从建模工具语义层到互动式仪表板,从嵌入式组件到独立门户,从桌面软件到移动应用。别人有的产品他基本都做过,虽然每个产品最后难逃不再继续研发不再继续销售的命运。而每到年底他们思考的都是明年再新做个什么?

使用Dropbox建立Git私有仓库

无论是小型的团队或是个人都有协同开发的需要,GitHub上提供了仓库但是必须是public的,对于暂不公开的代码,或自己的小实验室,怎么玩呢?
Dropbox 是个很好的选择,我之前是直接同步workspace,但是换台机器直接打开经常会报错。还是用 Git 管理吧,满足个人多台机器工作,同时也满足多人协同办公。

本文主要介绍 Dropbox 作为 Git 私有仓库。你也可以使用其它云存储工具,如 SkyDriveGoogle Drive等,或国内的金山快盘百度云盘360云盘。对于源代码这些重要资料,我强烈推荐大家使用国外的云产品,百度云曾经丢过我的文件,实在信不过,只作为电影备份盘。

为hexo博客添加访问次数统计功能

最新的统计服务已经开放,两行代码轻松搞定,你可以直接使用:不蒜子 微服务。

方法一:自搭服务

hexo是静态博客,虽有速度快的优点,但无法存储动态数据是不可否认的劣势之一。没有出路就要思考出路,没人阻止你借助第三方系统实现动态数据处理,比如评论功能借助Disqus多说。统计功能也可以这样处理,我们借助BAESAE平台搭建自己的统计服务。

SAE已经提供Counter服务,但是貌似只支持php语言,这里是SAE计数器服务示例。在BAE2.0中也有专门的Counter(计数器)服务,但是BAE3.0中尚未提供,应该是还未迁移过来。

java中有几种方法创建一个线程

此乃经典一问,如果非要给出回答的话,我认为最准确的说法是:有且只有一种方法

理由听我慢慢道来。官方权威文档『The Java Language Specification』,JLS7,Chapter 17 Threads and Locks (p563),开篇第二段明确指出:

Threads are represented by the Thread.class. The only way for a user to create a thread is to create an object of this class; each thread is associated with such an object. A thread will start when the start() method is invoked on the corresponding Thread object.

建造可迁移的eclipse工作空间

为便于在各种机器和工作地点之间方便的迁移,我喜欢打造自己的绿色工作台,可谓有绿癖。
我的eclipse空间一般弄成如下目录结构(其它开发工具我也喜欢这么弄):

.
├── eclipse.bat #一键启动
├── workspace #工作空间
├── ... #其他必要文件,如jdk,maven等
└── eclipse-jee-kepler-SR1-win32 #eclipse目录
└── eclipse.exe #eclipse启动文件

Fork me on GitHub