一个 Linux 下的 CLI 程序
工作需要,用C++做了一个交互式的CLI应用。其实nodejs和python都是做CLI的好工具,而且boilerplate也很多,但这次是因为里面有些代码需要直接搬运到其他平台使用。如果没有这个需求,就不用绑在C++上。 首先是起步,可以用这个boilerplate。注意这个boilerplate写的过于简略了,建议…
2017 年 11 月 23 日
工作需要,用C++做了一个交互式的CLI应用。其实nodejs和python都是做CLI的好工具,而且boilerplate也很多,但这次是因为里面有些代码需要直接搬运到其他平台使用。如果没有这个需求,就不用绑在C++上。 首先是起步,可以用这个boilerplate。注意这个boilerplate写的过于简略了,建议…
2017 年 11 月 23 日
最近几天突然怀念起了大航海时代这个系列,重新下了4代的威力加强版,然后还是一发不可收拾,连续玩了一个星期。 把李华梅通关之后,我突然想搞清楚,为什么大航海这么好玩? 我非常喜欢的游戏,细数起来,有以下几个: 实况系列(WE98/2000/PES6/2017等) 生化危机(2) SNK格斗类 最终幻想系列(6/7/8/…
2017 年 11 月 18 日
从2013年9月17日在BAE上创建这个Blog时,那时的心情还是有点感动,觉得Baidu还是不错的。 然后很快就被Baidu无情打脸了,先是在未通知的情况下停掉了自定义域名,然后改了免费规则。 于是在2014年2月12日搬到了Openshift,所谓的V2版本。3年多的时间里,Redhat很不错。 不过该来的总是要来…
2017 年 10 月 28 日
实在忍不住再吐一下槽。一个Firefox OS应用,需要用到以下语言: html css javascript c++ idl webidl ipdl script 这破系统还有存在的价值吗?
2017 年 09 月 13 日
使用Angular 2去获取远端数据源的时候,使用的是Promise。 当远端数据源是Spring Data Rest的时候,每次请求返回的是一页,但页数是根据数据总量和页大小来决定的。 在这种情况下,传统的做法是递归,不断去获取下一页并合并,直到无下一页可取。 但在Promise这种实现方式下,递归是不适合的,有一种…
2017 年 05 月 24 日
libdmclient 是oma-dm的客户端库,基于syncml rtk库封装,后者源出自syncml.org,但现在打不开。libdmclient里面充斥着大量的指针强制转换,且缺少文档。虽然代码量不大,但阅读起来比较繁琐。 libdmclient里面包含了一个test的例子,从这个例子里可以看到libdmclie…
2016 年 11 月 22 日
最近忙着翻译RCS文档,没空做什么正事,只是抽空整理了一下网站。这里把现在发现的一些网上的值得用的免费资源列一下: 国内访问速度不错的: netlify.com: 现在(2017)的首选。适合放静态站。jekyll/hexo等等都支持。源码可以放github。 Coding.net:适合放源码和静态站(jekyll优…
2016 年 11 月 17 日
最近用gitbook在翻译某技术文档,记录一点注意事项。 如果用github账户登录,则无法用git从gitbook直接下载书籍源码,原因不明,但似乎是因为git命令行无法做oauth认证(怀疑可以用github的token来处理,未尝试)。同样,无法git push。但可以用本地编辑器的sync来push。 …
2016 年 10 月 19 日
前几天放在git pages上的主页太慢,主题又不是我特别喜欢的风格,再加上发现coding.net提供了同样功能的coding pages,于是准备重新做一个jekyll站。 找图的时候,突然想到,能不能用bing的每日壁纸做网站背景呢? 光靠coding pages/git pages,答案当然是否定的。要获取bi…
2016 年 09 月 20 日
还是为了WebRTC的事情,研究了几天消息队列(Message Queue)。 消息队列,在这里是个专有名词,指的是一个独立的用于消息收发的服务。现成的消息队列服务器有ActiveMQ/RabbitMQ/ZeroMQ等等。其中RabbitMQ使用erlang语言实现,天生就能较好的支持并发。ActiveMQ用的是Jav…
2016 年 09 月 06 日
好吧,其实就是花了几天搞定了一个Github Pages页面而已。Github Pages的特点是: 免费 限制不多,包括 空间推荐限制1GB,其中单个文件限制100MB,50MB以上时就会收到警告 流量推荐限制每月100GB或100,000次点击 每小时提交推荐限制10次 可以服务静态网站或jekyll网站 …
2016 年 08 月 26 日
需要写一个基于SpringBoot的Web应用作为后续项目基础,这里记录一下。 应用目标:一个Web应用,使用H2做数据库(后续可以方便的替换),flywaydb做数据库版本管理,Spring Security做登录认证和授权。 准备工作:需要maven/h2/gradle等,下载安装完成后要加到path中,方便调用。…
2016 年 08 月 09 日
把自己放在老板的位置上就可以发现,到处都是花钱的地方。虽然信息系统对于公司来说是很重要的基础设施,但公司初期是否可以以尽量低的成本来构建一个灵活可扩展的信息系统,是一个值得讨论的问题。 信息系统的定义在wiki或百度百科上均有,不再赘述。对于公司来说,信息系统应该是帮助公司管理和利用自身的信息的工具。通常来说,公司的业…
2016 年 06 月 16 日
朋友的软件公司,客户要求提供一个PC(Windows)传屏到Android的解决方案。 一开始需求不明确,当然是VNC最省力。TightVNC的Windows版本源码可用,MultiVNC的Android版本源码可用。联调可以连上。唯一可惜的是MultiVNC的Discover功能不可用。不过这个功能只是用mDNS查…
2016 年 06 月 15 日
tightvnc是一个vncserver/viewer的开源实现,但原始工程是在vs2012下编译通过的,在vs2015中由于一些改动,导致无法编译通过。需要做如下修改: 编译问题,viewer-core中的RemoteViewerCore.cpp中,1206行,需要把const char改成char 链接问题,tv…
2016 年 06 月 08 日
服务器有两个外网连接,eth0上的PPPOE是一个,wlan0是一个。从服务器出的时候默认走的ppp0,这个不用设置就好了。但从wlan0进来的入口就不通,于是学习了一下策略路由的配置,简单记录一下。 策略路由要处理本机的路由表,不是route -n看到的那种,而是在/etc/iproute2/rt_tables中可…
2015 年 11 月 18 日
折腾无止境,之前在Cubietruck上搞定了Cubian X1,虽然Cubian确实不错,但还是有几个缺点: 基于debian wheezy,有点过时 路由重启时,wlan0接口无法自动重连,原因不明 基于以上原因,我找到了armbian,基于debian jessie,够新。基本上Cubian X1的所有设置都…
2015 年 11 月 18 日
Cubietruck是一个开发板,性能略优于Raspberry Pi。自13年入手以来,在我家作为服务器勤勤恳恳的工作了2年了。之前也有记录过笔记。近期准备重新发掘一下它的功能。记录一下从零开始的过程。 Cubieboard实际上是一个系列,我手上的是第三代产品。截止到现在(2015年底),第四代已经在售,第五代原型图…
2015 年 11 月 13 日
工作要求要实现Firefox OS上的SyncML协议,找了一下居然没有现成的开源js实现。只好几方面下手,一边学习协议,一边尝试参考其他实现代码。这就找到了Funambol的实现。实际上Funambol的实现也有些年头没更新了,说明一直没人把这东西当回事。 首先是Server,下载地址在这里,Server运行倒是很简…
2015 年 07 月 31 日
最近基于Easyrtc/Angular在搞一个Web即时通信软件,除了Angular也没研究啥,不值一写。不过关于软件项目开发和管理有一些零散的想法,随手记一下。 关于测试驱动 测试驱动的确是好东西,但为什么国内少有公司推动?我觉得原因其实很简单:看起来太贵了。 打个比方。如果一个软件依靠黑盒测试能做到80分,按照传统…
2015 年 05 月 08 日