在新加坡看《鱿鱼游戏》

Netflix

虽然现在来新加坡不到两个月,但是总觉得时间已经过了很久。当初来新加坡了,最主要的想法是想着换一个种生活体验一下,因为在以前的公司过着 995 的日子,其实有点单调,虽然当时我也在尝试创业,但是也没有特别强烈的方向感。当时面试到新加坡时候,想着也来体验一下新加坡-异国生活。

所以我就只身来到新加坡。但目前因为疫情的原因只有我一个人在这儿了,所以除了上班时间之外,我会找时间自己消遣一下,目前看起来比较容易实现就是看电视剧、看电影。因为我虽然带了显卡,但是因为其他配件没有带过来,现在想想也没必要去买其他台式机的配件玩电脑游戏了,所以我自己买了 Netflix 的会员。看到最近比较火的《鱿鱼游戏》。而我今天的这个标题并不是分享这个电视剧怎么样?而是我看他的时候的心理感受。

准备来新加坡之前的那段时间

金沙酒店

现在来新加坡打工一个半月了吧,终于有了悠闲的时间可以写写东西了,经历了昨天的感冒,经历又丰富了一些。

我大概是6月底确认要来新加坡的,,得知到可以申请家属签证,我第一个时间和女儿去办理护照。当时新加坡和大陆疫情都还可以,但是出入境管理局还是很严格,明确说了如果没有明确的理由,不建议出去,也就是不会给护照的。让我准备了公司发的合同、offer、还有我的学位证书,证明出境的正当性,这次可以办理。

说了这个比较单独的事情,下面我按照时间顺序,重新回忆下当时的事情,为现在还需要出国的认识给个参考。那段时间心里有点难受、焦虑的,因为当时心里是有多没有底,很少资料分享,希望我的这个帖子可以帮助到其他人。

不修改数组找出重复的数字算法精解

第一次写算法题解,算是新的尝试,前几个月的题解都在力扣里,好处是有很多测试用例,坏处是你写题解不太方便,我的很多解法和注释都在代码里面里。 正好在别的地方看到里这个题目但是在力扣里没找到,所以不仅要写解法,还需要写测试用例,挺有趣的。 原题来自

https://me.guanghechen.com/post/quiz/partition/find-duplicate-number/#footnote-2

PS: 这个博客效果是炫,太费 CPU了,我还是喜欢简洁些的image-20210810122800858

题目

给定一个长度为 N+1 的数列 A={a0,a1,a2⋯,aN}. 其中 1⩽ai⩽N,0⩽i⩽N,N⩾1.

在满足以下限制的前提下找出数组中任意一个重复的数字:不能修改输入的数组;只能使用 O(1) 的额外空间

这个题目的条件是精心挑选的,我理解为是为了算法而特意设定的约束条件。比方说

  1. 数组长度说 N + 1,而不是 N
  2. 数组里不包含 0
  3. 找到任意一个,而不是全部

所以简化下理解,数组里包含里一个从 1 ~ N 的自然序列,额外再加一个 1 ~ N 的数字。

Goodbye Wordpress and Migrate to Hugo

背景

自从接触到博客,认识到 wordpress 后一直在用它,包括我最早的域名 the631.com,再到我一直在用的 hite.me。在严选期间,一起保持了很久的写 blog 的习惯因为要投稿和社交的原因,逐渐中心转移到简书上面。虽然简书的运营说个 shax,但是架不住它的编辑 md 文件时能自动插入图片、包括截图也支持插入。写起来很方便,把hite.me反而给冷落了。

在我离职之后,我突然升级服务器发现 wordpress 系统里文章引用很多图片都显示不了——我也没做什么修改啊?加上平时使用过程中,觉得访问速度不尽如人意,所以产生里更换 blog 引擎的想法。

让你的 App 支持快速备忘录

本文首发《老司机周报》@小专栏

快速备忘录是什么?

