阅读视图

尽情玩水的八月月报

八月工作很忙,生活很忙。但是九月就要开学了,八月肯定要带着小朋友出去尽情玩啦,这里快速回顾一下,八月的旅行暂时没空详细写,后面再说啦。

折腾

家里的指纹锁门外的把手一直有点松动,最近松动的更厉害了,在网上查了一下应该是里面的螺丝松动,可以自己拆开紧一下。自己拆开之后,发现这个锁的螺丝跟网上的不一样,里面应该是有两颗螺丝,但是只安装了一颗,因此也想明白了为什么之前会松动了。联系了厂家,告知这个锁已经过了保修期了需要付费维修,然后维修人员又跟我说这个锁的螺丝绝版了,现在修不了,去外面的螺丝店也没配到,于是把其他位置的螺丝装进去了。 等我出去玩了10来天回家,家里老人说之前被锁在了家里,搞了好久才打开门,我也发现室内开不了门了,结果自己拆开弄,结果里面的方钢掉门里面去找不到了,没办法,只好换了个锁。不过,拆装了两次,算是学会了如何安装指纹锁了,另外就是这种安装的东西,下次还是盯紧安装师傅不要缺零件不安装。

因为七月老家的亲戚过来,加上小朋友在进行钢琴考级准备,之前一直在家呆着没出去玩。八月总要安排一下,第一周先去公园预热了一下。八月的第二个周末,就跟着朋友一起,开车前往绍兴新昌玩水,第一天去了浙溪新村,在溪水中玩了半天,晚上去吃了美味的私房菜,第二天则去了盐帮十八渡,开车到达第三渡,因为太热只走到了第六渡,一路上在水中玩耍。

浙溪新村

浙溪新村

盐帮十八渡

盐帮十八渡

月中,小朋友考完钢琴之后的那个周末就临时起意动身出发,这次还是选择了去年去过的山东,因为去年去感觉还不错。然而这次的体验比较差,搞得明年肯定不会想去了。这次仍旧去了日照,青岛,烟台,房价总体比去年贵,因为相比去年是暑假的开始今年是暑假接近结尾,可以理解,但是日照的酒店又贵又烂难以理解。今年这个时候的气温太高了,在海边玩一会就受不了,还好带了天幕。在养马岛住了两天,酒店倒不是很贵,但是岛上限行加上电瓶车特别特别多,跟去年的体验比差很多。

因为还要上班,在青岛住了几天,住在沙子口附近,天气不是很好没看到小威尼斯的场景,但是有两天去了清流湾沙滩,相比于其他海水浴场人不是太多,风景也还不错,海边办公体验也不错(除了热)。具体山东的行程,后面可以再单独写一写。

回来的路很长,还在淮安休息了一晚。

一年一度的谷歌开发者大会也于八月在上海举办,有幸抽到一张票,摸鱼半天去了现场,听了一下最新的Android动态,但是其他之前也听过Google IO的视频了,之前的朋友同事也有过去的,但是都错误了,只遇到一位简单聊了一会。

这个月工作很忙,另外出去的时间也很多,每天忙晕了都,也没有完整的看完任一本书。这月收到了《读库2504》,倒是看了其中几篇文章,前两篇是关于抗战的,毕竟今年是抗战胜利80周年还有阅兵吗,符合主旋律,从文中切实体会到当年的苦和日本人的残酷。其他几篇文章也不错,感兴趣可以去看看。

其他的东西嘛,不记得了就不说了。

其他

本月,小朋友顺利钢琴考级,过不过不重要流程走了。另外月底,小朋友去了两天小学的新生训练营,算是正式迈入小学。八月工作很忙,绩效也出来了,部门算是在公司里面垫底,其他部分都是奖金多多,我们这边还有人没拿到,后面需要更努力的干喽。九月到来,想必会更忙,各自都加油吧。

看完评论一下吧

  •  

台风来袭的七月月报

此时此刻台风依然在袭击上海,而这也算的上这个月最大的一次台风了。公司的应用终于上架Google play,也算进入了正常的工作节奏。小朋友进入暑假,老家的亲戚过来了,但是因为台风,高温,人多一辆车拉不下等等因素,这个月竟然没有出行。同时这个月书看的也少,以下是详细内容。

送外卖

月初的某一个周末晚间,陪着小朋友在外面与同伴玩耍,因为没啥事,突发奇想去试试送外卖。于是下载了达达,骑上电驴可是去送外卖。花了接近两个小时,送了四单,扣掉3块钱的保险费,纯收入19块钱。

作为一个新手,这真不是一件容易的事情,不少卖家的位置比较难找,四单中的两单花了我很久很久才找到店铺,因此就导致送的时间不够。另外因为达达的体验和定位比较差,导致有一单送错了,多亏了人家给我送出来不然估计就要被平台处罚了,这也导致了最后一单超时。

达达软件体验差,导航难用,定位不准,因此同时接两单比较难以接顺路单。而送达之后,需要拍摄门牌号和小票两张照片才能送达确认。众包单价低,新手不熟悉,接近两个小时才够买一杯奶茶,让人没有动力再次尝试送外卖了。

折腾

之前使用Sun-Panel搭建过一个个人导航页面,最近在少数派看到网友分享的使用Glance打造Home仪表盘有被种草,于是也搞了一个。通过Glance不仅仅可以展示网页链接,还支持服务器状态展示,RSS订阅,股票,自定义组件等等。除了使用rss,股票之外,我还做了自己博客的统计数据展示和最新评论,以下是截图,感兴趣的也可以去参考Glance的文章搞一个。

我的Glance

这个月书看的很少,一方面是工作忙起来没时间,另外就是懒。

首先看完的是,上个月拿到的《读库2503》,这本中的主题是香烟,通过这本书才知道,原来香烟是在哥伦布到达美洲之后才走出美洲,风靡世界。从第一篇文章中,我们可以知道香烟的发展,如何发展出卷烟,以及最后让大家产生共识吸烟有害健康。第二篇文章,这是讲述一个文科生如何使用贝叶斯算法击败香烟广告,也让我了解了被广泛应用于人工智能领域的贝叶斯算法是怎么被提出的,它的具体原理是什么。这里也来说一下,贝叶斯算法就是用先验概率来计算一件事情的概率,比如说肺癌发病率,肺癌患者中吸烟的概率,吸烟者的概率,可以算出吸烟者患肺癌的概率,因此可以使用已有的数据来计算出想要的数据。

另外则是看了一本去年购买的《经济学原理漫画版》中的国民经济原理这一本,这套书买了好久了,但是到目前位置才看了三本,还有四本没拆封。这一本中主要讲解了GDP,CPI等名词,金融工具,金融市场,通货膨胀等,这些名词虽然之前都知道是什么,但是详细的都还是不了解,他们之间的关联更是不知道。通过这本书,对于相关概念的详细信息,对于他们如何计算的也有所了解,漫画风格比较好读,值得推荐看一下。

电视剧的话,台剧出了《我们与恶的距离2》,第一部是备受好评的,第二部网上的评分要低一点,但是我感觉还是挺不错的。10集的长度,讨论了台湾的选举政治,精神病人杀人等话题,插叙倒叙等叙事方法也很不错,感觉比国内动辄三四十集的爽剧好多了。

另外还看了《鱿鱼游戏3》,这个感觉是越来越差了,警察到最后所有的同伴都丧生才找到小岛,但是什么也没能做。贵宾们都是傻逼,游戏方面也没有新意,男主也没能拯救谁,自己还丧生了。结尾在美国打卡片,这是还要去美国的节奏吗。

小王子

最近才知道,原来《小王子》还有电影版,书之前看过但是感觉看不太懂,这个动画电影看起来倒是挺不错的,画面很美,故事来源于书,但是有不仅仅是书中的故事。故事的主角小女孩,既是小王子故事的观众,也是另一个小王子,强烈推荐。

游戏

微信有很多游戏的广告,有一天不小心玩了一个小游戏,然后这个小游戏比较难过关,后面看广告才能玩下去。后面里面推荐的另一个三国题材的游戏,感觉还不错,就去完了一下。然而这个游戏,不充钱是真的玩不下去,稍微氪了一下,加入了一个同盟,贡献了不少元宝和资源给同盟,等到了10级之后,结果被踢出同盟了。除此之外,这个游戏很费时间,一整个周末都浪费进去了。在查攻略的时候,发现这个游戏的评价很差,很多官方的托,同时内游戏里面也是各种东西都要花钱,抽卡要钱,装备要钱,升级技能也要钱,购买资源还要钱,然后等到晚上,官方大号一下过来把你打到解放前。

这种垃圾游戏当然不能继续玩,费钱又费时间。因为是在微信里面,也没法使用手机的时间管理来控制,通过搜索发现可以通过微信成长守护这个小程序来设置,可以在其中设置每个小游戏的消费和使用时长限制。在这里,我又发现了这个小游戏的少操作,为了避免被家长给小孩限制消费,给它充值的是另一款同名的小游戏,也就是说我限制了同名的A小程序,用户还是可以用同名的B小程序消费。

无良游戏,坚决抵制。这款游戏叫作三国:冰河时代,强烈建议大家不要玩,同时查了一下还有另一个叫无尽冬日的游戏也是同样的套路,建议不要玩。

而EPIC上最近在限免《文明6》白金版本,这个游戏就很不错,同样的是建造类的游戏,这个上面的设计就很合理,虽然是好几年前的游戏了,画面也还不错。希望国内有更多这种好游戏,而不是冰河时代这种垃圾氪金游戏。

总结

这样看这样也还算充实吧,对于前面的读库文章感兴趣的找我,分享给你。这个月另外还更新了两篇博客,也还算不错。现在是暑假起见,竟然没有能够出去旅行放风太不应该了,下个月一定要出去走走。

看完评论一下吧

  •  

拍荷花

这不最近刚刚买了个长焦镜头嘛,一直没空拍片,周末没事就决定去公园拍拍荷花。正好被我赶巧了,原来给小朋友捞鱼的地方,长满了荷花,有普通的大荷花,也有睡莲,都很好看。

因为天气很热,又是10点多才到,光线很强,很多照片感觉都过饱了,只好拼命的减高光,大家伙就凑合看吧。

自己拍的片,虽然可能不太好,发出来也不一张都舍不得删,索性就都发出了了。

以下是睡莲。

我最喜欢的是粉色的睡莲,感觉相机拍不出它的美丽。

而公园里面就能看到远处起落的飞机,于是开始找在荷花田里尝试拍飞机,但是拍了很多都不太好,以下两张还不错,但是对焦不太对,欢迎点评。

朋友们可以根据这两张图,猜猜这是哪个公园。

台风天,很热,但是天很蓝,在公园里面随便拍一张也好看。

因为来的晚,照片有过曝,拍荷花还是早上趁早来,如果有点露水在荷叶上,相比会更好。另外长焦就是好,之前有50mm焦距,完全不能拍到单独一朵的荷花,这次荷花离岸边很近,再加上200mm的长焦,拍花蕊也完全不是问题。

下午再次带着小朋友来公园玩耍,睡莲已经开始睡了,上午过来拍照真是个不错的决定。

本文图片拼接使用了运维咖啡吧作者37丫37开发的免费在线拼图工具,免费无广告,也比较好用,推荐一下。

看完评论一下吧

  •  

Google Play 应用上架二三事

首次上架应用到google play还是2015年的时候,那个时候上架应用限制比较少,注册个账号信用卡付个款就行了。自己之前有个账号,但是闲置许久,加上自己的一些骚操作账号被Google给永久禁用了,并且还给我发了个邮件告知不要再尝试注册新的账号了。最近自己的新应用想要上架,于是又重新注册了个个人账号。同时公司的产品也要上架Google play,前前后后经过了小半年的折腾才终于搞定,将应用上架,这里就来说道说道。

账号注册

早期的时候,无论是个人账号还是公司账号注册都不需要实名验证的,因此只需要填一下联系信息使用信用卡付款25美元就可以直接注册成功了。但是从2023年开始,无论是已有账号还是新注册的账号都需要进行验证。对于个人账号,只需要填写一份付款资料,并且验证身份,身份证,护照信息都可以,这个信息需要与付款资料中所填写的需要一样,并不要求付款信用卡的账单地址和姓名与这个相同。

对于公司账号的注册,则是和苹果一样要求提供邓白氏码(D-U-N-S Number),输入邓白氏码之后会自动获取到公司的名称地址信息生成付款资料。和个人账号一样,付款的信用卡也没啥要求。在验证的时候,则是需要提供公司的政府签发的文件,比如国内的营业执照,具体可以查看Google play 官方文档。公司的验证也还需要验证一位开发发者的信息,这里的要求跟个人差不多,身份证,护照等都可以,而且不需要提供在这家公司任职的任何证明文件,公司注册地和个人不在同一个国家也没关系(这一点,苹果的开发者注册是要求提供个人在公司任职的证明文件或者名片之类的东西的)。

