无心阁

记录生活、技术中的二三事.


  • 首页

  • 分类

  • 归档

  • 标签

快笺,它出生在这里

发表于 2015-12-23 | 分类于 技术

2015年12月的某一天,一个人在屋子里傻傻的盯着电脑,一个念头冒了出来.

从开始工作到现在断断续续已经两年了,期间换过不少的印象笔记.轻笔记之类的,也用过蛮多的管理软件.但是始终没有找到一个适合自己的,于是就想着自己开发一个.

快笺,顾名思义,为了快速记录点滴而生.

第一款计划自己全端负责的项目开始了.

2015-12-01 Amy学习笔记

发表于 2015-12-01 | 分类于 随笔

前端:

是在html的文件里面添加特定的语法,展示出用户想要的效果;

前端语言

  • html语言
  • javascript语言

前端和服务器的联系

1
2
3
在互联网中一个电脑有一个IP地址,并且不会重复; 

前端工程师将页面写成前端代码以后上传到服务器指定位置.别人就可以通过访问服务器的服务来看到页面.

兼容性

1
2
3
多个浏览器会访问同一个html文件里面的东西,但因浏览器不会渲染出来的效果也不一样.

所以前端工程师会针对不同的浏览器指定不同的样式,这样通过不同的浏览器渲染出的效果就是一样的.

DNS

1
dns是一个域名服务器,当用户在浏览器里面输入域名的时候就会找到对应的ip地址提供给用户访问

html存放位置

ps: 当然是在服务器上...

浏览器

1
就是一个软件,可以访问服务器也可以执行html代码,浏览器访问服务器,然后服务器给浏览器html语言,然后就显示出来.

扩展

  • 服务器一般是linux服务器
  • 局域网指的是一个内部搭建连接几台机子的内部网
  • 互联网理解为一个最大最大包含全球的局域网

亲爱的生日快乐.

发表于 2015-11-21 | 分类于 随笔

恩,一转眼就半年多,今天是亲爱的生日.我认识亲爱的以后过的第一个生日呢.

原谅我没有陪在亲爱的身边. 虽然真的很想很想.

亲爱的我们认识时间不短了呢,还记不记得你老说”啊~ 我们才认识多久多久~”.

我周一会赶回去给亲爱的过生日呢. 原谅迟来的祝福咯.

亲爱的生日快乐,祝亲爱的开开心心的,所有的烦恼统统gong!

Amy

发表于 2015-11-07 | 分类于 随笔

二十九号,六月二十九号,二零一五年六月二十九号下午三点之前的一分钟你和我在一起,因为你我会记住这一分钟。在这一分钟里,我们吃了最难吃的食物,这是事实,你改变不了,还好已经过去了。我以后不会再来了。

最初面上来的时候,Amy还拿着面单一直犹豫,其实我是听说了她的喜好,才点的面。

很多人都会经过这个阶段,见到相识的人先点了某种食物,便不愿相同。我觉得这很幼稚,可能其他面上来后,又发现没什么特别。回望之下,还会觉得我这边更好。我打算吃一口再告诉她我的观点,但面到嘴里的那一刻,我沉默的放下了筷子。

五分钟后,Amy吃自己面时,她嘴角大约抽搐零点五秒,我很欣慰,还好这家店所有的面都难吃。

我知道Amy是个极其讨厌浪费的人,不过她在碗里转圈的筷子告诉我,她并没有下定捍卫信念的决心,我决定给大家一个台阶下:Amy,说句真心话。我心里有你。我把这话告诉你也没什么,喜欢人不犯法。可这碗面我不能再吃了。

Amy 松了一口气,终放下了游离的筷子,向我点了点头,我也松了口气。


七号,十一月七号。二零一五年十一月七号下午三点之前的一分钟,我又坐在这个位置上点了一碗面,从那之后我几乎花了半年的时间回到这个地方,我没有去想这家店为什么没有倒闭,而是专心的吃这碗面。还是和当初一样难吃,不过这次我吃光了。我发现人如果再多一点耐心,人生也许会改变很多。要是当时我也像现在这么有耐心,一切会不会变?她最后会不会也下定决心捍卫那碗面?捍卫我们?


