大象笔记

知者行之始,行者知之成

使用 golang 的交叉编译生成 windows 可执行文件

需求场景 公司内部的 IT 似乎不会使用 Linux,所以要交接的一个 golang gin 服务,我就不太敢部署在 Linux 上,想试试能否生成 windows 版本,然后设置成开机自启动,这样就不用操心了。 即,在我的 Windows 10 WSL Ubuntu 开发环境下,编译出可以在 Windows 10 上运行的 Golang 二进制文件。 交叉编译 英文为 Cross Compiling。 交叉编译器(英语:Cross compiler)是指一个在某个系统平台下可以产生另一个系统平台的可执行文件的编译器。 还是翻译成“跨平台编译”比较好,“交叉”这个词太难理解了。 跨平台编 ...

阅读全文...

钉钉文档非常适合做企业内部知识库沉淀

在写交接文档有感。 本来想先用有道云笔记整理,然后复制到 word 文档,再微信传送给相关同事,但是感觉这样做不正规。未来接手的人再更新也麻烦,很难持续更新。想起钉钉电脑客户端有文档功能,里面有个知识库,非常适合整理文档。 钉钉知识库的优点 云存储。避免了硬盘坏掉,个人管理导致丢失的情况 内部权限控制 目录结构清晰,还能自动生成文档内大纲。word 单文件做不到目录管理这点。 支持 Markdown,写起来快速 可评论 支持分享到钉钉聊天窗口 缺点 我个人不喜欢钉钉这个 APP,每天考勤消息太多,不厌其烦。 ...

阅读全文...

Vue SSR 服务端渲染是否有必要

最近遇到一个问题,一个内容站是否适合前后端分离。对于我这之前并不是一个问题: 因为对于内容站我压根不会考虑前后端分离,毕竟后端模板已经足够灵活,完全没有分离的必要。 而 APP 和小程序是天然的前后端分离,也没有选择性。 但是,如果是一个团队协作呢? SSR 是什么 SSR 是 Server Side Rendering 的缩写,即服务端渲染。 Vue 有独立的专题页来讨论 SSR: https://vuejs.org/v2/guide/ssr.html https://ssr.vuejs.org/zh/ 可见这是一个绕不过的问题。 为什么会有 SSR 概念的出现 前提是页面已经用了类 ...

阅读全文...

golang 解析 csv 文件报错 parse error: extraneous or missing " in quoted-field

解析百度统计 CSV 日志的系统运行了快一个月,没有出现问题。但是今天早上突然报错退出: > import_log /mnt/d/to_del/2020-06-20.csv 2020/06/22 07:55:18 parse error on line 686, column 60: extraneous or missing " in quoted-field 对应的 CSV 文件数据行为类似这样的结构,报错点在“烟台”前的一个双引号上。 "515","2020/06/20 13:07:08","烟台 "gola ...

阅读全文...

中国城市所属省份,映射关系

为了方便在 golang 中使用 map 来映射中国城市与省份的对应关系,我从一个开源的 js 组件中重新生成了这个 map。 但是这个列表,并不是特别完整,在实际运行中,今天就发现了有四五个缺少的城市,比如海南和新疆的。最好加上兼容逻辑。 简写版 去掉了“市”、“省”、“自治区”等后缀。主要是为了跟百度统计后台的地名统一。例如,北京市,简写为北京。 "北京": "北京", "天津": "天津", "石家庄": "河北", "唐山": "河北&q ...

阅读全文...

宁夏中卫市的人大概都想得到我的微信号吧

我的微信号正好是宁夏中卫市的拼音缩写,已经好几个人加我微信好友,咨询购买我的微信号了。。。 说实话,后面再加两个零,我都不想卖。。。 看来微信号投资现在比域名投资更火爆。 加上最近微信推出了更好账号的功能,估计买卖微信号的人更多了。 ...

阅读全文...

修改 Windows Terminal 默认打开的 Shell

每次打开 Windows Terminal 都会默认打开 Power Shell, 而我只使用 WSL Ubuntu。 所以,我想将 WSL 设为默认打开。 只需要点击顶部下拉箭头,选择“设置”,修改 defaultProfile 的值为对应的 guid 即可。 例如: "defaultProfile": "{c6eaf9f4-32a7-5fdc-b5cf-066e8a4b1e40}", guid 需要替换为自己配置文件中的相应值。 设置默认的打开路径 即便设置成了默认打开 WSL,但是默认路径依然是 Windows 的用户根目录。 修改成 WSL 下 ...