如果所有的这些证明文件都能够顺利的提供,并且邮箱验证和电话验证都没问题,那么账号注册是很容易的。最后有一点需要补充,付款的信用卡是不能使用银联卡的,需要visa或者mastercard。总体来说,比苹果开发者账号要容易,就上面说的我的个人账号被封之后,使用家人的信息又重新顺利注册了一个新账号。而公司的账号,在获取法务同时完成公司DUNS Number的申请之后,也都顺利的完成注册了。但这些完成之后,也还是只是完成了万里长征的第一步。

个人应用上架

以前个人应用在google play上架是很容易的,而在2023年11月,google 出了一个新政策,对于在23年11月13日之后注册的新账号,发布应用时必须满足特定的测试要求才能正式发布。具体要求是,正式发布之前,需要在google play上进行封闭测试,需要至少12名测试人员测试至少14天持续参与测试。这个对于个人开发者来说,还是不太容易达成的,这至少12名测试人员,是需要开发者将他们的Google 邮箱输入到google play开发后台,他们接受并且根据开发者提供的链接进入下载安装的。至于连续14天的持续参与测试,这个不太清楚Google 是如何统计的,封闭时间肯定是要保证14天以上,但是如何保证每天都至少有12人参与这个不确定是否强制要求。

我的应用在开发完成之后,通过在小众软件和Linux.do社区征集到了一定的热心网友参与了测试,从而顺利完成了封闭测试,对于工具类的软件这是个不错的方式。对于这一点,虽然加大了个人上架应用的难度,但是我想也是可以提高上架应用质量,毕竟对于个人开发开发者来说,测试相比于公司开发的应用来说会更加薄弱。

公司应用上架

公司开发者应用的上架,没有上面对于个人开发者的限制,但是我们在上架的时候遇到了更多的问题。因为我们所在的是金融行业,在上架的时候会更加的敏感,因此也更需要小心一点。

我们在第一次上架的时候,填完了所有的信息,上传了应用,提交审核之后,谷歌以我们需要登录为由审核不通过。提交了登录需要的信息之后,等了超过十天,结果直接账号被禁用了,原因是高风险,发邮件和申述都没用,并且不告知具体的原因。搞得我们很受伤,不知道该怎么办。商量之后决定让公司注册新的实体再重新注册开发者账号。

另一方面,想到公司以前的应用可能还有老的开发者账号,或许可以用,找回了老账号的邮箱,使用新的公司主体信息进行了验证,之后顺利的提交了应用。这一次为了稳妥起见,我们先提交了封闭测试和开发测试,都通过了之后才提交的正式发布,所有信息都填写准确,google 也很快的通过了审核。

一些经验

虽然说上架Google play越来越严格,但是相比与国内来说还是容易很多的,国内上架对于个人开发者极度的不友好,并且备案,软著,哪个都不是好搞的。

上架Google play我认为第一条原则就是诚实,填写资料要真实,不仅仅是开发者信息如此,同时应用使用到的权限,收集的用户资料,等等都要如实填写,不可挂羊头卖狗肉。也要避免给审核人员看到的只有某一个功能,实际应用内有很多的功能会在审核后对用户开放。如果应用需要登录,最后要提供账号密码给google 的审核人员,对于非账号登录的,如加密货币钱包应用可以提供助记词或者操作指导的视频等。

另外,上架的应用应用做到尽量少的用户信息收集和权限获取。比如获取用户位置,如果不是主要功能,尽量不要获取。对于一些权限,如读写相册,相机权限等,在新版本系统中有提供不使用这些权限,直接通过系统的API实现的方式,也最好不要请求这些权限。对于DeviceId现在已经不允许收集了,对于Phone_State, 广告Id等,也应该尽量做到不要收集。

谷歌现在每年都要求应用升级Target 版本,这一点开发者也是需要去乖乖的做的,否者新应用无法上架,老应用无法更新。除此之外,对于Android的新特性开发者也应用去积极适配,对于一些特性,google play console也会提醒开发者去适配,比如下图所示。

对于上架的应用,即使没有发布新版本,也有可能被抽查去审核,这时候如果遇到了问题,谷歌也会发信息来让你整改,因此需要关注后台和邮箱,遇到问题要在最终截止日之前修掉对应问题,否者真的会被下架。我就遇到了这个问题,我所提供的登录凭据,审核人员自己输入错误,把我填写的o输入成了0,导致他无法登录,就给我发了整改通知。不过我在修复之后,错误提醒过了仍然没有消失,对于这一点,如果你已经确保改过了就不用再担心了。以下是错误提醒,过了这么多天仍然还在显示。

老账号的价值很高,审核也会比新账号更容易过,因此如果你有一个老账号,请保管好。

对于权限和隐私方面的检查,可以使用Google做的一款工具Checks,它可以帮助检查app中使用到的权限,请求的网络,同时还能够审查隐私政策文件,在发布前借助这个工具检查可以很大程度减少应用审核被拒的风险。

最后

从事Android开发10余年,大多数时间也都是做的海外应用,也是经历过了很多次google play被拒,审核的政策一直在变,之前能通过不代表现在也能通过审核,因此需要不断的学习google play的政策文件。

最后的最后,宣传一下我开发的Memos客户端应用fymemos,欢迎到google play下载。也欢迎留言交流应用上架的故事。

值得反复学习的google 文档:

  1. Play Academy
  2. Play 开发者政策中心
  3. Play Console Help Center

看完评论一下吧

  •  

梅雨季节的六月月报

今年的六月,连绵的下雨天和高温天,因为后半个月公司高强度线下办公,每天工作很忙,出行和看书都减少了很多。这是一个繁忙的月份,对于上班的我如此,那些促销的商家如此,即将毕业的学子如此,无论是幼儿园的小朋友还是参加高考的学子。以下是正文。

博客折腾

看到很多人的博客切换页面都很顺滑,因此也想把自己的搞一搞,查了一下可以加一下页面跳转的动画,只需添加如下的CSS即可:

1
2
3
 @view-transition {
 navigation: auto;
}

当然这样的效果和Astro比还是差不少,想要更好的效果看来只能换博客框架了。

另外看到椒盐豆豉的文章介绍的基于cloudflare实现的文章点赞功能,于是照葫芦画瓢也弄了个,欢迎来玩。

买买买

又是一年的六一八,但是现在持续的时间特别长,也没有那种节日的气氛了。

手里的相机只有一个套头28-60和35定,平时拍照也没啥特色,广角和人像反而手机拍的更好。看到不少博主的文章和视频,也是种草了腾龙的28200镜头,正好天猫国际上面近期3700块就能买到,于是剁手。长焦就是好啊,月底娃的毕业典礼上面就咔咔咔的拍了很多照片,虽然照片拍的不好,但是长焦舞台上的小朋友们都能拍得清清楚楚哈。

家里的九号电动车用了差不多四年了,座椅传感器有问题经常骑不了,龙头锁有有问题,经常启动报错,去点了老板一顿吹,最近有国补,又有旧车抵扣差不多不到3000的价格就能买到新车,于是有换新了一辆小电驴。九号虽然偶尔也会出问题,但是智能感应这一块还是挺不错的,我还是挺喜欢的。

月初是端午节,预报几天都有雨,但想着还是要出去,于是选择了去安吉躺着。第一天和第二天都在下雨只好在民宿躺着,当时一直躺着是躺不下的,第二天就在附近转了转,中午吃完饭还是决定开车去转转,于是开车去了江南天池,然而山上大雾基本上啥也没看到。

山上下来之后又去附近知名的余村转了转,听说这里以前很穷,后来因为习近平一句话开始搞生态,搞旅游,这里就发展起来了。这边环境确实不错,四面环山,建设的也挺好,很适合过来度假。

第三天预报是有小雨,但是看天气还可以,还是去了杭宣古道进行徒步,因为刚下过雨,上山的时候路上还有一些水在往下流,路边的小溪中水流也很湍急, 后面的路上一些路段也有点滑,整个路程有11公里多,但是总体难度还好,还是带着小朋友一起走完了全程。山上有个寺庙釜脱寺,有咖啡有住宿,如果有几日清闲过来修养打坐应该是挺好的。

端午后面的周末因为下雨就呆在家没有出门了,而月中的周末,因为想到后面两周要线下办公周末也要加班,还是决定出去露个营。找了个浦江郊野公园旁边的地方,然而黄浦江边围起来在施工,因此看不到江,只能在树林中烧烤了。朋友新买的炭炉花了许久才烧起来,之后大家便是一顿美餐,下午赶在雨下大前返回家中。

后半个月线下办公,也重启了每天挤地铁的日子,重新光顾了需求未曾前往的市区,趁着每天吃饭的时间和午休,逛了逛延中绿地。

这个月因为工作很忙,书影看的都很少。书只看完了《洞穴奇案》,这本书之前罗翔推荐过,最近上架了微信读书,看到了便把他读完了。书上有不少关于法学专业的东西是看不太懂,但是如果不从法学角度看,我们可以从14为法官的观点,加上自己的辩证,对于提高自我的思辨能力还是很有帮助的。

电视方面,看完了《长安的荔枝》电视剧版本,剧集的场景是挺好看的,但是能够看出明显的棚拍和打光。剧情和原著比改了很多,不评价好坏吧,我更喜欢原著一点。原本几万字改成了35集,看的很累,期待一下后面要出的电影版。

总结

忙碌的六月结束了,产品也终于发布到了Google Play,可以想象到的是接下来一段时间依然会很忙碌,就像现在的高温天一样,但忙碌总归还是好的。如此一来,就需要更加高效的利用时间,这样才能有时间做一点自己的事情。

同时小朋友已经放暑假了,可以想象到接下来的日子每天要被影响工作效率,也要想想法子应对。就这样,下个月再写。

看完评论一下吧

  •  

枇杷熟了的五月月报

今年五月挺精彩,中美关税战暂时告一段落了,伯克希尔开年会了,比特币又上新高了,Google IO又来了。为了赶进度,五月真的挺忙的,这些东西也都没有怎么关注。月底也到了,博客还是要来更新一下。

杂谈

Google IO

今年的Google IO,已经过去了几天才想起来看看网上的新闻和官方的视频,因为懒和忙,也没有及时的写篇文章,想要关注信息看官网,或者中文世界已经都有很多文章了,因此我这里简单说说吧。由于Android新版本的发布节奏改变,Android方面的更新很早之前其实就已经发布了。在这次发布会上,新版本的介绍主要大的可能就是系统UI的更新,这个可以说跟小米的HyperOS更像了,而新发布的Live Notification也与国产厂商已经上线一年的新的实时通知很像,爸爸抄儿子,也是倒反天罡了。

除此之外Android上面的介绍,首先还是Compse,Compose功能和性能都有极大的提高,同时对于KMP的支持也更好,使用Kotlin做全平台开发指日可待。

整个IO,AI仍然是全场的热点,Google的模型更棒了,集成的工具更多了,google的智能眼睛又重启了。但问题是,身在中国的我们还是很难用到,各种墙以及谷歌的限制,只有尊贵的美国人才能体验到完整功能。

关于Google IO的详细可以去官网查看。

假药

因为之前在B站看到一个UP主的推荐,于是想要去买一个口腔清新喷剂,这个喷剂看许可属于一类医疗器械,因此我这里标题的是假药。这个喷剂在淘宝上是又官方旗舰店售卖的,但是本着货比三家的原则,在京东也搜了搜,结果京东的不少非自营商家的价格还挺便宜的,于是就选择了一家购买了一瓶。

无奖竞猜,上图中哪个是假货。

收到货后,发现包装的印刷质量比较差,怀疑是假货,于是问商家,告诉我请放心使用。随后又去淘宝旗舰店看了看,发现两个包装是有一些差异的,淘宝买家分享的评价里面的图明显比我这个印刷质量好多了。我购买的这个上面有个正品标识的二维码,扫码查询之后告诉我是正品,然而这个网址是一个不知名的网址,并且下面还有个给商家注册的入口。同时我又去问了淘宝店的客服,确认了他们没有这个正品验证的网址,他们的包装开口方向也与我购买的不同,因此坐实了这是假货。

而商家仍然不认同这是假货,给了我两个回复,一,商品名称和正品是一样的,二,他这个是新包装。只好选择京东投诉,上传了淘宝正品图和假货图,然后经过跟京东反复掰扯了两个星期,京东仍然回复卖家不承认是假货,只答应京东方面赔偿我商品价格,看起来是对于商家无任何处理。

同时我也在12315提交了投诉和举报,因为选择了绿色通道,结果是截止目前为止,没有任何回应。而我也没有精力和时间去找检测机构进行检测,这件事情也只能到此作罢。

