苟利国家生死以,岂因祸福避趋之

Panda Home

我的 2019

发布于 # 随便聊聊
标签: # 2019 # 年终总结 # 谈笑风生
我的 2019
Photo by NordWood Themes on Unsplash

谈笑风生又一年 居安 去年说的啥来着,用一门新的编程语言做个项目,其实这个 flag 算是完成了,但我绝对想不到这门新语言居然是 Java ,我一个 Python 程序员怎么就去写 Java 了呢?公司老板说,我们已经决定了,你来写 Java ,于是到我写下此文的这一刻,我有了多半年的 Java 经验。为了证明我做了一些微小的工作,还胡乱写了篇笔记,讲如何在苹果电脑上安装 Java ,算是在这个项目里不虚此行。 不吐槽编程语言本身,项目还是非常有意思的,基于 Kafka 搭建我们的数据管道,但主要工作还是升级,公司里用的那一套是三四年前的,版本太老,zookeeper 的管理乱的很,于是决定升级到最新版。在此期间从零开始学习了 Java ,了解了 Kafka 的生产者——消费者机制和为了性能采取了一系列措施,还试着写了写 Kafka Streams 相关的应用,得承认这一块端到端的 e

Golang 的 "omitempty" 关键字略解

发布于 # 聊聊技术
标签: # Go # JSON # omitempty
Golang 的 "omitempty" 关键字略解
By Bjjung - Own work, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=38817272

用法 熟悉 Golang 的朋友对于 json 和 struct 之间的转换一定不陌生,为了将代码中的结构体与 json 数据解耦,通常我们会在结构体的 field 类型后加上解释说明,例如在表示一个地址的时候, json 数据如下所示 { "street": "200 Larkin St", "city": "San Francisco", "state": "CA", "zipcode": "94102" } 与之相对应的 Golang 结构体表示定义如下 type address struct { Street string `json:"street"` // 街道 Ste string `json:"suite"` // 单元(可以不存在) City string `json:"city"` // 城市 Sta

在没有黑暗的地方相遇

发布于 # 聊聊书籍
标签: # 一九八四 # 乔治·奥威尔 # 反乌托邦 # 读后感
在没有黑暗的地方相遇
Photo by Viktor Forgacs on Unsplash

这篇《一九八四》的书评被我写了又删,删了又写,如此往复几次,终于因为自己无法掌握“双重思想”,没法子假装自己没看过这本书,也没法子把没看过这本书的假装忘掉,还是在博客上动了笔。 大概在某个平行宇宙的1984年,地球上确实有个大洋国,也确实如书中所写,每一个人被国家机器统治成了一个个规整的零件,不能乱说,不能乱写,甚至不能乱想,只能按照老大哥的指示,安安分分的做上头指派下来的工作,这其中大部分工作都是用来限制人们的“乱说”、“乱写”、“乱想”。这个世上分明有了充足的物资来支持每一个人的富裕生活,人们的生活本应是丰富多彩的,而字里行间的描写却让我感到比书页的白纸黑字还要单调。无论春夏秋冬,整个大洋国都是一片死气沉沉,每句话、每个动作都有专人在监视,没有历史,没有真相,老大哥希望人们看到的就是真相。在这样的灰度图一般的背景中,那个玻璃镇纸中的珊瑚红得那样不真实。一个古董铺,一个小酒馆,甚至在后院

用 Python 代码生成视频的缩略图

发布于 # 聊聊技术
标签: # Python # Reddit # FFmpeg
用 Python 代码生成视频的缩略图
Photo by Kit Junglist on Unsplash

最近写了个 Reddit 发帖辅助工具,因为涉及视频的上传及标注出处来源,所以一个简单的脚本可以大大减轻我的工作量,出于糙快猛的考虑,自然而然就是 Python 了。 Reddit 上目前充斥着各种机器人账号,官方也非常支持这种行为,只要不是无意义的发言,机器人多了还能增加活跃度,吸引真人用户一起来各抒己见,比如说在“旧金山湾区”板块上每周都有一个题为“烦人的星期二”的帖子,就是大伙儿吐槽生活中种种烦心事的好地方。因此 Reddit 提供了一整套开发者 API ,同时 SDK 也不难找,这里有一个详尽的列表,大家可以根据自己的语言喜好随意取用。 脚本很简单,真正的困难在于视频上传, Reddit 的要求很特殊,有了帖子标题和视频路径还不够,还需要提供一张缩略图, SDK 的文档也说了,如果不提供,就会自动上传一张他们的 Logo 作为视频的缩略图。这个时候,就需要祭出 FFmpeg 了。