MacBook Pro 换屏记

使用大概两年多点的时间,我的 MacBook Pro 开始出现屏幕涂层脱落的现象,开始脱落的部分比较少,不影响使用,而我又没购买 AppleCare ,想着最终需要自费换屏,就忍忍等他扩大后再换,但这玩意一旦开始脱落,脱落的面积就很快的扩大,于是我就在网上查了查,这一查发现屏幕涂层脱落不是个例,好像有不少人中招。苹果给此现象的解决方案是未满三年,非人为损坏情况下会提供免费更换的服务。

于是我开始联系苹果售后服务人员,借此刚好体验一番苹果的售后服务,最后顺利完成了屏幕的更换,把这次过程做个记录,如果凑巧碰到类似的状况,可供参考。

大体的步骤分为三部分,首先要进行预约,其次根据预约上门送检,最后拿回设备。下面具体说说。

预约有两种方式,可以直接通过苹果官网上的提供的技术支持电话进行电话预约,技术支持电话在「联系 Apple」页面中间部分「产品与技术支持」中有提供,可拨打电话依据语音导航完成预约。也可以通过苹果官网主页最下方的「Genius Bar 天才吧」链接进入,在打开的页面中找到「获得有关硬件的现场技术支持」部分,选择其下方左边「Genius Bar」提供的「进行预约」链接完成预约。完成预约后会收到一封主题是「你的 Genius Bar 预约」的邮件。

我用电话完成了预约,比起银行之类的服务电话,苹果的技术支持电话体验要好很多,服务人员对产品的了解也比较到位,预约可以选择直营店也可以选择授权店,我个人的建议是去直营店,比较放心。值得注意的是要搞清楚去送修时需要带什么东西,本次提供技术支持的服务人员会根据你选择的维修点给你具体的电话,可用电话确认一下,可能需要的是身份证和发票。

按照预约的时间按时上门,尽量按照约定的时间去,到店后需要询问一下,找到负责预约的工作人员,一般需要使用身份证确认一下预约,然后会指定一个地方等待专家对设备进行检测,专家会根据设备的检测情况给你最终的解决方案,检测更多的是看看是不是人为的损坏。完成检测后会给一张维修单,需要签个字,然后告知多长时间能够完成更换。这个环节需要注意的是要做个数据的备份,虽然大部分时间不会影响到数据,但要防止意外。同样也会收到一封主题为「Apple Store 工作授权」的邮件,是维修单维修记录的副本。

虽然是免费更换的,但是维修估价还是写的明明白白,屏幕加人工一共要足足 4964 快大洋,还好能够享受免费更换减免了这部分的费用。维修时间有长有短,我的用了 3 天时间完成了更换,更换完毕后会电话通知,同时也会收到一封主题是「你的产品随时可取」的邮件,带着身份证和维修单,上门拿回设备即可。

大概的过程就是这样,整个更换过程比较顺利,更换完毕后就涂层脱落跟苹果的技术专家简单的咨询了几句,得到的反馈是目前并没有很好的解决方案,给的一个建议是贴不带胶的膜。一旦更换完后,其售后服务期为三个月或仍在售后服务期限内这两者中较长的时间,超过这个服务就需要自己付费更换了,为此我给屏幕贴了一张昂贵的膜,以降低了视网膜屏的清晰度为代价让屏能用更久一些。

本文首发于我的微信公众账号「时间易逝」,欢迎订阅我的微信公众账号
在微信中搜索「doevents」或用微信扫描页面右上方二维码可订阅我的微信公众账号

2017 个人总结

时间的脚步总是很快,转眼间一年就又过去了,在懒惰和拖延症加持下有些日子没写东西了,这不太好,趁着新年的开始,有必要回顾一下过去的 2017 年,同时展望一下新的一年。

总体上,2017 年略显平淡,并没有太大的突破性成长。年初定的目标完成了一些,并没有完全达到预期。

工作上,在 8 月份正式告别了这段职业生涯,选择了主动性失业,跟 2017 年初的计划有所出入。年初的计划是工作完这一年,按照投资股东们的设定带来一定的现金流,告别全部由投资款运营公司的状况,但设定往往并不能按照预期,在年中的时候产品环境有所改变,家里又有些事,身体也略感不适,最后选择提前离开。虽然是客观存在的情况,但终归根据任命公司是由我负责在管理,所以这责任我得认。总体上来说这段职业生涯是蛮有趣的,有趣的人,有趣的事,有趣的公司,感谢你们。

