主页

富人是慷慨的还是贪婪的?

好久之前读过《富爸爸和穷爸爸》系列以及《福特自传》书籍,做了一些摘要和笔记,重读了一遍,有点感悟,分享给你。

亨利·福特成为世界上最富有的人之一,是因为他为越来越多的人,提供了成本越来越低的汽车。在我看来,福特是一个非常慷慨的人。然而,很多人却认为福特非常贪婪,在他们的现实里,福特剥削工人。这种分歧源于各自不同的现实。

所谓的现实不同,也可以说目标与境界不一样,最后的结果就大不一样。企业家在创业的时候就有一个伟大的目标,并为之不断努力。

阿里巴巴马云为了「天下没有难做的生意」,打造了一个网上购物平台,才有了,现在我们在家就能收到商品的便利;小米雷军借助移动互联网打造出小米手机,直接拉低了国内智能手机价格,才让我们见到各种各样的千元机。这些例子层出不穷,每一个企业家或者我们眼中的富人,都在为更多的人提供服务。在某种意义上来讲,他们是慷慨的,而不是贪婪的

反观我们自己,努力工作为了自己的房子车子奋斗终身,凭什么来致富?充其量也就能混到中产阶级,一辈子为企业,为银行,为社会,为国家打工,因为仅仅为了给自己买更大的房子,更好的车子。

富人之所以成为富人,穷人之所以为穷人,他们之间的现实完全是对立面。

给更多的人服务,还是为了自己服务,这就是差别。当你想要给更多的人服务,那么,接下来就要去想,做什么事情才能给更多的人提供服务?这就是创业的起点,让更多的人,从你的服务中获得便利,你就会拥有越来越多的用户,这才能形成正循环。

  • 福特提供越来越廉价的汽车,推进汽车行业的发展,对绝大数人来说,这是好事还是坏事?
  • 谷歌提供全球搜索服务,推进互联网行业的发展,你不用多费劲,就能获得全球资源,这是好事还是坏事?
  • 阿里巴巴提供网上购物平台,建立全国信用体系,作为商家,你敢将东西卖给陌生人,作为买家,你可以货比三家,下单买最便宜的,这是好事还是坏事?
  • 小米提供高性价比手机,让你不到千元就能享受移动互联网生活,这是好事还是坏事?
  • 滴滴提供便利出行的方式,饿了吗提供外卖叫餐服务 ……

这些都是知名的成功企业,他们的创始人都在为更多的人服务,而不是为了自己的房子车子努力工作,所以他们都成功了,钱自然而然的都来了,房子车子便都有了。这是富人来钱的方式。

阅读更多

是时候要走了,结束第一个职场5年

刚刚提了离职申请,终于要走了。

心情倒是很坦然,没有太多的波动,过完年就已经大概想清楚了,自己想要的是什么。

这一次的离开,显得特别的自然,没有太多其他的情绪,只是想要换个生活,换个方向。

在一个单位,待了 5 年时间,也是到了该走的时候了,合同到期,这是最好的契机,也是给自己一个最满意离开的理由。

对于这家一毕业就来到的公司,既有美好的回忆,也有不好的回忆,盘算一下,还是美好的占多数时候。

经历的事情,还是比较丰富的,经历过快速成长,带过新人,被提拨过,校招过他人,遇到过好领导,当然也有差劲的,做过基础技术类工作,也做了一些管理类工作,还专门写了大半年的报告,最有成就的还是,给公司留下了几个小产品。

以上这些经历可能并不稀奇,但是在这短短的 5 年时间里,把一家集团在北京的 3 家公司都干了个遍,可能有点令人惊讶了。在走这次离职手续之前,类似的流程,其实我已经走过两遍了。

说了这么多,其实我还是有一些怀恋的,在这里,经历了好多的第一次:

  • 第一次学会怎么跟上级汇报工作,它不像论文答辩
  • 第一次明白同事间的相处是怎么回事,它不像大学舍友
  • 第一次体会到教人不是那么容易,「自己会」跟「把别人教会」是不一样的
  • 第一次体会到团队协作的困难,原来管理是一门大学问
  • 第一次面试他人,看着对面紧张的面孔,仿佛看到当年的自己
  • 第一次向上级提出反对,只怪自己太年轻
  • 第一次主动寻求改变,渐渐的爱上了改变,不断的尝试,只为尽早找到自我
  • 第一次心无旁骛的去做一款产品,很欣慰能得到同事和领导的赏识,有机会希望能继续完善下去
  • 当然,这也是第一次提出离职,这一次希望自己能走得更远。