快速备忘录本质是备忘录应用的一个扩展,它的目标是方便用户在已支持快速备忘录功能的 App 里(如 Safari)快速记录内容,目前支持内容的格式包括,文字、图片、地图、链接(以卡片的形式)。并且在再次回到上次发生过记录行为的地方会有高亮提示(称之为快速备忘录建议),方便回顾和修改整理。再搭配这次 iOS 15/ macOS Monterey 升级的备忘新功能——支持的 @能力、# tag 、搜索、分享能力,让 Apple 设备上的资料整理变的前所未有的高效。

LightNote: 告别“猴子掰玉米”式的网页资料收集方式

背景

互联网的繁荣发展,使的我们在网上能找到海量的资源,供我们学习和娱乐,在我们匆匆浏览完毕这些网页之后,尤有一些片段值得收藏起来,值得我们后面回顾;亦或作为加深阅读理解的一部分,希望对某些片段做些评论,和网页内容一起收藏起来,供以后整理再加工。还有一些特定的人群,那些以稿件为生、搜集资料做学术论文的人,他们都会在动笔之前搜集更多的素材、更多的数据来支撑自己的观点、丰富数据的说服力。

所以如何高效的搜集到足够多的资料、经过整理后填充到自己的文章里?

目前已经有很多优秀的工具来辅助实现——传统的 Evernote 作为素材、笔记的存储和同步工具,它还提供了 Cliper——来帮助用户保存当前网页内容。还有一些小众的如 LINER 的 Safari 插件专门高亮网页文字,选中、收藏、评论。

用 Web 技术为 Safari 编写扩展

首发自 https://xiaozhuanlan.com/topic/2746058139,重新创作自 Session 10665, Meet Safari Web Extensions

今年(2020)苹果宣布引入一种新的 Safari 扩展类型,这种类型使用 Web 技术来为 macOS 上的 Safari 增强功能。在进入正题之前,让我们先回顾下目前 Safari 业已存在的扩展生态系统。目前包含以下类型的扩展;

  • 内容拦截扩展(支持 iOS、macOS)
  • 分享扩展(支持 iOS、macOS)
  • Safari App 扩展(只支持macOS)

现在的 Safari 插件开发对于熟悉 Objective-c 或者 Swift 的开发者来说非常容易入门上手,但事实上,熟悉 JavaScript、HTML 和 CSS 的 web 开发者要比熟悉 Objective-C 或者 Swift 的开发者多的多;而且除了 Safari 插件外,其他主流的浏览器的插件技术都是基于 HTML 等 web 技术来构建(事实上,Safari 扩展在历史上也是可以用 Web 技术来实现的)。

为何你的 App 在 IPhone 12 上显示异常,而别人的不会?

背景

10月14日 iPhone 12 系列正式发布,当我观看直播看到介绍 iPhone 12 系列的分辨率后,我注意到这些分辨率是全新的,我立即在群里吐槽——又需要适配一波了。我以为只是宽高变化会导致字号、间距的变化,然而更严重的问题是我们判断是否是刘海屏使用了如下代码(这种写法是不完善的,但我相信很多 App 里都是这么写的);

1
self.is_iphonex =  (SCREEN_MAX_LENGTH==812.f || SCREEN_MAX_LENGTH==896.f);

是否是刘海屏是枚举所有符合预期的设备高度来判断的,它的好处是快速稳定,但遇到新机型就悲催了。 在新 iPhone 12 系列中,屏幕高度分别为

Device Retina 屏幕点(pt) 物理像素 (px)
iPhone 12 Pro Max 6.7″ 3X 926 x 428 2778 x 1284
iPhone 12 Pro 6.1″ 3X 390 x 844 2532 x 1170
iPhone 12 6.1″ 3X 390 x 844 2532 x 1170
iPhone 12 Mini 5.4″ 3X 360 x 780 2340 x 1080
iPhone 11 Pro Max 3X 414 x 896 2688 x 1242

所以如果 (SCREEN_MAX_LENGTH==812.f || SCREEN_MAX_LENGTH==896.f) 代码来判断刘海屏,定位导航栏位置肯定是错误的。预期表现是导航栏被刘海遮住。