生活

人生不是马拉松

可能到了年底,多少对于这一年有的一点期望,都幻化成为无头无尾的空炮弹,打在自己的身上却不痛不痒。要说一年最痛苦的时刻,莫过于就是日历被换掉的那刻,逝去的时光无法再次追回,只能靠着怀抱来年的憧憬,以及对未来的幻想,流着口水夹着尾巴,穿梭在欲望和霓虹之中。(PS:打开一瓶冰的气泡苏打水,让我在冬日里感受到夏日的清凉。)开车行驶在熙熙攘攘的公路上,有的时候却不知道下一站将会在哪里。毕竟人生嘛,肯定不会像高德地图一样,每次都提供你一个最优的且可以到达的终点。路该怎么走,还剩多少里程,什么时候能到达,路上有没有拥堵,我都能精确知道。人生的旅途也因为如此,充满了各种可能,充满了各种精彩。是谁规定人生就是一场马拉松,重复地一步又一步,从起点跑向终点。きょうも走りつづける。今天也继续跑着。だれだってランナーだ。

  • Domon
    Domon
4 min read

使用FRP进行内网穿透

因为项目上的需要,内网增加了一台服务器,在配置Jenkins的时候,发现需要一个外网地址才能触发WebHook,进而走构建流程。所以就需要采用内网穿透的方式把内网的服务开放到外网当中。例如,家里的NAS,想要在家里之外的地方访问,就需要用到内网穿透的技术。目前市面上比较成熟的几个方案,DDNS,ngrok,frp,各有各的优势和缺点。我选择frp的原因很简单,方便配置,开源免费。 准备工作 一台有独立IP的VPS 一个可以自由解析的域名 背景知识 简介 正如frp主页写的** frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和

  • Domon
    Domon
3 min read
A House With No Name
生活

A House With No Name

回家的路上在想为什么之前的人那么的才华横溢,尤其是80年代,感觉离我们最近的流行文化就是从那个时候起来的。看到一些老照片,大蛤蟆镜,喇叭牛仔裤,卷发和胡子,都是那个时代最新潮的。现在看到三十多年前的照片,并没有多少违和感,因为时代的变迁,加上信息流通的加剧,反而我更加容易的知道之前那个年代。时代就是一个轮回,大师都是一波来一波又去的,历史和经济一样,有波峰也有波谷,我们能做的就只有等待。 在华夏文明的土壤中很难说要谁去包容谁,包容别人向来是非常困难的。无论是从地域,民族,性别还是年龄上,我们都无法做到包容别人。这一点日本做的比我们好,尽量不去麻烦别人,麻烦了一定要厚谢。其实,想做到这一点,需要一点点同理心,即我深知被别人麻烦的痛苦,所以,在麻烦别人的时候,

  • Domon
    Domon
5 min read
Linux

Screen常用的命令

经常在命令行中执行一些命令的时候,有的是需要在后台执行的,或者有的时候登录在VPS中,退出ssh后,这条命令就自动中断了。这个时候采用Screen的方式就比较好处理。 Screen可以理解成为一个新开一个窗口,每次当你新建一个screen的时候,他就是独立的。可以随时随地的恢复一个状态。 常用的命令 screen -ls #显示当前所有的screen,会有两个状态一个是detach,另外一个是attach,有点像Android中的Fragment的状态一样。 screen -S xxx #创建一个名为xxx的screen screen -r xxx #恢复(或者叫attach一个名为xxx的screen) screen -d xxx #detach某个screen screen -d -r

  • Domon
    Domon
1 min read
Linux

CentOS 7.4 No package python-pip available

