Collaborative Filtering

Collaborative Filtering,协同过滤是推荐系统(Recommender System)中最常见的一种手法,它之于推荐系统,就好像TF-IDF之于信息检索. Read more

CMake 下使用 protobuf

protobuf是google开发的一个序列化和反序列化的库,通过.proto文件定义文件格式,序列化后的数据是binary的,可以在多语言上使用.一般情况下,若客户端和服务端都是自己做的,用protobuf作为通讯协议,无疑是一个不错的选择.

个人一般喜欢用CMake来管理c++工程.那么,cmake下使用protobuf对个人而言是个很重要的事情. Read more

普通用户安装rust

rustmozilla基金委搞出来的一个新语言.

效率上说和c++差不多,作为一个函数式程序,看起来也挺美观.官方的tutorial也做得很不错.目前为止,rust刷版本号已经刷到了1.1了,个人觉得可以试着做点东西了. Read more

CMake下使用GLFW

之前介绍的GLUT只是很多不错的OpenGL库之一,另一个很好的OpenGL库是GLFW. Read more

CMake下使用GLUT

GLUT是一个OpenGL API的一个实现,在linux,os x都有广泛的应用. 而CMake是一个不错的C/C++项目管理工具.此处有一个栗子, 简单的使用了下GLUT.

Read more

awscli的安装

aws是一个不错的云服务器提供商.我们不仅可以ssh登录进去进行各种操作,而且可以在外部通过aws加各种命令上传和下载各种数据.

Read more

utf-8编码格式

UTF-8格式是一种编码格式.确切的说,它是一种存放Unicode的容器.Unicode包含几乎所有我们需要用到的字符,为了包含这么多内容Unicode本身是一个长整型.但具体存放的时候,我们需要将Unicode拆成若干个Byte.而如何将Unicode序列化呢?UTF-8就是一种解决方案. Read more

Mongodb 按键值去重

MongoDB建立index,可以设置为unique.若在之前有重复的键值,那么我们必须要去除掉重复的.

若我们使用的是原生的mongo且版本小于3.0,则unique为true外,外加参数dropDups为true即可.但除此之外,在mongo3.0+,tokumx,我们只能手工搞定. Read more

Perceptron

感知机(perceptron)是机器学习(machine learning)-监督学习(supervised learning)-判别模型(discriminative model)的一种. Read more

ssl certificate 配置记录

现在的世界满是https,若想和外部相处,我们也常常需要使用到https的页面.安全越来越被人重视,而成本并不是很高,配置一个SSL自然是理所应当的.

这次使用的是从namecheap上购买的comodo提供的positivessl wildcard产品,价格有点肉痛,实际上大概花了RMB600的样子.

有些细节和以前alphassl搞到的证书不太一样,所以稍稍记录下,以便以后查询. Read more

做个 wrapper, 聊聊证书

开源还是闭源?这是个大问题.辛辛苦苦撸出来的代码,怎么用它自然你说了算.出于各人的喜好,大家尽可以选择一个合适的分享或者不分享的方式. 个人觉得这无关道德.

但是, 若是别人用 GPL License 分享了代码,而你却擅自修改 License, 把你的代码设置为闭源, 这就不仅是不道德的问题了, 理论上说, 你已经违反了你和原作者的协议, 是违法的. Read more

archlinux 的安装记录

arch 是一个轻量的 linux 操作系统, 安装基本控制台命令搞定. 记录如下: Read more

uuid, a simple introduction

uuid,全称Universally Unique IDentifier,是一种id生成方式,我们使用它来生成一唯一的id. 同时,它也被称为guid. uuid有若干生成方法,本文介绍的是一种基于时间的方法(也就是version 1).协议是rfc4122. 在java中,它是系统内置的class.而在c++中,我们想要实现,其实也不困难. Read more