在这里建议大家,京东平台而第三方商家购物需要特别慎重。特别是我这种,商家是药店,还销售假货,简直是害人。

月初是五一,回了趟老家,家里大旱,还在种地的很多人在抽水浇地。正值杨树飘絮,漫天飞舞的杨絮,配上干燥的天气让人相当不舒服。

以上为村子里颓败的房屋。

老家坐落在皖北平原,没山没水,也没啥历史名胜,为了发展旅游。县城搞了个遗址公园,种了许多的樱花树,清明节期间樱花盛放,此时已经全部凋谢了。因为小长假的原因,遗址公园还是围起来收费,搞了些表演,也算是吸引一些周边的人民。

附近还搞了一个县博物馆,主要展示了一些本地的历史文化和文物,虽然说不是什么珍贵文物,但是我觉得对于当地的中小学生来说还是挺好的,想我大学之前没出过本县,没见过啥博物馆,现在的小孩有这些东西可以看看。只可惜农村的父母可能也没有这个意识带小孩看这些。

本月的徒步,先是去了一次无锡惠山,早上早起出发,路上不堵,10点多就开到了惠山脚下。跟着两步路的路线走了个爱心线,这条路线比较简单小朋友跟着她的同学一起在前面走的很快,下午三点半就走完了全程。

就在上周去了苏州大阳山,出发前几天都在下雨,本以为山上会很泥泞,但是实际上没有。因为前几天下雨的原因,这天过来徒步登山的人并不多。我们开车过来,把车停到了苏州乐园的停车场,这里每小时4元,20元封顶,然而往前走的时候发现路边停车只要7块钱每次,因为懒还是没有挪车。之后遇到第二个问题,因为是按照别人路线的反穿走的,在一个门那里被保安拦住不让我们进去,说要去正门买票进去。我们只好往回走,从正门附近的一个小豁口钻进去,并且爬了一段比较难走的路才拐到我们原本要走的路线上。而实际上,大多数人走的金蛇线入口,也就是我们终点的地方这里,上山也是不要门票的。大阳山比惠山难度稍高,但是因为我们先走了2公里的公路,总里程10公里,大家走下来感觉也都不算太累。

五月份还是枇杷成熟的季节,家里人也喜欢吃,相比于苏州东山80一斤的白玉枇杷,公园里免费的枇杷虽然酸,但是也不错了。于是我们选择在周末开着车到广富林郊野公园露营摘枇杷,枇杷树有不少棵,也有不少人带着工具过来摘,我们还是收获满满。

这个月主要看了两本书,首先是《巴菲特之道》这本书,想到要看这本是因为伯克希尔开了年会,巴菲特宣布退休,这本书介绍了巴菲特的部分经历,他的投资原则,我也专门写了文章,感兴趣可以看看。

另外还看了一本《寻路中国》,微信读书推荐的,作者是之前在中国工作过十几年的一位美国记者何伟,书中讲述他开车在中国旅行和与人交流的故事,时间大概是在2002年到2007年之间的事情,他见到了中国的工业化进程,农村的变化等等,书的内容比较吸引人,只花了不到两个星期就看完了。

电视剧也看了两部,首先是美剧《最后生还者》第二季上线了,也就花时间先把第一季看了看,目前在看第二季了,个人感觉第二季没有第一季好看,第一季男女主一起找实验室相当于是主线,每集又有独立的剧情。而到了第二季,感觉就是你找我复仇,我找你复仇,然后有出来一大堆新的组织,越往后越有点看不动。 另外还看了去年大火的剧集《我的阿勒泰》,整部剧只有八集,第一季作家告诉女主要“去生活,去爱,去受伤”,之后就是女主在草原生活的故事,最后结尾也算是happy end,不过我感觉可能留一点遗憾或许会更好。另外就是这部剧的画面很好看,草原加雪山真的很美,想要去新疆看看,可惜是很难请个长假。

尾声

五月工作上挺忙的,但是并没有啥产出,并且被谷歌爸爸卡着公司的产品也没法发布,希望六月能够顺利一点。至于我上面的胡言乱语,你就当耳旁风😄。

看完评论一下吧

  •  

读《巴菲特之道》摘抄

刚刚的伯克希尔年会,巴菲特宣布了即将退休,这将又是一个时代终结。于是本月决定看看跟巴菲特相关的书,《巴菲特之道》这本书介绍了巴菲特的投资理念,内容也不长花了几天就看完了。

巴菲特投资哲学的成长

巴菲特从小就接触投资,做生意积累本金,通过股市赚钱。他人生有几个重要的人,格雷厄姆是他的导师,巴菲特从他这里学会了安全边际,也就是要买价格低于价值的股票。巴菲特在学校是格雷厄姆的学生,毕业后也到格雷厄姆的公司工作了几年,从他这里巴菲特还学会了独立思考。

巴菲特读了费雪的《普通股和不普通的利润》之后,在他的投资理念上更加转向费雪。费雪更加关注公司的成长潜力,以及公司是否有好的管理层,这与格雷厄姆的是两种筛选公司的理念。而巴菲特将两种理念融合,发展出自己的投资准则。

查理芒格,跟巴菲特一样是格雷厄姆的学生,他们是一生的事业伙伴,两人建立了密切的共生关系。

巴菲特的投资准则

巴菲特的投资准则有十二条,分为企业、管理、财务、市场共四个分类,他的很多投资都践行了这些准则的部分或者全部,具体书中单独一章进行了讲解。

具体的准则如下:

企业准则

企业应该简单易懂;

企业应该有持续稳定的运营历史;

企业应该有良好的长期远景;

管理准则:

管理层是否理性?

管理层对股东是否坦诚?

管理层能否抗拒惯性驱使?

财务准则:

  1. 重视资产净收益,而不是每股盈利

  2. 计算真正的”股东盈余“

  3. 寻找高利润率的企业

  4. 企业每留存一美元,至少产生一美元的市值

市场准则

  1. 公司是否有价值? 巴菲特通过现金流和合适的折现率确定企业价值,他使用美国政府长期国债利率作为折现率。价值是未来现金流折现后的现值;成长是确定价值的一个因素。

  2. 当前是否是买入的好时机,价格是否好? 合适的价格+公司表现符合预期才能保证成功,也就是安全边际。

心理学和数学在巴菲特投资中的体现

书中关于持股数量的数学分析,虽然说分散投资可以降低风险,但同时也会降低利润。而巴菲特正是集中投资的范本。书中这段话说的很好,“当世界给予你机会的时候,聪明的投资者会出重手。当他们具有极大赢面时,他们会下大注。其余的时间里,他们做的仅仅是等待。”

巴菲特还是典型的长期主义投资者,通过他的准则可以看到他在选择购买的股票时,也就已经相信这家公司在未来的十年能够创造相当的利润。

系统1与系统2

在丹尼尔·卡尼曼的《思考,快与慢》中首次了解了系统1与系统2,在这本书中再次被提及。系统1是我们的直接思维,一般不花时间,会快速做出判断。而系统2的思维方式是我们认知过程的反思,需要我们投入努力。无论是投资还是做决定,我们都有必要训练系统2,去认真思考,进行推敲。同时在作者看来,具有系统2思维方式的人更加有耐心。

总结

限于个人能力,内容写的比较乱。总结一下巴菲特的成功,理性和耐心是他成功的关键。对于普通人,如果不能够做到这些,并且不愿意花费时间去研究公司,那么巴菲特推荐我们去购买指数基金。

最后用书中的一段话作为结尾。一个人在一生中很难做出数以百计的正确决策,只要做出为数不多的智慧决策就已经足够了。

摘抄

理性的基石就是回望过去、总结现在,分析若干可能情况,最终做出抉择的能力。

投资是经过深入分析,可以承诺本金安全并提供满意回报的行为。不能满足这些要求的就是投机。

格雷厄姆的两项投资原则: 一是不要亏损;二是不要忘记第一条。

任何投资的价值都是公司未来现金流的折现。

巴菲特从格雷厄姆那里学到的最为重要的一课就是:成功的投资来源于,购买那些价格大大低于价值的股票。

从格雷厄姆那里,巴菲特学会了独立思考。如果你是在脚踏实地的基础上得出合乎逻辑的结论,就不要因为别人的反对而耽于行动。

从费雪那里,巴菲特学到了沟通的价值

他定义特许经营权企业的产品或服务:①被需要或渴望;②无可替代;③没有管制

巴菲特说:“市场就像上帝一样,帮助那些自助的人;但和上帝不同之处在于,市场不会原谅那些不知道自己在干什么的人。

在你占据优势的时候要加大筹码。

巴菲特说:“我们所要做的全部就是,将盈利概率乘上可能盈利的数量,减去亏损的概率乘上可能亏损的数量。

当世界给予你机会的时候,聪明的投资者会出重手。当他们具有极大赢面时,他们会下大注。其余的时间里,他们做的仅仅是等待。

巴菲特的风险观:风险与股价之波动无关,与那些个股未来产生利润的确定性有关。

短期而言,股市是台投票机;而长期而言,股市是台称重机。

”首先是将股票视为企业一样,“这将给你一个完全不同于股市中大多数人的视角”。其次是安全边际概念,“这将赋予你竞争优势”。再次是对待股市具有一个真正投资者的态度。

为何懂得人们的冲动是如此有价值:①你能从中学会如何避免多数人的错误;②你可以识别他人的错误,并从中捕捉到机会。

单单有智力不足以取得投资成功,与大脑的容量相比,将理性从情绪中分离出来的能力更为重要。

理性的基石就是回望过去、总结现在,分析若干可能情况,最终做出抉择的能力。

看完评论一下吧

  •  

一拖再拖的四月月报

本该写在月底的月报,因为提前回老家被拖了,在老家因为懒也一直拖着没写,回到工作岗位,进入工作状态,这才姗姗动笔。

四月份的工作很忙,有时候晚上甚至搞到很晚,因此做自己事情的时间就少了很多。

折腾

因为想要把用了好多年的HHBK拿出来用的时候,发现之前的连接线找不到了,而这个连接线还是很老的mini B接口,真的很难找到,于是又想着去改造成无线了。之前了解到一个YDKB的改装方案,但是价格要400多,就放弃了。这次在淘宝上一搜索,居然有一个100多块钱的方案,并且支持无线/蓝牙/USB三种模式,usb口也改成了type-c接口,这个价格同时还包含了锂电池,这么实惠的价格,立马就下单了。回来替换也很简单,就是把原来的主控板,换成这个新的主控板就好了,原先的usbhub口位置则是变成了开关按钮和模式切换的按键开口,usb-c在原来min b的位置也勉强能插上线,唯一的缺点就是键位模式设置没有设计在原来键位设置的地方,如果需要修改需要拆开键盘。总体,瑕不掩瑜,推荐尝试改造。

另外,上个月提到我使用Flutter做了一个memos的客户端,经过这个月的修改,和google play的封闭测试,目前已经正式上架google play。感兴趣可前往下载,链接:https://play.google.com/store/apps/details?id=me.isming.fymemos, 同时我也开源了代码,感兴趣可以去github查看,也欢迎贡献代码,链接: GitHub - sangmingming/fymemos: A memos client write in Flutter

清明节去了趟台州,徒步到仙居公盂村,还去了临海台州府城,天台国清寺庙,感兴趣可以看我之前的文章

除了公盂这次徒步,还在月中去了一次苏州西山缥缈峰徒步,缥缈峰难度很低,感觉四五岁的小朋友也可以拿下。因为我们出发比较早,一趟畅通,爬完山之后居然还挺早,又在岛上去看了看东村古村和最佳夕阳观赏点(天气不好,看不到夕阳😂)。

接近月底的周末,因为五一要补一天班,周末只有一天,因此选择在上海找个地方露营。前往广富林郊野公园,发现公园装了收费杆,只有七号门可以进,并且排了很长的队,最终只好在附近找了个农田露营。

这个月主要在看《芯片战争》,看完了余盛的版本,同时这个名字的书还有一个美国的版本,在微信读书看了一小部分,发现其中对于中国的部分有删改,于是又找来了台湾版的译本《晶片战争》,看了一部分。篇幅上来说,余盛版本的更长,其中关于中国的部分篇幅比较长,其中关于中国的介绍是比较乐观的,比如中芯国际,长鑫存储,长江存储等的介绍。而台湾版本的,对于中国的部分不多,评价更加中性,但是因为内容是繁体字,其中很多名词和大陆的说法都不同,看的很慢。对于两本书一起辩证看的,对于我们了解芯片的发展和战争会有更加全面的认识。芯片的设计和生产,涉及到的配套和供应链也很多,而被封锁的中国想要突围,仍然任重道远。

