Axetroy

Results 128 issues of Axetroy

> 从以前旧博客迁移至此 > 2016-05-06 01:42:16 ## 字符串操作 ### 英文首字母大写 ```javascript function firstUpperCase(str) { return str.toLowerCase().replace(/\b[a-z]/g, function(s) { return s.toUpperCase(); }); } ``` ### 链式写法与驼峰式写法的转换 ```javascript function camelcase(flag) { return flag.split('-').reduce(function(str,...

> 从以前旧博客迁移至此 > 2016-05-16 00:05:35 转自**瞬息之间**写的[程序员,我们都是夜归人](http://mp.weixin.qq.com/s?__biz=MzAxMTEyOTQ5OQ==&mid=2650610540&idx=1&sn=c54063d608648ffd1d53c3cb1e04393f#rd) 音响随机播放着音乐,偶然跳出一首《都是夜归人》的乐曲,让我不禁想起程序员这个群体,夜归人也是不少的啊。恩,我这里说的「夜归」正是指的加班,进入这个行业,成为程序员谁没加过班呢,所以我们都是夜归人啊。 加班是一个行业竞争激烈的表现,回想下读中学时虽不加班却要加课,因为高考的竞争很激烈啊。加班也是一个行业兴旺的表现,你看产能过剩的行业连工都不开了,哪里还需要加班。这些是加班的行业宏观原因,那么于个人微观来说,为什么需要加班呢? ### 能力不足 新入行的程序员加班的最多,很大一个原因是能力是不足以满足工作的需要,这里说的是整体的比例而言,不针对个体。我刚毕业工作时也是天天加班的,原因正是发现为了应对工作,需要学习的东西太多,边学边做,效率也不够高,自然无法闲庭信步,只能加班加点。 大学里专业上的东西学得宽,学得泛,而且离工作实际需要还存在一道从理论到实践之间的鸿沟。所以对于刚入行的程序员就需要短期内快速地跨越这道鸿沟,不得已加班加点的学和做,一旦跨越过后后面还需要经常的加班原因可能就出在其他方面了。 应对能力不足导致的加班,除了自己认了还能埋怨谁呢,同一所学校同一个专业同一届毕业的学生,能力强弱有时也是相差也很悬殊。我承认大学里也是放松了自己,曾经埋下的坑,后来也是慢慢自己来填的,努力要趁早啊。 ### 环境制约 这里指工作环境的一些制约因素,比如:早年我在客户现场做项目,客户都是朝九晚五制,他们白天经常要过来和你讨论碰到的一些问题或需求,有时还要接接维护项目的技术支持电话,渐渐就发现在客户上班的朝九晚五期间基本就没法专心的写程序。所以当时我开发一般都放在晚上 6 点到 10 点之间,十点半是末班车再回去。 另外一种情况是,以前做传统企业应用,要全国各地四处出差,而系统上线和数据割接什么的也只能在半夜三更来做。从夜深人静到天空泛白,在卖豆浆包子的早餐车旁和来上班的人群短暂相聚,再交错而过,走回公司的出租屋,倒头便睡。 一次一个省级的大系统做全面割接,这样的日子持续了将近一个月,让我不禁开始思考起了这样工作和生活着的意义。这就是环境的现实,要么去适应当前的环境,要么去改变环境,这二者皆不易,还有第三条路就是换个环境,然后我便换了个。 ### 公司制度 我理解加班很多时候来自一种需要,而这种需要可能来自很多方面的原因,但如果有公司把加班作为一项制度固化下来,那真是再糟糕不过了。 我以前曾有同事呆过一家把加班作为一种长期制度的公司,从周一到周四每晚都是固定加班到晚 9 点后,周末则临时决定是否加班。这咋一看比起如今的 「996」的强度是不如的,但有些公司的 996...

转载

> 从以前旧博客迁移至此 > 2015-12-16 23:59:23 sublime是一款轻量级的代码编辑器,它不是IDE,却不比IDE差,关键是运行快,什么机子都能够跑起来。 而且插件够多,能够媲美类似webstorm这样的神器。支持多语言。 这里需要注意一下的是,linux下并不支持中文,在编辑器内不能输入中文,虽然有方法可以,但是有点麻烦。 闲话少说。 ### 1,安装sublime 下载地址:[sublime text3](http://www.sublimetext.com/3) ### 2,安装Package Control 插件管理包,必备 下载地址:[Package Control](http://www.php100.com/html/it/focus/2014/1128/7935.html) 或者使用控制台安装输入命令: ``` bash import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf...

> 从以前旧博客迁移至此 > 2016-05-06 22:30:23 队列与栈类似,但是使用了不同的原则。 队列是遵循**FIFO**(First In First Out,现进先出,也称先来先服务)原则的一组有序的项。 队列在尾部添加新元素,并从顶部移除元素。最新添加的元素必须排在队列的末尾。 现实中,最常见的队列例子就是排队,谁先来,就到谁。 ### 基本队列 ```javascript class Queue { constructor() { this.items = []; } // 入列,向队列尾部添加一个(多个)项 enqueue(item) { this.items.push(item); }...

> 从以前旧博客迁移至此 > 2015-12-27 19:01:08 ### 下载 ### ```bash // 安装ionic $ npm install -g cordova ionic // 生成一个ionic项目 $ ionic start myApp tabs // 进入到项目目录 $ cd myApp //...

> 从以前旧博客迁移至此 > 2016-01-17 03:46:21 如果不小心``commit``了一个不需要``commit``的文件,可以对其进行撤销。 先使用`git log` 查看 `commit`日志 ```bash $ git log commit 422bc088a7d6c5429f1d0760d008d86c505f4abe Author: zhyq0826 Date: Tue Sep 4 18:19:23 2012 +0800 //删除最近搜索数目限制 commit 8da0fd772c3acabd6e21e85287bdcfcfe8e74c85 Merge: 461ac36...

> 从以前旧博客迁移至此 > 2016-05-06 21:51:13 栈是一种遵循先进先出(LIFO)原则的有序集合。新添加的或待删除的元素都保存在栈的末尾,未栈顶,另一端为栈底。 在栈里,新元素都会靠近栈顶,旧元素都接近栈底。 ```javascript class Stack { constructor() { this.items = []; } push(item) { this.items.push(item); } pop() { return this.items.pop(); } peek() { return this.items[this.items.length...

> 从以前旧博客迁移至此 > 2016-01-04 01:40:06 linux下本来就不是像window会产生很多垃圾,导致越用越慢。 但是我等强迫症呢,就是看不了有点残留的东西存在。 特别是在卸载了软件之后,还有一些配置文件留在那里,就很讨厌。 所以把这些命令记录下来,毕竟linux命令太多,有些时候也记不住。 ### 删除缓存 ### ```bash $ sudo apt-get autoclean // 清除旧版本的软件缓存 $ sudo apt-get clean // 清除所有软件缓存 $ sudo apt-get autoremove //...

> 从以前旧博客迁移至此 > 2016-01-04 20:36:48 ### 那是不可能的 ### 不用想了,linux下没有像window那样,有这样的提示给你。 ### 说一下一些尴尬的事 ### 我有个朋友,网络出问题了,不找运营商,找我(醉了...)。 他没有电脑,就是连个路由器。 我只能去帮他看看,手机链接路由,调了半天,最后发现是外面的网线没接好....汗.... 尴尬的是后面又出问题了,还强调要我拿电脑过去,好吧... 结果大家动的,拨号各种不成功,也没有错误代码,不知道是宽带的账号密码问题还是怎么... 来了个装网线的维修人员对吧,连linux都不懂。 后面百度一下吧,找到了折中的办法,查看系统日志。 系统日志在 **/var/log/syslog** 如果你使用了错误的密码,日志里会有这几句: ``` Jan 10 05:39:48 ubuntu pppd[5634]: Remote message:...

> 从以前旧博客迁移至此 > 2016-01-04 20:36:48 ### 使用Preload预加载 ### 与Prelink类似,Preload是一个运行于后台的监护程序,探测那些常用的软件,并将其放入缓存,以起到加速的作用。在LinuxMint/Ubuntu下安装Preload很简单: ```bash $ sudo apt-get install preload ``` Preload默认的配置对于普通用户而言已经不错了,一般不需要修改。如果有进一步掌控其的欲望,可以打开其配置文件进行修改: ```bash $ sudo gedit /etc/preload.conf ``` ### 清理APT缓存 ### apt应该算是LinuxMint/Ubuntu系统中使用率最高的命令了,无论安装、卸载软件,还是更新软件源缓存及相关维护,都离不开它。使用逾久,apt缓存也就变得较为臃肿,有必要清理: ```bash $ sudo...