-
使用NW.js开发桌面应用程序
前段时间要写一个桌面的应用,做一个简单的输入框供用户输入验证码的小功能,程序最开始是用Python写的,那么GUI一开始就考虑使用wxPython,虽然实现了功能但是总觉得太过于麻烦。之前了解过关于Node.js开发桌面应用的技术,目前使用的比较多的都是nw.js 和 electron,由于下载electron的时候出现了一些问题所以就选择了nw.js来学习。NW.js(之前叫做node-webkit)能够通过DOM直接调用Node.js模块,实现通过Web技术来编写应用程序。环境搭建 ...…
-
使用Anaconda管理Python环境
Python好用但是在使用过程中发现还是有很多问题的,其中一个就是版本管理(Python2和Python3的切换)。相比于Ruby的版本管理有rvm,可以使用rvm use 2.4.0这样的命令来快速切换Ruby的版本。出于历史原因目前还是有很多Python的程序是运行在Python2.7,经常需要在Python3的环境下面执行一些实例切换起来非常麻烦,刚好最近了解到Anaconda,Anaconda 是一个可用于科学计算的 Python 发行版,支持 Linux、Mac、Windows系...…
-
使用Verdaccio搭建npm仓库
Verdaccio是一个轻量级的私有NPM的Registry(从Sinopiafork过来的,sinopia最后一次更新是在几年前了)。最开始是打算使用cnpmjs这个来搭建私有的npm仓库但是搭建完成之后存在一些问题,所以使用了Sinopia,本文记录下来搭建的过程。直接安装npm install verdaccio -g安装完成之后直接执行命令即可完成启动:verdaccio对于服务器上面部署可以使用pm2更多关于PM2的用法的可以参考:https://wohugb.gitbooks....…
-
iOS开发中使用Mantle构建模型层
在iOS的开发中为了快速的实现产品的迭代和新功能的开发,常常会弱化Model的功能,NSDictionary作为承载业务的数据类型出现在各种地方(SQLite,Model Object,API Service…),直接使用objectForKey的方式进行数据的读取,参数和值的正确性完全没有经过编译器检查,字符串很容易写错,极容易导致在运行阶段出现低级bug.1、Property名称转换由于API使用的开发语言与iOS所使用的Objective-C是截然不同的,所以可能将一些保留关键字作为...…
-
使用StatSVN对SVN日志进行可视化分析
StatSVN是一个开源的SVN统计工具(Java语言编写,最近一次更新是2010-01-01),能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表(StatSVN生成的报表是一组包括表格与图表的静态HTML文档)。比如: 代码行数的时间线; 针对每个开发者的代码行数; 开发者的活跃程度; 开发者最近所提交的; 文件数量; 平均文件大小; 最大文件; 哪个文件是修改最多次数的; 目录大小; 带有文件数量和代码行数的Repository tr...…
-
使用Python合并图片生成PDF文件
最近做了一个小功能,将一个页面上面的所有图片下载下来生成一个PDF文件。发现了一个非常好用的库reportlab, pyPdf。只需要几行代码就能实现功能,如果没有安装可以通过pip安装:pip install reportlab -i https://pypi.douban.com/simplepip install pyPdf -i https://pypi.douban.com/simple注: -i表示使用豆瓣的镜像服务操作过程下面记录下我的处理的过程:(1)如果只是简单的需要将图...…
-
在Docker上运行Scrapy
之前使用Scrapy写过一个空气质量的采集程序,最近要切换到另外一台服务器上面去,折腾了几个小时的安装环境还是没跑起来。几次之后就放弃了,刚好那台服务器上面安装了Docker的环境,运行了一个Nexus的服务几个月来一直都很稳定,那为啥不可以把Scrapy也放在上面运行呢?操作过程下面记录下我的处理的过程:(1)创建dockfile在scrapy.cfg文件所在的目录下面创建dockfile,里面的内容如下:FROM ubuntuMAINTAINER hhtczengjing@gmail....…
-
CentOS安装Hadoop
系统环境下载软件: (1)JDK (2)Hadoop (3)MySQL (4)Hive (5)HBase (6)Zookeeper1、服务器配置(1)修改主机名将192.168.13.1、192.168.13.2 和 192.168.13.3 这三台机器分别命名为hadoop-master、hadoop-slave1 和 hadoop-slave2。1) 修改/etc/sysconfig/network文件修改HOSTNAME=localhost.localdomain为HOS...…
-
使用Kettle导入Excel数据
ETL(Extraction, Transformation, and Loading),在日常的工作中我们经常会遇到各种数据的处理,转换,迁移。比如将Excel的数据导入到数据库,将SQLServer里面的数据转换后存到Oracle,将数据库的数据提取到文本等。最开始都是使用写代码然后进行处理,多了几次之后就觉得麻烦了。后来了解到Kettle这个工具,首先无需安装直接就能使用,支持图形化的GUI设计界面,然后可以以工作流的形式流转,在做一些简单或复杂的数据抽取、质量检测、数据清洗、数据转...…
-
使用Dockerfile构建Docker镜像
Docker中有个非常重要的概念叫做——镜像(Image)。Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,用这个脚本来构建、定制镜像,那么之前提及的无法重复的问题、镜像构建透明性的问题、体积的问题就都会解决。...…