我不知道,但面真的好难吃,我真的好想她。

又走一步.

发表于 2015-11-02 | 分类于 随笔

恩,掌门,真的要说再见了.

在上一次离职的时候写下了这篇博客

嗯,又一次选择

转眼一年过去了呢.在这一年里哭过笑过,开心过,也有整晚整晚睡不着觉过. 这次再次选择了离职,更多地是对自己的一个调整吧. 调整一下现在的状态,逼迫自己不能停在原地. 因为自己想要的不允许现在的自己把心太多的放在其他的地方.

1
嘿, 少年, 你明知道自己不能掉队,还停留了这么久.


在掌门的每个深刻记忆.

NO.1 初见

冬天. 2015年12月19日. 第一次踏进公司的门,我没有想过我会在这里呆这么久. 整个面试过程很nice,恩. 也在当天晚上当即拿到了offer. 开始了在掌门的一年.

掌门,你好.

NO.2 一个很近很近的日子,一个近乎不可能完成的任务

哈哈,把这个在前面就拿出来说会不会显得我特别不情愿阿. 恩,当时确实是不情愿的. 来到掌门第一件事情就是公司内部的系统. 期限呢,是25天.在我看来这是一个完全不可能实现的事情. 要知道在25天搭建一个相对还ok得内部系统,这是超出我的认知的. 但是既然上司说要干,那就干咯.

恩,结果是大家都可以预见的. 当然,我们没能按期完成. 那段时间压力都很大.两天一包烟的我变成了一天一包半. 困了就上红牛,力保健.

但是我们还是过去了,虽然延期,但是在二月初,我们把这套系统上线. 我永远都忘不了那七十多个小时. 一个team连续三天不回家,就是为了上线做最后的冲刺,这也是我职业生涯第一次上线前的大冲刺.

NO.3 国内top5名校生的思维

之前的我总是认为即使是不错的学校出来的学生,也比较一般. 因为见到了很多很多在学校不学无术的low B.但他让我第一次改变了这种想法. 做事情逻辑很清楚. 脑子转得很快,做事情也快.要说到上面的上线,我认为团队里他的存在占了很大一部分原因.@We_XYang

NO.4 不停地.不断的.

年后,之前的后端程序员因为各种原因离职了,于是进入了一个无休止工作状态. 基本睁开眼出业务代码,处理bug,闭眼就是一天.没有丝毫自己的时间留给自己. 恩. 那段时间我崩溃了. 整个人进入浑浑噩噩的状态. 压力很大,但是还好. 挺过来了.

NO.5 抬起头,我看见了你

嘿,姑娘,不知道你现在能不能看到,还会不会看到. 在我最烦最烦的时候,我抬起头看到了你. 虽然最终没有走到一起,虽然现在走到这种地步,但还是感谢在最烦最烦的那段时间,还有你陪. 恩,真心希望你以后可以开开心心的,可以不用再烦那么多事情,可以清楚的知道自己想要什么, 祝你幸福.

NO.6 一个Leader的气度

留在这个团队这么久,很大原因是因为真的有一个很好很好地Leader. 眼睁睁看着所有的事态的发展和你的态度.说实话,真的很佩服.也让我知道了作为一个team leader究竟要做到哪一步. 离职之后确实会有很对愧意,对team,对你.

END

回头想想这一年的事情,我刻意把对错抛开了,因为我认为值得. 再来一次,一样的选择.

一年来对自己也有一个整体的总结.认真反思过,也仔细考虑过以后的事情.

整理好心情,下一站再见.

win10后homestead报错问题解决

发表于 2015-10-24 | 分类于 技术

升级win10以后突然发现homestead不能用了!惶恐~ 解决之~

非常感谢@Hoang

报错

1
2
3
4
5
6
7
8
9
10
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.