在英语的学习中基本上每天都会在某 App 上完成 20 分的经验值,基本上完成了 2017 年初订的目标,初步养成了习惯,今年保持这个习惯的基础上每天增加完成 10 分的经验值。就目前来看收获不是非常明显,感觉到对单词和一些句子熟悉了一点点,读起来也略微顺畅了一点点,可能需要更多的时间积累和沉淀。

在阅读这方面完成的还不错,2017 年一共读了 134 本书,超出计划 34 本,阅读的书中电子书占绝大多数。经过几年的延续,阅读已是习惯自然的事,今年计划减少阅读数量到 50 本,增加重复阅读量。阅读的收获还是不少的,不仅仅能够开阔视野,更有了进一步了解自己的可能,同时它很有趣。稍晚些时间我会单独整理一个书单,把我看着不错的书分享给大家。

练习钢笔字也是 2017 年初制定的一个计划,这个执行的不好,断断续续有一出没一出的,以失败告终,今年索性不再纳入计划。

在写字上,2017 年在公众号上共写了 20 篇文章,坦白讲并没有制定明确的数字目标,仅仅作为自己尝试锻炼写作和内容输出的一种方式,虽然写的不多,也写的并不好,但还是很有收获,这个今年还得继续进行,同样没有明确的数字目标,怎么着也得跟 2017 年持平吧。

基本上过去的 2017 年就干了这些事,在离职后的 4 个月中我远距离走动了一下,到了不同的几个城市,以不同的角色在各个场景体验了一番,算是对接下来准备做的事情做了个调研,调研其实并不理想,当然很大程度上我的判断可能是错的,不管怎么说,2018 年还是先把产品做出来,说多了没用,先干再说,这可能是今年上半年最主要的事情。

作为一个油腻的中年大叔,上有老下有小,但陪伴家人的时间太少了,今年要开始改善起来,同时也应该开始锻炼身体了,以前的运动在身体中积攒的能量经过这么多年的支出,是时候该补充一点收入了,就从做俯卧撑和仰卧起坐开始。

在朋友圈中大家告别 2017 的方式很多,来自莎士比亚《暴风雨》中的「凡是过往,皆为序章」这句话我比较喜欢, 无论前方有多大的暴风雨,2018 我来了,从先干出来一个产品开始,验证需要验证的,从下半年开始,做一些有趣的小尝试。

本文首发于我的微信公众账号「时间易逝」,欢迎订阅我的微信公众账号
在微信中搜索「doevents」或用微信扫描页面右上方二维码可订阅我的微信公众账号

初识 Python(二):字符串

继续学习 Python 的基础。字符串是编程语言中经常处理的数据类型,Python 中的字符串可以使用单引号作为开始和结束的起止符表示,也可以使用双引号作为开始和结束的起止符表示,不少其他的编程语言也采用这样的方式来表示字符串。

对于一个字符串中本来就包含有单引号时,使用双引号会方便一些,不用使用转义符,其他两者并无不同,使用主要看个人喜好,我比较喜欢使用双引号。

转义符在各个编程语言中都有,反斜杠后面跟需要转义的字符,常见的需要转义的字符有单引号、双引号、制表符 「\t」、换行符 「\n」等等。

除此之外, Python 还有三引号作为字符串的起止符,三引号常用于多行字符串,三个单引号和三个双引号都可以,三引号起止符之间的字符串中的所有空格、引号、制表符和换行符都会被当作字符串的一部分。三引号也可以作为多行注释。

在字符串起始的引号前加小写字母「 r 」,将忽略该引号中字符串里所有的转义字符,也就是你引号中的字符串是什么它就是什么,同样的支持单引号、双引号、三引号。

对字符串的操作就像列表一样,可以用下标,同样也可以对字符串实行切片操作,切片操作使用「字符串[m:n]」来完成。

比较常见的字符串方法。