电视剧这个月居然看了两部,首先是王宝强主演的《棋士》,感觉还挺不错的,可以看看。

另外老婆在看一个叫《无忧渡》的电视剧,也跟着一起看完了,这部剧典型的俊男靓女片,男女主都有主角光环,同类型的片子还是《唐朝诡事录》更好看一点。

而看了两部剧的代价就是本来会有点时间练字和看书,被看剧给挤占了,因此以后还是要少看剧。

杂项

看到有网友在玩Slowly这样一个笔友软件,于是也去注册完了完。这个软件基于邮票和根据距离限制邮件送达的时间的设计很有意思。在上面写了公开信,也与几个人有了邮件往来。而每次写信,都要借助翻译软件来优化英语内容,或许也能间接学学英语。立个Flag,在上面找到一两个长期笔友,借此提高一下英语表达的水平。

总结

生活一直在继续,工作繁忙也要抽空多出去多走走。虽然拖了几天但还是把终结补上了,哈哈。也感谢你看到了这里。

看完评论一下吧

  •  

清明台州游记

约了朋友清明节一起去台州旅行,清明当天出发,周一返回,周二上班。去了国清寺,徒步公盂景区,还爬了江南长城,去的时间不短,但是因为景区离得都比较远因此去的地方并不多,下面是详细内容。

Day1 赶路

清明当天开车出发,本想着早上晚点出发下午能早点到,还能看一下国清寺,结果10点从家里出发,过了12点还没出上海,到了1点多才到了嘉绍大桥服务区。于是第一天就直接开到酒店睡觉了,路上吃了饭,冲了电,到了酒店天已经黑的啥都看不见了。 晚上去村子里面充电,发现这边四面被被山包围,主要是括苍山,这个村子也叫括苍村,村里有足球场和篮球场,房子也修建的很整齐,还有个翁森纪念馆,后来查了下是宋代的一个文化人。

Day2 公盂徒步

第二天一早,显示在酒店附近转了转,这是个生态度假酒店,外面有营地,还有种了很多的油菜花,以及一些秋千等设施。

随后,我们就取车前往公盂。公盂景区和神仙居景区是靠在一起的,几年前来过一次,神仙居的风景很棒,但是里面上下都有索道,山上也搞了很多的玻璃栈道,桥啊之类的。因此我决定还是再带着朋友,和小孩一起来徒步公盂。

上一次过来还是我和媳妇两个人,并且走的穿越路线,这次带着娃一起走了个环线。因为是环线所以上次没走的那一半路这次都体验了,那一半更加有趣,路上有溪水相伴,多了更多乐趣。而之前走过的路段,很多地方都增加了台阶,爬行难度有所降低。

徒步到公盂村里面,虽然自上次过来已经过了7,8年了,但是感觉居然没啥变化。房子还是那些房子,旁边的山峰也还是那些山峰,外面每天都在发生着变化,而这里还是多年以前的模样。

因为当天攀爬公盂背的人比较多,在岔路口,我们也决定了放弃攀爬,只希望下次还有机会再来了。

徒步完本打算去仙居县城吃个荣村,结果告知座位已经订满,于是驱车前往临海市区。

Day3 临海一日游

临海最出名的也就是台州府城了,因为是老区,自然不好停车。我们在早饭之后打车来到揽胜门,开启临海一日游。

台州府城墙算是保存比较完整的,也是在山体上,从揽胜门到朝天门这一段都比较陡峭,并且看介绍说明长城的烽火台也是借鉴了这边的地台设计,因此这里又称为江南长城。 我们首先从揽胜门登上198级的台阶,在顾景楼一眺东湖公园。

随后继续登上白云楼,一路上有8个敌台,还有几个不同的城门,并且在朝天门这里有梅园,网上别人发的图片很漂亮,我们来的时候已经没有花了。

最后,我们在城墙上走到兴善门,这里下来就是古街紫阳街了。游客很多,就没去逛,找了个地方吃了个饭。就去了旁边的龙兴寺,这里据说也是日本佛教的发源地,建筑风格都有点像,我觉得寺庙了不好拍照,只拍了个千佛塔,但是居然很多小姐姐在这里摆拍。

逛完龙兴寺,我们便继续去爬了旁边的巾山,山上也有寺庙便没有参观,绕山一圈之后就回酒店了。

家人在酒店休息,我和朋友去充电。等待充电的时候在江边散步,发现墙上被很多人写了不少字,有些字很漂亮,有些写的也很有趣,这里分享一个。

晚上吃了个大排档,本来准备品尝一下荣小馆,然只有4点半的能预约,但是大家中午1点才吃饭,只能作罢。而这个大排档,味道也还不错,卤制的小龙虾加上老板特制的调料,是不一样的风味。来上一些小龙虾,配上一瓶啤酒,晚上回去就睡了个好觉。

Day4 国清寺

今日回程,正好顺路去一下国清寺,这里是隋代的古寺了,据说佛教天台(tai,第一声)宗就是这里发源,这里也是网红景点。周一已经是工作日了,这里人也不算少。跟着前面的车,直接开车进了里面的天台宾馆,这样就少走了不少路。

还没进国清寺,路边的桥和灯,就给人以很好的感觉。

寺庙中大殿,以及五百罗汉堂看的都挺令人震撼的,但是处于对佛祖的尊重,一张照片都没拍,以下是随便拍了一些照片。

既然来到了天台,中午就去当地著名的土灶头吃了一顿,麦饼,鱼头汤,鲜笋味道都挺不错的。

美餐一顿之后,驱车返程,一路上除了到上海之后有点堵,基本都很畅通,三个多小时就到家,这趟旅程就画上句号了。

看完评论一下吧

  •  

草长樱飞的三月月报

三月草长莺飞,各种花绽放,柳树披上新芽,这么好的季节,当然就要多多的户外徒步了。那么就来跟我一起看看我的三月吧。

折腾

工作上面不忙,因此空闲时间比较多,就开始重新学习Flutter,但是单纯的看别人的代码和教程,总还是不算真正的学会,于是自己也想写点东西。之前在用Moememos这个Android客户端,体验还不错,但是他对于文本格式的支持不全,tag都没有渲染,于是就自己动手也做了个Memos的客户端。因为是用Flutter写的,随手就起了个FyMemos 这个名字。 同时为了上架,又重新用家人的身份信息注册了个Google Play的开发者账号(别问我为啥不用自己的,说多了都是泪)。而谷歌从2023年开始,新注册的个人开发者上架应用加了很多的限制,需要先有12个人封闭测试两个星期才能够正式对外发布,因此现在还在封闭测试的状态。如果有感兴趣想体验一下的,欢迎发Gmail邮箱给我进入测试用户组。 因为是使用Flutter编写的,其实Windows,Linux, iPhone都是支持的,但是苹果开发者账号没有,其他可以打包的就等后面功能稳定了继续折腾。

文首也说了,三月万物复苏,适合出行,因此这个月的每个周末都户外了,除了外出露营的一周之外,其余几周都去爬山了。 首先是月初前往苏州东山岛,爬上莫厘峰,这里山上栽了许多枇杷树,适合枇杷成熟过来。

月中去杭州富阳,本来准备去拔山看樱花在茶园盛开的美景,结果樱花的花苞都还没有开。不过富阳的环境很好,呆了两天也很值。因为时间有限,没有去什么收费景区,爬山之后的第二天就沿着富春江自驾转了转,其中东梓关村令人印象深刻,这是个古村落,但是没怎么开发,保留了一些原始风貌。村中一些新的自建房也是经过设计师设计的,跟原有的建筑比较协调。

22号,前往苏州走了灵白线,天气很好,人超多,之前爬山从未遇到过这么多人。而这条线的难度也是很大的,有几个地方的坡度相当大,爬下来也是很累。

月底这周,仍然是去了苏州,走了光福小三尖,因为有小孩也就只能走三尖。这里的花特别的美,桃花,樱花,油菜花,全都有,全都盛开,可惜没带相机,照片没拍多少。而难度相比于灵白线低了很多很多,推荐新手尝试。

周周爬山也没新意了,于是找了个周末去露营,因为淀山湖在养草没法去,就在太浦河边找了个地方喝茶,看船。

另外再发发拍的一些花吧。

看完了阿德勒的《自卑与超越》,他是个体心理学的鼻祖,不少作品比如《被讨厌的勇气》都是根据他的作品内容来创作的。这本书中他主要论述,人的一生都在探寻“我与地球“、“我与他人”、“我与他/她”的关系这三大议题,书本中讨论了儿童性格的形成,家庭,工作婚姻等话题,读了一遍之后很多东西都不太记得了,有必要回头再来研读一下。

另外这个月收到了《读库2502》,目前读完了其中和西游相关的两篇内容。分别是对原著进行解读的“西游记的暗黑属性”,原著其实我没有看过,关于西游的记忆主要还是靠86版的电视剧,通过这个文章的解读,感受到的是完全不同的西游。而最近还在跟的还有刘飞和潇磊的半拿铁西游篇,他们的内容是比较诙谐有趣的,感兴趣的也可以听听。另一篇文章“千人千面”这是对于《黑神话悟空》的剧情介绍,因为之前玩的时候忙于打怪,对于剧情的部分,很多都被略过了,也算是补了一课。

影音这块,这个月居然都没有看,所能一提的也只有看了一些B站的旅行和徒步VLog。

杂项

身体很久不动,之前去徒步都有点跟不上。于是这个月下了决心去跑步,到目前为止跑了有5,6次,勉强五公里可以一口气跑完了。同时去徒步也更轻松一点了,值得后面继续坚持。

另外周末回家,高速上跟车太近,又急刹,结果被后车追尾,所幸问题不大,也是第一次发生跟其他车辆的事故,希望不会有下次了。

总结

春天是美好的,花在盛放,草木在发芽,我们也要多出去感受大自然,四月份继续往外走,另外还要向上生长。

看完评论一下吧

  •  

Chromebook折腾之2025

最近淘了一台洋垃圾Chromebook,折腾了一段时间,目前已经基本在日常使用了。在折腾过程中查找了许多的网上资料,解决了不少中文环境使用ChromeOS的问题,这里就分享一下Chromebook的选购和软件安装。

ChromeOS是什么

ChromeOS是Google从2009年开始开发的项目,可以简单理解为在Linux内核上运行的,以Chrome浏览器作为桌面环境,主要功能也是运行Web应用程序的一个操作系统。在之后,该系统也支持了运行Android应用程序,以及通过容器运行Linux程序,这样一套组合下来,我们就获得了一个原生支持运行Android应用,Linux应用和Web应用的系统,这比在Windows下面折腾Linux子系统,Android子系统要流畅得多。

目前为止,想要运行ChromeOS有两种方式,第一种就是购买ChromeBook,也就是搭载了ChromeOS的笔记本电脑或者触屏电脑。第二种方式,Google在2022年发布了ChromeOS Flex,让用户可以在经过认证的设备上安装ChromeOS Flex,包括一些Mac电脑也是支持的。

而想要激活ChromeOS,你需要有可以顺畅访问Google服务的网络。如果你没有这个条件,来自中国的fydeOS它是一个本地化的ChromeOS,内置了本地化定制和国内可以使用的网络服务,感兴趣可以去他们的官网看看。

Chromebook适合谁

ChromeOS最初设计出来也主要是方便云端办公,提供简单、快速、安全的环境,因此它更适合于对于性能没有要求,而希望简单吗体验的人。比如说:使用在线文档的文字工作者,得益于Google doc,飞书文档,语雀等文字和表格类在线工具,Chromebook简单的功能以及比较长的续航是一个性价比比较高的选择。除此之外,对于性能没有要求的开发者和数码极客或许也会考虑由于一台自己的Chromebook。

最新的Chromebook有两档标准,普通的Chromebook,以及Chromebook Plus,普通的Chromebook可能只搭载Intel Celeron处理器以及4GB的ROM, Plus也只是它性能的两到三倍。目前Chromebook在国内没有销售,通过天猫国际等平台平台购买的新机器一般也都比较贵没有性价比。对于普通用户国内平台在销售的平板电脑或者笔记本都比它有性价比的多。

而对于我所说的极客用户来说,在闲鱼淘一台洋垃圾Chromebook可能是一个比较有性价比的选择。比如我这台Lenovo Duet5,骁龙7C,8GB内存,256GB存储,13寸的OLED屏幕,搭配触控笔加键盘,支持平板模式和桌面模式,只要不到1500块钱,相比于iPad,看起来还是有点性价比的。

Chromebook选购指南

再次强调一下选择Chromebook需要保证有能够激活Google服务的网络环境。不具备的可以考虑fydeos,以及他们的Fydetab Duo设备。