Command: ["hostonlyif", "create"]

Stderr: 0%...
Progress state: E_FAIL
VBoxManage.exe: error: Failed to create the host-only adapter
VBoxManage.exe: error: Code E_FAIL (0x80004005) - Unspecified error (extended info not available)
VBoxManage.exe: error: Context: "int __cdecl handleCreate(struct HandlerArg *,int,int *)" at line 66 of file VBoxManageHostonly.cpp

解决方案

2015年11月1日更新

出现这个问题的时候帮朋友解决掉了,但是发现其实网络还是没有通的,后来发现它是用一个类似来宾用户登录的. 然后给到一些权限连接的virtualbox里面的机子.

但是发现只适用于部分用户!

然后win7同样出现了这样的问题. 百思不得其解. 然后猜测是无权限创建与虚拟机外的主机的共享文件夹. 在这样的猜测下,试着,试着将homestead.yaml里的共享文件夹下面的nfs.png关掉以后,顺利开启.

那么这个nfs是个什么东西呢?下面的百度给出的解释:

1
NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

这样看来确实是vagrant的配置在virtualbox与外部主机进行通信的时候发生问题了呢…
然而对这块不大明白,还没找到个所以然.. 如有疏忽的地方,欢迎大牛指正~


原解决方法,创建于2015年10月24号

安装Virtualbox 5 和 Vagrant 1.7.4

注释homestead.rb第17行:

1
config.vm.network :private_network, ip: settings["ip"] ||= "192.168.10.10"

注释路径为:
HashiCorp\Vagrant\embedded\gems\gems\vagrant1.7.4\plugins\providers\virtualbox\action.rb第64行: b.use ClearNetworkInterfaces

若是第一次安装homestead 用homestead init 若是因为更新win10而导致的问题,运行homestead up

然后运行homestead halt关闭box

打开virtualbox管理->全局设定->网络->仅主机(host-only)网络->随便修改一个虚拟网卡,Ip为:192.168.10.10

设置Homestead虚拟机,网络->网卡2->选中第6步设置的host-only的网卡保存

运行 homestead up0

你的homestead 又复活了

参考链接

  • laracast.com
  • Hoang Stark’s Blog

要怎么样努力,才能成为很厉害的人

发表于 2015-10-24 | 分类于 随笔

转自知乎一个问题 要怎样努力,才能成为一个很厉害的人;
每次看都很喜欢很喜欢, 今天忍不住转载了出来, 自己简单的整理了一下.

谢邀

首先,少年,答应别人的承诺,就一定要兑现。

我以前啊,和你一样,很想成为一个很厉害很厉害很厉害的人。

1
喜欢看热血的东西,幻想自己是屠龙的勇士,登塔的先锋,我左手有剑,右手有光,没头没脑的燃烧自己,敌人的骑军来了,我说你们何人堪与之战,我的女人在等我。

后来我现实了一点,我觉得我要成为那种说走就走,说日就日的男人,我梳大背头,流浪在欧洲或者新几内亚的,我拍孩子,拍野兽,拍流浪的雏妓,与罗伯特德尼罗握手,说嘿,我给你写了愤怒的公牛2。

再后来,我觉得我人生的梦想,是在城市中心买上一间顶层公寓,把一整面墙都改造成钢化玻璃,在灯火通明的夜晚,我就要端着酒站在巨大的窗前,看整个城市在呼吸,然后我的朋友叩门,他带来了一打嫩模,我们就玩一些成年人的游戏

1
现在,我发现龙并不存在,我不会骑马,不会用单反,家住2楼,我能做的,就是把眼前的事儿做好,赚到足够的钱,这样我可以给我的姑娘一个地球仪,然后用飞镖扎它,扎到哪儿,就去哪儿玩。

这样看来,虽然我的想法随着生殖器的发育,始终在变,但那个很厉害很厉害的人,一直离我很远,甚至越来越远。

我心中曾经执剑的少年,此刻也混迹在市井之间。血似乎都凉了。