字符大小写转换相关的方法 upper()、lower()、isupper()、islower(),其中前两个是能够将字符串全部变成大写和全部变成小写的两个方法,需要注意的是调用该方法并不会改变原有的字符串,而是生成了新的字符串;后两个方法分别判断字符串是否全部为大写或全部为小写,返回 True 或 Flase。

isupper() 和 islower() 还有一些弟弟妹妹们:

isalpha() 如果字符串中只包含字母并且不为空,对字符串调用这个方法会返回 True 。

isalnum() 如果字符串中只包含字母和数字并且不为空,对字符串调用这个方法会返回 True 。

isdecimal() 如果字符串中只包含数字并且不为空,对字符串调用这个方法会返回 True 。

istitle() 如果字符串每个词的首字母大写后面为小写并且不为空,对字符串调用这个方法会返回 True 。

字符串的连接和拆分是字符串编程中常见的操作,Python 中的字符串拆分跟很多其他编程语言类似,都是使用split() 方法,使用 split() 可以将字符串拆分成列表。字符串连接的方法使用 join() ,这让我一下想起了 SQL 中的left join 和 right join ,对字符串使用 join() 可以连接字符串。

去除字符串前后的空格也是字符串编程中常见的,Python 中使用 strip() 、lstrip() 、 rstrip() 方法取出字符串前后的空格,strip 去除首尾空格,lstrip 去除字符串首部空格,rstrip 去除尾部空格。

Python 还提供了字符串对齐的方法,这个比较有意思,分别是用于左对齐的 ljust(),用于右对齐的 rjust() 何由居中对齐的 center()。 对齐方法有两个参数,第一个参数是对齐的长度,第二个参数是用于填充对齐中空白的字符。

还有比较字符串开头和结尾是否一致的方法,分别是 startswith() 和 endswith(),可以检查字符串的头尾是否和预期的一致。

Python 中提供了不少的字符串的方法,这门编程语言对于文本处理应该是比较强大的,再配合起第三方的模块应该比较强悍,继续学习。

相关阅读

初识 Python(一)

本文首发于我的微信公众账号「时间易逝」,欢迎订阅我的微信公众账号
在微信中搜索「doevents」或用微信扫描页面右上方二维码可订阅我的微信公众账号

记 8 天没有网络的生活

最近跟医院有些缘分,奔波游走在数家医院之间,从陪护到被感染「累?上火?」,以至于连续输了四天液,差不多过了 8 天没有网络的生活,这中间并没有错过什么很重要的信息,但无疑影响了计划。

如果没有这一遭,计划中先去武汉溜达溜达,然后现在应该在巴彦淖尔,这些计划都未成行,甚是郁闷。郁闷完后结合这次在几家医院的游走记一下感受。

刚刚启用的全国跨省医保结算系统确实方便了许多,在医保所在地登记参保信息后可方便进行结算,在办理的时候社保人员还挺认真,跨省打来电话以确认是否可用,这无疑方便了老百姓。

在本地医院间转诊却并不是随便能转的,具体规则没有时间来了解,于是通过办理出院后再入院的方式来解决,其中涵盖的检验信息依旧会重来一次,这多少跟医联体和分级诊疗有些关系,而这些同样都是设备检验出来的结果应该做到共享。在时效范围内,让患者抽一次血完成同样的检验应该是能够共享结果的而不是重复的抽血检验。从实际来看并没有感受到医联体和分级诊疗的落地。

在郑州看病就不得不说全亚洲第一大医院,最终还是来到这里,为什么?设备先进,医疗资源集中度高,有丰富的病源,以至于每每看起来它都不像个医院,更像是一个集贸市场,但来来往往闪烁着蓝灯的车提醒你,这是医院。好不容易经朋友帮忙,在这医院找了一个加床。

而我也是在这里陪护的过程中可能劳累,导致抵抗力下降以至于眼部受到感染,结膜炎,半边脸都肿了。不知是心理作用还是大医院复杂的环境导致感染的病毒也具有很强的耐药性,直到现在我的眼睛还没有好转,依旧满眼红色的血丝,为此耽误不少事,好在还有一只眼是好的。

一方面,依赖先进的医疗设备能最大程度上辅助医生获得诊断结果,以便给出救治方案;另一方面,好像干什么都需要医疗设备的辅助以便获得诊断结果,给人的感觉还真挺别扭。在别扭中我就在想,或许先来个全身核磁,再来个全身增强 CT ,然后再来个全项检验,这可能就是未来看病的标准流程吧。当然这更多的是一种善意,是一种求精准的态度。

