Becomin' Charles

算法 | LNMP | Flutter | Mac

Becomin' Charles

给公司的项目做了一个内部运维站点,日久天长,发现功能越来越多,而且很多至关重要的东西都在上面,如果一个小白,胡乱点点,可能引发致命运维事故。于是乎,希望能做一个访问控制。

第一个想到的是Yii框架自己支持的RBAC系统,每个Yii App默认加载一个组件,就是authManager,可以应用一种基于角色的访问权限控制体系。以前虽然早就知道了这个,但是从来没用过,而且也从来没觉得好用过。光看了文章吹捧怎么科学了。

今天仔细研究了一下,官方站点有个实作模块,叫srbac,流传很广,就用了这个,希望顺便搞懂这东西。

阅读全文 »

写PHP是我工作的主要内容之一,我尤其喜欢使用的IDE是Netbeans,所以,之前心血来潮,做了一个Netbeans的皮肤站点(http://netbeanstheme.com)供大家交流Netbeans配色方案用。

因为是心血来潮,就要一个“快”字,火速申请域名,用WordPress搭了小站,然后用了一个极简的Portfolio类型的皮肤,每个Post一个Feature Image作为截图预览,然后用Custom Fields来记录下载链接,一个Download键用来记录链接,一个Author域用来记录作者,然后又用cformsII插件做了一个上传皮肤配置文件的表单,一个小站就算完毕了。

然后,网上随便挂了几个月,发现貌似挺受欢迎,获得了很多的反响。于是乎,发现一个现象,就是有些皮肤下载的人多,有些下载的人少,根据留言数目看出来的。当然了,做互联网的这种直觉一开始就该有的,当初太偷懒了。当然,现在也不迟啦,马上加一个统计,记录所有的配色方案的下载次数。既要兼容以前已经有的Post,又要使用简单,肿么办?

阅读全文 »

在Ubuntu服务器上,执行apt-get或者aptitude,可以列出软件包的名字,每行一个,最前面有个表明状态的字母标识:

  • p 在系统里没有关于该软件包的相关操作记录
  • c 软件包已经删除,但是配置文件仍旧保留在系统中
  • i 软件包已经安装过了
  • v 软件包是虚拟的(由若干其他软件包组合而成)

第二个位置上的字母,表明即将执行的动作

  • i 即将被安装
  • d 即将被删除
  • p 软件包和配置文件将被删除
  • A 表示软件包已经自动安装了

到底什么是NAT呢?在不同的领域里估计有不同的含义,本文里的NAT特指计算机网络领域的专有名词Network Address Translation,翻译成中文是网络地址转换。(在此,特别声明,以下要描写的东西,都是对该概念的基本内涵的个人理解,并没有什么新鲜的东西,也不保证正确,感兴趣请参阅《计算机网络》第四版)

阅读全文 »

我是一个 Python 入门级别用户,虽然我一天到晚黑 Python,但是到了用的时候,又不得不用,这真的很悲哀。我讨厌 Python 就因为一个原因,就是其垃圾一样的文档。

这次我被一个绊脚石绊住两次,是因为有点搞不明白 Python 函数的参数。Python 语言的函数参数,到底是用值传递,还是引用传递?其实要思考这个东西,都是从 C++ 带来的一些习惯,虽然我不是一个 C++ 的程序员,但是也是通过学习 C++ 来学习编程的,不可避免地就要带有 C++ 的习惯。在那个语言里,是需要搞清楚这些东西的,编程语言并没有向程序员隐藏这些细节。以至于到了使用动态语言的时候也很容易陷在这种细节里面。

阅读全文 »

在使用Git作为版本控制工具的时候,如何撤销某个文件的本地更改?

为什么要撤销本地更改?

Git规定,在本地变更没有提交的时候,不能够同步其它版本库的更新到对本地,为了防止本地变更丢失,如果本地变更只是一些试验性的调试语句,那就可以完全抛弃(discard),可以使用checkout命令进行撤销。

阅读全文 »

说实在的不喜欢Python,这主要是相对于PHP而言的,Python在Web相关领域里面,缺少了PHP的丰厚家学和积淀,但是有时候没有办法,还是得学一点的。在PHP里,用惯了strtotime这种神奇函数,在Python里面,到底该如何处理时间呢?

阅读全文 »

最近几天,微博上有一个戏谑的帖子,把程序员按照等第分为了几档,从“死掉的程序员”开始,有“成功程序员”,“著名程序员”,“普通程序员”,“无名程序员”,“烂程序员”,等等几个档次。按照描述,我对号入座,觉得自己现在算得上是“无名程序员”这个级别,在中国,处于我这个级别的程序员有千千万万,也就是人们常说的“码农”。《代码大全》这书,依我看,其面向读者群,就是“码农”。

阅读全文 »

想当年,Gmail第一个给用户提供了1G大的邮件存储空间,在今天,云存储铺天盖地的时候,1G真的是不算什么,随便什么服务,起步都是2.5G以上,但是那个时候的Gmail,竟然就已经看到了,这是何等的远见卓识啊,不得不赞叹一下。那时候起,Gmail就试图传递给用户一个观念,邮件不需要删除,用搜索来替代删除,但是,那时候的理念太过超前了,真的有人能够理解并操作么?我持深刻怀疑态度,直到今天,我终于逐渐看到了、并且理解了里面的一些门道,在我工作了3年以后时候。

阅读全文 »

vsftpd 是Very Secure FTPd的缩写,是一款小巧简单的ftp服务器软件,一般如果不需要对ftp帐号的流量做限制,不需要根据不同目录配置不同的属性的情况下,使用此款小巧的ftp软件,就再好不过了。vsftpd支持anonymous帐号登录和本地实体帐号登录,通过简单的配置,即可以运行。

阅读全文 »