第一个职场 5 年将要结束了,在这段时间里,除了工作上经历的事情,生活也发生了很大的变化,从一个青涩的大男孩,俨然成为一个奶爸。肩上的任务不再是「一人吃饱,全家不饿」,而是需要做更长远的规划,从而获得更多。这也是自己人生的一个转折点,不去尝试,怎知道不可能。

下一个 5 年,有了新的规划,继续朝着心中的理想走下去,没有给自己设定太多的目标,但是有很多想要去做的事情,之前从未认真去做的一些事情。

  • 我想要读更多的书,不仅仅只是技术方面,而是全方面的输入
  • 我想要接着写作,不再是零散的几篇文章,而是有系统的去输出价值
  • 我想要出去旅行,去布达拉宫,去青海湖,去感受生活
  • 我还想要实现一款真正意义上的产品,对更多的人产生价值
  • 当然,最想要的是陪伴她成长,带她去体验生活的酸甜苦辣,让她更早的发觉自己的梦想,从而去追逐,因为没有梦想的人生,是可怕的。

最后,给自己加个油吧,努力的人生终归不会太差,不管你现在正在做什么。

阅读更多

敬「会议」

一次常规的组织例会,由于领导的时间,将原定于下午 14:00 开始的会议,延迟到 15:00 才开始,还是和往常一样,有大领导参加,甭管这个会议具体是否跟你有关系,会议组织者基本上都是一通「邀请」,大部分人都会去参加,有的可能因为想在领导面前露露面,有的因为「被邀请」而不得不参加。他就是「被参加」的。

会议临近之前,大部分人都会选择坐在领导的背面,一部分人会早早的过去,以便抢到一个最佳的地理位置,会议占座成为了一种风尚。不是为了更好的学习会议精神,而是一个有利的位置,能让会议时间快点度过。因为大家都知道,其实也没啥可学习的,轻轻松松度过这几个小时才是王道,换句话说,参加这个会议,只是换个地点消遣一下而已。他心里还在嘀咕,这个会议是什么主题来着, 跟我有啥关系?

会议过程中,汇报者滔滔不绝的讲着自己的方案,为了不让领导挑出毛病,在领导面前表现一下,看得出来,这个报告花了不少心思准备的,专门为了领导「量身定做」的;会议组织者自然是没有心思去听报告的,战战兢兢的环顾着整个场面,避免出现什么岔子;大领导饶有兴致的听着,在脑海里准备着最后的总结发言,一定要给大家鼓鼓气的。他作为公司中层干部,虽然不知道,会议主题对自己部门业务是否有用,但还是要出席一下的,这就是规矩。

另外大部分人可能同他的情况类似,其中,一部分目光呆滞的望着汇报方向,这部分人肯定是因为没有抢到好的地理位置;一部分人举着翻开的小本(本子可能是倒的),手机放中间,时而抬头看下汇报者,饶有深度的点点头表示赞许(或是同情),他们通常坐在前排领导的背面;另一部分人两两窃窃私语,坐立不安,想着随时打开后门开溜,因为离门近,这是他们早到会场获得的「优先开溜权」;当然,肯定有一部分是在认真的听,他们通常是新员工,因为不懂,感到好奇,听得云里雾里的,瞅瞅前排举着夹手机小本的「师傅们」,想了想,还是回去问问他们吧,然后接着开小差去了。

会议井井有序的进行着,中间没有任何的差错,一看时间 17:30 了,所有人都在想:该结束了吧。领导也觉得该结束了,催促了一下,以体恤民情。终于 17:45 的时候,所有会议议程都井然有序的完成了,大家都松了一口气。

他放下了那颗紧张的小心脏,因为这会出去的话,还是可以赶上 18:00 班车的。正放松着,听着会议主持人说「现在请 xx 总为我们今天的会议做一下总结发言,大家掌声欢迎」,他想着算了,也不差这几分钟,跑得快点也是能赶上的。讲着讲着5分钟过去了,毕竟会议期间认真的听了,都准备好了,当然要说完,终于在 17:55 的时候,讲完了,大家鼓完掌,会议主持人宣布结束。他腾的一下,就跑出去了。