医院是目前为数不多的能看到「传帮带」师徒体系的场景之一,在查房中师傅带着一帮徒弟们言传身教,伴随着每日对患者的望闻问切,徒弟们随着时间稳步成长,然后变成师傅,周而复始中形成医疗诊治资源的主体「医护人员」,这些人都是可爱的人,向他们致敬。

这中间有便捷的地方,比如自助查询打印、缴费、社保结算等就很便捷;亟待完善的地方也不少,比如预约检查总是不能如预约的那样、住院患者病房的居住条件、住院病区的污物管理、输液大厅的输液椅、救治之后的断线等,不管便捷也好,不便捷也好,医院这种地方还是尽量不去的好,而这些不便捷的地方可能就存在产品和服务的机会。

最后,这篇记录和上一篇「初识 Python(一) 」都是用手机备忘录间断性的想起一点记录一点,在输入上虽然不如用电脑更加快捷方便,但写一点再写一点终归还是能有一些产出的,或许下次可以试试用语音转文字的方式是否会更便捷一些。

本文首发于我的微信公众账号「时间易逝」,欢迎订阅我的微信公众账号
在微信中搜索「doevents」或用微信扫描页面右上方二维码可订阅我的微信公众账号

初识 Python(一)

人生苦短,该学学 Python ,花时间看了看 Python 基础性的内容,做个记录。

Python 是一门解释性、面向对象、动态数据类型的高级程序设计语言。

代码块间无花括号,也没有诸如 begin…end 的开始结束分隔符,每条语句也不需要用分号作为结束,以自然换行为一条语句。同一层次的代码块用缩进来区分,简洁干净。

基础数据类型同其他程序设计语言,如整型、浮点型、字符串、布尔型。

操作符也很类似,其中 * 操作符比较有意思,除了作为乘法操作符外,在用于字符串和整型值时,这个操作符就变成了字符串复制符。

比如在命令行 >>> 后输入 China * 3 回车键后会复制 China 这个字符串 3 次,输出显示。

操作符 ** 可以用于求指数,操作符 // 用于整除。

流程控制跟其他程序设计语言差不多,if 、while 、for 这些都是有的。

用 def 关键字后跟函数名和参数完成函数的定义,比如定义一个函数 say_hello ,打印输出一行字符串。

def say_hello(name):
print('Hi, ' + name)

#调用 say_hello 函数
say_hello('Eric')

江湖中之所以有「人生苦短,我用 Python」的说法,是因为 Python 有大量的库可供使用,不必重复制造轮子,使用 import 关键字引入这些库的模块即可,好像 Java 也是这么干的 ,也有些类似 C# 的 using 。

异常处理使用 try…except 来完成。

有三个数据类型值得注意,它们分别是列表、元组、字典。

列表「list」是一个值的序列,有点类似其他程序设计语言中的数组,是一种以下标 0 开始的有序值的集合,这些有序值称为列表项。针对列表有一些操作,如以切片的方式获得子列表,增加列表项,插入列表项,删除列表项,排序等。可以视列表为一个「可变的」数据类型。列表使用方括号 []定义。

元组「tuple」跟列表很类似,所不同的是元组用圆括号()定义,另外比较重要的是元组初始化后是不可改变的。

字典「dict」也是一种多值的集合,与列表相比,字典的索引「下标」可以使用多种不同的数据类型,在字典中索引「下标」被称为键,字典是一种键值对的多值集合数据类型。另外,字典是非有序的。字典使用花括号{}定义。

以上是对 Python 的一些初步认识,学习一门程序设计语言唯一的方法就是将这门程序设计语言在实际项目中投入使用,通过使用中的刻意练习获得提高。把一门程序设计语言学到用它可以进行专职工作可能需要不短的时间,但是学会它并简单的写一点能够替代重复性工作的代码还是相对较容易的。

本文首发于我的微信公众账号「时间易逝」,欢迎订阅我的微信公众账号
在微信中搜索「doevents」或用微信扫描页面右上方二维码可订阅我的微信公众账号