在淘设备的时候,因为我们可能买到的是2019年或者更早发布的设备,我们需要关注设备的自动更新到期时间(简称AUE),所有ChromeOS设备都能够借助于Chrome浏览器几乎同步的更新节奏收到Google的定期更新。因此决定购买之前可以在Google的这个页面看一下该产品型号的AUE日期。

其次,电池健康度也是选择二手Chromebook产品时候值得关注的信息。本身购买Chromebook就是为了优秀的能耗和续航体验,电池不行这些就没办法完全达成了。购买前最好和商家沟通让对方打开「关于 ChromeOS > 诊断」界面并提供截图,可以在这个界面中清楚地看到当前设备的电池寿命、循环计数等信息。从这里可以大概预估该设备之前的运行时长,并且电池寿命高于90%应该是比较好的。我在这里就踩到了坑,因为是专门的二手商家,说了是库存设备,并且说没法激活设备不愿意提供截图导致我收到的设备实际上电池已经循环过了300多次,电池寿命只有86%,同时因为运行时间过长oled屏幕也有一点烧屏了。

最后,屏幕这块OLE屏幕可以让卖家把屏幕亮度跳到最低拍照这样也能看到一部分屏幕的缺陷,以及全白页面拍照测试等。关于型号的话,考虑到Android应用的兼容性,我选择的是ARM芯片的Duet设备,如果更加关注Linux应用的兼容性或许可以考虑X86芯片的设备。设备的型号这块,除了我提到的Duet,Google推出的Pixelbook Go, Pixelbook也是可以考虑的型号。

最后的最后,实际购买之前可以考虑使用现有设备刷如ChromeOS Flex或者fydeOS体验一下再做决定。

ChromeOS 初始化

ChromeOS本身的内核是Linux,但是为了安全,我们是没办法在上面安装Linux应用的,同时Android应用的安装也必须通过Play store才能安装,因此如果想要获得系统的完全控制权是需要开启开发者模式的。开启开发者模式后可以直接安装Android APK文件,同时也拥有了Root权限,可以在系统做修改,比如安装类似Mac下面homebrew的chromebrew工具等。但是代价是,每次启动电脑都会先跳出一个60s的警告页面(可以跳过),而在普通模式和开发者模式之间切换,所有的系统数据都会被清除,需要提前做好备份。

在我体验完开发者模式之后,决定还是回到安全模式。对于大部分人也都不需要开发者模式,我们通过Linux子系统开启Linux子系统的开发者模式,也就可以通过ADB来安装Android应用。因此如果想要开启开发者模式可以查看网上的资料。 初始化,可以通过家庭的软路由,或者手机上面开启Clash作为代理服务,在连接完网络后,修改网络中的代理服务,把手机或者软路由作为Chromebook的代理服务器,从而可以激活服务。同时要系统更新和安装Linux子系统需要稳定的翻墙服务,不然可能会失败。

ChromeOS初体验

ChromeOS内已经内置了一部分Web应用,包括了Google全家桶和一些工具应用。在未连接键盘鼠标前是平板模式,连接了之后为桌面模式。

以上为桌面模式,打开两个应用平铺,左下角为应用列表。

以上为平板模式的桌面

很多场景也可以通过浏览器进行,对于一些提供了PWA的网站,可以点击地址栏的安装按钮,这样就会生成一个桌面图标方便下次使用。也可以在Chrome应用商店安装扩展程序。

因为登录了Google账号,Chrome浏览器上安装的扩展程序,一些设置,书签等也都会同步过来。

同时ChromeOS还支持与Android手机连接,能够对手机进行简单的控制,包括手机的静音,地理位置权限开关,控制手机的热点并连接上网,查看手机最近的照片,打开的Chrome标签页等,如下图所示。

对于中文输入,Chrome内置了拼音输入法,如果使用双拼的话可以考虑使用fydeos提供的真文韵输入法,不过真文韵输入法没有软键盘,在平板模式还是没法使用,另外真文韵在Linux应用也无法使用,解决方法后面再说。

配置Linux子系统

Linux系统模式是未开启的,需要首先到「关于 ChromeOS 」中开发者部分开启,最新版本默认安装的是Debian 12,因为需要到Google的服务器上下载Linux镜像文件,这个过程可能非常慢,我这里差不多半个小时才完成。

有了Linux系统,我们首先需要安装中文环境,执行如下命令安装中文字体:

1
sudo apt install fonts-wqy-microhei fonts-wqy-zenhei fonts-noto-cjk

Linux上面是没法使用系统的输入法的,我们需要安装Linux的中文输入法,我这里就是安装的fcitx5,可以使用如下命令安装:

1
sudo apt install zenity fcitx5 fcitx5-rime

安装之后在 /etc/environment.d/ 文件中创建一个im.conf文件,并且写入如下内容:

1
2
3
4
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx

之后手动打开fcitx5,并且配置好自己的输入法选项就可以在Linux中使用应用了。

除此之外,就跟正常使用linux一样,安装的Linux应用如果是有桌面图标的也会在Chrome的应用列表中展示,同样对于deb文件,也可以直接在chrome的文件管理器中直接点击安装。

现在ChromeOS也支持了安装多个容器,也就是说可以运行多个不同的Linux,感兴趣的可以看看这位博主的这篇安装ArchLinux的文章

安装微信

微信算是每个人都必须有的通信工具了,在ChromeOS中有两种方式可以安装,一个是安装到Android子系统,直接在Google play下载就行了,另一种则是安装Linux版本的桌面微信。

但既然有这么大的屏幕,当然是桌面版使用体验更好了。我这里介绍一下在我的Debian12下面安装arm版本的微信的过程吧,因为微信的有一些依赖系统内是没有的组件需要安装。

1
sudo apt install libatomic1 -y && wget -O libwebp6.deb https://security.debian.org/pool/updates/main/libw/libwebp/libwebp6_0.6.1-2.1+deb11u2_arm64.deb && sudo dpkg -i libwebp6.deb

除了这个之外还缺少一个libtiff5,debian12上面已经有libtiff6了,我们创建一个链接就可以了。

1
sudo ln -s /usr/lib/aarch64-linux-gnu/libtiff.so.6 /usr/lib/aarch64-linux-gnu/libtiff.so.5

之后我们应该就可以使用Linux版本的微信了。

另外还推荐在Linux子系统安装stalonetray,这样就可以展示Linux的软件的托盘,比如去查看输入法状态,和切换输入选项等。可以参考这篇文章

对于Linux直接在Chrome点击deb文件安装的应用,虽然安装完了但是有可能点击图标打开的时候总是在转圈却打不开,这可能是因为程序出错了,可以在命令行中手动运行,这样错误日志就可以查看了。

配置安装非Google play的Android应用

如果想要安装国内的应用,可能很多都无法在Google play商店下载,一种方式是打开ChromeOS的开发者模式,但是那样每次开机就要忍受开机警告。我这里选择通过Linux子系统来安装。

首先打开「关于 ChromeOS -> Linux开发环境 -> 开发Android应用」,将其中的启用ADB调试打开。

点击启用的时候会有如下提示:

并且如果停用的话也会将Chromebook恢复出厂设置,所有数据被清空,使用这个功能需要谨慎。

再打开Linux命令行,执行如下命令安装adb工具。

1
sudo apt install adb

之后打开「设置 -> 应用 -> 管理Google Play 偏好设置 -> Android设置」,这样就进入Android系统的设置应用中了,可以在关于设备中多次点击版本号,开启Android子系统的开发者模式,在然后到系统,开发者选项中打开ADB调试。之后在linux命令行执行如下命令并显示正常就说明配置好了。

1
adb devices

之后就可以通过ADB安装程序了,当然也可以选择使用adb安装一个国内的应用商店,之后通过应用商店安装应用。

ChromeOS的体验介绍

使用了一段时间之后来说,作为一个轻量化的Linux 本来说,这台设备还是符合期望的。Linux,Android子系统都和宿主系统有着很好的深度绑定,使用子系统的应用也和使用宿主一样有着很好的体验。而在我这里一大缺陷为,因为Linux子系统和Android子系统都被划分到了私有网络,因此它们实际上网络是和Chromeos宿主共享的,但是和局域网的其他设备不是在同一个子网里面的,因此类似LocalSend这种工具是不能使用的。这里目前我的解决办法是使用fydeOS提供的fyDrop工具和其他局域网进行文件传输。

这个设备同时还支持通过usb typec接口连接外接显示器,chromeos有着不错的窗口管理,桌面分屏,这些功能都为使用体验加分许多。

如果只是轻办公我感觉这是一台很棒的设备,但是得益于这个性能,想要在这上面做Android开发,去编译程序那就不敢想象了。而至于要不要入坑,还是要你自己决定。

最后照例来推荐一些可以参考的资料:

  1. fydeOS源于chromeOS,这边的中文资料都可以参考:https://community.fydeos.com/t/topic/40986
  2. Chrome 官方的文档: https://chromeos.dev/en/linux
  3. 解锁开发者模式和一些折腾,可以参考这边文章和博主的其他文章: 打造一台适合生产的Chromebook

看完评论一下吧

  •  

关于我

  • 程序员一枚,家里世代农民,工作跟农民好像也没有太大差别,自嘲为码农。
  • 主要从事Android软件开发,对于Python,web前端也略有了解。
  • 热爱新技术,包括但不限于软件新技术、区块链、Web3等。常年混迹于网络。
  • 好读书,阅读甚杂,只求看过,不求甚解。
  • 相机使用者,业务摄影爱好者,野生B站UP主,拍的不好,欢迎吐槽。

网上主要使用两个名字“明明同学”和“码农明明桑”,使用同学是因为各个公司内都喊别人老师,只好谦逊的自称“同学”。“码农明明桑”最早是微博id,这个名字有点模仿“妈妈桑的意思”。

关于博客

从QQ空间和网易博客起接触博客,后又自己搭建wordpress,然而数次荒废,多次博客被废,最终选择了使用hugo静态托管。 先前博客存放于github pages,由于国内无法访问,后又托管于Vercel。由此每年的费用更低,维护更加简单,也更加容易坚持下来。图片和评论等也都拖关于Vercel,各种服务之上又掏了一层cloudflare,希望国内的访问能够快一点吧。感谢这两位赛博菩萨,每年只需要掏个域名续费的钱。 博客内容主要记录我的技术踩坑,个人随感,旅行记录等。

联系我

版权声明

本站所有内容(包括文章和照片)遵循「CC BY-NC-SA 4.0(署名—非商业性使用—相同方式共享)」协议,转载请保留署名并注明来源。

你可以通过博客留言,或者公众号、邮箱与我联系。欢迎与我交流,共同进步成长!^_^

看完评论一下吧

  •  

互联网上的朋友们

朋友们

郑泽鑫的博客 https://zhengzexin.com/
遐说-Dorad ❤编程❤摄影,期待走遍万水千山
Yunyi's Blog Little squirrel Hopping around
5had0w 一个游走在互联网边缘的影子
千里之豪 Fun to life, fun to coding.
张洪Heo 分享设计与科技生活
阿锋的小宇宙 沧海一粟,微亮渺小一只虫。
小鹿的个人网站 跳吧,在无比宏大的星系!

博客导航

十年之约 一个人的寂寞,一群人的狂欢
个站商店 一个精致带社交元素的个人网站发布平台
博友圈 博客人的朋友圈

本站信息

标题: 码农明明桑
Url: https://isming.me
头像: https://isming.me/chrome-512.png
简介: 一心写码,无心务农

友链申请要求

交换友链可以发送邮件到inming1007@gmail.com 或者在本页留言,博主看到后会及时处理。

申请友链需满足以下要求:

  • 个人独立博客,拥有独立域名
  • 建站时间一年及以上
  • 内容健康且原创文章不少于十篇
  • 申请友链前已添加本站链接

看完评论一下吧

  •  

转瞬即逝的二月月报

不知道是因为2月比较短还是因为春节刚回来没多久,感觉二月很快就过完了。如此的快以至于这个月感觉都还没做什么就结束了,现在就来对本月做个回顾吧。

折腾

这个月对于博客的足迹功能做了一些优化,一是给去过的城市或者国家加了地图mask,对于感兴趣的可以查看我的上一篇文章了解。另外对于标记点过于密的问题,也借助chatgpt,做了优化,根据地图的放大级别来把一些点进行合并,这个后面倒是可以写文章再详细说说,另外就是地图的展示还有优化的空间。

购物

这个月购买了种草很久的ChromeBook,在闲鱼淘了个联想的Duet5,支持平板和桌面两种模式,可以安装Linux应用和Android应用,除了性能比较差之外真是程序员的理想装备。但是国内使用加上版本兼容等等,还是遇到了不少问题,对于非技术人员来说体验还是会差一点。而对于一个13寸的大平板,并且只要1000多块钱,这都不是事。到目前为止还没完全驯服,后面使用一段时间再来分享折腾的一些过程。