可惜的是,还没跑到班车站点,就远远看到班车扬长而去,他的心中一万只草泥马奔腾而过,奔腾完了,还得想想怎么回去呀,50公里的距离,想想还是坐地铁吧,一边往地铁站走,一边还在嘀咕「这个会议说了点啥,跟我又有半毛关系。」

终于在比往常晚了一个小时,到了家。

阅读更多

新的一年里,再往前走一步

今天是大年初一,这是第二次在北京过年的春节,又是一个没啥年味的春节。 但是,今年却有些变化。小晗玥的诞生,倒是增添了不少乐趣。 与此同时,第一次感受到生活的压力。

【1】 坐在家里翻看朋友圈,看到了西安古城的闹市,看到了西藏拉萨的美景。 想着,什么时候,我们一大家子,也要尝尝旅途过年的滋味。 往年一到春节,都是往家里跑。 这两年,在北京安定下来后,变成爸妈往我这里跑,相比之下,倒是省了抢火车票的功夫。 不管怎样,一家人在一起,总归是最重要的。

【2】 临近除夕夜的前3天,当了3天的全职奶爸了,终于体会到了,累并快乐着的感觉。 以前做点家务,总是拖拖拉拉,满心的不情愿,认为浪费了我的时间。 而那天,竟然洗了一上午的尿布,闲下来时,看到她突然朝我笑,心中什么抱怨都没有了。 爸妈过来后,让我省了不少力气,终于有时间能静静地坐在电脑前,鼓捣点我想做的事情。

【3】

生活的压力越大,越是不想安于现状。

以前认为,毕业后找个靠谱的大企业,就可以一直待下去。 然而,有幸来到了大企业,却又不甘安于现状。 那一眼就能望到尽头的职业生涯,总是让我坐立不安。

【4】

不管生活有多忙,总归还是要朝着心中的理想,再往前走一步,如果因为一时的忙碌,停止了前进,未来只能一直这么忙碌下去。

生活一直在变,变得越来越「复杂」 思维如果跟不上生活的变化,终归会被生活所淹没。 以前,做好当下,就好了。 现在,需要更多的思考未来,做全盘计划,朝着自己的方向,一步一步往前走。

【5】 最近一段时间,想得比较多,但很零散。 思路被「生活」剪得断断续续。 夜深人静,拼凑了一下。 一看时间,已然大年初二了。 原本准备好的「新年祝福」,拖到了初二。

祝各位新年快乐,身体健康,事事顺心,开心最重要。

阅读更多

打造表单的极致用户体验:Web 开发实战

本文来源于个人付费Chat,感兴趣可扫码下方二维码查看。

表单是 Web 开发中,非常常见的一个模块,熟悉到被很多人忽略掉了,很多大型平台系统,做出来的表单,都是简单的把所有的字段堆在上面,用户体验非常糟糕。

目前我在负责公司培训运营平台的建设,使用 Node Web 全栈开发。平台中的很多表单都得到用户的好评。其实一个简单的表单页面,往往会比后台业务逻辑的编写,需要付出更多的精力。但是,我认为,这是值得的,因为表单是很多用户接触平台的入口,好的用户体验能带来更大的价值。

这篇 Chat 主要分享:

  1. 如何结合实际业务,设计最合理的 Web 表单字段;
  2. 表单页面设计的几种样式及使用场景;
  3. Web 表单前端插件的合理配合使用,包括:Datepicker、Validate、Typeahead、Daterangepicker 等。

更多Chat…

阅读更多

Mac 软件推荐

手上这台MacBook Pro正好被苹果「固态硬盘更换计划」给不幸选中了,为了避免未来出现故障,还是老老实实送去更换了。

正常情况下,我应该找块空硬盘Time Machine全盘备份一下,可是我哪是走正常路线的人,万一换个思路有意外惊喜呢。备份必要的一些文档之后,就送走了。因为电脑使用一段时间过后,难免会安装一些日常并没有多大用处的软件,大部分可能是某天试用了哪个软件,就忘了卸载。总之,当前电脑里并非我想要的,所以没必要备份,正好借这个机会清空一下了。