我也不是没有惶恐过,是不是我这一生,都不能左手持剑,右手握着罗伯特德尼罗,说这里的嫩模随便你玩但是你他妈别从窗户上掉下去。

这样一看,我逊得不行,我的朋友都是一些凡人,比我还逊,业余生活就是推塔、中单、跪。

我心想,我是不是这辈子都要做一个逊逼,直到我的坟墓上写好墓志铭,我甚至都想好了:我来,我见,我挂了。

最后我给了自己一个否定的答复,我不要。我喜欢我的朋友们,喜欢我现在的生活,首先我希望你明白,没有厉害与逊逼得区分,只有血的凉与热,有的人觉得生活就这样吧,我算了,现在没什么不好。

有的人觉得生活这样挺好,但是我还要更好。这种只要剧情稍微热血一点就会热泪盈眶的傻逼,已经不多了,一刻也不要停留。

所以现在,我和你不一样了,我仍然想成为一个很厉害很厉害很厉害的人,像我们这种剧情稍微热血一点就会热泪盈眶的傻逼,要好好珍惜自己。

很多人坐下来了,跟你说你不行,说你省点儿心吧,说你请静一静。汹涌的人群就把你这样的少年淹没了,人群散去的时候,你也不见了,你那些承诺,谁也听不见,这个世界对于你,就再不可能有什么更有趣更漂亮的女朋友。

你就失约了,小逼崽子。

这么跟你说。虽然随着年龄的增长,我趋于现实,不能像你那样分分钟冲动的燃烧,然而我每时每刻都有想做的事,有想达成的目标。

不排除以后的某一年,我会握着罗伯特德尼罗的手,他说这是你写得吗,愤怒的公牛2,只要他还没死。故事里拳王拉莫塔忍着伤,他举着铁拳,挥汗如雨,要和命运斗争,他说我怎么能失约呢,我是那个要成为很厉害很厉害的拳王拉莫塔!

小伙儿,成为很厉害很厉害的人,最重要的,就是要热血,永远也不要让你的血凉下去,你凉下去了,就再也不能找到一个更有趣更漂亮的女友,你就失约了,于是那天她踏梦而来,就成了一个彻头彻尾的笑话。

当有一天你成为你讨厌的那种人,浑浑噩噩,你走在街上,看见那些更有趣更漂亮的女孩,你会不会想起多年以前,你说我答应你,在一个承诺就是永远的年纪。读书,交友,美容,都不如你这一腔狗血,滚烫,灼人,你要燃上大半辈子,才对得起你现在说的这些话。

我听闻最美的故事,是公主死去了,屠龙的少年还在燃烧。火苗再小,你都要反复的点燃。

所谓热血的少年,青涩的爱恋,死亡与梦之约。

这么好的故事。你可别演砸了。

最后我给你点个人建议:

  • 读书,读到倦,网上有很多方法,但你从来沉不下心看。
  • 学习,学到疼,网上有很多方法,但你从来沉不下心看。
  • 开口说话,冷场也要说话,脸皮薄也要说话,挨打也要说话。
  • 如果你现在不知道做什么,至少你还可以先从做一个牛逼的学生开始。
  • 更漂亮更有趣的女孩,五年以后再找。
  • 承诺是鞭子,不是兴奋剂。
  • 年纪大了,也不要说什么心如死灰。

改变自己是非常,非常,非常痛苦的,我能看出来你一腔热血的优点,自然知道你孤僻懒散自以为是的缺点,方法很多,不过我不确定你吃不吃得了苦,我和你共勉吧。在成为最厉害最厉害最厉害的道路上。

@Amy

终究没能骗过自己.

发表于 2015-10-12 | 分类于 随笔

苦逼的自己进不去家门,在楼梯上坐着码字.
似乎告一段落了,似乎告一段落很久了.可还是舍不得往前走.

一直到今天可能算是真的彻底over了吧. 结束了很多东西.
总是放不下. 放不下人,放不下事.