另外之前使用了几年的手环屏幕和手环本体开胶了,于是乎就趁着有国补,买了个小米Watch 4S,小米这款的外形和华为、OPPO的相比都不够好看,但是因为手机是小米的,之前的一些数据也是在小米的APP里面,还是决定买了小米的。因为esim款是皮质的表带,因此选了它,但是用了半个月感觉也没必要开通esim。功能方面,比之前的手环要多了不少,但是不能安装app,所以本质上还是一个大号手环,另外运动记录不能导出,所以对于非小米手机用户,我是不推荐啦。

对手表爱不释手的小朋友

因为大年初七才从老家回来,这个月也只出去了一次。带着娃去了嘉兴的南北湖风景区,徒步8公里,走了谈仙岭古道,怕了嘉兴最高峰 高阳山。因为当天后面下了小雨,南北湖也没去看。

前一段是比较原始的攀爬路段,甚至还有一些地方比较陡峭,后面回程则是车行道,以及部分谈仙岭古道。在其中的云釉古庵看到了好看的梅花。

月初带这娃去看了哪吒二,娃第一次去电影院,也是我时隔多年再次走进电影院。

哪吒

之前多次尝试带她去看电影均失败,这次因为提前给她看了哪吒第一部,剧情不错,画面她也喜欢,这就顺利把他带进影院了。而哪吒确实也是部不错的片子,再加上同期有没有别的能打的电影,干到100亿票房,确实是很厉害。

周末还带娃去看了个狮子王情景剧表演,表演不到一个小时,剧情没新意,相比于迪士尼的电影狮子王真是差远了,但现场却还是爆满的,如果不是因为在各个幼儿园推广,估计不会有这么多人。另外就是虽然剧情没啥意思,但是现场的很多小朋友看得却是津津有味。

在午休和晚上的时候,这个月把赵本山的新剧《鹊刀门传奇第二部》给看完了,这个剧仍然延续第一部的高效,无厘头,无法在春晚看到赵本山表演,在这里算是重新获得赵氏表演的满足。

文字内容,读库2501看了一部分,其中的电力往事,金谷,英语走出中世纪都还挺有趣的。其他的书籍,最近倒是没看多少,这里也就不说了。

总结

匆匆而过的二月,感觉没做什么事情就结束了,写完之后发现倒也不是什么都没做,那么就这样结束这个月吧。

看完评论一下吧

  •  

使用Leafletjs实现足迹地图功能

我的博客上面挂着一个使用Leaflet实现的足迹地图功能,最近又给他添加了一些功能并且进行了一些美化。之前也有人问题这个怎么实现的,趁着刚折腾完来分享一下。

代码库的选择

早前一直想要做一个足迹的功能,像是国内的百度地图和阿里地图都有js的sdk,但是他们的sdk使用不简单,并且他们的地图只有国内的。后来了解过google map以及mapbox,但是都没有深入研究。后来看到博主水八口记使用了leaflet还比较简单,就使用这个库来实现了我的足迹功能。

地图图层

使用leaflet的一大好处是,你可以自由使用你想要的地图图层,对于符合Leaflet的地图瓦片地址我们是可以直接使用的,通常是类似这种格式的地址: https://{s}.somedomain.com/{foo}/{z}/{x}/{y}.png,其中的{z}/{x}/{y}是必须要支持的,leaflet会在运行的时候替换具体的值,从而请求对应的放大级别(z,zoom), 对应坐标(x, y)的瓦片进行渲染。

一般使用cartocdn提供的openstreetmap的地图时,是可以直接使用的,但是我们如果想要使用mapbox地图或者其他地图供应商的时候,就需要借助插件了,可以在这个页面看看有没有Plugins - Leaflet - a JavaScript library for interactive maps

对于地图图层,leaflet是支持同时加载多个图层的,比如说我可以添加一层底图再添加一层天气卫星图。

我们这里先看一下如何创建一个地图并且设置我们的地图图层. 首先需要引入leaflet的css和js文件

1
2
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY=" crossorigin=""/>
<!-- js引入一定要放到css的后面 --> <script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js" integrity="sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo=" crossorigin=""></script>

之后,在我们需要显示地图的位置放一个div元素,并且设置一个id,这样我们在后面的js代码中才能控制它:

1
<div id="footprintmap"></div>

同时我们可以通过css设置这个容器的宽度高度:

1
2
3
4
#footprintmap {
width: 100%;
 height: 180px;
}

这些做完之后就可以在javascript中去创建地图对象,并且给它添加地图图层了:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
<script type="text/javascript">

 //地图的版权声明,使用三方地图数据出于对版权的尊重最好加一下
      var cartodbAttribution = '&copy; <a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a> contributors, &copy; <a href="https://carto.com/attribution" target="_blank">CARTO</a>';
      var map = L.map('map', {gestureHandling: true, minZoom: 1, maxZoom: 14}).setView([33.3007613,117.2345622], 4); //创建地图,设置最大最小放大级别,setView设置地图初始化时候的中心点坐标和放大级别
      map.zoomControl.setPosition('topright'); //设置放大控制按钮的位置
      map.createPane('labels');

      map.getPane('labels').style.zIndex = 650;

      map.getPane('labels').style.pointerEvents = 'none';

      L.tileLayer('https://{s}.basemaps.cartocdn.com/light_nolabels/{z}/{x}/{y}.png', {

    attribution: cartodbAttribution

}).addTo(map); //添加地图图层到map对象当中

</script>

添加足迹点到地图中

经过以上的步骤我们就可以在网页上展示一个地图了,而我们实现足迹功能一般会给我们去过的地点打上标记。一种方法是给去过的城市做一个蒙层,一种方式是加一些点标记。这里先看加点标记的方法。

标记在Leaflet中称为Marker, 我们可以使用以下代码添加默认的Market:

1
marker = new L.marker([33.3007613,117.2345622]).bindPopup("popup text").addTo(map);

效果如下:

在上面我们通过bindPopup来设置点击Marker之后弹出的内容,其中我们是可以设置HTML元素的,因此我们就可以显示图片或者超链接之类的内容了。

如果不喜欢这个默认的蓝色Marker,也可以替换为图片。比如我用如下的代码就设置类一个svg图片作为Market标记图:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
function colorMarker() {
  const svgTemplate = `
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" class="marker">
      <path fill-opacity=".25" d="M16 32s1.427-9.585 3.761-12.025c4.595-4.805 8.685-.99 8.685-.99s4.044 3.964-.526 8.743C25.514 30.245 16 32 16 32z"/>
      <path stroke="#fff" fill="#ff471a" d="M15.938 32S6 17.938 6 11.938C6 .125 15.938 0 15.938 0S26 .125 26 11.875C26 18.062 15.938 32 15.938 32zM16 6a4 4 0 100 8 4 4 0 000-8z"/>
    </svg>`;
  const icon = L.divIcon({
    className: "marker",
    html: svgTemplate,
    iconSize: [28, 28],
    iconAnchor: [12, 24],
    popupAnchor: [7, -16],
  });
  return icon;
}

marker = new L.marker([lat, lng], {
    icon: colorMarker(),
  }).bindPopup(popupText).addTo(map);

主要是在前面创建marker的时候传的这个icon,你也可以传普通的图片。

如果我们需要展示多个点的时候,我们可以把这些点的数据存储成一个json,并且把他作为一个JavaScript对象加载,再读取他把每个点添加到地图中。 我就创建了一个points.js的文件保存所有的点:

1
2
3
let points = [
    ["<b>北京</b><i>Beijing</i><a href='/2025-01-beijing/'><img src='https://img.isming.me/photo/IMG_20250101_133455.jpg' />北京游流水账</a>", 40.190632,116.412144],
    ["<b>广州</b><i>Guangzhou</i>", 23.1220615,113.3714803],];

内容大概如上:

1
2
<!--加载点数据这样我们在javascript环境中就可以拿到points这个数组-->
 <script type="text/javascript" src="/points.js"></script>

以上加载了点数据,通过下面的代码来读取并且添加点:

1
2
3
4
5
6
7
for (let i = 0; i < points.length; i++) {
//循环遍历所有点,并且保存到如下三个变量中
  const [popupText, lat, lng] = points[i];
  marker = new L.marker([lat, lng], {
    icon: colorMarker(),
  }).bindPopup(popupText).addTo(map);
}

到此为止就完成了足迹点功能的开发。

去过的区域图层开发

而我们要实现去过的城市标记,这个时候就不是一个一个的点了,我们可能给去过的城市添加遮罩,这个其实就是给地图上画一个新的图层。每一个城市本质上就是许多个点围成的多边形,我们可以使用Leaflet提供的polygon方法来绘制,但是我们需要给把每个城市的多边形的各个顶点找到并且组织成一个数组,工作量真的是巨大的。

这样的难题我们不是第一个遇到的,前人已经遇到并且帮我们解决了。在2015年就有了GeoJson这种用Json描述的地理空间数据交换格式,他支持描述点,线,多边形。而Leaflet对齐也有支持。因此,我们只需要找到我们所需要的城市的geojson数据的MultiPolygon或者Polygon数据,就可以在Leaflet中进行绘制了。

对于中国的数据,我们可以在阿里云的datev平台进行下载,你可以省份数据或者按照城市甚至更小的行政单位下载数据。对于国外的数据可以到github上面去查找,这里是一份国家数据: datasets/geo-countries: Country polygons as GeoJSON in a datapackage

对于我们下载的中国的geojson数据,因为比较详细,也就比较大,我们可以使用mapshaper这个工具来对数据进行一些处理,直接使用Simplify功能,使用它减少点的数量,从而减少我们的文件的大小。

按照geojson文件格式,我们对于多个城市需要组成一个类似如下的json:

1
2
3
4
5
6
{
"type": "FeatureCollection", features: [
{"type": "Feature", "geometry": {"type": "Polygon", "coordinates": [[[88.40590939643968,22.55522906690669],[88.36498482718275,22.494854169816982],[88.28898205570562,22.51497913551355],[88.2714429545955,22.55235407180718],[88.32990662496253,22.55235407180718],[88.36498482718275,22.60410398359836],[88.35913846014606,22.62997893949395],[88.38837029532957,22.62710394439444],[88.40590939643968,22.55522906690669]]]}},
...
]
}

对于这样的一个json对象,我们就可以直接使用Leaflet的geojson文件进行加载,代码如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
function onEachFeature(feature, layer) { // does this feature have a property named popupContent?
 if (feature.properties && feature.properties.popupContent) {
 layer.bindPopup(feature.properties.popupContent); //从json文件中读取属性进行popup展示
 }
}

var geojson = L.geoJSON(areas, {
 onEachFeature: onEachFeature,
  style: function (geoJsonFeature) {
    return {
      color: '#ffcc80', //设置遮罩的颜色
      fillOpacity: 0.4, //设置透明度
      stroke: false, //是否要显示边缘线
    };
  }
}).addTo(map);

对于geojson我们也可以在properties中设置弹框的内容进行展示。

总结

到这里我们就完成了基于leaflet的一个足迹地图,既包括足迹点,也包括去过的城市的遮罩。而geojson和Leaflet的功能远远不止这些,感兴趣的可以去看相关文档。另外因为我使用的地图是openstreetmap的数据,关于中国领土有争议的部分标记不正确,这个不在我的解决能力范围之内,只能暂且使用,但是不代表本人观点。

参考资料:

  1. Tutorials - Leaflet - a JavaScript library for interactive maps
  2. https://tomickigrzegorz.github.io/leaflet-examples/
  3. GeoJSON - 维基百科,自由的百科全书
  4. DataV.GeoAtlas地理小工具系列

看完评论一下吧

  •  

过完春节方动笔的一月月报

月初是元旦,月尾是新年。新年第一个月,工作走上正轨,满足小朋友去北京的愿望,以下是详细内容。

工作

十二月进入新的团队,目前算是融入完成。并且答应了老板时间线,结果是我们在年前答应的时间线根本就完成不了,同时设计也跟不上,到目前为止是拖了一周又一周,希望二月结束,应用能够达到上线状态。

这个月初是元旦,月尾是农历新年,因此只有月初去北京玩了一趟,后面就期盼着春节的到来,于24号开车回了池州老家准备过年。在家里仍然继续上班也就没有去哪里玩。

关于月初北京的行程,算是把北京的各个景点都打卡了一遍,感兴趣的可以查看之前的文章

而这个月是小朋友在幼儿园的最后一个生日了,以前没有办过生日宴,这次决定给她搞个生日聚会,花了几天时间策划,买了些道具,准备了一些套圈、智力题之类的游戏,带着她和她的小伙伴们开心的玩了一天。

因为工作比较忙,书和影视内容看的都比较少。