拿回来之后,开机,一台全新干净的Mac 就摆在我的面前,正常情况下,应该对照着之前的软件清单,一个一个的装回来,可是,为什么要这么干呢?这么干跟Time Machine备份就没啥区别了。

而我,就按照正常使用习惯,将日常生活及工作的场景,一个个还原回来。于是就形成了下面的推荐清单,这些都是我使用Mac这几年来,精挑细选出来的,亲测无害,分享给你。

终端类

配置类

  • Oh My Zsh,一个让你的zsh更好用的终端配置,用了就回不去系列
  • SSH配置:高效操作服务器工具
    • 第一步:生成密钥,ssh-keygen
    • 第二步:复制公钥,cat ~/.ssh/id_rsa.pub > ~/Desktop/pub.txt
    • 第三步:可以去Git代码平台设置并保存ssh 公钥了

开发类

  • Xcode,它是Apple 的编程软件,Mac App & iOS App开发必不可少
  • VS code,微软推出的一款强大的编辑器,主力项目开发工具
  • Sublime Text,以前一直使用它作为主力编辑器,其实它更加轻量,启动速度也比VS code要快,但是,一换电脑,就傻眼了,装插件没有VS code爽,目前真把它只当作编辑器使用了,不做项目开发
  • Sequel Pro,使用mycli使逼格提高了,可是在处理数据的时候,GUI工具还是比较方便的,所以一款简单好用的GUI还是必不可少,两者配合使用,完美
  • Navicat系列,不差钱的,可以选择这款数据库GUI,功能比较强大且完整

写作类

  • bear,这是我认为写作体验最好的软件,最让我依赖的功能是手机端的编辑体验,订阅后的多终端无缝同步功能
  • Markeditor,国内比较优秀的一款多功能Markdown写作编辑器,个人博客使用的是其bitcron服务,直接同步即发布博文,体验无缝链接,省时省力,让你专注于创作的一款工具,同时支持导出公众账号格式,发公众号也比较方便了,高级功能收费
  • MindNode,思维导图软件,直接购买的全终端产品,Mac端和iOS端使用体验都一级棒,如果是Mac用户,推荐购买
  • XMind,MindNode没有Windows版本,Windows用户推荐XMind,也是非常优秀的一款思维导图软件,XMind是全平台的软件,既有Windows版本,也有Mac版本。就我个人使用体验来说,在Mac上的体验,MindNode要优于XMind,这个因人而异。
  • Office,这个没啥可选择的,要么使用盗版微软Office,或者使用WPS 2019 for Mac,或者干脆放弃Office,选择Apple的iWork系列,我选择后两者。因为使用场景较少,购买Microsoft Office不值当,盗版浪费时间。

影音类

  • Movist,视频播放器,性能非常赞,支持的格式也比较全,收费,30元的价格还是比较值的
  • sPlayer,视频播放器,iOS版本挺不错的,Mac版同样推荐,免费免费哦
  • vox,相信大家以前应该屯过不少mp3,这款本地音乐播放器推荐给你,UI设计非常赞,自从使用在线播放后,这款软件用得少了,貌似它也有在线音频等相关服务,也是订阅收费,所以,把它当作一个本地播放器挺好的
  • 网易云音乐,不做解释

日常必装

  • Web浏览器,由于开发测试需要,我一般使用3个浏览器,默认的Safari,另外Google的Chrome以及Firefox
  • Tencent Lemon Cleaner,主要是做文件清理以及软件卸载,新版正在内测中,旧版本叫腾讯Mac管家,旧版也能基本满足清理的需求
  • 网易邮箱大师,不做解释
  • 迅雷下载,不做解释
  • 截图,腾讯出品的截图软件,简单实用(PS. 名字就叫「截图」)
  • The Unarchiver,解压软件,免费好用,不多做解释
  • 万年历,一款常驻在状态栏的小软件,简单实用,点开显示全日历(包括农历,天气等信息),UI还算过得去,毕竟免费呀
  • Magnet,窗口整理工具,类似Windows的拖拽边缘自动调整窗口大小功能,但它的窗口调整方式更加丰富,强烈推荐购买,提升效率系列
  • TeamViewer,远程连接工具,全平台通吃,个人免费
  • Zoommy,图片聚合工具,将提供优质免费图片资源的50多个站点聚合在一个App上,写文章配个图,找它就行,方便好用,$4.99 还是比较值得的,PS. 外币付款