阅读全文...

骑行防沙眼镜,骑自行车上班必备

为何我需要一副骑行防沙眼镜 五月份底开始,疫情缓和,我开始骑自行车上班。虽然带着普通口罩,避免了吸入路上灰尘。但是,主干道上大车扬起的沙子,以及小飞虫,柳絮,经常进入眼睛。最严重的一次,早上眼睛进了一个小飞虫,到晚上滴了眼药水才排出来。一天不断流泪,都没有效果。这种痛苦,我实在不想再经历第二次了。 吐槽一下,烟台开发区西边路段沙尘太严重了。对比东边,施工地段都配有喷雾防尘设备,西边毛线措施都没有。也没人清扫,负分。平日里跟沙特阿拉伯没有分别。 对眼镜的需求 能有效防风沙 不起雾。因为冬天带过普通的护目镜,从口罩出来的水汽,直接造成眼镜起雾,什么也看不见。但是骑行的时候这完全不能接受。容易出意 ...

阅读全文...

tampermonkey 悬浮框显示状态面板

在写 tampermonkey 网页工具时,经常会用 console log 来输出状态日志,方便了解进度,或者调试。 但是对于普通用户来说,这不太友好。还是能将进度信息显示在页面上比较直观。特别是对于用来自动挂学时的插件来说,没有这个状态显示,你很难知道插件是否因为页面改版导致挂了。。。 所以参考了一个网上的脚本,写了一个测试程序。功能是,记录在当前页面停留了多长时间。 以百度首页为例,这个悬浮框状态面板会显示在页面右下角,每秒更新。 这个 div 还是透明的,也不影响正常浏览。 测试代码 // ==UserScript== // @name test_status_win ...

阅读全文...

字节跳动小程序在今日头条 APP 搜素结果的展示

开发者平台 https://microapp.bytedance.com/ 自然搜素 自然结果方面,如果小程序内容能满足用户需求,对应的小程序内容将会被检索并呈现在搜索结果页中,其展示形式与其余 H5 页面一致。 优势:当 H5 页面内容质量与小程序一致时,会优先展示小程序。 搜素结果展示样式: 普通 H5 页面式样 阿拉丁卡片 接入自然搜素的方式: 与 H5 页面 URL 进行映射。好处是能够继承原 H5 的流量,生效快。 sitemap https://microapp.bytedance.com/dev/cn/mini-app/introduction/functional-pl ...

阅读全文...

golang 定时任务

需求 我将一部分事件日志存储到了 MySQL 上,只有最近几天的有参考价值,所以需要每天定时删除早期的日志,以节省存储空间。 技术选型 自从用了 Laravel 的定时任务之后,我就再也不喜欢用 Linux 系统自带的 crontab 了,因为部署时还需要手动配置。 项目多了之后,就容易忘记。不如在 web 服务框架中直接写,不容易遗忘。 golang 的计划任务三方库 https://godoc.org/github.com/robfig/cron 是否需要配置 crontab golang 的这个实现,跟 laravel 的不太一样,不需要再配置一次 crontab。 实际上是开了个 go ...

阅读全文...

日本制造:盛田昭夫的日式经营学

关于作者,盛田昭夫是 sony 的创始人。看了这本书才明白为何 sony 能一直站在科技的最前沿。强烈推荐的一本书。 我学会了日本式的思维方式——只有找出能够实现双赢的利益共通点,才能达成自己的目的 我当时心想,这可是个好机会,于是打算以调查资料为由,离开无聊的实验室,前往东京。我首先联系了东京物理化学研究所(简称理研)的著名教授辻二郎,佯称自己奉海军上级命令,要求使用理研的图书馆,教授爽快地答应了。接着我向上司提出申请,为了查阅研究所需的文献资料,需要每天去东京的图书馆。可能是我明确而不妥协的态度奏效了,上头立即批准了我的申请。 为了自己的兴趣,关键时刻略施小计还是必要的,没必要羞愧 ...

阅读全文...

近期节日

2020年07月06日 国际接吻日
2020年07月06日 小暑
2020年07月07日 抗日战争纪念日
2020年07月11日 世界人口日
2020年07月22日 大暑
2020年07月30日 非洲妇女日
2020年08月01日 八一建军节
2020年08月06日 国际电影节
2020年08月07日 立秋
2020年08月15日 日本投降日
2020年08月22日 处暑
2020年08月25日 七夕
查看更多节日