Mac下树莓派3安装ubuntu-mate系统以及VNC服务

本人使用的是Mac系统,故以下内容均以Mac系统的环境为准 ubuntu-mate系统的安装 下载ubuntu-mate的树莓派版的安装镜像文件,目前官网支持树莓派ARM系统的最新版本是: [16.04](https://ubuntu-mate.org/download/ "target="_blank) 插入一张空的micro sd卡,然后确认此卡的设备编号 diskutil list 我的系统上 /dev/disk2 是新插入的SD卡,确认设备号后,我们要先unmount掉此设备,然后再将镜像文件dd到SD卡中,需要注意的是设备编号的命名规则:/dev/disk2s1 是分区,/dev/disk2

  • David Wang
    David Wang
3 min read

Ghost中让Markdown通过PrismJS实现语法高亮

最近把WordPress换成了GHost,感觉GHost更加简洁专一,虽然本人文章没写多少,但没少倒腾系统,呵呵。之前WordPress是有一个语法高亮插件的,转到Ghost后是默认没有语法高亮的,后来在网上搜索了一下,认识了PrismJS,感觉还不错。 下载PrismJS PrismJS的官网上http://prismjs.com/提供了定制化下载的功能,可以根据自己实际的需求,可以定制化选择主题、语言支持、扩展插件。然后系统会根据你的选择,提供个性化的JS/CSS文件下载链接。一共需要下载两个文件:prism.js & prism.css 配置PrismJS prism.js和prism.css一般会放到如下的路径中: /ghost/

  • David Wang
    David Wang
2 min read
PostgreSQL

CentOS下升级PostgreSQL

之前系统是PostgreSQL9.3,看到最近发布的9.4功能还不错,据说对JSONB的支持要强过MongoDB,于是想升级尝一下鲜。 1. 升级前的准备 备份数据这个就不多说了,任何版本升级还是有风险的,所以建议先备份一下数据。 另外对于大型数据库的升级还需要额外的谨慎,对于一个百G级别以上数据库升级的话,可能会耗费较长的时间以及需要足够多的额外存储空间(升级过程中可能会触及数据的copying操作)。本人测试的数据库目前也就700MB的级别。 2.  安装新的PG版本 我们需要下载安装系统对应版本的Repository,具体可以参见官网:http://yum.postgresql.org/ ,目前最新的版本是 9.4.1 wget http://yum.postgresql.org/

  • David Wang
    David Wang
4 min read
NodeJS

NodeJS异步调用的顺序化处理

NodeJS本身一个重要的特性就是异步处理,但异步处理多了,会把一个完整的“业务”逻辑拆分的支离破碎,让人看到头大,或许这就是所谓的异步陷阱?!最近看NodeJS项目代码时,发现了一个Step的模块,就是专门将一系列执行有先后关系的异步调用做序列化调用处理的,使之在代码层面上尽量看起来更清晰。Step详情可参见 https://github.com/creationix/step 1. 简单的将异步处理顺序化 step本身定义了一个 Step 的方法, Step可以接收任意多的方法,并按顺序执行这些方法,其中this代表下一个方法的回调。 var fs = require('fs'); var Step = require('step')

  • David Wang
    David Wang
3 min read
osm2pgsql

使用osm2pgsql导入OSM数据

osm2pgsql 是openstreetmap提供的一个数据导入工具,之前我们也用过imposm导入过地理数据,但在某些未知情况下,imposm会出现进程挂死的状态,所以有时候可能我们还是使用传统的方式导入数据比较安全! 首先安装必要的依赖 yum install gcc-c++ libxml2-devel postgresql-devel bzip2-devel proj-devel protobuf-compiler postgresql-devel automake libtool geos-devel boost-devel 为了能读取PBF格式的文件,我们还需要安装以下两个扩展 yum install protobuf-devel protobuf-c-devel 下载源代码 git clone https://github.com/openstreetmap/

  • David Wang
    David Wang
1 min read
OpenLayers

搭建开源地图服务(三)-使用OpenLayers呈现地图

按之前的设想,现在应该用MapProxy或TileStache来搭建WMS服务了,但TileMill本身就提供了一个看起来还不错的地图瓦片服务(XYZ模式的),而且OpenLayers本身也支持这种模式,于是打算直接用OpenLayers访问TileMill的瓦片服务接口,先看看效果再说。 OpenLayers是一个开源的为WEB GIS客户端提供的JS库,可以方便的对地图做各种处理。目前已发布3.0版本了,官网:http://openlayers.org/,上面的文档也算丰富,其中还包含了各种Example,对初学者帮助很大!另外再推荐一下 Leaflet  相对来说算是轻量级的,但也非常的好用! 1. 简单的地图呈现 本次,我们只是简单的展现一下地图,通过官方的Example稍作修改,代码很简单,示例如下: 其中,ol.source.

  • David Wang
    David Wang
5 min read
OSMGIS

搭建开源地图服务(二) -TileMill的安装配置

TileMill是MapBox推出的一款地图样式编辑器,同时自身还提供地图瓦片服务,上一章我们已经成功的导入了OSM的地图数据,接下来我们尝试用TileMill对地图数据进行预览和编辑。 1. 安装NodeJS 因为TileMile是NodeJS的项目,所以我们要先安装NodeJS以及NPM包管理工具 yum install nodejs npm 2. 安装TileMill 从githup上下载TileMill项目,然后执行安装 git clone https://github.com/mapbox/tilemill.git cd tilemill npm install TileMill默认情况下,只能本机访问服务(127.0.0.

  • David Wang
    David Wang
4 min read
OSMGIS

搭建开源地图服务(一) - OSMGIS数据导入

最近在研究开源地图服务的组建,故将一些点滴记录下来。本次构建所涉及到的方案可能具有个人喜好色彩(例如本人有一点点抵触Java,呵呵),因某些环节还需进一步认证,所以且行且记录。 本次服务搭建,初步方案为(根据实际组建过程,可能会调整): 服务器操作系统:CentOS7 (请注意此处的版本,否则之后会遇到问题) GIS数据库支持:PostgreSQL9.x + PostGIS 地图数据:OSM 地图瓦片渲染:Mapnik + CartoCSS WMS服务:MapProxy TileStache WEB前端:OpenLayers 地图底图样式编辑:TilleMill 下面我们就从OSMGIS地图数据的导入开始。 1.

  • David Wang
    David Wang
5 min read

青岛美食

青岛是一座美丽的城市,2012年9月份第一次去了青岛,今年8月份又去了一次,青岛的美食、啤酒一直让人念念不忘。记录下来以便回忆。 劈柴院美食一条街 劈柴院,是青岛市的一个著名“旅游景点”,所以按照国内旅游景点的惯例,在旅游景点内享用美食绝对不是一件正确的事情,对于劈柴院,我们还是看看就可以了,当然也有一些小吃还是可以尝试一下的。之前由于要赶下午的火车,一些老字号下午是不营业的,不得已大的胆子在劈柴院吃了一次,感觉非常不好,店铺外面的海鲜虽然是活的,但也只是为了吸引游客的观赏产品而已,实际上来的海鲜不仅贵而且还不新鲜。 高家锅贴,算是劈柴院比较著名的小吃了,味道中规中矩,可以品尝一下。 高家锅贴的卤煮。。。恩,看起来和北京的卤煮差距很大,好像是10元一小碗,这个尝一下也无所谓了,劈柴院满大街上都有这货。 开海红岛

  • David Wang
    David Wang
3 min read

PhpStorm 语法检查失效的问题

一直在用PhpStorm,但突然有一天(可能是某个版本升级后?),发现语法错误检查和自动补全提示等功能都消失不见了!一开始在设置里琢磨了半天,各种尝试也没见效,后来还以为是因为我的License过期了(确实过期了,当初赶上感恩节活动买了一年),License过期了就没有语法提示了??!!虽然心里很诧异,但也就这么凑活的用到现在。。。。。直到今天才发现了如下解决方案。 1. 可以先尝试 Invalid Caches,重建项目索引 File -> Invalid Caches / Restart 2. 如果方案1无法解决,则可以考虑重置配置文件的方法 2.1 File -> Export

  • David Wang
    David Wang
1 min read
wordpress

GoogleFonts造成天朝内访问WP小站慢的问题

通常WordPress的后台,以及一些默认主题,或者是老外制作的主题,都会涉及到对GoogleFonts (fonts.googleapis.com) 的访问,墙内用户一般都是很难打开的,以至于造成了WP小站打开缓慢。 解决方法如下: 1. 使用相关插件禁止GoogleFonts的使用: 可以安装 Disable Google Fonts 或者 Remove Open Sans font Link from WP core 等插件。 2. 使用相关镜像替换 fonts.googleapis.com 推荐使用

  • David Wang
    David Wang
1 min read
golang

GO语言中的StructTag类型

StructTag是什么?在Go语言里,StructTag是一个标记字符串,此字符串可跟随在Struct中字段定义的后面。StructTag就是一系列的 key:”value” 形式的组合,其中key是一个不可为空的字符串,key-value组合可以有多个,空格分隔。 StructTag有什么用?!StructTag主要解决了不同类型数据集合间(Struct,Json,Table等)转换中键值Key定义不一样的问题。StructTag可以理解为一个不用数据类型键值Key的映射表Map, 在StructTag中可以定义不用数据集合键值和Struct中Key值的映射关系,这样方便了Struct数据转为其他类型数据的过程。例如我们可以把Struct数据映射成为一个Json格式的数据,或者把Struct数据映射成为一个数据表Table。当然我们也可以依据StructTag的定义,把一个Json数据转为一个Struct结构数据。 下面,我们可以看一下,Struct和Json数据间的互相转换的例子: package main import ( "fmt"

  • David Wang
    David Wang
2 min read
jquery

JQuery学习笔记: preventDefault

最近在学习一些WEB前端的东西,例如JS/CSS神马的,我会把学习后的一些要点记录下来,对于JS/CSS的兼容问题,我只关注现代浏览器所支持的,对于IE6/7/8的问题会直接忽视,毕竟当下的浏览器基本上都支持HTML5了,对于那些古董丑陋的浏览器就让他成为历史吧。另外说一下当下我看的是 Callum Macrae 写的《Learming from jQuery》 。 关于preventDefault方法 单从字面含义上可以看,是组织默认行为的发生,我们可以用一个例子加以说明: 将一个id=foo的A链接,点击后,将文字颜色改为红色: $('a#foo').click(function (e) { $(this)

  • David Wang
    David Wang
2 min read
mongoDB

mongoDB字段类型的转换

最近在使用mongoDB, 发现mongo对字段类型的定义并不是很严格,完全依赖传入数据的类型,在加上PHP是弱类型的语言,所以难免会出现一些错误。如果预想的类型是Int型,但数据存储的是String,那数据在根据Int型检索的时候,就完全失效了。如果发现某个字段在存储的时候出现了分歧怎么办?当然首先要修正程序在数据传入时候的错误,对于Int型一定要保证其类型的正确性。 example: $user_arr = array ( 'uid' => intval ($_SESSION["user"]["id"]),  //对于Int类型的数据,一定要保证其类型的正确性! ); 那如何修正当前已存在数据类型的不同呢?! 查询所有字段类型是String的数据,然后将String转为Int: db.you_

  • David Wang
    David Wang
1 min read
i9100

如果你的手机频繁重启或者关机,那可能是电池的问题。

最近我的i9100不断的重启,关机,尤其是发生在电量过半的时候。我用的是第三方的电池,而且也使用了10个月了,我越发怀疑是电池的问题,我想可能是电池电压输出不稳造成的。于是从淘宝上我又花了75大洋购得了一块原装电池。。。。话说怎么识别是原装电池,我也只能看评论了,价格从几十到上百的都有,我也只好碰碰运气了。不过还好,自从换上以后,之前频繁重启关机的症状没有了 😀

  • David Wang
    David Wang
1 min read
sublime text2

sublime text2 如何配置FTP/SFTP

sublime text2 据说是一个不错的编辑器,最近因为要写一些涉及HTML/JS方面的东西,所以想尝试用一下。因为要远程编辑文件,所以需要用到FTP/SFTP,刚开始胡乱的找了一通,还真没发现 怎么设置,这一点比起EditPlus,PhPStorm什么的IDE要查一些了。不过还是在网上找到了设置方法,于是我将方法记录在此: 1.  按 Ctrl+` 调出 console 界面 将以下代码粘贴到窗口,并回车确认。 import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.

  • David Wang
    David Wang
2 min read