这不是一次简单的推荐,我是将我的生活,工作场景几乎都分享给你了,如果你发现大部分推荐的软件,跟你都非常的契合,那么,没准我们就是同道中人。

阅读更多

陈一发儿封禁事件的4点思考

突然想听陈一发儿的「童话镇」这首歌,第一次听到这首歌的时候,就喜欢上它的旋律及她的声音。可是,翻了好久都没有找到那首歌,连搜索都找不到了,觉得事有蹊跷。于是,在搜索引擎帮助下,发现在七八月份的时候就已经被全网封杀了。

封杀的原因我大致看了一下,觉得挺逗的,当然想想也是理所当然,在我们国家,某些话题是肯定不能碰的,不管你是有心或是无意。当然,这种事情也不是首例了,这次只是一个小事件,还不够引起全员关注的地步,以至于我是因为找不到「童话镇」这首歌,才发现她被封禁的事实。不过,从这个小的事件中,引发了我另外一些思考,分享给你。

1. 互联网的利弊

信息互联互通给我们带来优势的同时,也面临着太多的威胁。人怕出名猪怕壮,在这个时代得到了更好的诠释。作为自由言论的公民,可能一点也不自由,在互联网时代,我们每个人都几乎在裸奔。

比尔盖茨在2018年年终总结文章中,谈到2019年展望时,一个重要的话题就是隐私和创新之间的平衡,如何在使用数据造福人类的同时,保护人的隐私?这么深奥的问题,就交给他去想吧。