书这块在看余晟的《正则指引》,断断续续的看,才看到第六章,基本是把正则表达式的语法了解清楚,而应用到各种语言的内容和涉及不多。这本书多年前就翻过,因为前段时间的需求涉及到正则表达式,于是就想着再看看,关于正则的各方面介绍的都不错,推荐对于正则感兴趣的读一读。

影视方面,首先是把《人生切割术》第二季的前两集看完了,因为已经过了好长时间,对于第一季的很多内容已经有点忘记了,推荐看的时候还是把第一季先补补。

爱奇艺的新剧《漂白》也刷完了,看豆瓣上面评分挺低的,这个片子还涉及到抄袭,看的过程中确实很多地方设计的不够严谨,但是剧情还可以,值得一看,但是血腥和恶心的画面挺多的,不适合小朋友在旁边的时候观看。

再有归到阳历一月份的就是《央视25年春晚》,几个分会场感觉挺有意思的,武汉的《counting star》好听,王菲的《这世界赠予我的》也好听,其他的话感觉没啥心意,很多节目给人嘎然而知的感觉。但是这也是小朋友要看,陪着她一起看到零点的晚会了,也是一场家庭共同的活动吧。

《哪吒二》在大年初一上映,在老家的我们就陪伴小朋友一起看了哪吒第一部,几个小孩对于哪吒是真的喜欢。今天就带着小朋友去了电影院把《哪吒二》给补上了,小朋友第一次去影院看电影,之前一直不愿意去电影院,去了一次感觉还不错,这是属于二月了,就放到以后再写把。

后记

这个月比较忙碌,学习和看书的时间都少了很多。关于提笔写月报,春节期间用手机写了几个字,但是因为懒惰最终也是没写完。节后开工第一天,算是匆匆写完,给自己一个交代。农历新年对于很多人来说才是新的一年,春节假期结束,重新回到工作岗位,开始新一年的征程。这就祝大家开工大吉吧。

看完评论一下吧

  •  

北京游流水账

北京,之前只因为出差去过几次。因为小朋友在幼儿园熏陶,对北京,对天安门很向往,于是在2025年,就满足她的愿望,前往我们伟大的首都。

作为吃货,到一个地方当然要考虑当地美食。之前去北京吃过全聚德,这次就决定带着媳妇孩子来吃四季民福,提前去现场取了号,最终只用了一个多小时就吃上了。因为排队人太多,体验一般,但是烤鸭还算不错。

除了四季民福,还在五道口吃了一次局气的烤鸭,价格比四季民福要便宜很多,花样也很多,但是过于油腻了,还是四季民福的更好吃一点。

除了烤鸭,另外吃的最多的杂酱面了,五天差不多吃了有五六次。因为都是上的面和酱分离自己拌,小朋友喜欢吃没有加酱和配菜的面,我们喜欢吃杂酱面,真是很方便。另外再有,就是吃老北京铜锅涮肉了,在后海吃了南门涮肉,吃完发现一条街好几家南门涮肉,不知道哪家是正宗的。

卤煮算是特色了,吃了。还不错,其中加的火烧,原先不知道是什么,吃了才知道原来就是我们家那边的大饼。豆汁尝了,但是那个酸臭,完全受不了。

这边的面食很丰富,这种面做的饼和点心。除了这些呢,这里似乎又是美食荒漠,和南方的城市没得比。

介绍了吃的,下面就是每天的流水了。前两晚选择了住在灯市口附近,离古城比较近,游览方便。后面两晚住在了北三环附近,这样去长城和颐和园等地方比较方便。

第一天

乘坐京沪高铁标杆号,4个半小时到达北京。到达之后,直奔天坛公园。买了联票,这样才能进入祈年殿。北京很多公园都是这样,有园中园需要买联票或者进去二次买票。

虽然元旦就放一天假,但是人还是很多,但是跟出租车司机聊,他说这人不算多。挤了好一会,才看到祈年殿的内部。

里面供奉着皇天上帝的排位。

祈年殿的左右两侧偏房中间有天坛的历史状况,结构,修缮情况等的展览。看完出来之后,看到好多人在后面拍照,这边角度不错,我也拍了几张。

快速逛完天坛,去酒店办理入住之后,就去四季民福排队了。排队的时间,就走到东华门转了转。

第二天

早上吃了个庆丰包子之后,就前往天安门广场了,本以为西交民巷这里是最近的,就打车去了这里的安检口,才发现这里走到广场也挺远。另外还有三道安检。此处建议大家,如果预约了去人民大会堂,这里确实近,否则还是算了。

到了广场上,看到毛主席纪念堂还有余票,小朋友也嚷着要看毛主席,就让媳妇带她去看了。对此我没有兴趣,就呆着在广场上吹冷风了。之后穿过地道,去对面爬天安门城楼了。

也是朋友告诉才知道,现在城楼是可以爬的,要微信提前预约购票。城楼上陈列着开国大典的话筒和国徽等物品,以及一些天安门的历史介绍,定点还有人讲解,城楼上观看广场的视野也很好。

城楼上下来,就直奔故宫。

故宫里面还有珍宝馆和钟表馆,只买到了珍宝馆的门票。里面陈列着皇室使用的各种珍贵物品,非常精美和豪华。

里面的狮子很可爱。

建筑都很精美,屋檐上还有很多的小怪兽。

从神武门出来之后,坐车到后海吃饭。吃完饭,就在附近转了转,小朋友对冬泳的大爷很感兴趣,看了两个大爷游完才愿意走。

最后在这边的烟袋斜街转了转,天也就黑了。

第三天

本来这次来北京准备带小朋友到颐和园的昆明湖去溜冰的,但是通过前两天在后海和护城河了解到的情况是,现在不够冷,昆明湖还没全部冻上,冰场还没开。在小红书上查到,团结湖的冰场开了,于是就去了团结湖冰场,没法溜冰,但是有冰上自行车等,玩了半天也挺开心的。

等到吃完饭,换完酒店,购买颐和园的门票时候,发现只能买大门票了,包含里面的苏州街的联票买不到了。就只买了大门票,进去先转了谐趣园,之后转到佛香阁还在卖票,就带着娃进去看了看。

顶部的佛香阁中供着千手观音。

这里是颐和园的至高点,拍城市风景也不错,多等一会的话还可以拍夕阳。

最后在昆明湖边看夕阳。

出来之后,坐着地铁去了奥体公园吃饭,吃完饭打卡一下鸟巢和水立方。

第四天

提前候补到了清河站到八达岭的高铁票,高铁20多分钟到达八达岭长城站。乘坐两段长长的扶梯到达出站口,也首次见识到了斜着运行的箱式电梯。

从高铁站花了五分钟,走到索道站,坐缆车到达八达岭北七楼。爬北八,真是见识到了长城的陡峭,没爬多一会,小朋友这个“好汉”直呼晕,不愿意走。

风很大,小朋友也爬不动了,我们爬到北八后便没有原路返回,而是通过下山通道走回到北六楼,之后走到登楼入口。

最后,差不多12点就下来了,在长城邮局打个卡就乘坐高铁回了市区了。

中午在五道口吃了个午饭,附近转了转,下午决定还是去圆明园看看。买了联票,进去直奔西洋楼遗址,买了个微信讲解给小朋友听。

而遗址中的黄花阵迷宫是最吸引人的,小朋友在这里玩得不亦乐乎,而先到达中间阁楼的人观看迷宫中的人也很有趣。

西洋楼遗址出来后,在长春园又转了转,看了一下圆明园还原模型,最后就出园了。

第五天

最后一天,决定去地坛公园看看。也算跟第一天天坛公园好对应。

天坛公园中的殿,围墙都是圆的,而地坛公园中的方泽坛,以及其中的围墙,都是方的。这与中国传统的天圆地方相契合。地坛公园中另外还有一处特色就是鼓楼。

相比于天坛公园,地坛公园游客很少,上午的地坛公园中,各路跳舞团队云集,有舞扇子舞蹈的,有民族特色舞蹈。

中午去饱餐一顿,下午乘坐京沪牛马号打道回府了。这里要夸一下北京南站,地铁出站之后就是高铁的检票口,真是太方便了。

后记

北京的路太宽,步行真的挺不方便的,出门靠公共交通也挺麻烦,还是打车方便。就这样每天也都是两万步,大人还好,小孩有点吃不消。这边路上的电瓶车除了外卖快递,戴头盔的很少,非机动车不规范横穿马路的,让人难以想象这里是北京。

另外,作为行人过马路,也感受到这边司机的彪悍,左转不让行人,插队等等。

以前是过来做牛马,这次过来玩,体会还是很不同的。另外提醒,过来玩很多地方最好提前做好功课提前预约,比如国博,清华北大,天安门人民大会堂等,提前抢票才有机会看。

看完评论一下吧

  •  

2024年个人总结

2025年已经过去了几天,按照惯例,又到了写年度总结的时候了。这几天回想了一下过去的一年,并没有做成什么事情,其他方面在博客上大抵也可以看到,不过还是写写吧。

健康

3月份摘掉了带了一年多的钢牙套,换上保持器,虽然后面还要持续带保持器,不过还是体验要好很多了。因为带了牙套的原因,平时零食很少吃,这一两年来说体重还略微有下降。

5月份去检查头疼,发现了心脏卵圆孔未闭合,于是做了个微创手术,但是医生告知手术后三个月不能剧烈运动。于是之后便没有运动了,以至于过了三个月之后,不运动的习惯养成了,天天都不动了。到现在为止,最多就是出去走走路了,这是坏毛病,得该。

除此之外,因为久坐,腰椎和坐骨经常会疼痛,去医院拍片子看了,腰椎有点弯曲,坐骨关节有积液,也只能吃点药,并没有什么别的治疗办法。自己需要多注意,目前就是常常提醒自己要多吃钙片,有空还是多走走。最近几个月也是跟着朋友约着出去徒步了几次。

工作

23年进入公司的新项目,到3月份就已经开始出现运行不下去的颓势了,一方面是公司的产品没什么运作,另外是上面减少了投资,因为后面的几个月产品上也迭代也减少很多,产品部分人员也在不断变化,这样我们也没多少事情,一直在忐忑和忧虑中度过,直到11月份被裁。

而11月份找工作,也体会到了市场的萧条,大厂要求高,非重点院校毕业生,已经超过30岁的大龄程序员,最近的几份工作都是无名小厂,也算是Debuff拉满,没有任何大厂给面试机会。面了几家国内公司,也都没有后续消息。

最终在12月入职了前同事推荐的公司,与几个前同事在新公司重聚首。这个项目目前刚刚起步,公司也还稍微有点混乱,只需要公司的业务和各方面都能够尽早走上正轨,我在这里也能够发光发热。

博客

2024年这一年,博客内容量可以说是创历史新高了,这一年写的数量比之前所有的还高。这一切得益于公司没啥事,自己有很多的业余时间。同时因为八九月份写的技术文章参与了掘金的创作者训练营活动,获得了“创作先锋奖”,也算是不错。

从六月份开始写个人月报,现在看来是个不错的尝试。很多事情在月末回顾还能想起来,到年末真的就很难回忆起来了。而借助月报,最近几个月的一些东西这更容易回忆起来。目前坚持了七个月,后面仍然有必要继续坚持。

最后就是已经有两年没怎么更新的博客主题样式今年也迎来了大更新,主题基于ParperMod进行了个性化定制,还增加了足迹地图,更新了自我介绍,详情请看: https://isming.me/2024-08-blog-modify/

而因为博友圈,个站商店等平台,也让我认识了许多优秀的独立博客创作者,让我这个孤岛与其他的岛屿建立起连接。

个人成长

得益于公司比较闲,今年比较多的个人时间,虽然也浪费了很多时间,但也还是做了一些事情。

首先是技术方面的学习,在B站把南京大学jyy的操作系统课给看完了,之前在学校里面这个没有好好学,现在算是补课了。重新学习操作系统,对于很多程序运行的知识,并发等的理解有了新的认识。

新学了Rust语言,跟着openoscamp把rust测试做完了,目前的我使用rust来编写web服务是没啥问题了。而它在系统编程和Android方面的运用,目前还不了解,后面需要有时间需要继续看。

Android系统源码,今年算是真正的自己把一些核心模块的都看完了。而相关的内容也都整理成了文章。不过Android系统的源码量巨大,我所看的这一部分也只是冰山一角,十月之后就没有继续看了。

书籍方面也看了不少,读完的大概有25本。虚构内容方面《一句顶一万句》、《太白金星有点忙》、《食南之徒》都是很有意思的内容。非虚构方面《富兰克林自传》让我学到了很多伟人的优秀品质,《原则》也能够了解到桥水创始人的一些优秀原则,这些对于我们的个人成长都很有益处,当然,知易行难,想要跟着他们的优秀原则或者行为准则来做自己还是很难的,只希望自己能够有一点点的变化也是很好的了。

