avatar
Rei
GeekNote 新增深色主题
很高兴宣布 GeekNote 已经支持深色主题! 如果您的设备支持设置主题偏好,那么 GeekNote 将会自动识别您的设置。 以 Mac 为例,打开“系统设置->通用”即可设置外观偏好: 您也可以在网站设置主题偏好,打开“右上角菜单->主题”即可设置外观偏好: 希望深色主题有助于解决夜间阅读“亮瞎眼”的问题。 祝使用愉快。
avatar
Rei
用 CSS 实现深色主题
最近在 GeekNote 上实现了深色主题,这里分享一下技术细节。 首先是如何管理深色主题的样式。一种做法是先写好浅色的主题样式,然后新增深色主题的样式: // SCSS 代码 body { background: #fcfcfd; color: #19181b; } .button { background: #543a92; color: white; } .dark-mode { color-scheme: dark; // 指示浏览器内置组件使用深色调 backgound: #19181b; color: #e5e4e7; .button { background: #c3b6e2; color: #2a1d49; } } 这样只要在 <body> 上添加 .dark-mode 样式就可以切换到深色主题: <body class="dark-mode"> ... </body> 上面代码可以工作,但…
avatar
fleam
Ruby Python Elixir Go PHP Node 开发对比
Ruby 使用Rails开发 优点:使用脚手架能很快的完成curd,语法简洁,无论开发web网站还是api接口都非常的快,单独使用Ruby做脚本运维也是很Nice 缺点:对windows用户不够友好,开发领域不够广,资料比较少,中间用Ruby写爬虫用到无头浏览器,无奈资料太少,转用Python实现 Python 使用Django开发 优点:工具比较完善,感觉Django和Laravel都借鉴了ROR,默认集成了后台管理,简单集成DRF后可快速实现RESTful,越往后开发感觉越爽,官方文档很…
avatar
fengzhi
抓包工具 Charles 与 Nuapi 对比
Charles 是在 PC 端常用的网络封包截取工具,在做移动开发时,为了调试与服务器端的网络通讯协议,常常需要截取网络请求来分析。除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 Https 协议。 Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络请求的截取和分析。 Charles 主要的功能包括: 截获 Http 和 Https…
avatar
alexsz
Hello,world!
记录工作和生活。
avatar
google
OpenWrt 普通用户无法使用 sudo 提权,报错 Error relocating /usr/lib/sudo/libsudo_util.so.0: reallocarray: symbol not found 的解决办法
使用普通用户登录,执行 sudo mkdir test 报错,错误信息如下 $ sudo mkdir test Error relocating /usr/lib/sudo/libsudo_util.so.0: reallocarray: symbol not found Error relocating /usr/bin/sudo: reallocarray: symbol not found 经过一番搜寻,只找到了这个帖子 [openwrt(x86)] 请教一下关于openwrt安装xteve遇到不让用root用户运行的问题 ,但这个帖子并没有解决办法(你现在看到的此帖中的解决办法就是我给出的) 在 superuser.com superuser.forumming.com askubuntu.com 等等网站上也找到了一些信息,但是和 OpenWrt 相关性不大…
avatar
pyzm
20220319
hello world
avatar
ob
Hello
World
avatar
超级小桀
Hi 你好
avatar
lvwzhen
酷玩周刊 第 4 期
酷玩周刊 第 4 期 发掘一切有趣的数字生活 🚀 产品试玩 Magic Eraser 顾名思义魔法橡皮擦,这是一个超级好用的P图工具,无需注册,简单拖动鼠标就能删除照片中的物品,并利用AI技术补全图片。 MenubarX MenubarX 是一款 macOS 的菜单栏浏览器,你可以把邮箱、翻译、微博、B站等网页固定在菜单栏中,大大提高工作时摸鱼的效率😂。 YaoYao - 跳绳 YaoYao 是我用了很久的跳绳计数 App,之前支持手机和手表计数,最新的一个…
avatar
pyzm
第一篇20220320 广告屏蔽规则
广告屏蔽 Fanboy's Annoyance List AdGuard Base: https://filters.adtidy.org/extension/chromium/filters/2.txt EasyPrivacy Lite: https://filters.adtidy.org/extension/chromium/filters/118_optimized.txt AdGuard Tracking Protection: https://filters.adtidy.org/extension/chromium/filters/3.txt AdGuard Annoyances: https://filters.adtidy.org/extension/chromium/filters/14.txt AdGuard Chinese: https://filters.adtidy.org/extension/chromium/filters/224.txt NoCoin Filter List: https://filters.adtidy.org/extension/chromium/filters/242.txt
avatar
寒喵
华硕路由器登录页面强制跳转解决办法
路由器 ip 被强制跳转router.asus.com 所以感觉不太舒服,上网查了下好像因为没有官方提供相关设置,只能通过hosts修改 asus-router 备份/etc/hosts 文件 cp /etc/hosts /etc/hosts.bak 备份hosts cat /etc/hosts.bak 确认备份文件正常,该命令会在命令行显示文件内字符内容 vi /etc/hosts 编辑hosts打开后删除第二至四行 :wq! 使用 按 ESC按键 输入 : 再输入wq! 回车(ENTER)结束 cat /etc/hosts 确认修改成功,该命令会在命令行显示文件内字符内容 删除 /etc/hosts 文件…
avatar
Rei
GeekNote 新增导出功能
很高兴宣布 GeekNote 新增导出功能,您可以导出所拥有账号下的所有文章、草稿和附件。 导出功能的位置处于“账号->管理面板->设置->导出数据”,点击“创建导出任务”,导出完成后您将收到通知邮件。如果没有收到邮件,可以尝试稍后刷新页面查看导出状态。 导出的文件是一个 .tar.gz 的压缩包,您可以用常用的解压软件解开。压缩包内容如下: posts 目录存放所有已发布的文章 Markdown 格式文件。 drafts 目录存放所有草稿的 Markdown 格式文件。 attachments 目录存放所有…
avatar
steve lee
Ruby under Scanner
Recently, I have read the CS paper that compares Ruby and Java. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.127.2138&rep=rep1&type=pdf This paper compares Ruby and Java in some features of two language. I take a note about Object Orientation part: As defines, Object Orientation of a language is determined based on the following qualities Encapsulation/Information Hiding Inheritance Polymorphism/Dynamic Binding All pre-defined types are Objects All operations performed by sending messages to Objects All user-defined types are Objects All the above properties are satisfied by Ruby. But Java has…
avatar
小毛驴
Go 线上服务问题排查指南
一、简介 软件开发过程中 Code Review,Lint,QA 等手段都是为了提高软件质量,减少流入到线上的 Bug。在软件的生命周期中,维护的时间远远比开发花费的多。而排查线上服务问题的手段和在本地 Debug 有一些区别,本文介绍 Go 线上服务出现问题时如何排查。 二、预防、发现、止血 在介绍排查手段之前,首先明确对待线上问题的处理原则。 预防为主:通过架构层面的容错设计,以及代码层面编码规范,辅助测试发现 Bug,提高软件…
avatar
HackerPie
多时钟解决雪花算法的时间回拨问题
分布式 ID 生成算法用于在分布式系统中生成全局唯一的 ID 标识,而 twitter 提出的雪花算法便是其中一种知名的算法,其每次会生成一个 64 位的全局唯一整数,算法的基本思想非常巧妙: 0 1010......101 1010101010 101010101010 \_/ \___________/ \________/ \__________/ 第1位不使用 41位毫秒时间戳 10位机器ID 12位序列号 除了开头的第 1 位不使用,接下来的 41 位时间戳是从指定的起始时间到当前时间所经历的毫秒数,比如设定系统起始时间为 2022 年…
avatar
HackerPie
数据库数据加密的 4 种常见思路的对比
最近由于工作需要,我对欧洲的通用数据保护条例做了调研和学习,其中有非常重要的一点,也是常识性的一条,就是需要对用户的个人隐私数据做好加密存储,避免用户隐私明文数据泄露。 方案分析 思考如何对用户隐私数据做好加密处理,可以先从分析典型的数据读写链路开始: 按照此链路分析,可以按照数据加密的着手点,划分数据加密的 4 类解决方案: 应用层加解密:由应用程序自行负责数据的加解密,这是最自由,但也是最繁琐…
avatar
HackerPie
Golang 编写易于单元测试的代码
聊聊单测这个事 单元测试一直是大家老生长谈的话题之一,尽管各种测试方法论和测试工具集层层出不穷,但是实际上,在我所工作过的公司中,还没有见过能把单测坚持好的团队。单测的概念不复杂,单测的重要性大家也都是认同的,但是是什么造成单测没有执行下来呢?我觉得主要是两类原因吧: 开发工期太赶:时间只够写功能性代码,测试代码只能舍弃,系统功能依赖不可重复的人力操作…
avatar
HackerPie
MySQL + go 如何安全处理 decimal 类型数据
在电商或者金融相关的场景中,商品价格等数据都会涉及到小数的表示或者计算,如果使用编程语言内置的浮点数类型,会有精度丢失的风险。在应用领域,decimal 类型应运而生,MySQL 数据库中内置支持 decimal 数据类型,而程序设计上,一般编程语言都会有标准库或者第三方库对 decimal 类型提供实现。本文快速展示下如何实现全链路对 decimal 类型数据的读取处理,而不用担心会丢失数据的精度。 数据库层 - MySQL 在 MySQL 层,decimal 类型的值使用二进制表示,其…
avatar
HackerPie
当反射 map[string]interface{} 遇上 MapIndex 方法,返回值的 Kind 不是具体类型?
什么是反射? 反射是一种在运行时用于探测甚至修改内存数据以及程序行为的机制,在 go 语言中通过 reflect 包实现。直白来说,利用反射,我们可以实现包括但不限于的以下这些场景: 数据的反序列化,比如 json、yaml 等格式数据从纯文本到内存数据结构的反序列化过程 动态修改内存中的数据,比如创建新的字典数据、修改结构体的字段的值等 动态调用对象的某个方法或者包里的某个函数等 检查数据的类型…