也算是一个新的开始,可能之前的很多东西都再也回不去了.因为追求的问题,可能对一些事情过于偏执,是之后需要改掉的地方.

我也不知道为什么,都会搞成这个样子.生活好像真的一团糟了.我理不清,只能先放一边.
我也希望一切都好好的.这半年的交集,走之前只是想说一句照顾好自己.

2015年10月份记

发表于 2015-10-06 | 分类于 随笔

一直想的是追求不一样导致不同的过程。有太多比自己优秀努力的。只是淡笑一句追求不同。有看到没自己做得多还懒散的。也只是笑着说了一句追求不同。就这么走了两年多,回过头看看,却没想过自己追求的有没有价值。只是闷着头像个无头苍蝇一样乱撞。有点让人窒息的感觉.整理好一些东西,才能重新出发.

有时候停下来想想之前的事其实挺好的.生活让你匆匆忙忙的过,但是回忆起来,却满满的都是美好.5个月,我没保留.留下了一些这辈子忘不掉的回忆,够了.

一直在路上.

9AF9C956-3F41-4D2F-B32C-0C5958318674.png

Express中间件加载

发表于 2015-10-01 | 分类于 技术

middleware, express中几乎所有的东西都是通过中间件来完成的.大量采用第三方的中间件.但是它是怎样来工作的呢,让我们来一步一步揭开它.

从代码上看上去第一眼就是app.use()了.在使用express-generator构建好一个express应用后,在app.js文件下可以看到以下代码。(因代码较多,有节选).

1
2
3
4
5
6
7
8
9
10
11
var express = require('express');
var bodyParser = require('body-parser');
var routes = require('./routes/index');

var app = express();

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(express.static(path.join(__dirname, 'public')));

app.use('/', routes);

从上面代码中很显然可以看出app.use()是用来加载这些中间件的.翻文档看,use()接受两个参数,第一个path为可选项,第二个就是中间件的函数了.

那我们就试着自己写一个东西调试一下能不能执行到了.

1
2
3
4
5
6
7
8
9
10
11
12
13
app.use(express.static(path.join(__dirname, 'public')));

app.use(function(req, res, next) {
console.log('11');
next();
})

app.use(function(req, res, next) {
console.log(22);
next();
})

app.use('/', routes);

在这样的情况下,我们看到的响应还是正确的,并且在console里log出了11,22.

那我们试着把console.log('11')里面的next()取消掉呢,这时候命令行里console出了11后之后的全部不执行了,连路由都没有响应了.

ok,到这里的时候,我们搞明白了,app.use()里面的东西是依次执行的,那么我们可以把它想象成为一个tasks,在请求过来的时候依次通过next()调用之前注册好的中间件过滤一遍.使用 app.use() “定义的”中间件的顺序非常重要,它们将会顺序执行,use的先后顺序决定了中间件的优先级。 比如说通常 express.logger()是最先使用的一个组件,纪录每一个请求.

而在没有next()下,是无法继续传递下去的.

那么我们搞明白这个中间件是怎么加载的了,但是这个next()又是怎么实现的呢?我们试着一步一步自己实现一个简单的next()来看看.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
var http = require('http');

function express() {
var fns = [];

var expr = function(req, res) {
var i = 0;
function next() {
var task = fns[i++];
if ( ! task) {
return;
}
task(req, res, next);
}
next();
}

expr.use = function(fn) {
fns.push(fn);
}

return expr;
}

var app = express();

app.use(function(req, res, next) {
console.log('req');
next();
})

app.use(function(req, res, next) {
console.log('done');
next();
})

app.use(function(req, res, next) {
res.end('over');
next();
})

http.createServer(app).listen('3000');

这样就可以在use里添加你想添加的各种中间件啦~~~

123…9
Marlon Fan

Marlon Fan

希望有一天可以用自己的一生讲一个完美的故事.
84 日志
2 分类
27 标签
© 2012 – 2019 Marlon Fan
由 Hexo 强力驱动 v3.8.0
|
主题 – NexT.Pisces v7.1.1