大象笔记

知者行之始,行者知之成

给家里 Dell 台式机加了根 8G 威刚内存条

平生第一次买内存条。 起因 家里的 Dell 台式机只有 8G 内存,平时使用基本没啥问题,看个视频也用不了一半内存。写代码用 Vim 更是对内存毫无要求。但是最近在用 Android Studio 学习 Jetpack Compose 开发,开了模拟器之后,就卡得不行,主要是内存不够用了。 我是一个懒得折腾的人,买台式机永远是买品牌机,因为我担心出了硬件故障,自己花时间去排查浪费生命。而且本身也对动手组装电脑不感冒。赶上家里台式机刚过3年质保期,也不在乎是否开过机箱了,所以干脆加条内存吧。 内存条的品牌纠结 在京东上搜索内存条,限定了 DDR 4,8G,2666 等指标,可以看到品牌五花八门 ...

阅读全文...

Jetpack Compose 多界面间的路由跳转

目录结构 一个简单 Demo 的文件分离结构: Home Screen:首页列表 Edit Screen (detail):编辑页 NavHost (router):路由定义 Main Activity 添加依赖 dependencies { implementation "androidx.navigation:navigation-compose:2.4.0-alpha08" } 添加之后,不要忘了点击 Android Studio 右上角的 Sync Now。 否则像 rememberNavController 这样的函数,无法通过 Alt + Ente ...

阅读全文...

为 golang 项目添加 Makefile

使用 Makefile 的好处 可以管理多个任务的命令。例如,build & run,test。 否则单单一个 go test -v ./... 就很难记住。 何况还会有很多需要记录的命令: go test build & run scp 到服务器,并重启服务 每个功能一个 shell 脚本,会显得很杂乱。放到一个统一的文件中,就非常方便了。 如果没有 Makefile 文件会怎样 > make make: *** No targets specified and no makefile found. Stop. 参考项目 golang gin 项目的 Make ...

阅读全文...

电脑副屏的选择

起因 为何我突然想起来要再增加一块显示器? 我一直习惯用一个电脑屏幕工作,但是周末接了一个大象计算器用户的定制化需求,大致是开发一个银行内部使用的针对几十种场景的贷款利率计算器。本以为很简单的功能,没想到光需求文档就近十页,参数就上百个。我写代码的时候需要不断在 vim,word 文档和小程序开发工具间切换。主要是 复制 word 里的参数和文本选项 反复阅读并确认 word 中的逻辑 小程序模拟器与 excel 模拟计算结果比对 虽然 Win10 的左右分屏已经很方便了,但是奈何 23 寸的显示屏还是太小。并且我也更习惯 vim 全屏开发。于是副屏的需求就产生了。 副屏的更多使用场景 ...

阅读全文...

小区封禁只进不出,全员核酸检测

没想到这事会发生到自己身上,由于烟台一个大爷从南京回来没有居家隔离,导致整个烟台市四区要全员核算检测。 早上接到物业通知说整个小区要封闭,只进不出,等候通知下去核算检测。 食物储备 幸好家里平时备的吃的比较多,隔离个两三天,不出门也没问题,四口人的饮食还是足够。 但是时间再长,恐怕大家都会慌。 从群里的照片看,小区内的超市都排起了长队,倒是井然有序,但恐怕贮备也很难充足。 家家悦的线上配送显示今日已排满,无法配送。平时家里不备吃的的年轻人,怕是很难熬。 所以,平时还是得有计划性的贮备一定的食品,防止意外。 唯一担忧的是,一旦水电要是停掉,那就崩溃了,不能看手机,没有饮水,怕是半天都撑不住。 ...

阅读全文...

Jetpack Compose 1.0 版正式发布

我期待已久的 Android Jetpack Compose 终于出 1.0 正式版了。 正好有个 App 的小功能想实现,决定用 Jetpack Compose 实现。毕竟 XML 布局写列表太复杂了,一时不用,就忘了怎么实现。 连复制黏贴都没有头绪。而 Compose 相对简单很多。不知道鸿蒙是否能跟进,:) 周五晚上闲的没事就把家里台式机上的 Android Studio 做了升级。 对应的 Android Studio 版本 Android Studio Arctic Fox (2020.3.1) Stable 正式支持了 Compose,在新建 Activity 时,可以选择 Com ...

阅读全文...

PLC 与单片机的区别