抽空可以读一下上述文章:[What I learned at work this year Bill Gates](https://www.gatesnotes.com/About-Bill-Gates/Year-in-Review-2018)

2. 平台的威力

对于平台来说,成就一个人很快,而想要灭掉你更快。我们换一个思路:做个体远不如做平台,个体再努力,平台要是不行,也是白瞎。

同样的道理,在整个行业及职场中同样适用。毕业找工作,首先要选好行业,其次是企业。为什么这么说呢?举个简单的例子,20年前,选择「阿里腾讯网易」等互联网小公司,远比选择当时的大公司「柯达」要明智得多吧。

听过这样一个故事,2个清华大学的学生,毕业后,一个去了报社当编辑,一个去了腾讯当产品经理,他们毕业前的能力应该相当,当时的编辑工作可能要比产品经理要好得多。但是,10年后,他们各自的发展如何?去了报社的那位可能将面临着再次择业,一切重新开始,因为他所依赖的整个行业都在面临着崩塌,所积攒的人脉资源都随之而去。而去了腾讯的那位,到处都是猎头在挖他。这就是平台赋予个体的能力。

行业决定着社会经济体的走向,某一个行业的崛起一定伴随着一个经济体的崛起,也可能伴随着另一个经济体的衰落。个体再怎么努力,也是一个单点的努力,假如你所附着的面没了,甚至是你所处行业的整个经济体都没了,你一个点又能有多大的作为。

3. 想得瑟要慎重

别管你在哪个行业,哪个岗位上,这会高兴了,还是不高兴了,忍住别得瑟。特别是年轻的时候,尽量多学点东西,这样就没时间去得瑟,因为学习,你才知道自己有多无知。

实在忍不住,也别去网上得瑟,你以为你删了就没有了吗,太天真了。可能你能会想,得瑟一下咋地了,又没有人认识我,虽说没错,可是,万一哪天你出名了呢。实在实在忍不住,就想得瑟,还想让大家都知道,那么话题一定不要跟国家政治啥的有任何关系。

其实最重要的一点,还是做人要低调。高调可能会让你产生一两次不错的效果,但时间一长就暴露本质了。

4. 关于云备份

随着云服务的大肆发展,几乎线下的所有的娱乐及工作都能在云端执行。云服务使我们的工作效率大大提升,文档可以在线协作,影音视频直接在线播放。可是,当我此时就想听「童话镇」这首歌的时候,偏偏在线上所有地方都找不到,也听不到。

所以,不要过于依赖线上,对于重要的资料,线下最好有个备份,特别是网盘等服务,指不定哪天说不能用就用不了了。对于存储来说,任何线上服务都比不上线下保存更持久。记得在三体小说里,太阳系即将被降维的时候,人类想要通过某种载体,用来记录并保存人类文明,通过云服务吗?不是,通过硬盘吗?不是,通过印刷吗?不是,最后是将文字刻在山洞里的石壁上,因为这样才是最有效的。

最后

本想写一下2018总结及2019计划来着,可是2018年终这几天,确实有点事,还没回过神来,就2019了。回头想了想,还总结啥2018呀,小晗玥的出生还不够让我「得瑟」一阵子的了。至于2019计划,就算了吧,反正也实现不了,哈哈。

今年就这样了,没有总结,没有计划,一点思考分享给你。

去年总结:我的2017总结

阅读更多

平安夜里的幸福,给宝宝的第一封信

足月

你也是够依赖妈妈的,殊不知,你已经长大了,每多赖一天,都是对你妈妈的惩罚。

你足月之后,我每天都会趴在你妈妈的肚子上,对你说:「你已经长大了,要勇敢,要坚强,该独立了,要出来见见这个花花世界了,别再赖在妈妈的肚子里了,里面固然温暖,但是你终究得出来」

每次对你说完,一直闹腾的你,立马就静静的不动了,仿佛能听懂我的话语一般。而你妈妈却总是跟我说「看看你陪她的时间短了吧,跟你都不熟悉」我却不以为然。相反,这倒成了我制胜的法宝,你每次晚上闹腾得你妈睡不着觉的时候,我一出马,立马就奏效。次数多了,我也不禁怀疑起来,真的跟我不熟悉?在我们家,按理说,我应该是属于亲和派,怎么弄反了?每次只能安慰自己说,其实是因为,你爱听我的声音,我一说话,你就乖乖的在聆听,不再闹腾。

临产

已经是40+3的例行检查了,你貌似还没有要出来的迹象,然而你妈已经不堪重负了,你每多待一天,你妈就得多受罪一天。当然,在她心中,这种罪也是满满的关爱,希望多呆一天,你能够生得更加健康。

而你表现出来确实有些太活泼了,正常来说,这段时间应该是你开始蓄劲,准备发动的时机,可是,你貌似丝毫没有要发动的迹象,反倒是活泼得有点异常。不出意料,这天被安排住院了。让原本的「平安夜」显得有些压抑,其中有一些担心,以及你即将出生的激动。

住院反倒是让我长舒了一口气,至少比突然在家里发动,然后慌慌张张去医院要强得多了。本想安安静静观察一两天,就该在医院出生了。可是你这调皮的家伙,到最后一刻也不想让你妈轻松一会,闹腾的你把羊水给弄破了,这下只能让你妈在床上吃喝拉撒了,这一天一夜可算是把你爸妈折腾得够呛。

出生

一大早,你和你妈又被医生带进了产房,这会可能要对你动真格的了,不想出来是吧,给你妈来一针,为了催促你,看你怕不怕。一上午过去了,看样子这一针对你没啥反应,下午检查,考虑到你的生活环境污染问题,我们决定对你实施强制性措施,剥夺你自由选择出生的权利。

下午四点多,你被强制带走,当然连累你妈一同被带走了。过了大概40分钟左右的样子,你出来了。这天是12月25号圣诞节,虽然咱们家以前都不怎么过这个节日,可是从今往后,这天有了一个更加特别的意义,那便是你的生日。

匆匆看了你一眼,就被护士小姐姐推上去了,看到你白乎乎的脸蛋,心中还是比较激动的。可是我还不能上去陪你,我还要继续等被你连累的妈妈。

平安Forever

今年的平安夜到圣诞节,我们一家在医院里度过,这个圣诞节我收到了一个大大的「礼物」,这个「礼物」来之不易,是你妈妈送给爸爸最好的礼物。

宝贝生日快乐,愿你在今后的每一天平安健康幸福~

写于2018年12月25日,整理于2018年12月26日

阅读更多

好想跟你讲清楚,站点到底是怎么产生的?

自从个人电脑普及之后,几乎我们每个人都会使用网络,通过网络,我们可以获取我们想要的信息;可以在电子商务网站上,购买物品;甚至可以与相距两千公里外的好友视频聊天。这一切的美好,都归功于互联网的发展。然而,你真的了解,它是怎么产生的吗?

为什么通过一个叫浏览器(Client)的东西,在地址栏上输入一串莫名其妙的字符(URL),就能打开一个页面(Web Page)?网页是如何产生的?网页上面的文字、图片以及视频又是从哪里来的?

想要回答这么些问题,都是源于一个问题,「诶,你这是什么做的?H5吗?」我竟然一时语塞。很显然,这是个不太专业的问题。而我竟然不知道该怎么回答,好在,「这是Sublime Text做的」这句话,没有说出来。于是,我就产生了,想要写这篇文章的初衷,希望能通过比较通俗的话,回答上述的问题:「站点是怎么产生的?」

网页(Web Page)

首先介绍下,什么是网页?什么,这也需要介绍,确实,这个概念熟悉到,我们都不知道如何去介绍它了。但还是有必要看下它的定义(来源于维基百科):

网页(英语:web page)是一个适用于万维网网页浏览器的文件,它存放在世界某个角落的某一部或一组计算机中,而这部计算机必须是与互联网相连。网页经由网址URL)来识别与访问,当我们在网页浏览器输入网址后,经过一段复杂而又快速的程序,网页文件会被传送到用户家的计算机,然后再通过浏览器解释网页的内容,再展示给用户。是网络中的一“页”,通常是HTML格式,但现今已经有愈来愈多、各色各样的网页格式和标准出现。网页通常用图像档来提供图画。网页要透过网页浏览器来阅读。

