最近开始玩树莓派,使用官方的树莓派镜像烧录器烧录了一个镜像到系统中。
但烧录成功后发现却无法通过 SSH 登录。但我记得自己明明是在配置时设置了「开启 SSH 服务」。

经过网上搜索发现,原来这个配置并没有什么卵用。你配置完成后,需要在 TF 卡的根目录创建一个 ssh 文件夹,来开启 SSH 功能。

最近开始玩树莓派,使用官方的树莓派镜像烧录器烧录了一个镜像到系统中。
但烧录成功后发现却无法通过 SSH 登录。但我记得自己明明是在配置时设置了「开启 SSH 服务」。
经过网上搜索发现,原来这个配置并没有什么卵用。你配置完成后,需要在 TF 卡的根目录创建一个 ssh 文件夹,来开启 SSH 功能。
和堂弟相对长期的生活了一段时间后,我对于城市里的孩子和村里出来的孩子又有了新的认识 — 边界感不同。
在我看来,这种边界感的不同,是来自于各自生长的环境:
这种城市化和宗族化的差异,致使城里的孩子会更加的明确「你」和「我」的边界,「我」会维护好自己的边界,尽量不进入到「你」的边界中。这种边界感,在城市这种陌生人社会当中,如鱼得水。
而村里的孩子在村里的时候,并不会有特别强的这种边界感,初次到城市当中生活时,会更容易碰壁,并因此碰壁之后缩小到一个更小的边界范围。在这个边界范围里,继续自己没有边界感的状态。
城市化不一定是好事,因为其中隐含了「我不完全信任你」的含义;宗族化也不一定是好事,因为在默认社会下,不加选择的信任,会导致我们受到欺骗。
在我看来,一个孩子需要接受城市化的教育,也需要接受宗族化的生活,这样才能在保护好自己的前提下,尽可能多的向外释放善意,开放自己。
最近在研究美国的互联网公司的时候,发现一个很有意思的事情,美国的互联网公司并不会像国内的互联网公司这样,扎堆在首府开设分部。举个例子来说,你会发现,白宫所在地并没有什么大型的企业。
如果进一步研究的话,你会发现,欧洲的很多互联网企业/软件公司也是分布在全国各个地方的。
这是一个很有意思的区别:为什么中国的互联网公司,甚至是各行各业的公司都要在北京设立分部?
我自己猜测的一个原因是中国的这种体制决定的。
中国是社会主义国家,在政治和管理方面,政府会有较强的管控的欲望和权力。这导致一个行业的兴衰可能不仅仅是看市场,还要看政府的政策(教培行业就是个例子)。在这种情况下,对于风险更加敏感的大公司自然会在北京安排相应分部,以便于 GR 团队(Government Relationship)和政府相关部门沟通,以便了解政府相关安排和动态,提前规避可能的风险。
而海外虽然政府也有影响,但远达不到中国这种程度,所以企业可以分部的更加的均匀,不需要在首府呆着。
这种模式下带来的,是中国的一线城市和三四线城市的两极分化极为严重。一线城市繁荣无比,三四线城市则萧条无比。
想了想,感觉无解。
今年的年景不好,堂弟虽然学习了半年的前端,掌握了一些基本的前端开发能力,但依然找不到一个工作。这非常的合理,毕竟他之前没怎么学过研发,如果自学很快就能找到工作,让那些科班的同学们如何自处。
但作为求职的人来说,也必须明白,在当下这个环境下,要做到有耐心,但做事要快。
有耐心,是指要明确在当前的这个大的背景下,求职并不容易,甚至可以说是非常难。环境不好的情况下,刚毕业的学生是最不容易找到工作的。毕竟作为企业,都希望招募到熟手来加快企业的节奏。在这样的大的背景下,找工作必定是一个漫长的事情。
做事要快,是指虽然在这个大的环境下,求职不容易,但我们需要明确我们做事的方法和手段,尽可能快的获取到反馈,帮助自己更快的识别问题、纠正问题,从而更早的抵达目的地。
这两者并不冲突,同时,也很难。
在工作和生活中,我们可以选择成为「让事发生」的人,而不是「等事发生」的人。
举个例子来说,假设你需要建造一个猫窝,在资源充足的情况下,你可能马上就可以自己造一个猫窝(或者是买一个猫窝)。但现实情况下可能并不允许你马上就能造一个猫窝。
这个时候,你有两种选择:
这两种选择最大的区别是「让事发生」的人投入了自己的精力和时间让事情有了发生的可能。而后者则是等待时机的成熟,被动地等待事情发生。但事情往往不能遂人愿,时机可能永远都等不到。
为了让你希望的事情发生,试着变成一个「让事发生」的人吧。
每一个人都需要一个目标,来帮助你抵达彼岸。不过可惜的是,我们的教育很少教育大家关于目标、关于理想、关于人生价值的内容。这可能是我们的教育的问题。
不过,如果你看到这篇文章,说明你至少不是一个那么普通的人 —— 这年头看独立博客的人已经不多了。
目标存在的意义并不是和很多人想象中那样的无用。每当我和别人提起,“你是否有理想?”、“你找到你的人生母题是什么了么”,大家常常会说:“我的理想就是不用上班”。
但这只是一阶回答,不上班只是表象。那么你不上班之后要做的事情,才是你的理想 —— 它可能是宅在家里打游戏(只要你能一直打下去)、也可能是周游列国,也可能是做你想做的事情。
它是什么并不重要,重要的是,你必须想清楚你的目标(至少是想清楚当下的目标),有了这个目标,你便可以在做出选择的时候,基于你的目标进行纠偏,从多个选择中,找到那个离你的目标更近的选项。
有没有目标,你都有可能抵达/无法抵达终点。但有了目标,可以让你抵达终点的速度变得更快一些。
我最近在使用 Github 来做 Rails 的 CI 自动检查时,发现 CI 自动检查时使用的 bundle audit 命令失效了,搜索后发现,是 Bundle 将 audit 拆为了单独的 gem ,而 CI 的模板并未更新,导致在调用的时候出现了错误。
既然明确了问题,解决就变得简单了。只需要在 CI 的脚本当中,加入对应的 gem 安装命令,即可完成修复。
- name: Install bundle audit
run: gem install bundler-audit
在开发应用的时候,我们常常会借助快速生成工具来帮助我们生成一些模板代码。
相比于 JS,Ruby 干脆让很多需要手动输入的地方可以不用输入,体验会更好。Rails 更是做到了极致,大量的约定。对于一些模板化的行为,你甚至可以不用写代码,框架帮你来解析。
常见的编辑器比如 VSCode、Sublime Text 都提供了大量基于插件的 Code Snippets,方便你可以快速生成一段模板代码。
不过在实际开发过程中,他们提供的模板代码可能并不太符合我们的需求,我们往往可能会有一些定制化的需求需要满足,这个时候,就比较依赖自定义模板了。
好在各种编辑器不止可以通过插件来定义 Code Snippet,你还可以自定义自己需要的 Code Snippet。
以 VSCode 为例,你可以参考其官方文档来定义自己需要的 Code Snippet,只需要简单的配置,就可以定义出你自己所需要的 Code Snippet。它可以是你自己写代码时的 Code Snippet,也可以是你在写博客时的 Code Snippet(比如写博客时自动生成前置的描述信息)。
不过,Code Snippet 的语法很多时候比较麻烦,需要一行一个字符串,对于较为复杂的 Code Snippet,构建这个 Code Snippet 本身就比较麻烦。好在有一些第三方工具,可以帮助简化这个过程。比如 Snippet Generator 就可以非常方便的帮助生成 VSCode 的语法,你只需要将需要生成模板的代码粘贴在左侧,并填写一些基本信息,就可以生成包括 VSCode、Sublime、Atom 的 Code snippet 代码,再将其粘贴到你的 VSCode 的配置中即可。
你还可以将其中的一部分内容替换为对应编辑器所提供的占位符,就可以帮助你更加高效的利用这个 Snippet 来完成内容的快速撰写。
在 Windows 的时候,我一度非常喜欢使用诸如 XShell 之类的软件,主要原因是我可以将不同的服务器信息保持在同一个软件当中,不用每次都手动保存(Putty往往就无法保存)。
而到了 macOS 之后,我不再使用 XShell 这样的软件来完成我的 SSH 工作流(事实上我也找不到类似 XShell 的软件,后来在 Setapp 软件包中发现了 Core Shell,但我已经有了下面的技巧了,就没再用)。
经过一番研究,我发现对于我的诉求来说,其实完全没必要使用一款第三方软件来完成,SSH 自带的功能即可完成。
再次 Review 一下我的诉求:
这些诉求如今我的新方法都可以实现。
SSH 支持自定义 Config 文件,而默认的 Config 文件位于 ~/.ssh/config
这个文件中,你可以在其中添加自己的配置来实现自定义 SSH。
比如这里用到的就是 SSH Config 中的 Host 定义,你可以以如下的规则来定义一个新的配置。
Host 主机名
User 登录用的用户名
HostName 登录用的主机名,可以是域名或者IP
Port 登录用的端口号
IdentityFile 需要使用的密钥文件
比如下图就是一个配置的例子
通过在你的 Config 文件当中添加对应的定义,你就可以用 ssh 主机名
的方式来连接你的服务器了。
比如,我的树莓派的配置的主机名是 pi
那我就可以使用 ssh pi
的方式来连接到我的树莓派当中。
在用发展的眼光看待自己的工作和生活当中,我提到,不少人总是在用静态的眼光看待自己。这些人不只使用静态的眼光看待自己,也一直在使用一个相对更加低阶的身份定位来锚定自己。
很多人没有意识到,你的薪资其实和两个部分有关:
大部分秉承着「拿钱办事」心态的人,都在这两个点上做的不够好,一方面没有自己独特的技能点和生态位,导致在市场发生剧烈波动时,很容易因为没有任何特色而发生替换。另一方面,由于心态是「拿钱办事」,自然不愿意去承担更大的压力和责任。
而对于公司来说,一个极其标准化,没有任何稀缺性的产品,自然是不会给你升职加薪的;而这个产品如果也不愿意承担责任和压力,那我是真的想象不到有什么理由来为这样的一个产品支付更高的费用。
如果你发现自己很久没有升职加薪,不妨回过头来看看,自己是否满足了升职加薪的基本条件?