今年订阅的《读库》大约读了一半的内容,而M套餐的另一本书,全部都没有开封,因此25年还是决定只订阅S套餐了。读库的内容总体上来说还是比较有趣的,主题也比较多,还是值得继续订阅的。

旅行出行

因为23年买了车,今年旅行的次数也是多了很多。今年的长途旅行有成都重庆山东南昌,而短途的皖南的几个地方也是去看了看,上海周边也去了苏州宁波嘉兴湖州等的一些地方。总体还是以中短途为主,基本选择自驾,带着小孩,自驾在时间安排,目的地选择方面都有更多的容错空间,人也不会很累。

短途旅行一般满电出发,不需要充电可以回来。而比较远的,比如去山东,这种服务区充电也都比较方便。目前没有充电焦虑。而最近这两个月去苏州徒步了几次,目前体验感良好,后面是值得去发现更多徒步路线,徒步频率可以提高到两周一次。

生活

小朋友进入到幼儿园大班,已经开始了幼小衔接,在平时的陪学陪练过程中经常会止不住的发火,而此时只能默默告诉自己要忍住,这个时候只能提高嗓门,还没有其他的好办法。

因为这一年大多数时间都是居家办公的状态,生活和工作很多时候分得不是太清,个人也比较松弛和焦虑。松弛是因为工作量很少,大部分时间都在摸鱼做自己的事情。焦虑则是因为工作上面的焦虑。 而每天的生活就比较平淡了,为了增加一些事情,便开始养鱼。缸一直是那个缸,鱼则是换了好几波,到现在稍微稳定了一点。但是生活又重新归于平淡,每周给他们换一次水,定期喂喂食。

和父母不在一起,与他们的通话也比较少,因为不能见面,小朋友对于爷爷奶奶的也没那么的亲。老家除了过年,只中秋节回去了一次。和父母之间,除了小孩之外,其他方面的倒也没什么话题了。新的一年还是要多多关心父母。

总结

苟着的一年结束了,工作上算是一事无成,生活上也不算成功,跟朋友们的交流也不多。但是也还是有一些小进步,技术上有一些小成长,能够带着家人出去看看风景。也能够不被短视频和直播吸引,业余时间看看书,看看喜欢的剧集。

不立志可能什么事情都做不成,立志可能能够完成一般,因此新的一年,仍然要立Flag,坚持读书,重新开始锻炼身体,把难看的字给练一练,蹩脚的英语仍然需要继续花时间练习。同时新的一年也要多和家人朋友们多多互动,多多增加与他人之间的联通。也希望2025年工作上面能够有所起色,让我这个中年人在职场上依然能够站稳脚跟。

今年的总结就到此为止,来年再来看看今年的Flag完成的如何。

看完评论一下吧

  •  

一年结束的十二月月报

十二月也到了尾声,这一年也算结束了,不过在我看来过了农历新年才算一年过完。这个月重新回到职场,到目前为止算是重新适应工作,除此外,也还看了一些书,去爬了两次山,看了一些剧。

工作

工作不好找,基本没什么面试机会,最后还是经前同事内推,一起去了以前同事的创业项目。经过这几天上班,已经熟悉了环境,工作就此走上正轨,希望后面这个创业项目能够成功。

折腾

因为在家工作的原因,最近一直想做个工具,一方面想要做个习惯打卡,另一方面想要做个番茄钟。找到家里有个吃灰多年的Android Thing开发板,于是开干。

首先是使用了windsurf,让它帮我使用Rust写了个Api服务,完整实现了基于jwt的用户登录和token功能,并且实现了习惯的创建和每日打开记录功能。之后又使用docker打包,做成了docker镜像,在我的Nas里面完成了部署。所有的代码和build脚本都在github,感兴趣的可以查看,https://github.com/sangmingming/rust-todo

另外又让AI帮忙,写了一个在Android thing上运行的应用,另外淘宝买了个小喇叭连上去用来播放白噪音,目前基本功能已经满足使用,后续还可以慢慢添加新功能。

这个月出去爬了两次山,一次是月初去宁波四明山和溪口,详见四明山赏秋蜘蛛岭徒步小记。另一次则是周末开车去爬了苏州的穹窿山,走了个爱心线。

附近这种爱心线还挺多的,徒步的人也很多,一般距离就6到8千米,海拔的提升最多三四百米,带着小朋友一起爬不吃力。

之前朋友送了两张上博埃及展的门票,一直拖着没去,这个月快到期了,于是周末还是去转了转。虽然这个展已经开了好几个月了,但依然还是有很多人。拍了一些照片,但是到现在还在相机里面躺着还没有导出,对于这个展览感兴趣的可以看看旅行漫记的上博埃及文明展,他写的是很详细。看完之后又去南京路转了转,自从搬家之后,差不多有两三年没有来这边了,南京路的店铺都换了不少了,以前的几个大的服装店关了,倒是名创优品和popmart的主题店很显眼。

这个月跟着媳妇看了《猎罪图鉴二》,其中的案件还算有意思,但是几个男主炒CP真实让我这个钢铁直男受不了,所以现在的剧都已经开始gay里gay气了吗。

另外周末在家还看了《怪兽电力公司》,虽然是20多年前的动画了,但是剧情和创意还是很精彩,唯一美中不足的点要数,小朋友被吓哭了🤣。

书籍的话,看完了鲁迅和许广平先生的来往信件《两地书》,书中感受到的鲁迅和他小说中的鲁迅真的很不同,写信的鲁迅经常是个话痨,也很风趣,也很细心,他们之间的书信往来从起初的谈论政治,到后面开始互相挂念等等。真的让人感受到从前车马很慢,书信很远。其余时间,则是在看余晟的《正则指引》,以及《Linux命令行与Shell脚本编程大全》,就不题感受了。

后记

此时已是年底,到此本月的月报也算是草草写完。这几天已经有很多人的年度总结,而各个平台也已经开始了年度总结的活动了,而作为拖延症晚期患者的我,年度总结还需要再拖一拖,后面还需要花点时间想想这一年到底做了什么,来年想要做什么。

到此这一年就结束了,祝大家新年快乐喽🎆🎇。

看完评论一下吧

  •  

强大的壳-Shell Script

Shell脚本我们经常会使用,平时自己折腾Nas会用到,工作中为了配置CI会用到,自己的电脑上最近为了配置自己的命令行环境也要使用shell来进行配置。不过之前的shell功力都来自每次使用的时候网上搜索,于是最近就找了一本《Linux命令行与shell脚本编程大全》看了看,看完之后更加感受到Shell的强大,特地写个文章来分享一下。

首先呢,shell它也是一种语言,不过因为使用到的shell环境不同语法会有一些差异,在Linux上我们常用的shell是Bash,在Mac上面常用的shell为zsh,大体的语法相似的。编程语言的基本要素,Shell都是支持的,它支持变量,支持if判断,case选择,循环等结构化的编程逻辑控制,也支持基本的算数运算,同时还支持使用函数来复用代码。 简单介绍一下它的语法,首先是变量。系统为我们已经提供了很多的变量,同时在我们的配置文件中定义的那些变量也是可以读取到的。定义变量语法如下:

1
2
3
4
5
var=value #注意等号两边不能加空格
echo $var #使用的时候前面要加上$符号
echo ${var}

export varb=b #导出成为环境变量

以上方式定义的变量默认是全局的,比如你在一个函数中定义的,外面也能访问,这是时候可以定义局部变量:

1
local local_var=x #只能在函数中使用

除了普通的变量之外,shell中也是支持数组和Map的,当然要bash 4.0以上才能完整支持,使用如下:

1
2
declare -A info # 声明一个map
declare -a array #声明一个数组

而如果只是有这些东西的话,还不至于说Shell强大。而shell中可以直接调用命令以及Linux中的一些程序这才是它的强大之处。在python等其他语言中我们也是可以调用的,但是是都需要通过语言的系统调用才能调用,而shell中则是可以直接调用那些命令,只要这些程序的可执行文件在PATH环境变量中就可以。

而配合Shell的很多特性,又进一步强大了。第一大神器是重定向,重定向支持重定向输入和重定向输出,以下为一些示例:

1
2
3
4
5
6
7
date > test.txt #重定向输出到test.txt文件中,覆盖文件
ls >> test.txt #重定向,但是追加而不是覆盖文件
wc < test.txt #输入重定向
wc << EOF #内敛输入重定向
test a
test b
EOF

因为有了输入输出重定向,我们会有很多的玩法,可以方便的命令的输入写入到我们的文件中,而linux系统中,万物皆为文件,因此理论上可以写入或者读取所有东西。比如,有一个Null设备,我们可以通过以下的命令,来不展示任何运行输出。

1
2
ls >/dev/null 2>&1
ls 1>/dev/null 2>/dev/null

1为标准输出,2为错误输出,未指定的时候默认是把标准输出重定向,这里重定向到null则不会有任何输出,而第一行我们将错误输出又通过&绑定到了标准输出。当然除了这个还有更多的用法。

除了重定向之外的另一大特性则是 管道 。在某些场景重定向已经可以解决了很多功能,但是管道实现会更优雅。管道可以将前一个命令的输出直接传给另一个命令,并且管道的串联没有数量的限制,并且前一个命令产生输出就会传递到第二个命令,不用使用缓冲区或者文件。比如:

1
ls | sort | more

甚至我们还可以将刚刚的输出继续重定向保存到文件

1
ls | sort > files.txt

在很多命令的参数之类的都提供了正则表达式的支持,正则表达式能够让我们更加方便的进行数据匹配,Linux中常用正则为POSIX正则表达式,而它又有两种,基础正则表达式(BRE)和扩展正则表达式(ERE),大部分的Linux/Unix工具都支持BRE引擎规范,仅仅通过BRE就能完成大部分的文本过滤了,但是ERE提供了更强的功能,而有些工具为了速度,也仅仅实现了BRE的部分功能。

BRE支持的语法符号包括,.匹配任意一个字符,[]字符集匹配,[^]字符集否定匹配,^匹配开始位置, $匹配结束位置,()子表达式,*任意次数量匹配(0次或多次),而ERE在BRE的基础上,还支持?最多一次匹配,+匹配至少一次。而它们的更多功能可以参看这篇文章:https://en.wikibooks.org/wiki/Regular_Expressions/POSIX_Basic_Regular_Expressions

有了正则表达式以及许多的处理工具我们就可以做很多的事情了,比如说查找文件,我们可以使用find,查找某个文件夹下面为指定后缀的文件:

1
find . -type f -name "*.java" #find支持的只是通配符,非正则

而配合管道,又可以对find之后的结果进行进一步的处理,比如配合上grep可以进一步对文件的内容进行过滤。

1
2
find . -type f -name "*.sh" |xargs grep "bash" #find 不能通过管道直接传递可以使用xargs或者通过如下方式
find . -type f -name "*.sh" -exec grep "bash" {} \;

对于文本的处理,Linux中又有sed和awk两大杀器,而关于他们的使用已经可以被写成书了。sed全名为Stream editor,也就是流编辑器,通过它可以方便的查找文件内容并替换后输出,awk则是一种模式匹配和文字处理语言,通过他们可以方便的处理文本。比如说我们可以使用sed对一份CSV文件中的手机号码进行打码处理:

1
sed -E 's/([0-9]{3})[0-9]{4}([0-9]{4})/\1**\2/g' input.csv

以上关于命令的介绍只是抛砖引玉,关于他们的使用,我们的电脑中已经给我们提供了详细的介绍,只需要在命令行中输入man commandname就可以了,除此之外,很多的命令也也提供了简单的帮助,只需要输入commandname help, command --help之类的就可以看到。

如果仅仅是语言层面的功能的话,shell相比python是没什么优势的,但是它能够和其他的命令无缝的使用,并且被Mac,Linux,Unix内置可直接使用也是它的一大优势。此外我们还可以通过shell脚本来增强我们的Linux终端,比如说可以定义自己的函数,通过.bashrc引用,可以在终端中直接调用方法名执行。

通过Shell,在Linux下面的体验得到很好的提升,工作效率也可以获得很大的提高,本文只是略微提到其皮毛,希望能够引起你对Shell的兴趣,如果想要更加深入的了解,还是需要去阅读手册或者书籍。

以下是推荐的一些资料可供参考:

  1. Bash脚本编程入门 by阮一峰
  2. Bash脚本进阶指南
  3. Grep,Sek和awk的区别
  4. 《Linux命令行与Shell脚本编程大全》(可以在微信读书中看电子书)
  5. awesome-shell (值得看看的各种资料,也可以去看看别人写的shell脚本)

看完评论一下吧

  •