昨天新开了一个VPS,准备安装一下Pip,搭建一下项目环境,但是执行 sudo yum install -y python-pip 后,终端提示** No package python-pip available**。没有pip的可用包。 上网搜的结果都是三步走,就可以解决: yum install -y epel-release yum install python-pip pip install —-upgrade pip 但是按照这个说法执行下来,依然是出错的,提示错误相同。搜了一下epel的[

  • Domon
    Domon
1 min read
Linux

MySQL设置用户访问权限

对于有远程访问MySQL的需求的话,通过MySQL的权限管理,可以设置一个新的用户指定IP访问,指定数据库操作,指定表,这样用最小粒度确保安全。创建新用户可以通过SELECT user,host from mysql.user;查出当前的用户及Host。Host一般为localhost,127.0.0.1,%,固定IP。%的意思是,任意IP都可以。为单独的程序新建一个MySQL用户CREATE USER 'username'%'host' INDENTIFIED BY 'userpassword';即可创建一个新的用户。给该用户设定权限为了保证安全,一般都需要设定的权限最小。比如,定位到某个数据库的某个表,

  • Domon
    Domon
2 min read
IT

Linux安装Jenkins

Jenkins是大名鼎鼎开源的CI软件,有非常多的插件,可以完成自动化部署,构建等功能。最近发现前端工程师,在每次的发布流程都非常的折磨人,于是想着不然自己搭建一个CI来处理。CI的好处是显而易见的,可以持续集成和持续交付。我在之前做国外的项目的时候,这种便利,让我只需要关注我自己的代码和逻辑即可。代码编写出错,CI就过不去。代码通过后,QA就可以直接拿到APK包直接测试,完全不用我本地手动出包。节省了两边的时间。按照一般Android的流程来看,本地写完代码—Push代码—提交PR—通过审核—打APK包—QA测试。有CI介入之后,相当于打APK包的操作就交由Jenkins来完成了。每一次的Push都可以对应一个APK包,QA只需要在当前的APK中测试是否问题已经解决。现在这位前端同事使用的是Vue的框架。他的本地流程是本地写完代码—Push代码—到服务器Pull代码—

  • Domon
    Domon
5 min read
如何看待压力
生活

如何看待压力

压力存在于这个浮躁的社会的任何一个角落,是一个当代人都需要直面的社会问题之一。它即可以是有形的,例如商品社会中,每个人的经济压力,潜水时的水下压力。当然它也可以是无形的,如人在社会集群中的社会阶层压力等等。压力是没有办法避免,同时它也是不能被完全消除的。只要人活在这个世界上,总会遇到这样那样的压力。多数时间,压力会藏在身体某个角落里。适当的压力,可以提高人的警觉性,能让人谨慎行事,从而发挥更好。过度的压力,在某些外因和内因共同作用下,就会释放出它的破坏力。轻则让人情绪沮丧,气馁,重则让人神经紊乱,甚至放弃生命。因此,改变自己对待它的角度和方式才更显的重要。就我自己而言,在和压力的对抗中,我的胜率还是比较高的。我一般会采用这几个种方法来对待它们。增加心灵屏蔽:人在专心的做一件事情的时候,

  • Domon
    Domon
2 min read
IT

印象笔记剪藏修改登录地区

由于之前一直在使用英文系统,工作中换了一台新机器,发现Chrome的剪藏插件同步下来,登录的时候默认是登录到国际版了,但是我的帐号是国区付费的。这样也会导致剪藏的文章在国际版的帐号中,众所周知两个数据是完全不互通的。我重新在应用商店下载剪藏插件,无果,仍然只能登录国际版。然后我尝试去印象笔记的官网去下载这个crx。这里安装的时候出现了一个错误。package is invalid 'crx header invalid’<!-- more —>查询了一下,原因是这个crx的文件的问题,遂想其他办法。有的人说的更加离谱,在剪藏的设置界面,按上上下下左右左右AB,就会出来一个选项,可以选择中文简体,这样就能登录国区账户。尝试,没有反映。

  • Domon
    Domon
1 min read
小米手环3NFC版详细破解流程
小米

小米手环3NFC版详细破解流程

背景知识小米手环小米手环3分为两种,一种为普通版,另一种为NFC版本,这篇文章的主角是NFC版本。NFCNFC(Near-field communication)顾名思义,近距离无线通信,国内媒体比较常用近场通信来描述。他是通过RFID(非接触式射频识别)演变而来。近场通信是一种短距高频的无线电技术,在13.56MHz频率运行于20厘米距离内。其传输速度有106 Kbit/秒、212 Kbit/秒或者424 Kbit/秒三种。这段话也说明了它的技术指标,13.56MHz,传输距离,传输速度。ID/IC卡ID卡和IC卡的主要区别如下:比较简单的一个判断方法就是,如果卡(

  • Domon
    Domon
8 min read
生活

科技改变生活,技术连接生活

相较于第一代的小米手环,这一次让我觉得最大的体验就是,快捷,易用和忘记它的存在。我对于扫码乘车非常排斥,角度和距离控制不好,经常会让后面等待的每一位朋友损失生命中的几秒,因此本着节省自己和他人时间,我会使用公交卡。手环NFC有天然的优势,容错率高。这段时间做地铁抬手进站出站,识别程度和公交卡没有两样,但因为手环在手中所以省了从口袋掏出来的过程,所以体验好了不少。模拟门禁卡也是一样,提高效率并让自己感到轻松愉快,再也不用到处翻找钥匙串了。PS:美国人用牛仔裤的小兜放金子,我却用这个地方放门禁卡,so sad。另外由于多了一块屏幕,相对于一代小米手环,多了交互的方式,有时候不自主拿起来盘两下,偶尔还会看看自己的心率。不过需要吐槽的是,这个手环和华米2手表虽然同家,但是数据源只能选择一个,我两个设备同时佩戴的时候,总有一个的数据是不能使用的。

  • Domon
    Domon
2 min read
IT

ClickUp基础使用说明

日常工作中需要有类似Jira且免费的软件来管理项目开发,找寻体验了一圈,发现ClickUp的整体素质非常不错。随即就在公司推广了起来。 一般情况我们再说敏捷开发的时候,都需要一个类似的项目管理工具,来直观的可视化的看到当前这个Sprint里面的任务以及当前Sprint的燃尽图。有了这些数据和进度的保障,也会让开发工作变得更加顺滑。 任务基础流程及规范 任务流转流程 任务对应的指派人,开始该任务时,需要将任务的状态从「 Open改为「进行中」(三种种改动方法: 在任务详情页面中修改 在列表/看板界面直接拖拽 在看板/列表界面点击状态选择 任务在「进行中」时 若任务完成时需要将任务状态从「进行中」改为「已完成」,并指派给需求的发起者 若任务如果因为各种情况被阻塞,例如U没有提供,需求没有明确,

  • Domon
    Domon
5 min read
IT

Windows Server网站数据迁移

由于一台服务器(A)下架,所以需要将之前的网站转移到另外一台服务器(B)当中。整个项目为PHP的项目,采用了Zkeys的集成化工具(PHP,MySQL,PhpMyAdmin)。 备份MySQL数据库文件 在MySQL中直接拷贝 在A中拷贝原有数据库文件,一般情况,MySQL的数据文件会在 mysql安装目录/data/对应的数据库名称 如果没有找到安装目录,则可以通过进入MySQL命令行的方式获取 mysql -u用户名 -p密码 进入mysql命令行控制台,输入下面语句即可查看 show global variables like ‘%datadir%’; 将数据库文件(一般为frm,

  • Domon
    Domon
4 min read
Python

Python通过SSH连接MySQL

因为项目的特殊性,数据库只允许内网访问&服务器公网SSH访问,需要本地机器A通过SSH登录到目标机器B上,访问该B中的MySQL。搜寻了一圈,大部分的内容都是教如何在本地机器A,通过SSH连接到跳板机B,然后访问C机器的MySQL。所以记录一下我的实现方法。 需要用到的两个Python libs:pymysql和sshtunnel。 不通过SSH连接数据库 conn = pymysql.connect(host=localDbConfig.MYSQL_IP, port=localDbConfig.MYSQL_PORT, user=localDbConfig.MYSQL_USERNAME, password=localDbConfig.MYSQL_

  • Domon
    Domon
1 min read
IT

鼠须管安装及简单配置

输入法作为一个入口,能掌握和得到的数据很多,比如但不限于密码,聊天文字,不合时宜的文字等等。所以,一般情况我是不会用第三方的闭源输入法。随着iOS12,对于双拼的系统层面的支持,从此我就变成了原生输入法。用了这么久觉得一切都挺好,尤其微软拼音在Win10下的表现令我挺意外。至于苹果上,iOS上面的双拼(微软双拼)键盘布局有点让人不开心,以及MacOS原生输入法切换中/英文的Caps的按键有点奇葩之外(尤其是在HHKB上,需要Fn+Tab),其余我都挺喜欢。但是不是有更好的选择。答案当然是肯定的,那就是RIME。 RIME输入法再Mac下面叫鼠须管,它的定制性很强,以至于挡住了一部分人。这篇文章也是简单的说一下,如何调教出来一个比较好用好看的输入法。 基本使用 在这里可以下载到最新版本的鼠须管,安装过程很简单。

  • Domon
    Domon
6 min read
生活

I Do What I Want

在阳历年过后,马上就要迎接来阴历年。不知不觉这一年又已经到头了,感觉时间过的要比预想的快太多了。现在还能回想起来去年过年之前,同样是在最后一个聚餐的工作日。我坐在李哥他们的办公室,听着歌,写下来一篇文章-Think Different。 年复一年的工作,让我更加的觉得自己像一个机器一样,每日周而复始的去运转。个人的情绪,思想和梦想都统统需要给工作让路。这让我感觉到很不满,我知道自由是需要代价的,但牺牲着时间和精力还做着这样的工作,多半还是让我很惆怅。 今年从一个私人企业,跳槽来到了大的外企。当然没有我想象中的那么好,虽然福利不错,时间保证40H/Week,工作之外的时间完全不被打扰,但终究上班的感觉完全和流水线上的工人一般,沉默的做完自己的工作即可。不需要多姿多彩,不能够有个人思想,按需求按时间保证交付是这里的信条。如果我和孙少平一样,没有走出双水村,

  • Domon
    Domon
4 min read
生活

音乐是什么

这个问题很大,我也不知道如何回答。因为没有一个明确的用一个物品描述另外一个物品。如果说音乐至于我是什么,我只能说这是一种与自己情绪的沟通方式。通过这样的方式,我可以找到属于冰山之下的情绪,也能串联出来某一段回忆。 中学时代,感谢步步高复读机,让我第一有了AB双面听歌的习惯。软磨硬泡,在05年年初有了自己的128MBMP3,从此让我摆脱了买盗版磁带的生活,转而走向了yymp3.com,6621.com,mp3.baidu.com的网络盗版之旅。那个时候不知道无损,不知道核电耳机,仍然能被音乐带入到特定的情绪当中。 每天晚上下晚自习,夜深人静的时候,塞上耳机,静静地坐在书桌,沦陷在旋律和歌词中。那个时候的我,大部分的时候都是内向且默默无闻的,我并不排斥做一个角落里的透明人。好在我有音乐陪伴着我,

  • Domon
    Domon
4 min read
Android

RecyclerView 点击事件处理

RecyclerView不像ListView那样,提供了setOnItemClickListener,所以一般情况需要我们自己定义一个接口实现这个功能。我一般会通过Adapter去暴露出来一个接口,便于上层获取位置和点击事件。 首先在Adapter中新建一个接口 public static interface OnItemClickListener { void onItemClicked(View v, int postion); } 创建一个对应的实例,并且提供set/get方法 private OnItemClickListener onItemClickListener; public OnItemClickListener getOnItemClickListener() { return onItemClickListener; } public void setOnItemClickListener(OnItemClickListener onItemClickListener) { this.

  • Domon
    Domon
1 min read

Android 8.1 屏幕旋转问题

这两天遇到一个问题,从A Activity打开B Activity然后,又从B finish到A,会导致A切换一次屏幕(横,竖),然后恢复正常。在Android 8.1下必现。 查询了下Google Android 9.0的文档。在Android9.0中,修改了旋转的图标,并且增加了一种新的旋转方式。 在Android9以前,点击下拉栏种的自动旋转按钮,会切换两种状态:打开自动旋转和竖直屏幕。Android9修改成了打开和关闭自动旋转。并且在关闭自动旋转的时候,利用Navigation Bar,增加了第四个按钮,手动来切换屏幕方向。 如上图,如果躺在床上玩手机,

  • Domon
    Domon
2 min read
Android

GoogleCast集成简介

最近由于需要维护这一方面的东西,随即看了一下网络文档。发现中文圈还比较少。这篇就作为我的记录。详细的信息建议在在Google Cast官方文档里面查看,非常的全。Google Cast之前叫做Google Chromecast,可以把它理解成为一个SDK。硬件可以实现这样的SDK,例如国外的一些盒子,FireTV,PCCW的盒子以及谷歌自己的Chromecast硬件设备。**它的作用就是能将手机,Pad,浏览器的内容投射到连接有Chromecast设备的屏幕上。**挺方便的,在家看个YouTube或者在工作场所需要投屏展示内容的时候,都非常的便利。 Google Cast 分为两端:sender和receiver。就拿U2B举例子,在Android手机安装的软件叫做sender,在盒子里相应接收响应请求的叫做receiver。一般来Google自家的程序会有一个默认的由谷歌开发的receiver,当然还可以通过API自定义一个可以处理定制化的sender消息的receiver,例如TED的receiver。 Receiver的结构挺有意思,其实就是一个能运行Chrome的硬件设备,

  • Domon
    Domon
4 min read
Tips

Windows中自定义Git Bash

由于在公司是Windows10的环境,所以没有一个很好的命令行工具。PowerShell我觉得不行。我尝试过安装了子Linux系统,但是使用体验仍然很割裂,不是很舒服。兜兜转转,我最后选择了Git Bash。一来可以随Git安装,二来可以免费使用。只是每次打开Git Bash我都很难认真的用下去,因为,真的是有点丑。既然如此那就简单的改造下。 打开Git Bash的Options->Looks,发现默认的几个Theme就挺好看的,无非是字体大小和背景色不怎么舒服。点击Color Scheme Designer进入配色编辑网站。这个网站比较有意思,一般情况其他的配色网站都会提供现成的配色,它这里给你提供了一个调色盘。我尝试获取我修改好的配色后,发现并没有触发**.minttyrc**文件,不知道是不是我哪里操作不对。

  • Domon
    Domon
2 min read