{"version":"https://jsonfeed.org/version/1","title":"minemine","description":"Write something for my love.","author":{"name":"luyilin"},"home_page_url":"https://minemine.cc/","feed_url":"https://minemine.cc/feed.json","items":[{"title":"房价随想","id":"/2022/05/29/house-price","url":"https://minemine.cc/2022/05/29/house-price","content_html":"
\n——
\n通货膨胀是政府偷偷掠夺人民财富的手段,极少数人获得暴利——没错,通货膨胀就是剪老百姓的羊毛,让权贵的财富更集中,中下层群众更贫穷。
\n但是,从国家的统治与巩固来讲,的确是良药(当然有一定限度)。
\n当大多数资源掌握在少数人手中的时候,占有绝大多数的金字塔下层的群众能够分配到的资源就越少,资源的价格就会越高,少数的金字塔中上层的既得利益者就会越富有。
\n大家知道,有些资源会变成富人间的游戏(比如现在的古董、字画),完全失去群众基础;而如果与生活密切相关的资源过度集中,一定会爆发极端冲突事件,造成社会动荡。
\n政府通过不断稀释货币的实际购买能力,并且对粮食等生活必需品实行平准制度,一方面保证了绝大多数人民的基本吃饭问题,另一方面让中下层群众手中的余钱基本消耗在特定的商品上,以至于不得不马不停蹄地劳作,这才能保证社会的稳定和向前发展,而上层精英就可以坐享其成。
\n让我们回顾一下过去80年代,那时的人们靠省吃俭用攒出节余,被消耗在自行车、手表、缝纫机上。通过不断的劳作,才能吃饱饭,才能攒点钱买三大件娶媳妇。
\n80年代末,90年代初,人们的工资提高了,手里的结余增加了,彩电、冰箱的大规模普及又消灭了老百姓手中的流动性。
\n紧接着电话、空调又接过了彩电、冰箱的大旗。那时安装个电话可要5000元啊。
\n随着工业化水平大幅度提高,经济高速增长,货币发行量也迅速增加,彩电、冰箱等工业化大规模产品已经不具备稀缺资源的特性,也无法吸收百姓手中庞大的结余资金。
\n汽车和商品房的发展成为消灭老百姓手中的流动性的最好工具。
\n在经济发展的大潮中,一旦对资源的支配权可以换取利益,贫富两极分化是发展的必然。随着贫富分化开始加剧,财富集中在少部分人手中,集中了大量财富的少部分人已经不满足于购买普通的消费品(汽车是工业化的产物,不具备稀缺性),对投资品的追捧造就了2005年房地产的崛起。
\n房地产具备了投资品和生活必需品的双重属性,既可以让金字塔中上层的精英群体依靠房地产保值增值,又可吸收掉中下层群众的未来若干年的结余资金。
\n大量印刷的货币还是有一定数量留到勤劳肯干的白领手中的,而这些货币又因为通货膨胀因素消耗在不断上涨的生活必需品上,必需品中商品房占了大头。
\n于是拥有大量房产的金字塔中上层精英可以坐享其成,享受房产升值带来的收益,而中下层群众不得不为房子打工。
\n发行大量货币满足经济发展的需要,同时通过通货膨胀来消灭广大群众手中的流动性,是政府稳定社会,发展经济的法宝,适度的通货膨胀当然是缓解社会矛盾的良药。
\n——
\n对于大部分普通人来说,买房是一种刚需,房产有了附加的金融属性之后,优质房产的增值可以抵抗通货膨胀,变成了和基金相似的东西,伴随着买房置业的焦虑是人对于自己资产缩水的焦虑,即使自己的资产是增长的,但增长得不够快和较低的投资回报率只会让自己的资产不断贬值,甚至离买房的准入门槛越来越远。
\n低生育背景下落户政策越来越宽松,只是落户就真的变成xx人了吗?总有各种办法限制租房人的各种权利,比如学区房限制受教育权,租售不同权,上海自如管家未经允许非法入室等一系列事件,付了不菲的房租却要受这份气,甚至连基本的人身财产安全也无法保障,那还不如回老家呢。在这种情况下买房是为了满足朴素的居住需求,让自己维持基本的生活水准,首付和30年贷款才是在一座城市安身立命的投名状。
\n互联网一年比一年高的应届生薪资彷佛在说你的薪资也会是一个稳定的上扬曲线,而这个状态可以维持三十年吗?这个社会可以保持三十年高速发展吗?在经济下行期体制外是有很高的失业风险的。还需要面对35岁就业焦虑、企业效益不佳裁员风险、内卷压力,背负高房价高风险,慢慢击碎了都市打工人的梦幻泡沫,我花了十年才能和你坐在一起喝咖啡,我们就一样了吗?努力多年依然处于金字塔的底层。
\n社会需要底层群众用巨大的付出和极少的收获为金字塔上层群体服务,只有极少数人能从底层脱颖而出。邹容说元清两代的考试制度:“至于科举清要之选,虽汉人居十之七八,然主事则多额外,翰林则益清贫。补缺难于登天,开坊类于超海。又多设各省主考、学政及州、县教育等职,俾以无用之人治无用之事而已。即幸而亿万人中,有竟登至大学士、尚书、侍郎之位者,又皆头白齿落,垂老气尽,分余沥于满人之手。”清代科举对人们的羁縻牢笼令人唏嘘,如今这条路依然很难,但总还有希望。体会过底层的艰辛,见识过基层的操蛋,就几乎只能沿着这条路走。
\n而自己一生为之努力的目标只不过是别人眼中微不足道的东西,我通过勤奋努力和幸运才得到的东西,别人很随意地就能得到,就好像生来就拥有这些。
\n社会的矛盾始终是阶级斗争,是资产阶级和无产阶级之间的斗争,是统治者和被统治者之间的斗争,一个信奉丛林法则的精英社会决定了国民收入的金字塔结构,固化了等级森严的阶级壁垒,当我为了一点点加薪欢欣雀跃的同时,我做梦都想不到精英阶层手中究竟握有多少财富,而自己仅有的一点点可怜的财富又因为通货膨胀而不断贬值,消耗在不断上涨的生活必需品里,从而陷入西西弗斯式的重复劳作,每个工作日从早上8点到晚上6点,我不是在工作就是在去工作的路上,很可能未来三十年都是这样,而这样也仅仅只能维持一种平庸的生活。
\n\n个人的欲望和内心的痛苦,放在个体身上都是无限大,而社会的发展、历史的进程并不以个人的意志为转移,很快就湮灭在每天山呼海啸般的信息流中,被天地视为刍狗。
\n","date_published":"2022-05-29T00:00:00.000Z","date_modified":"2023-01-29T09:57:46.403Z"},{"title":"失眠随想","id":"/2022/03/22/unable-to-fall-asleep","url":"https://minemine.cc/2022/03/22/unable-to-fall-asleep","content_html":"最近刷朋友圈看到大学室友生宝宝了,感慨万分,算来我毕业竟已经七年了。她一直是一个很有规划的女生,在大学时学习一直很勤奋,上课时提前抢第一排,顺利保研,在研究生时找到男朋友,毕业后顺利就业、结婚、生子。生活井然有序,行事完美符合普世价值观,拥有了世俗意义上的美好。
\n而我大学里沉迷看小说,从未想过之后的考研、就业规划,出国更是从来没有想过,因为感觉遥不可及。上课都是选边上的位置偷偷看小说甚至翘课,毕业后匆忙转行,过了几年996的日子疲惫不堪,终于换工作轻松些后,开始年龄焦虑发愁找男朋友的事。
\n我曾经问她说感觉她的男朋友和她的理想型并不相符,为什么选择他?她说他诚实善良,是一个很好的人,和他相处也很自然,自己也没有很漂亮,不能要求太高,而且研究生时已经24岁了,之后工作的话遇到的人鱼龙混杂,环境不如校园单纯,而且工作忙也不一定好找,不如在学校时就找好,而且还要相处几年,算下来至少要两三年差不多也该考虑结婚的事了。
\n我当时不以为然,总觉得结婚这件事十分遥远,为什么要在当下就计划好不确定的未来呢,现在只想抽自己一巴掌。
\n人生是需要规划的,不然等到你想要某些东西的时候才发现自己两手空空没有筹码,如果早一些考虑的话事情会好办得多,等到想要的时候才发现需要付出成倍的努力,且常常不如人意。我的人生没有规划,只有事到临头我才慌慌张张地忙做一团,我甚至不知道下一步要规划什么,没做的事情太多,没到非做不可的地步似乎就能得过且过,而临绝境,也不甘接受应得的结果。
\n而由亲缘维系的家庭关系有其固有的稳定性,是人类普遍接受的价值纽带,亲情是高于友情又高于爱情的。童年的玩伴可能渐行渐远,曾经亲密无间的挚友可能相隔两地难以再见,我常常安慰自己人生就是这样的,没有什么是永恒的,留不住的美好时光,就让它在记忆里永不褪色。因为没有能力留住,我只能这样无力地安慰自己。
\n爱情也是这样,love always fades,曾经山盟海誓的两个人最后也许会互相憎恨,而即使浓情蜜意的热恋也未必情比金坚,海誓山盟本身就是一件不自然的事情,相处得好好的,却非要说什么三生三世虚无缥缈的东西,是因为隐隐感觉到了一段感情即将消亡的恐惧,所以需要不断说服别人,说服自己。情人节等一切情侣专属仪式感也是同理,因为对这段感情怀有太多不确定性,不确定对方的心意,不确定是否能战胜现实,才要一次次证明它的意义,证明自己的选择没有错,说服自己看我过得挺好的。但是如果一件事本身足够有意义,是不需要去证明的。
\n而亲情不同,让人可以不保持社交礼仪,可以不小心翼翼担心冒犯对方,可以全然放松并且理所当然地享受宠爱,让人在这个世界上不像一个孤岛,即使以第一人称单数生活依然有可以依靠的地方,即使这个地方像个破旧港湾,即使你不常常回去,你却知道它一直在那里,并且永远会接纳你,这就是它的可贵之处,它就像黄金一样保值。
\n是枝裕和的电影反复在讲一件事,像我们这样的普通人就是会犯很多错的,会搞砸工作、辜负父母的期望,人到中年依然一事无成,还有失败的恋情、无聊的梦想,就这样平凡的生活日复一日,你年纪渐长,明白了梦想是不会实现了,但家人的爱是值得珍惜的,真正宝贵的东西就在身边。
\n我想,这就是家庭的意义。
\n做了一个项目搞了一天代码都没有跑起来,绝望了。
\n","date_published":"2022-03-22T00:00:00.000Z","date_modified":"2022-03-24T03:51:10.775Z"},{"title":"浅谈文艺作品中的爱情起源","id":"/2022/02/19/love-in-literature","url":"https://minemine.cc/2022/02/19/love-in-literature","content_html":"\n托尔斯泰说,多么伟大的作家,也不过是在书写他自己的片面。
\n首先人无法描写自己不熟悉不了解的东西,强行去写只会显得浮滑和笨拙。
\n其次并非着眼于宏大叙事或严肃社会问题才是好的文艺作品,普通人鸡毛蒜皮的小事和波澜壮阔的内心同样重要。社会是由人组成的,唯有人与人之间的关系是值得反复去探索和研究的,如果只着眼于宏大叙事而忽视了人与人之间的情感联结就会显得苍白空洞。比如电影版《沙丘》,恢弘的故事架构和完美的视听体验可以带给人强烈的感官刺激,但难以让人产生长久的共鸣。与此对比同时兼顾宏大叙事和情感联结的是《星际穿越》,只着眼于人与人之间的关系的有是枝裕和的一系列作品,都很优秀。
\n而爱情作为人与人之间最复杂和深刻的情感,在各种文艺作品中反复出现,被吟咏、探讨和分析。爱情是人类永恒的话题。
\n文艺作品里爱情的开端,往往充满偶然性,比如武侠剧里常用的不打不相识,一眼万年式“这个妹妹我曾见过的”,突发事件式桥头借伞,先入为主式“所有人都说她是一个破鞋”,总之男女主人公的初次见面一定不是普通且平淡的。所以相亲这种形式往往会被人本能地排斥,因为这样就没有特殊和惊喜的意味,也不会让人产生命中注定的感觉,而这种感觉恰恰是最近似爱情的。但这还不是相亲的核心矛盾,这个我们等会儿再讲。
\n今天要分析的就是,爱情是如何起源的?
\n在爱情开始的初期,两个人的关系是非常脆弱的,爱情的萌芽可以是可爱的长相、机智的言语、洒脱的气质,是基于个人审美偏好产生的一种浅浅的好感,这种好感是一张达到爱情准入门槛的入场券,如果双方没有联结或对彼此不够了解,关系随时会中断,入场券也会过期。
\n让我们翻开现代爱情小说的母版《傲慢与偏见》,《傲慢与偏见》里的大姐吉英,温柔娴静,是五姐妹里最貌美的,她和彬格莱先生在舞会里一见钟情,但是她性格内敛,不善言辞,在不明确对方的心意时只能压抑自己的感情,缺乏勇气和自信表露自己的感情。彬格莱先生的好友达西先生认为吉英并不喜欢彬格莱,且门风有碍,并非良配。他劝彬格莱留在伦敦,不再和吉英继续接触,彬格莱听从了他的建议。
\n如果故事到这儿结束两个人就只是萍水相逢,初期的好感是很脆弱的,很容易因为这样那样的原因断掉,没有了联结,双方没有沟通就无法了解,人与人之间的关系也无法进一步展开。
\n对此伊丽莎白的闺蜜夏绿蒂小姐倒是看得非常清楚:“某人对某人发生点好感,本是极自然的一回事。只可惜没有对方的鼓励就自己没头没脑去钟情的人,简直太少了。毫无疑问,彬格莱喜欢你姐姐,可是你姐姐如果不帮他一把劲,他也许喜欢喜欢她就算了。”
\n后面吉英去伦敦舅舅家小住了三个月,主动去彬格莱先生家拜访,虽然被其姐妹阻挠没有见到彬格莱先生,但无疑是主动表露心意的一步,后面彬格莱先生知道了吉英的心意两人才有机会在一起。
\n再比如《武林外传》里郭芙蓉和吕秀才的爱情起源,吕秀才说是因为那个算命的,白眉。白眉在被揭穿跑路时被秀才追问他的天赐良缘算出来了没有,情急之下指着要打他的小郭说:她,她,她她她……
\n此时已知白眉是个江湖骗子,为什么吕秀才还愿意相信他的信口胡诌?
\n因为这就是他想要的答案。
\n无论他彼时是早已属意小郭还是潜意识里对小郭萌生了一些好感,都不重要。人们总是愿意相信自己想看到的答案,无论求神问卜、研究星座八字,只是期望得到自己想要的答案而已。
\n如果得到的不是想要的答案,就会找出各种合情合理的理由反驳,然后抛在脑后。
\n吕秀才完全有理由不相信这个江湖骗子的话,但他没有,这就是他主动的自己的选择,而非命运的安排。
\n回首过往,我们往往会对过去的很多事赋予各种含义,从结果去反推原因,认为最初的相遇是机缘巧合命中注定,把爱情归结为上天的恩赐,命运的安排,蒙上了一层浪漫主义色彩,而忽视了爱情其实是由他们自己创造的。但是故事不能说得太透,说得太透就不好看了。
\n到此你也许会说彬格莱先生租了尼日斐花园和小郭闯荡江湖住到了同福客栈难道不是命运的安排吗?但是这只是一个引子,如果没有后续主人公自己的选择,爱情是无法开始的。
\n真正的命运的安排是《甜蜜蜜》里李翘和黎小军重逢那一场戏,李翘开车载着黎小军,画外又响起了熟悉的《再见我的爱人》,黎小军下车找邓丽君要签名,李翘留在车内思绪纷乱,黎小军回来后她借口自己要去买东西让他先走,自己愁肠百结心绪难诉,默默注视他的背影,想在方向盘上靠一靠时却不小心摁响了车喇叭,黎小军回头,二人对视。
\n因为不小心摁响了车喇叭这个离别才没有简单地结束,两人缘分未断,堪称神来之笔。
\n不要小看这件小事,多少情侣看不清对方的真心,怕受伤怕自己落于可笑的境地不敢展露自己的真心,一次次欲言又止阴差阳错,最后遗憾错过。
\n人在突发事件下是难以掩饰自己瞬间的反应的,那惊诧下的一秒之内的对视是真实的情感投射,曾经多么亲密的两个人才能瞬间明了对方的不舍,有了这个契机,他们才有机会再续前缘。
\n\n\n这样的才是命运的安排晓得伐?
\n曼玉好美。
\n虽然最后两人依然没有在一起,也许这就是人生吧。川普的这句话似乎可以解释一切。
\n\n不是所有人都能拥有一见钟情刻骨铭心的爱情,曾经拥有过,就已很值得。
\n至于为什么让人感觉命中注定的爱情走入婚姻后仍不一定美好,那是另外的问题,我们下次再聊。
\n同时,以上内容都是我瞎说的。
\n","date_published":"2022-02-19T00:00:00.000Z","date_modified":"2022-02-21T10:50:55.742Z"},{"title":"未能成行的逃离","id":"/2022/02/02/fail-to-run-away","url":"https://minemine.cc/2022/02/02/fail-to-run-away","content_html":"《逃离》中卡拉的两次逃离,都是想逃离现在的生活。
\n卡拉的男友克拉克为人粗鲁脾气火爆,而卡拉细腻敏感,相处中她的情绪总是被忽视,克拉克经常觉得不耐烦,她捏造了雇主家病怏怏的男主人对她性骚扰的谎话,作为夫妻夜话调剂二者感情,引起了他的强烈兴趣,而她自己也是有快感的,这就是NTR吧,一种性癖。
\n后来发现已去世的男主人是个颇有声誉的诗人,还得过一笔丰厚的奖金,克拉克就逼卡拉去找雇主家的女主人西尔维亚要钱,这时卡拉的谎言就变得无法收回也难以否认了。她情绪崩溃,诉说了自己生活中的痛苦,在西尔维亚面前哭了出来,她帮助了她逃离。
\n当出现感情问题时,经常会有这样的模板性回答:姑娘你快离开他吧,你会有更好的生活的!但是为什么会有更好的生活?没有人回答。
\n逃离并没有解决她的问题,只是让这个问题消失。逃避令人不开心的境地,她仍是迷茫的孤独的。下一次谈恋爱的时候,或试图与人建立深层次关系的时候,这些问题会再次出现,她会再次陷入类似的困境。那么下一次该怎么办?
\n甚至没有等到下一次,当她坐在开往多伦多的车上,想象要打出租车去那所陌生的房子,在电话簿上查一个个马术学校的地址去问人家要不要雇工,去照料陌生的马匹,跟不熟识的人说话,开始一种生活,去一个新的地方,仅仅是因为那里将不会包括克拉克。而当她自顾自地往前走,试图把命运握在自己手中时,却不可抑制地想到他,她该用什么来取代他在她生活里的位置呢?
\n她曾逃离优渥的生活和克拉克一起离开,她把他看作二人未来生活的设计师,自己则甘当俘虏。离开克拉克,相当于抽出她现在生活的主心骨,她立刻就不知所措了。
\n她在逃离父母时留下的字条里写道,“我一直感到需要过一种更为真实的生活。”
\n真实的生活是怎样的呢?
\n她曾经讨厌父母住的房子、他们“大得能走进去人”的壁柜、他们的度假方式,她想要住在乡下和动物打交道,这是她曾经想要的真实的生活。而当她和克拉克一起经营农场,照顾马匹日常打杂,又难以忍受克拉克的忽视和不耐烦。人的境遇、心境是会变化的,欲望一直存在,就永远渴望更真实的生活。
\n因为永远有更真实的生活存在,所以这个世界不存在真实的生活,一种经典逻辑悖论。
\n她最后没有逃离,小山羊弗洛拉的死去也隐喻着她内心自由灵魂的死去,她没有勇气也没有能力离开他,她是如此孤独,她太渴望被爱了。和克拉克在一起,至少她还能依偎在他背上,如同落水的人抓住救命稻草一般依附着这一点点温暖,而克拉克在她出走之后对她有了一些耐心,懂得照顾她的情绪,使她觉得和他配合也并不怎么困难。反正生活不就这么回事吗,“人得学会控制自己嘛”。
\n王小波在《一只特立独行的猪》里说,“任何一种负面的生活方式都有很多乱七八糟的细节,使它变得很有趣。人就在这种趣味中沉沦下去,从根本上忘记这种生活需要改变。”
\n卡拉不是没有意识到她处在一段负面关系中,但是她太沉溺在这些细节里,在西尔维亚看来,结束这段关系只是卡拉身上有足够的钱就可以远走高飞这么简单,而对于卡拉自己,则是直面自己的恐惧,放下自己的执念,这何其艰难。
\n卡拉最后没有逃离。“她像是肺里什么地方扎进去了一根致命的针,浅一些呼吸时可以不感到疼。可是每当她需要深深吸进去一口气时,她便能觉出那根针依然存在。”
\n","date_published":"2022-02-02T00:00:00.000Z","date_modified":"2022-02-05T06:02:33.094Z"},{"title":"走夜路时","id":"/2021/12/27/walk-in-the-dark","url":"https://minemine.cc/2021/12/27/walk-in-the-dark","content_html":"披星戴月,从字面意思上看是很浪漫的,抬头就能看到满天星斗和月亮,让人走夜路不惧黑暗。
\n不知是否小孩子天生会害怕黑暗,或者是从小看电视耳濡目染地感觉黑暗里会窜出一个坏人,或者是对未知的恐惧。对黑暗的恐惧从我有记忆起就有,卧室进深很深,从窗帘缝隙洒进来的一点微弱月光照不到床沿,关上灯就黑洞洞的,然后陷于一种不可名状的恐惧。类似于小儿惊梦的毛病,爸妈给我在房间里装了一个小夜灯,黑暗里睁眼就能看到一点永恒的微光,这样似乎就能安心去睡了。
\n有一次夏天里我睡不着,在黑洞洞的房间里睁着眼,努力想辨认出天花板上的花纹,突然想到人死后是不是也去了这么一个黑暗的地方,不管怎么努力睁大眼睛都无法穿透这巨大而令人窒息的黑暗。那次和姑姑一起睡,我推了推她问人死后是去了哪,但她当时应该困得很,翻了个身让我赶紧睡觉,而我当时还不能够思考这么深奥的问题,想了一会儿没有答案,不久也抵不住睡意沉沉睡去。后来我读余华看到海涅的诗“死亡是凉爽的夜晚”,就想起那个夏夜,我躺在凉席上第一次想到了死亡。
\n再长大一点,我们搬离了奶奶家住到了县社,也不过骑车半小时的距离,小县城里仿佛去哪都很方便。在奶奶家吃完晚饭回去的时候,暮色四合,一会儿天就变成沉郁郁的藏蓝色,风吹过杨树叶变成影影绰绰的黑影,路边也没有路灯,只有路边的房屋窗子里零星透出的几点灯光和高高的一轮月亮。好了,现在难题出给了我妈,她要摸黑载着我骑车回家。我不知道我妈是否害怕这黑暗,她一直是温柔的柔弱的,身材如此,性格也是这样。“妈你怕不怕?”她扭过头,但是她的侧脸隐藏在黑暗中,我看不清她的表情,只听到她语气轻快地说:“我不怕,这条路经常走。” 我往左边看一眼,再看看右边,目光仍然穿不透这无边无际的黑暗,但我坐在自行车后座偎在我妈背上,感到很放心,甚至很好睡。
\n如果可以我想提前知道的人生建议之一:不要太早看恐怖片,容易留下难以磨灭的心理阴影。小时候不知在哪个卫视看过一个吸血蝙蝠的电影,成千上万的蝙蝠从一个幽黑的山洞里倾巢而出,扑扇着翅膀簌簌不绝,眼睛里还放着诡异的红光,它们搜寻动物和人作为猎物,无声无息地吸血。万万没想到每天傍晚盘旋在天空中的蝙蝠如此危险可怖,仿佛一个个黑色恶魔,生怕它们一个俯冲下来会真的咬人吸血,放学回家的路上要经过一段小路,路两边种着杨树还有很多小飞虫,简直就是蝙蝠生长的沃土,每天要经过这段盘旋着蝙蝠的小路简直就是我的噩梦,需要鼓足勇气一口气冲过去,试图以超快速度绕过它的回声定位系统,脚蹬子差点蹬飞。我妈就每天晚上在这个路口等我,骑车过来时远远看到我妈的身影心里就似乎有了定海神针。甚至如今我都上班了,我妈来看我时还是会每天晚上在小区门口等我,不过我已经不害怕了,毕竟大部分蝙蝠不会吸血,如果真的被咬会有两个或四个的对称齿痕比较好辨认,及时打狂犬疫苗即可。等待可能已经变成了她的习惯,我妈真是天下第一好。快过年了,让人思乡。
我很喜欢李娟的《走夜路请放声歌唱》,让人感觉自由、坦荡。即使不好意思歌唱,也有月光相伴。
\n","date_published":"2021-12-27T00:00:00.000Z","date_modified":"2022-02-03T10:33:26.693Z"},{"title":"县社记事","id":"/2020/04/10/a-tale-of-xianshe","url":"https://minemine.cc/2020/04/10/a-tale-of-xianshe","content_html":"从有记忆开始我就和父母、奶奶一起住在东关的一所三合院里,那时候我和我姐各有要好的伙伴,虽然只差两岁但已形成阶级,她们稍大点的更玩得来,直到我上小学后一家搬到县社的一套两室一厅的房子里,我俩才真正成为形影不离的玩伴,我童年的很大一部分记忆是发生在这个地方,这里没什么装修可谈,简单的家具,水泥地面,小小的阳台,但是宁静温馨,在这里度过的一个个春夏,是我童年珍贵的回忆。
\n2000年左右泰坦尼克号风靡全国,掀起了一股全民热潮,我和我姐早就想看了却一直没机会。小时候除了大风车我最喜欢的就是电影频道,在电影频道里我看了美人草、大话西游、黄飞鸿,深深地影响了我的三观和审美偏好。还最喜欢涂经纬,觉得她实在长了一张美丽又有内涵的电影脸,她来主持电影频道,真是再合适不过了。
\n\n那天我看到电视预告,晚上十点半会播出泰坦尼克号,赶紧把这个爆炸性消息告诉我姐,和她约好了今天晚上晚点睡等电影播出。我俩兴奋不已,草草吃完晚饭就一直守着电视,其他频道都变得索然无味,看一会儿就要调回CCTV6确认下泰坦尼克号播了没有,那时候可能是小学三四年级,小学时一般不到九点就睡了,尤其我姐特别爱睡觉,而且她是睡眠质量特别好的那种人,沾枕头三分钟就能睡着,真是令我羡慕,这大概也是她皮肤比我好的原因之一。果然,还没到九点我姐就撑不住了,她说她先睡会儿,到点了我再叫她起来,我一脸怀疑地看她:“你睡着了还起得来吗?”她表情严肃地说:“肯定起得来,我要看泰坦尼克号。”我被她庄重的神色唬住了,现在想来她应该只是困得不行没啥表情罢了。然后我继续在电视机前蹲守,我妈过来说:“你姐都睡了你也快睡吧,明天看重播吧。”我当时满心期待哪里睡得着,我说:“我不困,再坚持一个小时就能看了,而且她一会儿也要起来看的。”我妈哈哈笑了:“你姐都睡了,她今天肯定不看了。”我不信:“这可是泰坦尼克号,她早就想看了,你等着瞧吧我等会儿叫她她肯定起来。”,“好吧,那你等吧。看等会儿你姐起不起来。”我妈笑眯眯地走了。我哼了一声,心想当然是我赢了。
\n夜渐渐深了,万籁俱寂,周遭只剩下电视节目的声音,我看不进去,一个人等待实在孤单,就跑到卧室看我姐,这厮果然睡着了,我戳戳她的脸,没反应,伸出一根手指堵住她一边的鼻孔,过了一会儿许是感觉到呼吸不畅她皱皱眉头翻个身又继续睡了。好吧,看来是闹不醒了,我回到电视跟前接着等,这次连频道也不换了,死死地盯着CCTV6,终于到十点半了,看了无数无聊的广告终于要开始了,我兴奋地跑到卧室叫我姐,推搡了半天把她吵醒了:“赶紧起来,泰坦尼克号要开始了!”,她揉着眼睛皱着眉头说:“别吵我了,我要睡觉”我大吃一惊:“你难道不看了?!”她嘟囔了一句:“别吵我。”一翻身又睡了,我妈笑眯眯地说:“你看我说什么来着,你姐睡了肯定不起来看了。”我气愤地盯着她的睡脸,觉得她实在是不讲义气,说好一起看电影的结果自己先睡了,我愤愤地转身走了,心想她不看我看。
\n然而,也许是因为刚刚被爽约毁了我的心情,也许是少了一起看的伙伴,也许是太过激动折腾了一天再旺盛的精力也耗尽了,没看一会儿我也抵不住睡意了。
\n第二天的重播,看到Rose在甲板尽头迎风张开双臂,Jack在后面轻轻揽住她的腰,那首经典的《My heart will go on》也悠扬响起,随着镜头360度的旋转,周围的一切都变成他们的背景,辽阔天地间彷佛只有他们两个人,实在是浪漫地一塌糊涂,也奠定了我对浪漫的终极幻想。许多年后我在里约奥运会上看到秦凯在领奖台旁向何姿求婚,他们拥抱在一起后那个360度的旋转镜头,全场的欢呼声一浪高过一浪,让我感动地眼泪停不下来,多年过去了,我已不记得那年拿了多少金牌,但永远无法忘记这个最浪漫的求婚。
\n泰坦尼克号引入时一刀未剪,裸体作画那段对一个小学生来说是相当新奇震撼的,因为爸妈没在旁边,免去了忸怩和羞惭,我和我姐心照不宣地对视了一眼,然后紧紧盯着电视,Rose无疑是美的,皮肤雪白,身姿优美,但又觉得她的裸体有点过于丰腴,我当时的审美还不足以欣赏这种成熟女人的丰韵。
\n我瞪着她:“昨天说好一起等到十点半看的,你还让我喊你,结果你直接睡了!”她笑嘻嘻地说:“昨天太困了嘛,我本来真想着到时候起来看的,但是实在睁不开眼了,你昨天最后也困了嘛,今天一起看一样。”哼,我对她磨了磨牙,勉强原谅她了,刚刚一起看过这么震撼心灵的电影,我一点也生不起气来。
\n我那个时候意识到,我十分爱我的父母,却不是什么都能和他们讲的,父母难以儿童的视角和孩子交流,他们早已过了那个懵懂萌动的年纪,并且似乎忘了他们也是从那个时候过来的,表现出的克制冷静如同兜头一盆冷水,而我兴致勃勃急于探索,有着同样的好奇和冲动的同龄人,正是我的好伙伴,比如在县社的这段日子,我的好伙伴就是我姐,虽然俩人难免掐架,但她比我胆大、心灵手巧,我是很喜欢和她玩的。
\n","date_published":"2020-04-10T00:00:00.000Z","date_modified":"2022-02-03T10:12:35.347Z"},{"title":"2018 年终总结","id":"/2019/02/02/2018-summary","url":"https://minemine.cc/2019/02/02/2018-summary","content_html":"现在是 2019.2.2 16点48分,也是我过年前的最后一个工作日,下午修了一个兼容性的 bug,刷了刷 GitHub,收拾了一下东西,感觉可以开始摸鱼了(大雾,我怎么会摸鱼)现在写年终总结是不是有点晚,不过没有关系,just for fun
\n今年本来想早点休假回家的,毕竟攒了好多调休都没用,但是春运的火车票实在难买,只好又拖了几天。
\n2018年我从成都去了杭州。我在成都呆了七年,从2011年到电子科大上学,到15年开始工作,一直都在成都。我曾经觉得我要一辈子呆在这儿了,成都真的是个很好的城市,空气湿润,火锅串串很好吃,女生们很漂亮,而且四川人很热情心肠很好,刚来杭州的时候去坐公交车,没看清车站去问司机,结果司机特别不友好说我没看清上什么车😥,在成都基本不会这样,一般还会问你要去哪里,到不到的了,要咋个转车。四川的嬢嬢们也是宝藏,软件园A区食堂一楼有家店的芽菜包子特别好吃,嬢嬢每次都笑意盈盈地问你妹妹要吃啥子。这种事情还有好多好多,感觉四川人很有一种胸襟,热爱生活,不囿于繁琐,又知足常乐。这种生活态度真的让人很舒服,也很佩服。宿舍四个姑娘有两个是成都人,现在除了我都在成都。
\n我妈倒是挺开心的,她一直担心地震,不过不用担心,成都不在地震带还是很安全的。
\n杭州的风土人情,其实我真的不是很了解,因为加班很多,周末难得出去玩,景点我只去过西湖。
\n成都见证了我工作上的巨大变化,刚毕业的时候我一个月只有四千块工资,到手三千多块,除去房租后窘迫得不行,我当时特别难过,这和我预想的职场生活差距很大,但是我什么都不会。穷则思变,我开始考虑转行,学前端。转行不是件容易的事,不过也不是很难。不容易是因为以社招身份去应聘一份毫无工作经验和专业相关性的工作,但只要你能拿出证明你能力的东西,总会有机会的。
\n当时百度知道里有一个问题问几天能掌握 html,有个人说两天就够了。然后我花了两天时间在 w3school 上看完了 html 的教程,写出了第一个 hello world,当时信心满满,觉得未来可期。
\n面试的过程是漫长和忐忑的,而我当时连 ajax 是什么都不知道。终于我开始了第一份前端工作,是一家校友的小创业公司,氛围很好,我们都觉得有点硅谷 feel,非常感激面试我的大施,没有因为我是非科班出身有丝毫歧视,面试过程很专业很耐心。这是我加班到11点依然精神抖擞的阶段,不过三个月后我试用期没过。。。当时给我的打击蛮大的,很是消沉了一段时间。
\n再然后一家公司,同事也都非常好,带我的前端、服务端同学都很厉害,教了我很多,但是我当时还沉浸在上家公司试用期不过的痛苦中,比较沉默寡言,没有很好地融入团队。事实证明受打击的时候最好休整好心情再去上班,要朝气满满的鸭。
\n再然后我在 v2ex 上投了简历,面试了淘票票,感谢面试我的师兄师姐们,最后收到了offer。
\n感觉我一直都在摸索,找工作的时候意识到要有专业技能和不可替代性才能得到高薪,然后才开始向这个方向努力,我很后悔没有早一点思考工作的方向,没有早一点找到自己想做的事情,而不是一直追剧看小说打发时间,我相信了考上大学就可以好好玩了的谎话,然后玩了四年,再以双倍的努力追赶回来。缺乏一个指引的方向,一路跌跌撞撞,做错后拼命弥补,可能后续的恋爱、理财等也会是这样。人生每个阶段都有要做的事情,该做的事情,没有怎么样就一劳永逸的阶段,要多读书多思考,从前人的经历汲取经验,如果不知道该做什么,也至少要把手头的事情做好。
\n陶杰在《杀鹌鹑的少女》中写道:“当你老了,回顾一生,就会发觉,什么时候出国读书、什么时候决定做第一份职业、何时选定了对象而恋爱、什么时候结婚,其实都是命运的巨变。只是当时站在三岔路口,眼见风云千樯,你作出抉择的那一日,在日记上,相当沉闷和平凡,当时还以为是生命中普通的一天。”
\n我决定来杭州,没有太多考虑,收拾了一下行李就火速入职了,当然感谢我姐做我的后盾。那天一如往常,我觉得我还年轻换城市没什么,收到心仪的 offer 当然要去。
\n最近作息很紊乱,晚上老是失眠,然后顶着两个巨大的黑眼圈上班。希望能掌握秒睡技能。
\n新的一年希望老爸老妈都身体健康,爱你们,特别爱❤️
\n","date_published":"2019-02-02T00:00:00.000Z","date_modified":"2023-01-29T01:53:45.053Z"},{"title":"使用 service workers 提升网站体验","id":"/2018/12/07/service-workers-experience","url":"https://minemine.cc/2018/12/07/service-workers-experience","content_html":"在对着一个 repo static 目录下的 sw.js 文件研究十分钟后,终于把它和之前听说过的 service workers 对上了号…
\n对于 service workers、PWA 这些概念我大概只是停留在"听说过"的层面,或者是应试水平(面试的时候能说一下这是个啥……),然而实践经验为0,现在有栗子了,那就动手试试吧!
\n\n在网上关于 Service Workers 的文档有很多,推荐这两篇:
\nhttps://developer.mozilla.org/zh-CN/docs/Web/API/Service_Worker_API
\nhttps://lavas.baidu.com/pwa/offline-and-cache-loading/service-worker/service-worker-introduction
\nService Worker 是一个独立的 worker 线程,独立于当前网页进程,可根据配置缓存资源,拦截代理网络请求,基于网络是否可用以及更新的资源是否在服务器上返回缓存资源或进行网络请求资源,从而可以极大地提高加载速度。并且缓存的资源可以在网络离线状态被网页进程取到,从而实现离线访问网站的目标。
\n使用 Service Workers 的方法略显繁琐,需要注册、安装、更新,webpack 社区已经有了插件实现😄
\noffline-plugin 是一个实现 Service Workers 的 webpack 插件,官方介绍如下:
\nThis plugin is intended to provide an offline experience for webpack projects. It uses ServiceWorker, and AppCache as a fallback under the hood. Simply include this plugin in your webpack.config, and the accompanying runtime in your client script, and your project will become offline ready by caching all (or some) of the webpack output assets.
offline-plugin 旨在给使用 webpack 打包的项目提供离线体验,在内部使用 ServiceWorker 和作为备选方案的 AppCache 实现。通过简单地在 webpack 配置文件里添加这个插件,并在客户端脚本里初始化 runtime,就能缓存全部(或部分)webpack 打包的资源,从而使项目可离线化。
\n使用方法非常简单,并在内部处理了 Service Workers 的生命周期,用户无需手动注册、激活,只需按照文档配置即可使用,并提供了丰富的配置项,暴露了生命周期方法等,非常好用。
\npeco 支持 chainWebpack 配置,需要注意的是要判断当context === client
时添加这个插件,不然会报ReferenceError: window is not defined
的错误。
来看看使用效果吧~使用 Service Workers 前访问博客需加载大约 1.8M 的资源,需 4.46s 加载完成;使用 Service Workers 后只需加载大约 388k 的资源,需 1.07s 加载完成,其中大部分是图片 cdn 资源。加速效果很棒~
\n在 Chrome DevTools Network 里可以看到资源 from ServiceWorker,表示该请求是由 Service Worker 代理的。
\n\n\n现在博客可以在离线环境下访问了,真是前所未有的体验……
\n\n在 Chrome DevTools Application-Service Workers 面板可以看到当前域名加载的 Service Worker 文件,offline 选项可以将当前页面切换为离线模式,和 Network 里的离线模式一样,不用断开 Wi-Fi 即可调试。
\n需要注意的是 offline-plugin 插件没有提供注销 Service Worker 的 unregister 方法,如果业务需要需要注销掉 Service Worker 可以调用原生的 unregister 方法(这里有一个栗子),调试时也可以在 Application-Service Workers 面板里手动注销掉当前 Service Workers 线程。
\n然后在下方的 Cache Storage 里可以查看 Service Worker 线程缓存的只读资源列表,可以右键点击出现的 delete 选项清除缓存,或点击 Clear storage 清除缓存。
\n","date_published":"2018-12-07T00:00:00.000Z","date_modified":"2021-07-14T04:23:17.057Z"},{"title":"不是童话的无敌破坏王2","id":"/2018/11/30/wreck-it-ralph","url":"https://minemine.cc/2018/11/30/wreck-it-ralph","content_html":"这部片子没有以爱情为主线,讲述了追求梦想和平衡友情之间的冲突,没有对错之分,只是人生有时候不得不说再见。
\n拉尔夫为了给云妮洛普赚买方向盘的钱,在爆音视频上卖力地拍各种无厘头的视频,学羊叫、吃变态辣椒、出拙劣的美妆教程(心疼拉尔夫一秒),也为后续我为你做了这么多,你不能抛下我的偏激情绪做了铺垫。之后拉尔夫放出病毒,巨大化的拉尔夫就代表了他不安、黏人、卑微的一面,也让他直观地看到了自己令人讨厌的地方,放手让云妮洛普去追求梦想。
\n影片最感人的地方无疑是狂野飙车要开赛了,云妮洛普和拉尔夫在阶梯挥手告别,门慢慢地落下,他们的手也挥得低一点再低一点,眼睛都不舍得眨一下,无比珍惜能看到对方的这几秒钟。
\n\n然后他们视频、打电话,互相告诉对方身边发生的好玩的事情,然后约定两个月后的相见。我们肯定能抽出时间的,云妮洛普信誓旦旦又满怀希冀地说。我们总觉得未来很长,有大把的时间可以一起玩耍,我们见面的频率从每天都见到一周一见再到两个月一见,取极限后呢。在我心里你永远是我最好的朋友,但是我们追求的东西不同,所处的环境不同,价值观不同,慢慢地就走散了,没有谁对谁错,这就是真实的人生。
\n而且这份带着愧意、歉疚的友情会让人变得不自在,每个人都会寻求让自己舒适的角度,玩过了飙车再和我一起玩甜蜜冲刺可能真的很无聊,以前精心设计的关卡其实早就被你识破了,我不想给你带来困扰,不希望你觉得无聊,更不希望你怀着歉意来和我一起玩耍,这也会让我很难受。
\n你在狂野飙车里很快乐,找到了自己真正喜欢的东西,我很为你高兴,我只是还没适应。
\n拉尔夫的烦恼,在于既有的快乐生活的消失,和珍视的好朋友的离去,影片的结尾是拉尔夫略带落寞的身影,他还没有找到自己的梦想和方向,喜欢之前活力满满的拉尔夫,期待无敌破坏王3。
\n朋友是会慢慢走散的,怀念一起走过的美好的时光。
\n公主们脱下礼服换上舒适的衣服的部分真是引起极度舒适,自从开始写代码我就拒绝了一切卡肩的衣服,刚找工作时买的小西装尘封在衣柜里估计再也没有穿的机会了,也很少再穿紧身牛仔裤和高跟鞋(突然意识到这和公主的礼服有巨大差异…),离每天穿家居服上班的小目标又近了一步…
\n","date_published":"2018-11-30T00:00:00.000Z","date_modified":"2021-07-14T04:38:45.566Z"},{"title":"流畅地开发一个 react 组件","id":"/2018/01/29/create-react-component-like-a-pro","url":"https://minemine.cc/2018/01/29/create-react-component-like-a-pro","content_html":"不知道你有没有用过 vue-land/create-vue-component,这是一个通过命令行初始化 vue 组件的工具,项目结构简洁,无需配置文件。使用 Poi 构建,可以打包你写的组件,构建 demo,内置 jest 测试... 总之用来写 vue 组件非常好用,我已经离不开它了。
\n最近在写 react,在我想用 react 写点简单的组件骗点 star 的时候也想有这么流畅的开发体验啊 (╯°A°)╯ 所以克隆了这个项目,魔改了一版,现在也能通过命令行初始化一个 react 组件了,基本上是体力活...比较适合我这种笨人...
\n\n项目名字叫 create-react-component-with-no-config 嗯... 我在 npm 上已经找不到可以用的简洁的名字了 😂
\ncreate-vue-component 有的功能都有,就是这么好(no)用(face)
\n项目地址:https://github.com/luyilin/create-react-component-with-no-config
\n用法:
\nyarn global add create-react-component-with-no-config
create-react-component-with-no-config react-xxx\n# or\ncreate-react-component react-xxx\n# or type less\ncrc react-xxx\n\n# you can also create component in place\nmkdir react-xxx && cd react-xxx\ncrc
项目结构预览:
\n\n用例:https://github.com/luyilin/react-multipane
\nEnjoy!
\n","date_published":"2018-01-29T00:00:00.000Z","date_modified":"2021-07-14T04:23:17.048Z"},{"title":"为凉风青叶做的简历生成工具","id":"/2017/12/06/aoba-resume","url":"https://minemine.cc/2017/12/06/aoba-resume","content_html":"\n初衷是写一个只需要配置文件不需要 git clone 和 run build 就能生成简历的工具。
\n灵感来自 EGOIST 的 docup 和 DIYgod 的 resume,感谢两位大佬,给大佬们递女装👗
Github: https://github.com/luyilin/Aoba
\nDemo: https://luyilin.github.io/Aoba/
\n英文版简历: https://luyilin.github.io/Aoba/resume-en
https://github.com/luyilin/Aoba#quick-start
\n这篇文章其实不是在为网络小说正名,至少等它不再叫网络小说吧。
\n在写下这个题目后我第一时间去搜了下什么是网络小说,我才发现我似乎并不清楚什么才是网络小说。这是百度百科网络小说的第一句,
\n\n好吧,那么什么是网络作家呢?
\n\n\n这个释义大概是有时效性的,未来仅仅通过传统纸媒来发表作品的作家可能非常之少,那么大部分作家其实都可以叫做网络作家,不过当在网络平台发表作品成为一种常态,在网上发表作品的作家占了绝大多数时,应该不会再有这样一个专门的词语来界定传统作家和网络作家,这个名称可能仅存于这一历史阶段。相信这一天不会太远了。
\n因此简单地用是否是网络小说来界定我看过的小说们似乎并不科学。忘了之前在哪看过的一句话,艺术有高下之分,但是艺术的形式没有。那么艺术发表的平台有高下之分吗?想想就觉得很扯吧。
\n那么网络小说和传统文学的最大区别是什么呢?为什么网络小说会给人一种难登大雅之堂的印象。之前在知乎上看到过相关问题的讨论,有一点我觉得很有道理,他说有一些小说写出来仅仅是为了迎合读者,简单点讲就是为了爽而爽,一个例子是在起点连载的一篇小说阅读量骤降,编辑说我不用看就知道你肯定把女主角写死了,读者是为了高兴才看的,你把主角都写死了谁还看你写的小说啊。难以想象在这样浮躁的环境下作者怎么写出优秀的作品,当然也有很多自来水的作者,如果只是为了迎合读者为了钱而写作,那大概是最无趣的事了。这种小说有一个更确切的名字是爽文,这是一个界线。
\n我曾经有一段时间沉迷于看这种小说,看女主重生凭着预演未来的能力和种种主角光环过得风生水起,择良婿惩坏人,看各种不符常理的宫斗宅斗情节,时间久了有一个很大的问题,我曾经觉得这些也是文学作品啊,看这些总比什么都不看强,对文学修养写作能力什么的应该也有帮助。事实上是,没有。我根本记不起具体的故事是怎样的,没有曲折得让我心旌摇荡的情节,更没有让我有强烈震撼的时刻,剧情安排和情绪波动都是很浅层的,读这些小说不怎么需要思考,在看的时候能很快地代入,关掉页面后似乎什么都没有发生过。大部分都是套路和词藻的堆砌,好像我也能写,其实我也写不出233。更重要的是,我似乎与周围的世界脱节了,整体沉迷于看这些小说占用我很大一部分时间,一目十行地阅读并不适用于其他东西,不管是课本还是其他小说,而且习惯了不怎么动脑的阅读后看其他的东西会有一种吃力感,看了一会儿感觉不到爽点
就耐不下性子看了,心浮气躁到不行。如果把这些变化归罪于看爽文是件很不负责任的事,主要还是我的问题,通过短暂地霸占大脑让内心不那么空虚,仅仅说明看这些没啥正面影响。
我迄今无法忘记给朋友推荐一本当时很喜欢的穿越小说时别人的不屑一顾,我嘴硬反驳却也模糊觉得没啥很值得推荐的地方,以至于很长一段时间里我都羞于承认在看网络小说。我当时隐约感觉到,我说很喜欢可能仅止于当时很喜欢,过了一段时间再想可能觉得自己在犯傻。所以说喜欢大概是很廉价的东西,仅仅因为感觉到了一丝愉悦,就能觉得哇好喜欢,而遇到了一丝阻碍就能立刻冲淡这种感觉,我把它归结于简单原始又稍纵即逝的多巴胺分泌在作祟。也可能因为我是个很不坚定的人。
\n还有另一种原因,就是它可能没有那么好,而且一个人的心境是会变的,所谓的喜欢可能仅仅因为当时浅薄的自己。如果你不确定是否喜欢它,或者头脑狂热地认为它好到不行,一个建议是过段时间再读一下吧,看你是否还有想读的冲动,读了是否还会觉得很好。
\n至于过后不喜欢了就贬低它们,这种行为也是我万万不想做的。
\n至于那本穿越小说,抱歉没有再看第二遍,因此无法通过时间检验它是否真的值得看。
\n以上我所说的,可能都是错的。
\n","date_published":"2017-12-01T00:00:00.000Z","date_modified":"2022-02-05T05:51:59.807Z"},{"title":"旧时光","id":"/2017/11/28/old-time","url":"https://minemine.cc/2017/11/28/old-time","content_html":"不得不说我是个异常怀旧的人,从前发生的种种总是让我非常留恋,可能是因为经过了记忆的过滤和润色,我总是觉得过去的都挺美好。
\n就像我某次翻看小学时写的日记,有一页写着我超级超级讨厌 XX,绝对绝对不会忘记这件事的,后面还用粗线画了几个大大的叹号。我当时苦思冥想了好久那天到底发生了什么,如你所知,我什么都想不起来,这件事其实说明了两个挺重要的点,一是我当时觉得很重要或者绝不会忘记的事可能根本不怎么重要;二是我可能不大记仇,或者我总是选择性忽视那些曾让我感觉痛苦或者难堪的事,简单点说,逃避型人格。
\n\n其实还有另一层解读,就是所有的事可能都不怎么重要,反正随着时间的流逝记忆会越来越模糊,任何情感都会被慢慢冲淡。这句话挺消极的,尤其在情浓之时。我高中时正处于对知识如饥似渴的时候,哦不要误解了,只是对杂书,有一篇解读长恨歌里唐明皇和杨妃的爱情,“在天愿作比翼鸟,在地愿为连理枝”,作者说恋人其实在非常情浓的时候不会去想以后要怎样怎样,更遑论在天上要怎样在地上要怎样,因为当时深陷爱河无暇顾及其他,抱歉已经忘了原话是怎么讲的了,大致是这个意思。我当时毫无恋爱经验,莫名觉得很有道理,读书的最大好处可能就是可以直接复用前人的经验,至于是不是真的,只能说实践是检验真理的唯一标准。讲这个例子可能能成为佐证,即使是诗里写过的美好爱情,基于种种客观和主观原因都会慢慢变淡,不过这也是自然规律,之后的马嵬坡之变也有了看似合理的一种解释。往前看可能会是件不那么着眼于现在的事,至于我呢,我一直喜欢往后看。
\n奇葩说里有一段很有意思,柏邦妮说如果一个人他心里很苦,那要给他多少甜,才能填满他的苦,马东说你错了,他的苦越多,那么一丝甜就能填满。马东东,谁让你讲实话的。。。在时间的洪流里,我的记忆不可避免地会越来越模糊,可是我一直珍惜当时的经历,我怀念小学的玩伴,初中的高中的挚友,还有我的大学,我希望能一直有所回想,可能是另一种证明我存在过的方式,让我每次想起,都很开心。
\n之所以写下这些胡言乱语,来源于早上四点的惊醒和心跳如雷,加上之前曾有一次失去意识的可怕的晕倒,让我不得不接受身体变差的事实。可能是因为早上没吃饭引发的低血糖,失去意识前几秒我还在想 WTF 我不会就这样挂掉了吧,特喵的不会上社会新闻吧,这可是我万万不想要的。晕倒前还能想这些足以证明我是一个多么 XX 的人了。
\n","date_published":"2017-11-28T00:00:00.000Z","date_modified":"2022-02-05T05:54:28.853Z"},{"title":"读偷影子的人 Le voleur d'ombres","id":"/2017/06/29/ombres","url":"https://minemine.cc/2017/06/29/ombres","content_html":"许久没有好好地看一本书了,也太久没有提笔写点什么。最近换了份工作,组里只有我一个前端,相当于是一个人在战斗了,所幸还有 google 和 stackoverflow 陪我,嗯,感觉还行。
\n不过组里仍然没有女生,现实生活中我其实是个容易害羞还有点内向的女生,认识新的人往往也不会主动联络,研发超高的男女比例对我的日常交往真的不是一件好事,自从工作之后就没有几个闺蜜了,说到这儿就好想念小高。我一直致力于劝女生做研发,除了因为这真的是一个非常有意思的工作,还有希望能有女生同事陪我的一点小小私心。
\n\n这本书重点不是很明显,路遥曾说人们宁愿关注一个蹩脚演员的吃喝拉撒和鸡毛蒜皮,也不愿了解一个普通人波涛汹涌的内心。我深有感触,许多发生在身边的普通的事情,儿时午休睡不着盯着天花板上吱呀转动的吊扇、过生日时的炎炎暑气、妈妈接我放学时穿着一条碎花长裙,在夕阳下非常漂亮、高中看红楼梦时同桌说是贾宝玉和一群女的的故事哈哈、还有粗粝的跑道柔软的操场,这些或许琐碎,或许记忆已有些模糊,但仍清晰地记得当时的心情,那些喜欢的、懊恼的,都蕴含了无限温情。这本书的节奏就让我想起了许多身边的事情,他描摹了一个男生的故事,影子甚至都没有很重要,有成长的困惑、温柔的亲情、真挚的友情,还有爱情的烦恼。
\n\n\n否则你昨晚也不可能带她去你的阁楼。你知道吗,我听得到屋子里的所有声音,我向来都听得到。你离家以后,我有时会爬上去,很想你的时候,我会推开阁楼的掀门,坐在天窗前。不知道为什么,待在那上面,我会觉得你离我更近,仿佛透过窗户看出去,我就能感受到在远方的你。我已经很久没有上去了,就像我刚才跟你说的,我的膝盖很痛,而且要在那些杂物堆里前行,得要手脚并用爬行。哎哟,别摆出那种表情,我保证,我从来没有打开过你的纸盒。你妈妈有很多缺点,但可不是个冒失的人。
\n
每次读到这里,我都忍不住落泪,这段话饱含了一个母亲对孩子的深沉的爱和思念,你的习惯、喜好她都了如指掌,你不在家的时候她会常常回忆你们一起度过的美好的时光,甚至忍受膝盖疼痛穿过矮小的阁楼,也要坐在你们曾经一起谈天的地方,仿佛这样就能离你更近。
\n\n\n我呆若木鸡地站在敞开的冰箱前,眼泪失控地奔流而下。葬礼全程我都没有哭泣,仿佛她禁止我哭,因为她希望我不要在众人面前失态。只有碰到毫不起眼的小细节时,我们才会突然意识到,深爱的人已经不在的事实;床头桌上的闹钟仍在滴答作响,一个枕头落在凌乱的床边,一张照片立在五斗柜上,一支牙刷插在漱口杯中,一只茶壶立在厨房的窗台上,壶嘴面向窗户以便观看花园,而摆放在桌上的,还有吃剩的淋了枫糖浆的苹果卡卡蛋糕。
\n
家里的种种都一如往昔,仿佛前一秒还在笑着招呼你吃蛋糕的的亲人,却已天人永隔,再也见不到她的音容笑貌。这种感觉仿佛一个人置身于烈日下无边的沙漠,无论怎么奔跑,都逃不出这一片漫漫黄沙,只能绝望地忍受无尽孤独。
\n已经92岁高龄的艾丽斯,子女们不愿意赡养她甚至根本不来看望她,她甚至开玩笑说愿意领养成年的大人,可谁能体会她内心深沉又难以言喻的悲伤。我常常在想,人这一生这么长,一个人最长能陪伴另一个人多久?人的一生就像一场旅行,最初是父母、爷爷奶奶陪伴我们,然后我们长大了,有了很多新朋友,然后恋爱了,结婚了有了孩子。我们太常于把父母、长辈给予的爱当作一种既得利益,而忽视了他们,忙着去追寻其他的人和事物。所以铭记有时候是一种非常珍贵的品格,是一种底线。是不愿触及却从未忘记的往事,是慢慢坚硬的内心中依然柔软的部分,是历尽沧桑依然会让你热泪盈眶的东西。
\n","date_published":"2017-06-29T00:00:00.000Z","date_modified":"2022-02-05T06:05:11.141Z"},{"title":"使用 vue2.0 实现一个简洁的分页组件","id":"/2017/04/19/vue-pagination","url":"https://minemine.cc/2017/04/19/vue-pagination","content_html":"分页效果预览:
\n\n\n\n\n\n\n
\n- 使用 vue-cli 初始化项目
\n- 使用 vuex 管理数据
\n- node v6.9.2,npm v3.10.9
\n
实现分页主要依靠两个参数,偏移量(offset)、限制数(limit)。点击分页发送 Ajax 请求,将这两个参数传给后端,后端从数据库筛选出对应的数据返回给前端,前端将获取到的数据添加到页面中,分页组件根据偏移量和限制数显示对应的页码,这是一个简单地实现分页的思路。
\n分页一般分为两种类型,一种经常用于移动端的滚动加载,或是一个按钮点击即可加载更多。这种分页实现起来比较简单,前端仅需定义一个 offset 变量,每次 ajax 请求时 offset += limit,然后将获取到的内容 append 上去即可。\n另一种是显示总页数、当前页数、上一页、下一页按钮,且页数较多时将中间页数用省略号表示。这种分页实现起来稍微复杂一点,但用户体验更好,本文讨论的就是如何使用 vue 实现这样的分页组件。
\n创建 pagination.vue 文件。
\n<template>\n <div class=\"page-wrap\">\n <ul v-show=\"prePage\" class=\"li-page\" v-tap=\"{methods: goPrePage}\">上一页</ul>\n <ul>\n <li v-for=\"i in showPageBtn\" :class=\"{active: i === currentPage, pointer: i, hover: i && i !== currentPage}\"\n v-tap=\"{methods: goPage, i: i}\">\n <a v-if=\"i\" class=\"notPointer\">{{i}}</a>\n <a v-else>···</a>\n </li>\n </ul>\n <ul v-show=\"nextPage\" class=\"li-page\" v-tap=\"{methods: goNextPage}\">下一页</ul>\n </div>\n</template>
组件的作用域是独立的,父组件通信通过 props 向其传递数据,分页组件通过 $emit 触发在父组件定义的事件实现和父组件的通信,因此预设从父组件获取到需显示的总数 num 为 30 , limit 为 5,当然你也可以随意设置这两个值~
\nlet that\n export default{\n data(){\n that = this\n return{\n num: 30,\n limit: 5\n }\n }\n }
计算几个变量,在这里可以使用 vue 的计算属性 computed\n总页数 totalPage 应该等于需显示的总数除以每页显示的个数,并向上取整,这个很好理解。
\ncomputed: {\n totalPage() {\n return Math.ceil(that.num / that.limit)\n }\n }
偏移量 offset,因为点击上下页、制定页码均会改变 offset 变量,父组件也需要用到这个变量发送 ajax 请求,因此使用 vuex 存储 offset。
\n// pagination.vue\n computed: {\n offset() {\n return that.$store.state.offset\n }\n }
当前页面 currentPage,当前页面是比较重要的一个变量,显示用户当前所处页数,已知偏移量和每页显示数量可以得出当前页面是二者的余数向上取整,因为页数不从0开始,因此
\ncomputed: {\n currentPage() {\n return Math.ceil(that.offset / that.limit) + 1\n }\n }
是否显示上一页按钮 prePage,因为在首页的时候偏移量为0,因此只要偏移量不等于0则当前页面肯定不在第一页,则显示上一页按钮,并且 num 不等于 0。
\ncoumputed: {\n prePage() {\n return that.offset !== 0 && that.num\n }\n }
是否显示下一页按钮 nextPage,这个也很好理解,只要偏移量和每页显示的个数相加小于需显示的总数,则显示下一页按钮,并且 num 不等于 0。
\ncomputed: {\n nextPage() {\n return (that.offset + that.limit < that.num) && that.num\n }\n }
页码计算 showPageBtn,页码计算是这个分页组件的核心内容,基本思路是当总页数不大于5时,显示全部页码;当总页数大于5时,始终显示首尾页码,当当前页码距首页小于2时,显示前三页页码和省略号;当当前页码距尾页小于2时,显示后三页页码,当当前页码距首页等于2时,显示前四页页码和省略号;当当前页码距尾页等于2时,显示后四页页码和省略号;当当前页码距首页大于3且距尾页大于3时,显示当前页码和当前页码的前一页和后一页,两边各有一个省略号;在这里我们使用0代表省略号
\ncomputed: {\n showPageBtn() {\n let pageNum = that.totalPage,\n index = that.currentPage,\n arr = []\n if (pageNum <= 5) {\n for(let i = 1; i <= pageNum; i++) {\n arr.push(i)\n }\n return arr\n }\n if (index <= 2) return [1,2,3,0,pageNum]\n if (index >= pageNum -1) return [1,0, pageNum -2, pageNum -1, pageNum]\n if (index === 3) return [1,2,3,4,0,pageNum]\n if (index === pageNum -2) return [1,0, pageNum-3, pageNum-2, pageNum-1, pageNum]\n return [1,0, index-1, index, index + 1, 0, pageNum]\n }\n }
跳转事件,分别点击上一页、下一页和指定页码。
\nmethods: {\n goPage(params) {\n if (params.i === 0 || params.i === that.currentPage) return\n that.$store.commit('GO_PAGE', (params.i-1) * that.limit)\n that.$emit('getNew')\n },\n goPrePage() {\n that.$store.commit('PRE_PAGE', that.limit)\n that.$emit('getNew')\n },\n goNextPage() {\n that.$store.commit('NEXT_PAGE', that.limit)\n that.$emit('getNew')\n }\n }
在此介绍一下 vuex 部分的实现,学习了二哲大大的 vuex 部分的结构。在 src 目录下(和 components 目录平级),新建 store 目录,其中 index.js 文件传入 mutation,初始化 vuex;
\n// vuex \bstore/index.js\n import Vue from 'vue'\n import Vuex from 'vuex'\n import mutations from './mutations'\n \n Vue.use(Vuex);\n \n const state = {\n offset: 0\n };\n \n export default new Vuex.Store({\n state,\n mutations\n })
mutation-types.js 记录所有的事件名,其实这个文件最大的好处是能让我们更直观地管理所有的 vuex 方法,它的优点会在项目复杂后凸显出来,项目复杂时我们可能会使用 vuex 存储很多数据、定义很多方法,这时 mutation-types.js 就能更好更直观地管理这些方法。这也是一种设计理念嘛,有利于后期维护。
\n// mutation-types.js\n export const PRE_PAGE = 'PRE_PAGE'\n export const NEXT_PAGE = 'NEXT_PAGE'\n export const GO_PAGE = 'GO_PAGE'
mutation.js 这是 vuex 的核心文件,注册了实现的所有事件,我们定义了点击上一页、下一页和跳转到指定页面的方法。
\n// mutation.js\n import * as types from './mutation-types'\n\n export default {\n // 分页 上一页\n [types.PRE_PAGE] (state, offset) {\n state.offset -= offset\n },\n // 分页 下一页\n [types.NEXT_PAGE] (state, offset) {\n state.offset += offset\n },\n // 分页 跳转到指定页码\n [types.GO_PAGE] (state, offset) {\n state.offset = offset\n }\n };
$ npm install \n\n$ npm run dev\n\n// 访问 http://localhost:8088/index.html
最后打个小广告🎣 ๑乛◡乛๑
\n我的个人网站:https://minemine.cc/
\ngithub 地址:https://github.com/luyilin
\n","date_published":"2017-04-19T00:00:00.000Z","date_modified":"2021-07-14T04:23:17.059Z"},{"title":"记在小本本上的 git 操作","id":"/2017/01/29/git","url":"https://minemine.cc/2017/01/29/git","content_html":"标签: git
\n查看 git 配置信息
\n$ git config --list\nor\n$ git config -l
设置 git 配置信息
\n\n$ git config --global user.name \"{{userName}}\"\n$ git config --global user.email \"{{userEmail}}\"
$ ls -a\n$ cd .git/\n$ vi config\nadd\n[user]\n name = {{userName}}\n email = {{userEmail}}\n\nor\n$ git config user.name \"{{userName}}\"\n$ git config user.email \"{{userEmail}}\"
查看分支
\n$ git branch 查看本地分支\n$ git branch -r 查看远程分支\n$ git branch -a 查看所有分支
创建一个新分支
\n$ git checkout -b {{branch}}
切换分支
\n$ git checkout {{branch}}\n\n$ git checkout -b {{remoteBranch}} origin/{{remoteBranch}}
删除分支
\n$ git branch -D {{loaclBranch}}\n$ git push --delete origin {{remoteBranch}}
合并分支
\n$ git merge {{branch}} 将 branch 与当前分支合并
储藏修改
\n$ git stash 当你想切换到其他分支又不想提交现在修改的东西时,当你在修改好前想 git pull 时,用 git stash 来得到一个干净的工作目录\n\n$ git stash save '' 给你的 stash 取个名字\n\n$ git stash pop 重新应用储藏内容\n\n$ git stash list 查看现有储藏列表\n\n$ git stash apply stash@{number} 应用某次储藏,但未从栈上移除,需继续 git stash drop stash@{number} (I like pop!
查看提交历史
\n$ git log\n\n$ git log -p 查看每次提交的内容差异\n\n$ git log -p -2 显示最近的两次更新
查看 commit head message
\n$ git reflog
打 tag
\n$ git tag {{tagName}}\n$ git push origin {{tagName}}\nor\n$ git push --tags
删除 tag
\n$ git tag -d {{localTag}}\n\n$ git tag -d {{remoteTag}}\n$ git push origin :refs/tags/{{remoteTag}}
给一个历史提交添加 tag
\n// Set the HEAD to the old commit that we want to tag\n$ git checkout {{leading 7 chars of commit}}\n\n// temporarily set the date to the date of the HEAD commit, and add the tag\n$ GIT_COMMITTER_DATE=\"$(git show --format=%aD | head -1)\" git tag -a {{tag}} -m \"{{commit message}}\"\n\n// set HEAD back to whatever you want it to be\n$ git checkout master\n\n$ git push --tags
push 后发现没加 .gitignore,删除本地及远程的冗余提交
\n$ git rm -r --cached .\n$ git add .\n$ git commit -m \"{{commit message}}\"\n$ git push
修改已经 commit 的邮箱和用户名
\n// get the commit we want to modify\n$ git log\n\n// go to the commit\n$ git reset --soft {{commitId}}\n\n$ git commit --amend --author='{{userName}}<{{userEmail}}>'\n$ git push
修改已经 push 的 commit 的邮箱和用户名
\n// clone a new repo\ngit clone --bare https://github.com/user/repo.git\ncd repo.git
// copy the script below and modify the variables: OLD_EMAIL, CORRECT_NAME, CORRECT_EMAIL\n\n#! /bin/sh\n\ngit filter-branch --env-filter '\n\nOLD_EMAIL=\"\"\nCORRECT_NAME=\"Your Correct Name\"\nCORRECT_EMAIL=\"your-correct-email@example.com\"\n\nif [ \"$GIT_COMMITTER_EMAIL\" = \"$OLD_EMAIL\" ]\nthen\n export GIT_COMMITTER_NAME=\"$CORRECT_NAME\"\n export GIT_COMMITTER_EMAIL=\"$CORRECT_EMAIL\"\nfi\nif [ \"$GIT_AUTHOR_EMAIL\" = \"$OLD_EMAIL\" ]\nthen\n export GIT_AUTHOR_NAME=\"$CORRECT_NAME\"\n export GIT_AUTHOR_EMAIL=\"$CORRECT_EMAIL\"\nfi\n' --tag-name-filter cat -- --branches --tags
// then press enter to run the script\n\n// checkout if there any error in new git and push\n$ git push --force --tags origin 'refs/heads/*'\n\n// delete the temporary clone\n$ cd ..\n$ rm -rf repo.git
修改已经 push 的 commit message
\n方法一:\n$ git commit --amend\n$ git push --force\n\n方法二:\n$ git rebase -i HEAD~n\n\nchange the `pick` to `reword`, which means edit the commit message\n\nsave and exit and then update the commit message as you like and :wq\n\n$ git push --f
修改已经 push 的提交内容
\ngit reset --hard {{commitId}}\n\ngit add .\n\ngit commit --amend\n\ngit push origin HEAD --force
解决提交前的 conflict,协同工作必备
\n// 先不提交修改的内容直接创建新分支 temp ,若已 commit 则创建新分支后在本分支 reset 到上一个 commit ,再执行 git pull\n\n$ git checkout -b temp\n\n$ git add .\n\n$ git commit -m 'commit message'\n\n// 此时的master 分支是干净的,无自己的提交\n$ git checkout master\n\n// 拉取远程修改\n$ git pull\n\n// 复制刚刚提交的 commit-id commit-a, 将自己的提交 cherry-pick 进去\n$ git cherry-pick commit-a\n\n// 如果有冲突 fix it\n$ git add .\n\n$ git cherry-pick --continue\n\n// then push\n$ git push
git 删除远程仓库的某次错误提交
\n$ git reset --hard HEAD~1\n\n$ git push --force\n// git push -f\n\n// 强制推送到远程仓库,远程仓库里的错误提交也会消失
gerrit merge 前执行 git commit --amend 改写上次提交,并将 gerrit 上的 changeid 加入到上次提交的 commit message 下面(上下各空一行),再 git push(还是原来的 commit,不产生新的提交)
\nbash ctrl+R 快速查看输入过的命令
\ngit 创建仓库并关联到 github
\n* cd 到项目目录,git init 初始化,使 git 对此项目进行版本控制\n * git add .\n * git commit -m ''\n * 在 github 上创建一个新仓库 create a new repository\n * 将本地项目关联到建立的新仓库上 git remote add origin {{url}}\n * 运行 $ git remote -v 查看 origin 关联\n * git push -u origin master\n * 若本地已有代码非空, 则直接 git remote add origin {{url}}\n * git push -u origin master\n * 若将一个 git 仓库关联为另一个 git 仓库,则 ls -a 删除 .git/ 文件夹即可\n 删除 git 版本控制, 然后再执行 remote
Github Pages 发布静态页面
\n