看完上述的定义,是不是清晰了不少,归纳一下:

  • 它是一个文件;
  • 它存在于世界中,某一台电脑的某一个存储器中;
  • 它通常是HTML格式;
  • 我们是通过URL来定位并找到它的;

HTML & H5

好了,回答了什么是网页,那具体什么是HTML?

超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言。HTML是一种基础技术,常与CSS、JavaScript一起被众多网站用于设计令人赏心悦目的网页、网页应用程序以及移动应用程序的用户界面。网页浏览器可以读取HTML文件,并将其渲染成可视化网页。HTML描述了一个网站的结构语义随着线索的呈现,使之成为一种标记语言,而非编程语言

维基百科上的定义,令我也耳目一新,完全不需要我再多说什么了。我们知道了什么是HTML,那么,H5又是个啥?准确的来讲,应该叫HTML5,它是HTML最新的一个修订版本,它具备了比HTML4更高级的一些特性,让我们的网页更加的生动有趣,例如集成了音频,视频以及画布等特性。让原本比较枯燥的页面「动」了起来,随着一些比较绚丽的页面的产生,让它越来越被大家所熟悉。于是这个概念被放大了,一些页面通过HTML5的特性,实现了比较高端的动画效果。为了区别之前的页面,也就H5 H5的叫开了,但是,它本质上还是HTML,是网页的一个基本组成单位。

目前几乎所有的网页都是通过HTML5实现的,并且几乎所有的浏览器(新版)都支持HTML5。它是一种标记语言,被广泛应用于Web,并不是一个工具,更加不是一个软件。所以,被问到「这是H5写的吗?」,标准答案为「是」。

URL(俗称:网址)

好了,我们通过一个叫做HTML的标记语言,书写了一个网页文件,命名为test.html,内容如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>这是一个网页</title>
</head>
<body>
    <h1>这是一个网页</h1>
</body>
</html>

用浏览器打开它,显示如下:

image.png

地址栏上的那一串字符,就是URL。你也许会问了,这个咋跟我平时看到不一样呢?因为这个网页就在你本地,浏览器上显示的就是,这个网页文件的本地路径。

统一资源定位符(或称统一资源定位器/定位地址URL地址等,英语:Uniform Resource Locator,常缩写为URL),有时也被俗称为网页地址网址)。

URL的完整格式如下:

协议类型:[//[访问资源需要的凭证信息@]服务器地址[:端口号]][/资源层级UNIX文件路径]文件名[?查询][#片段ID]

如上述本地文件test.html,协议类型为file://,没有服务器信息,直接是资源层级信息/Users/pegnloo53/Desktop/test.html,这是文件在电脑上的绝对路径。所以,你应该能解读 https://b.lupeng.me 这条URL了。

TCP/IP协议

上面URL中的协议类型http定义了,Web中的page是通过什么规则来进行传播的。整个互联网上的所有计算机,都必须遵循一套规则或者叫协议,才能进行通信,进行交流。这套协议就叫做TCP/IP协议。

我们在大学计算机网络这门课程里,应该学习过网络ISO的7层模型,从上到下,分别为:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。这是理论的网络7层模型,而在实际的应用中,我们通常都是采用的TCP/IP协议模型。如下图所示对应关系:

image.png

我们想要获取服务器上的资源(或者说是Web Page),数据会从服务器方的应用层,到传输层,到网络层,到链路层,通过物理设备网线或者光纤等,传到我们这边,接着通过链路层,到网络层,到传输层,最后呈现在我们的客户端(浏览器)上。示意图如下:

TCP/IP

上述对应关系图参考文章:OSI七层模型与TCP/IP五层模型

TCP/IP协议并非只定义了数据传输的流向,每一层协议本身都定义了数据包的一些具体信息,例如,这个数据包将要传到何处(标记,端口号)等。如下图所示:

原始数据被一层一层的进行包裹,到达目的地后,再一层一层的拆包,这个过程就是常说的封装解封装。HTTP只是这套规则中的一个环节,它只是定义了整套TCP/IP协议模型中应用层的其中一个协议,目的是为了提供一种发布和接收HTML页面的方法。

总结

相信到这里,你已经可以回答如下问题:

我们的网站到底是怎么产生的?它到底在哪?以及它如何被我们所访问到?

每一个网站都是通过HTML页面组成,放在了一台或是一组服务器上,这台服务器提供了可供外部访问的URL,我们在浏览端上,通过URL定位到网站所在的地址,然后服务器端响应到请求后,通过TCP/IP模型,一层一层的将信息返回给我们,于是浏览器上就呈现出网站的样子。

到此就结束了。

你可能意犹未尽,篇幅关系,先讲到这里,尽量一篇文章一个主题。 后面有机会,我会继续分享相关主题文章,期待你的关注。

阅读更多

加密解密在 Web 开发中的应用

本文来源于个人付费Chat,感兴趣可扫码下方二维码查看。

加密是将明文信息改变为难以读取的密文内容,使之不可读的过程。解密是通过特殊的对象,将密文还原为正常可读的内容的过程。而在这个过程中,我们所使用的方法,就是加密解密算法。

说到加解密算法的时候,不得不提一个重要的概念「对称与非对称」。什么是对称加密算法?什么是非对称加密算法?简单的说,对称加密就是,加密和解密使用的都是同一套密钥;反之,如果加密和解密使用的不是同一个密钥,即为非对称加密算法,也称公开密钥加密,广泛用于信息传输。

看到这里,你可能会说,什么对称不对称,我就想知道一些耳熟能详的,诸如:DES,RSA,MD5,SHA1,Base64 都是什么玩意,有哪些用途,怎么用。

常见加密算法

  • DES(Data Encryption Standard)是最常见的对称密码算法,加密解密使用同一套密钥。密钥较短,加解密处理简单,速度快,适用于加密大量数据的场合,但不适合数据传输,因为存在密钥泄露的风险。
  • RSA(Advanced Encryption Standard)是非对称加密算法的代表,加密使用公开密钥,也称公钥,解密使用私钥。密钥尺寸大,加解密速度慢,一般用来加密少量数据,例如,可以用来加密DES算法中的密钥。
  • MD5(Message Digest Algorithm),严格的讲,它是一种密码散列函数,可以产生出一个128位的散列值。它是单向的加密算法,明文可以变成密文,但是通过密文无法解密成明文,一般用于验证数据的准确性,以及信息传输的完整性。
  • SHA-1(Secure Hash Algorithm - 1) 与MD5一样,也是一种密码散列算法,它可以生成一个被称为消息摘要的160位(20字节)散列值。
  • Base64:在Web中还有一个比较常见的加解密方法,那就是Base64,准确来说,它其实是一种将任意二进制到文本字符串的编码方法。它并没有所谓的密钥。常用于在URL、Cookie、网页中传输少量二进制数据。

散列函数:将任意大小的数据映射到一个较小的、固定长度的唯一值。加密性强的散列一定是不可逆的,这就意味着通过散列结果,无法推出任何部分的原始信息。任何输入信息的变化,哪怕仅一位,都将导致散列结果的明显变化,这称之为雪崩效应。散列还应该是防冲突的,即找不出具有相同散列结果的两条信息。具有这些特性的散列结果就可以用于验证信息是否被修改。

阅读更多