经常听同事在讨论时提及 PLC 和单片机这两个词,作为硬件外行的我,感觉不了解一下不行了,要不完全听不懂他们在聊什么。 PLC PLC (Programmable Logic Controller) 是可编程逻辑控制器,专为工业生产设计的一种数字运算操作的电子装置,它采用一类可编程的存储器,用于其内部存储程序、执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程。是工业控制的核心部分。 我看同事用的是西门子的 PLC,但实际上 PLC 有 200 多个品牌,不同品牌在编程上有些许差异,但变化不大。编程更像是在画流程图,IDE 卡 ...

阅读全文...

绿萝都能养死的我,这个夏天发现了适合懒人养的植物

院子里空出了许多花盆,原因是之前养的植物都不够坚强,没有来得及享受烟台夏日的阳光,就化做春泥了。阵亡名单包括但不仅限于: 喝了我的血被毒死的巨型仙人球 冻死的仙人掌 被我妈开水烫死的芦荟 被烈日灼死的多肉 大概被冻死的无花果 多喝水也没有长寿的绿萝 半死不活的桂花 其实根本上是我不会养花,其次是懒得打理,这些植物都是不开花,或者花期不定的家伙。没有任何期待,就自然没有花心思。所以,我的核心诉求就是: 好养,生命力强大,即便经常忘记浇水都可以存活,完全靠天吃饭 好歹会开个花吧,连开花技能都没有还能算是个植物么 能适应北方的气候,虽然我想养几株可以吃蚊子的植物,但是似乎都不是北方可以存活 ...

阅读全文...

MQTT QoS 服务质量等级

在查看腾讯云 MQTT 相关接口时,看到一个参数 Qos: 服务质量等级,取值为0或1 什么是 QoS Quality of Service,即服务质量。 看上去比较晦涩,找了本专门介绍 MQTT 的书《Hands-On Internet of Things with MQTT》才理解了。 QoS 给终端带来了一项重要的能力,即,可以接收自己离线时,对方发送的消息。例如,Facebook Messager 也是基于 MQTT 实现的消息机制。所以,本质上 MQTT 还是一个消息队列,MQ 已暴露了一切。。。 MQTT QoS 等级 MQTT 设计了 3 个 QoS 等级。 QoS 0:F ...

阅读全文...

项目管理工具从 Trello 迁移到 Notion

已经从 Trello 迁移到 Notion 一个周了,目前使用体验良好,再也没有打开过 Trello。 为何要抛弃 Trello 转投 Notion Trello 的 Workspace 让人看不懂,似乎完全是为了收费而推出的限制。由于我的历史项目非常多,大概50多个,远远超出了 Workspace 10 个项目的限制。 Notion 的 Board 虽然不如 Trello 华丽,但灵活度很高。可以各种 group by,自由度高。 Trello Board 可以一键导入到 Notion,国外的产品确实有魄力。此处必须给 Trello 点赞。 Notion Checklist 下可以继续建子 ...

阅读全文...

《返朴》没想到我会去读一本纯爱小说

北野武老头子的一部纯爱小说,昨晚一口气读完,堪称完美。大概是我今年读过质量最高,文笔最好的一本书。难以想象一个外表粗暴的老头能写出如此细腻的书。不过,想想菊次郎的夏天也出自北野武之手就没那么奇怪了。 说是一部纯爱小说,但实际上爱情的部分并不是很多。基本上是一个三十多岁单身男人的工作、亲情、友情,和离线式的约会。段落间处处是生活细节,足见北野武不但心思细腻,而且绝对是个勤笔记录的人,就像他另一本书中说的,和女人xx的时候想到好的素材时,会立即掏出纸和笔记录下来。这种记录的功力,怕是日本导演的绝活。  守夜时放声大笑,通常情况下肯定会遭人白眼。可是对于悟而言,却真切地感受到了朋友的弥足珍贵。 ...

阅读全文...

InfluxDB 2.0 数据备份恢复,导出/导入

第一次物联网项目中使用 InfluxDB 2.0,心里最没底的就是数据安全性问题。 而且在 WSL Ubuntu 中有重启之后,永远无法启动的问题,除非清空数据。 所以,必须在线上生产服务器上反复测试数据备份流程。 InfluxDB 数据备份 influx backup 命令格式: influx backup <backup-path> -t <root-token> root token 在哪里获取? 官方文档的说明是: The root authorization token (the token created for the first user in th ...

阅读全文...