Everything you care about in one place

Follow feeds: blogs, news, RSS and more. An effortless way to read and digest content of your choice.

Get Feeder

blog.shanwer.top

Shanwer's Blog

Get the latest updates from Shanwer's Blog directly as they happen.

Follow now 13 followers

Latest posts

Last updated 29 days ago

直到sw变成一只软件工程师

about 1 month ago

最近的一年里真的发生太多太多了,见证了vibe coding的兴起与硬件市场的水涨船高,这个一年没写过的博客我发现都有了很多AI功能,与之伴随的应届毕业生junior level工作的大幅缩水,参与甚至协助举办了开源会议 我也很难想象毕业后能够入职头部行业且wlb的外企,通过了非常友好open的面试官与全英文面试(面试team ld说看过我博客和github的时候就感觉稳了( ),提供了很不错的福利待遇和工作条件。至少在我本科刚入学是不可能想象得到的,幸运的是我不但遇到了机会而且抓住它了 说实话,写完这些话的时候还是很后悔大学没有多逃几节课,也没有多出去玩,现在好怀念上课的感觉,毕业典礼感觉一点也不重要,也没有和宿舍相处四年的舍友吃过饭,也没和同班或同级同学吃过几顿饭,反正就这样结束了 我也有多久没有静下心看过一本书,一篇完整的文章,甚至是一部完整的番剧了,也很久没有静下心游玩Minecraft,这个作为我计算机启蒙教育的游戏,在工作之后都得捡起来,直到sw变成一只软件工程师,嗯。

使用pg_upgrade升级容器内Postgres数据库

over 1 year ago

PostgresSQL不同主要版本之间不兼容,需要手动升级 pg_dumpall或pg_upgrade都可以用来升级,前者是对整个数据库进行转储再在新的数据库上导入sql,Mt提到在特定版本有可能出现问题,后者是PostgreSQL的专用升级工具,大数据量速度快并且稳定,因此使用pg_upgrade。 pg_upgrade需要至少四个参数: pg_upgrade -b oldbindir [-B newbindir] -d oldconfigdir -D newconfigdir...

面试经历-上海量魁私募基金管理数据运维实习生

over 1 year ago

如题,在boss上找的,投了之后过了两天就约线下面,准备的不是很充分 3分钟自我介绍,感觉线下面比线上面紧张多了,是集体面试,还要求成绩单,但我是大三在校生没有带,还有三个哥们和我一起,但是他们都是应届毕业生,甚至还有一个是大四信安的学长,快到我介绍的时候非常紧张,面试官有两个人 问了OSI七层模型和TCP/IP的共同点,具体怎么定位故障 物理层,网络层,传输层,应用层?是这样吗,记不得了,然后定位的话就先从ping网关ip开始然后一直到外网ip再到域名检查DNS问题 他们在问别人的时候还有拒绝ping的情况(丢弃icmp包),如果是我的话就tcping呗,他们没答上来;以及传输层协议,也就TCP和UDP,这没什么 数据结构,链表和顺序表的差异 非常简单,不用多说什么,不过想到大厂面试会在你手搓完问一下删除后内存泄漏的情况,然后也提了一下,还有java实现里即使用到linkedList场景基本都会用arraylist来替代 哈希表碰撞怎么解决 KV value退化成链表/优化哈希函数 我就知道这些,还有哥们没答上来 linux...

奇怪的小米BE 6500 Pro

almost 2 years ago

之前朋友送了一个BE6500 Pro给我,可以解锁ssh并且科学上网,于是参考以下谷歌到的文章 草东日记 – 小米路由器BE6500 Pro · 解锁SSH 启用科学上网 无脑复制粘贴了shell之后,指示灯橙色常亮并且无法绑定米家,多次重置与重刷官方固件也没有用,客服问到自己用官方工具降版本后说要自己承担售后责任,后来想到上网正常clash也正常使用就取消了售后(2024.9.16) 1个多月后回到家,因为香港做中转穿透出来的笔记本rdp在垃圾校园网下连接质量比较堪忧,打算在路由器上架设一个frps,也就是下面所说的 昨天(2024.10.31)找电信客服要求光猫重新切回桥接模式,否则家里有两层NAT环境,路由器从光猫DHCP获取内网IP地址,如果要端口映射需要修改两层配置,很不方便,后来先前加过微信的电信师傅说他们没有权限帮我开仅桥接,而是只能开混合模式(路由+桥接),然后帮我请示了上级看能不能切,太离谱了,应该是反诈导致的。然后准备安装frps的时候找可用空间比较高的挂载点,打完df...

本站现已支持HTTP/3,那么,代价是什么

almost 2 years ago

前言 暑假打了两个月工,非常累。开学的前三个星期开始康复训练,除了上课基本就是在玩游戏和看少女乐队,直到昨天晚上(9.22)总算电子阳痿了,想到不好好学习以后就得毕业即失业了,于是掏出了自顶向下来看。印象里学校的计网课程甚至传输层协议都是几笔带过,更别提应用层协议,大量时间都在网络底层上,一度让人怀疑自己是来到了通信工程专业的教室。果不其然,自顶向下很多也忘了,甚至套接字的概念都是模糊不清的,看了一会儿书打算做下lab 1复健一下,可惜时间太晚就上床了。后来和社团群友聊天,我在扯给UDP加上排序和重发不就是没有握手的TCP,然后群友提了一下QUIC,我顺势搜过去就看到了RFC 9000,也就是HTTP/3。打算睡醒了就给服务器配上HTTP/3。 升级&配置Nginx 升级Nginx服务器还有更新配置文件我就不多说了,看这篇文章就够:是时候为网站开启 HTTP/3 支持了吗 – atpX,我主要讲一下(自己造成的)踩过的坑。 我直到要配置的时候才想起来,高中的时候给这台香港轻量服务器留了不少坑,那时候因为还是一知半解的程度,这台机器主要都是用一键包配置的。(lnmp.org)现在用它也不敢了,因为很多面板/一键包都遭到了供应链投毒攻击,我自己也试过再用一键包的脚本编译安装更新,不出意料的失败了,还把nginx弄没了(还好拍了快照(要是以前的我肯定就滚回去打退堂鼓了)),想到之前上linux课的时候也教小白同学apt直接装NMP环境,没想到直接成功了(我也帮了点忙),于是打算换apt更一个试试,结果阿里源太旧压根没有官网的stable version。(我用的香港服务器为啥要用阿里源(但是看别人博客里说Debian源也很旧())),然后就老实添加nginx官网的pgp...

stargazer pose

about 2 years ago

The Stargazer Pose is a stunning addition to any yoga practice. Imagine...

9.14小记

about 3 years ago

上大物课上的头昏脑胀,好在旁边的哥们在看《黑马程序员》来在安卓平板的Windows 11 ARM上配置MingW以编译c++程序,看他做这些比听听不懂的大物有趣多了,就是有些时候的操作令人血压很高,高到以至于社恐的我都忍不住帮他配置了。 好不容易熬到下课休息了,我走到教室外看会儿窗外的风景,其实也没有什么风景,至少楼底下没有,楼下的画面就像下面这张照片一样,单调无味,不过,下雨的空气我很喜欢,走到植物多的地方狠狠地吸入一口空气,空气的味道有一种新奇的感觉 那么,为什么我会拍下这张照片呢,因为那时候风很大,动态的物体相较于静物更容易引起人的注意,这张照片的画面中央有一棵随风猛烈摇晃的草,很是无助,不知道触动了哪根神经,便把这幅景象拍了下来 如果只是看照片的话,甚至注意不到中间有一棵在夹缝中生存的草 我是这么想的,如果植物也有感情的话,他肯定会认为自己存在于这个世界上就是很痛苦的事情吧,会被人随意践踏,被阳光曝晒,被风吹雨打,生存是这么痛苦的事情,这样的话,早点结束痛苦也是一种解脱吧,毕竟,他不能选择作为温室的花朵成长,有人照顾,有人欣赏,当然,也有可能,他甚至不知道有那种花朵般安逸生活的存在,什么也不知道的话,也许他也能够默默地忍受这一切 既然如此,说不定他会认为吃苦是一种磨炼,是一种苦难,苦难应该被歌颂,被赞扬 可能也只有我这么无聊,也许整个学校也只有我会去给这样的一棵草添上这么多笔墨,不过我小时候就是这样子,到也习惯了,但只对这样的一棵草,而忽视了其他生活在更隐秘角落的植物,似乎也是一种不公平,啊哈哈,这都想到哪里去了 我想起了前些天碧蓝档案的一句话,孩子们会受苦不是孩子们的错,创造出让孩子们痛苦的世界,责任应该由身为大人的我来承担 …… 可惜,这里不是二次元,更不是基沃托斯...

MC服务器迁移数据笔记

almost 3 years ago

先前的IDC要到期了,友人那边给了台Linux服务器,需要打洞出去,frp服务器也有热心的同学提供,基本上只要搬搬东西就好了,下面我顺着这张图介绍一下流程 Frpc 这个配置很简单,local_port和remote_port对应好就行,然后顺便写份frps给社长让他复制下就能跑,至于图上的一些本地和远程端口不一致是因为先前的IDC端口映射端口分配是不对等的,为了不给后续dns中的srv记录修改添麻烦,就照先前的端口填,玩家得通过FRP访问服务器,frpc挂tmux上就行 sources.list 在安装一些软件包的时候遇到挺多麻烦,机器的另外一个使用者好像不太熟悉Linux,把sources弄的很乱,后来翻了些文章,可以用这个LUG’s repo file generator (ustc.edu.cn)来直接对应系统发行版本生成sources.list,此外,/etc/apt/sources.list.d/里好像还有他留下来的问题,这个会和sources.list一起被apt解析来着 Ubuntu似乎是22.04后加入了仓库GPG Key的验证,照着几个文章配得云里雾里的,这个我也不太懂,之前在github上和idea一起配就出了问题,就不误导别人了 MCSManger...

数据结构课程设计

almost 3 years ago

源代码仓库在下方卡片↓  GitHubShanwer/Data-Structure-Curriculum-Design   1 引言 该课程设计旨在实现一套能够完全随机地生成带括号的四则运算表达式的算术练习器以供学生进行算术练习,在这个基础上,随时可以退出,并保存历史分数,能回顾历史,???时在完成练习后给出与历史成绩比较后的评价。这就围绕着随机算术表达式的生成到逆波兰表达式(RPN)的转换,最终对RPN进行解析并计算结果这三个步骤来完成。 该课程设计在Windows 11 23H2系统下,使用Clion 2023.1.5 IDE与MinGw编译环境开发。 2 系统设计...

记处理一个奇怪的锁屏显示问题

almost 3 years ago

好像是因为之前使用了QQNT,想要用CCleaner删掉旧QQ的文件,结果发现那玩意儿根本不会清,倒是清理了点注册表,之前清理注册表的时候从来没出过问题,想着清理下也好,那就清理吧,结果后来发现锁屏的时候只有黑色画面,当然我也不确定是不是他导致的,于是按照关键词“在登陆屏幕上显示锁屏界面背景图片”进行一通搜索,又是清注册表又是dism检查,sfc /scannow,还有修改ProgramData文件夹所有权劳民伤财,难受了好长一段时间都没有解决这个问题,忍无可忍,今天动了动脑子,发现可能是更改那个所有权导致的,下面图片文件夹以及子文件夹的所有权打包改为管理员账户本身了,所以系统没有权限存放图片在这个路径下,把所有权还给System就好了,不愧是我

计算机科学学习指南

almost 3 years ago

前言 这是什么 这是一个写给计算机专业学生的一本指南,如果你只是单纯的喜欢计算机而学习的话,也可以在这里找到一些可圈可点之处,包含了对学习计算机的一些建议和一些公共认可度比较高的学习链接,受到我创办 开源x计算机x二次元 同好会的启发,阅读了CSDIY与我个人的一些胡思乱想而写的。如果有更好的建议和想法,欢迎在评论区提醒我讨论并更新,文字比较多,善用目录跳转。 一些吐槽 由于我国庞大的人口基数,对开源的态度与行为因人而异。开源开发者对软件供应链做出的贡献使得他们应当得到最基本的尊重,然而,他们辛勤的劳动成果被转手倒卖或者修改文本并标榜自研之类“佳话”屡见不鲜。这是令人遗憾的,但在生活中也并不少见。随着中国全社会物质生活的巨大进步,相信一些落后的思想会紧随其后跟上物质领域的深刻变化。 如何学习 计算机科学是一门系统性的科学,计算机科学并不是说,你会写几行代码,调用几个第三方库就代表你懂得Computer Science了。你需要多方面知识体系的综合支撑才能自豪的宣称你是一个计算机科学家/工程师。 我在下面提供一些资料的传送门,此外在浅谈一下我个人的学习心得。对于本文或者本文包含的资料如果有建议和想法都可以提出并贡献给他们。 课堂内...

GitHub workflow的介绍与Git压缩commits的方法

over 2 years ago

 GitHubShanwer/Geyser   背景 前几周更新了Geyser,发现无法登录到服务器了。后来稍微看了一下,发现由于Minecraft:Java Edition已经(终于)完成了Mojang Account到Microsoft Account的全部迁移工作,因此在Geyser中废弃了使用Mojang Account登录的功能,Geyser官方提供了一个Floodgate插件,但是绑定UUID和使用皮肤过于繁琐,一开始没有发现解决方案,也没有什么人玩,姑且先放在一边暂时用着。后来和群友聊天提到是可以恢复之前被移除的功能的,于是我自己开始试着修改服务端,通过查阅issues,commits和pull requests后总算完工了。(划重点了)由于需要同步Upstream时不时的修改(基岩动不动更换协议版本导致的),不可能每个Upstream的commit都让我挨个手工同步并编译,所以使用了GitHub Actions的workflow来实现CI与自动Sync&Merge功能。 workflow配置 当你创建一个新workflow时,可以选择很多预先写好的配置文件,比如Java with...