一个迷茫的25岁前端程序员的自述
作者:一尾流莺
一直听说程序员的危机在 35 岁,没想到我的危机从 25 岁就开始了。
我甚至不知道自己是不是 25 岁,也可能是 26 岁,或者 27 岁,1998 年的生日,按照 2023 - 1998 的算法就是 25,按照我老家那边的算法就是 26,也有人说是 27 ,无所谓了。
看着自己的更文,上一次沉下心来好好的写一篇文章还是六个月前,那时候为了跳槽找工作,又写网站,又写文章的,过了那阵后来就不行了。
再往后稀稀拉拉的也在草稿箱里写了一些东西,东一榔头西一棒子,但没有一篇能看的,能发布出来的。
今年社区的年终数据肯定不会好看,当初还想着要一年比一年强,结果一年快过去了了也没发布几篇文章,数据也都一般。
就连本文也是硬着头皮强迫自己写的,看看能不能借此调整调整心态。
也看过一些鸡汤文,像什么写给迷茫的xxx啊,写给年轻人啊,说实话没半点哔用,什么让你调整心态,自我提升,学好这个学好那个,我但凡要有那个劲,也不会迷茫了。
(顺便吆喝一声,技术大厂,前后端测试捞人,感兴趣的看机会)
技术停滞不前
刚入行的时候,完成工作后剩下的时间,都会去看看技术视频啊,看看别人的博客啊,再或者看看一些三方库的文档和源码啊。
也可能是因为那会实在太菜,连工作都完成不了,就得被迫去提升基础能力。
再后来当了个小组长,虽然小组只有仨人,但是毕竟责任在,能给别人分配分配任务啦,给别人解决点小 bug 啦,再或者以组长的身份整两句啦,说实话稍微有那么一点点优越感,也就是靠着这一点点优越感,天天嚷嚷着要当一个架构师,这也学学那也学学,还看完了一个架构师教程,确实学到了不少东西,实际也用到了不少。
后来到北京,再次成为了一个底层的外包 coder, 每天除了听话和写业务代码也不用管别的。
后面公司又开始搞低代码,这回连代码也不用写了,就天天去系统上拖着玩,写配置,真心没意思。
说心里话,以我现在的能力吧,应付业务肯定是没有问题的,简单的页面基本不用思考随便写了,稍微复杂一点的动动脑筋,遇到困难就上网搜搜解决方案,问问 chatgpt,最不济实在搞不出来了,找个大佬问两句,最后也都能解决。
总结起来就是,能干活吗?能干。 能力强吗?不强。
技术文章收藏了不少,掘金小册也买了,视频也保存了一大堆,各种各样的。现在的状态就是看不下去,视频看一会就走神了,讲的什么完全记不得,还要后退回去再听一遍,文字更是看不进去。没有耐心去看文档,看不明白就开始烦了,觉得自己真傻逼的同时又不愿意去研究。
看视频的时候记不住,也不愿意记笔记。看文字的时候看不懂,也不愿意去实际操作一下。
现在把工作完成了,就摸鱼,看新闻,到处逛逛,刷短视频,真的不愿意学一点。
下班之后的时间就更不用说了,根本不愿意动一点脑子。
我有时以为是不是我生活的太好了,有吃有喝,没有压力。但转念一想现在如果给我大的压力,以我现在的心态能不能支撑的住。
但平时也经常想,自己就是一个破的被人看不起的外包,跟正式员工区别对待的外包,身边比我强的人比比皆是,那些月薪几万的正式员工,还有组长,组长的组长。前进的路很长,但就是不想走,不知道怎么走。
想学习吧,不知道从何学起,确定了要学习的内容吧,学不下去。
博客也不写了,开源仓库也不维护了,是躺平,亦或是摆烂,每天看着窗外发呆也占据了大部分时间。
生活百无聊赖
工作没有动力,生活亦是如此。
我现在工作的地方是北京顺义,住的地方就算是个村子,村子外面就是野外,没有一点城市的车水马龙和霓虹招展,一到黑天除了路灯照到的地方就是黑漆漆,没有广场,也没有广场舞。
每天下班回家就待在家里玩游戏,看电视剧。不知道会不会有人和我一样,玩游戏和看电视本应该是消遣娱乐的事情,但我感觉到的只有无聊,玩游戏的时候无聊,看电视剧的时候也一样。但你又不能什么都不干,你又得干点什么事情来让时间过度到需要睡觉的时候。
饭也不用自己做,公司的食堂一天三顿饭都有,早上要花钱买,一顿六七块钱左右,中午和晚上免费,不吃白不吃,每天六点下班,七点开饭,我都要在公司多摸一小时的鱼。也不用思考吃什么,在食堂供应的几种餐食里面选一个也不是什么困难的事情。
我这个人没有什么兴趣爱好,熬过上班的时间,就是玩游戏,看电视,看直播。也只是消磨时间,谈不上兴致勃勃。就没有上学时候宁可挨打也要偷摸去网吧通宵玩游戏的那个心境了。
其次,也没有什么社交,老家有几个朋友,平时在群里瞎聊两句,过年的时候一起吃个饭,也没别的了。之前在大连有几个朋友,现在也是极不频繁的闲聊两句。到北京以后呢,没朋友,没亲戚,自己一个人住单间,也没有室友。
也没有什么圈子,游戏基本上都是单排,就连游戏交流群都没加一个,有的时候发挥好了,别的人主动加我好友就一起玩两把。
也不爱运动,健身更是无稽之谈,每天最大的运动量就是从家骑自行车到公司,再从公司骑自行车回家,还是因为我不想早起挤公交。
平时极不愿意与陌生人打交道,路上碰见不太熟的都会装没看见。可以说是内向吧,也可以说社恐,甚至说我孤僻也没觉得有什么不妥。
但我一直都是这样吗,好像也不是,我大学时候是学院的辩论队教练,在数百人的场地里演讲,宣讲,打辩论赛,教学,做评委述票都迎刃有余,各个学院都有熟人,一块玩桌游,狼人杀,有很多朋友也爱交朋友。
似乎就是从毕业以后,又或许是分手以后,又或许是来到北京以后,短短的数月时间,感觉自己老了很多岁一样。
你问我是放不下她吗,好像也不是,平时也不怎么想,甚至连长什么样都记不清了。
那是一种什么感觉,大概就是放下她了,但没放下失去她吧。
假期回家,很多人说给我介绍对象,又期待又觉得无所谓,或许他们只是寒暄吧,也或许真的会介绍。不想,不愿意,又或者不耐烦去重新认识一个人。
假期在家的时候,以前不屑一顾的小夜市变成了我的一处乌托邦,太长时间没见过的市井气息,小吃摊前围绕的吃客,卖玩具的老板在尽力展示,还有踩高跷的表演,扭秧歌的队伍。还有一伙一伙的广场舞,我不跳,但我爱看,爱看大爷大妈们乐在其中的表情。
哪一瞬间开始觉得自己是个废物
我在朋友圈问过这个问题,得到的答案基本都是 “每一瞬间”,或许他们只是在说笑,也或许有的人真的这么想。但对我来说不是这样的。
我以前一直都自我感觉挺良好的。或者说自我感觉不错。
大学以前的成绩都是中等偏上水平,成绩还行,也拿奖状什么的,经常被夸奖。
大学也是一个普通本科,比上不足比下有余吧,虽然大学挂了很多科,但恰好赶上疫情,学校降低了毕业要求,顺利毕业了。
毕业以后找不到工作,交了 200 的定金准备去培训公司培训了,然后面试的最后一家告诉我通过了,我就没去培训。
边工作边学习,后来跳槽还当了个小组长,工资翻了接近一倍。
第一个对象在大一认识的,谈了一年。后来这个是疫情期间认识的,谈了三年。
家里条件一般,但是能吃饱饭,父母自给自足也不用我支援。
当时的我工作不愁,感情不愁,身体健康,生活没有压力。说自我感觉良好没有什么问题吧。
从小被灌输的概念都是近朱者赤近墨者黑,身边的人优秀才会激励你进步,但对我来说,身边优秀的人越多越容易摆烂。
以前在小公司当组长的时候更愿意去提升,现在当底层反而想躺平。
当你从最优秀的那些人中的一员成为最差的人中的一个,落差是很大的,体验感是十分差劲的。虽然工资翻了一倍,但生活变差了很多倍。
20 岁的时候单身,觉得无所谓,成天就是玩,30 岁的时候单身就会焦虑,担心自己能不能找到对象,或者说随着年龄越来越大,越担心能不能找到一个好女孩。
无论是分手,还是当外包,其实都还好,虽然说心情不太美妙,但一直也没对自己产生这么大的恶意。
直到国庆放假回家,我叔叔家有个小弟,比我小几岁。他的两个同学来接他同学聚会。俩孩子开着车,拿着伴手礼,奶,酒,还有水果。跟我叔叔我爸他们一起喝酒,言谈举止,人情世故活脱脱是个小大人,几杯白酒下肚啥事没有。来到陌生的村子跟几个陌生的人打麻将一点不紧张,输赢先不说,就这份勇气我就没有。明明我比他们要大几岁,可在他们面前我反而像个小孩子。
就在那一瞬间,我才意识到我是多么的没用,老话讲人比人得死,货比货得扔不是没有道理的,不需要别人来对比,自己都会自愧不如。
驾照考了好几年了,却连车也不会开,要说买一个二手的便宜的车开,确实能买得起,但是不敢。
三十来岁的人了,别人都开着车到处跑,我还停留在父母去哪,我就跟着去哪的阶段。
我还给自己找借口,人家是租车公司的经理,每天跟各种人打交道,我就是个坐办公室的,没有什么历练。
怪性格也好,赖工作性质也罢。说白了就是没见过什么世面,没有什么阅历,三十来岁的年龄,十几岁孩子的见识。
说一句废物一点也不为过吧。
羡慕这两个字我已经说够了
大学玩的最好的朋友,现在在大连,经常跟我秀,自己有车,有房,有媳妇,媳妇有店,在要孩子。
再看看我自己,没车,没房,没媳妇,在村里租房子,在排位上分。
我虽然表面不屑一顾,说一句厉害坏了,但心里只有羡慕。
正式员工隔三差五发福利,半袖,外套,纪念品,外包什么都没有,只有羡慕。
国庆放假,没抢到高铁票,在公司拼了个车回去。
车是什么牌子,不知道,只知道看起来很好,应该不便宜。同事开车,闲聊中得知他比我小一岁,喊我哥,带着自己对象回家过节。
我坐在后排,闭着眼。坐着比我小一岁,领着对象回家过节,开着看起来不便宜的同事的车,心里只有羡慕。
回家吃婚宴,看着布置好的新房和现场的典礼,没有心思截门要红包,心里只有羡慕。
我从来不羡慕那些有钱人,富二代,也不羡慕那些天才,超能力,我觉得他们离我太远,跟我没有关系。但我真的羡慕明明跟我差不多,但是比我懂事的孩子。
羡慕这两个字,我已经说够了。
写在最后
现在的心态就是活着没意思,又不敢死。
说到底,我现在的生活已经比一部分人要好了,我也知道有很多人羡慕我这样的生活,也有很多不如我的人心态比我要阳光,要积极。
或许我是在无病呻吟,或许我是生在福中不知福,又或许我是闲的没事,但我只是把我内心的真实想法表达出来而已,我无意伤害任何人,包括我自己。
就希望自己能快些振作起来,让生活走上正轨吧。
至于这要花费多长时间,我也不得而知,希望很快吧。
————————————————
可能很多人都有那么压抑、不得志、开心不起来的一段时间,但朝前走,往前走比一切都重要!生活有时候就喜欢柳暗花明又一村,转这篇帖子的意义也是想告诉大家,都有过这段经历,不用觉得是不是只有“自己没救”了,真的累了就躺平一段时间,没关系的,时间掌握在你的手里,应该你说的算,与其焦虑,惶恐,不如就该休息的时候好好休息,该玩的时候好好玩。这样,才能有再次、n次出发的勇气!用于年轻,永远热烈盈眶!
相关文章:
一个迷茫的25岁前端程序员的自述
作者:一尾流莺 一直听说程序员的危机在 35 岁,没想到我的危机从 25 岁就开始了。 我甚至不知道自己是不是 25 岁,也可能是 26 岁,或者 27 岁,1998 年的生日,按照 2023 - 1998 的算法就是 25,按…...

多文件并发多线程MD5工具(相对快速的MD5一批文件),适配自定义MD5 Hash I/O缓存。
自己写的多文件 MD5校验工具,一个文件开一个线程,有最大I/O 缓存设置,兼容读写MD5后缀文件。 共计91个文件,合计180G左右 12分钟左右,UI基本卡废,但程序没蹦,属于正常。 卡的原因是基本是用 I/O…...

Pikachu-url重定向-不安全的url跳转
不安全的url跳转 不安全的url跳转问题可能发生在一切执行了url地址跳转的地方。如果后端采用了前端传进来的(可能是用户传参,或者之前预埋在前端页面的url地址)参数作为了跳转的目的地,而又没有做判断的话就可能发生"跳错对象"的问题。 url跳转比较直接的危害是: …...

如何下载和安装CLion,图文详解
一、下载 登录JetBrains官网,下载最新版本的Clion,Clion目前没有社区版,都是专业版。 二、安装 1、启动Clion安装程序,下一步。 2、修改安装目录,下一步。 3、创建桌面快捷方式,更新PATH变量࿰…...
vue3导入本地图片2种实现方法
在<script setup>中使用import语法: <template><img :src"logo" alt"Logo"> </template><script setup> import logo from ./assets/logo.png; </script> 使用Vue的ref来动态地在<script setup>中…...
leetcode 刷题day36动态规划Part05 背包问题(完全背包、518. 零钱兑换 II、377. 组合总和 Ⅳ、70. 爬楼梯 (进阶))
完全背包 完全背包的每件商品都有无限个,和01背包的一不同主要体现在遍历顺序上。为了保证每个物品仅被添加一次,01背包内嵌的循环是从大到小遍历。而完全背包的物品是可以添加多次的,所以要从小到大去遍历。 518. 零钱兑换 II 思路&#…...

检查jar冲突,查找存在相同class的jar
写在前面 本文看下如何查找jar冲突,即查找哪些jar包中存在相同的class。如果是存在相同jar的不同版本,基本一眼就能看出来,然后结合maven的依赖关系将其剔除掉即可,但是当你遇到了有人手动拷贝某些class到jar包中导致冲突的情况时…...

PhpStudy-PHP5.4.45后门漏洞应用程序(C++/base64/winhttp)
PhpStudy-PHP5.4.45后门漏洞应用程序(C/base64/winhttp) 前言引言(时间回到多年前) PhpShellCmd.exe使用介绍:(1)输入网址检测是否存在PHP/5.4.45(2)whoami(3…...

【优选算法】(第二十七篇)
目录 重排链表(medium) 题目解析 讲解算法原理 编写代码 合并K个升序链表(hard) 题目解析 讲解算法原理 编写代码 重排链表(medium) 题目解析 1.题目链接:. - 力扣(LeetCod…...

学习Flask框架
Flask简介 Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。 Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension 增加其他功能。Flask没…...

Elasticsearch:使用 LLM 实现传统搜索自动化
作者:来自 Elastic Han Xiang Choong 这篇简短的文章是关于将结构化数据上传到 Elastic 索引,然后将纯英语查询转换为查询 DSL 语句,以使用特定过滤器和范围搜索特定条件。完整代码位于此 Github repo 中。 首先,运行以下命令安装…...

人脸表情行为识别系统源码分享
人脸表情行为识别系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vis…...

ThreadLocal原理解析及面试
基本使用 讲原理之前,我简单写个demo小程序说说怎么使用 public class TestThreadLocal {public static void main(String[] args) throws InterruptedException {ThreadLocal<String> tl new ThreadLocal();/**主线程设置了一个值*/tl.set("SSSSSs&…...

探索未来:mosquitto-python,AI领域的新宠
文章目录 探索未来:mosquitto-python,AI领域的新宠背景:为何选择mosquitto-python?库简介:mosquitto-python是什么?安装指南:如何安装mosquitto-python?函数用法:5个简单…...
C++版iwanna1
第一篇目录 开头程序Game.cpp源文件Player.h头文件Player.cpp源文件trigger.h头文件trigger.cpp源文件Cmp.h头文件Cmp.cpp源文件 开头 大家好,我叫这是我58。 程序 Game.cpp源文件 #define _CRT_SECURE_NO_WARNINGS 1 #include <iostream> #include <c…...

LSTM变种模型
一、GRU 1.概念 GRU(门控循环单元,Gated Recurrent Unit)是一种循环神经网络(RNN)的变体,旨在解决标准 RNN 在处理长期依赖关系时遇到的梯度消失问题。GRU 通过引入门控机制简化了 LSTM(长短期…...

Python进阶--函数进阶
目录 1. 函数多返回值 2. 函数多种传参方式 (1). 位置参数 (2). 关键字参数 (3). 缺省参数 (4). 不定长参数 3. 匿名函数 (1). 函数作为参数传递 (2). lambda匿名函数 1. 函数多返回值 def return_num():return 1# 返回1之后就不会再向下继续执行函数体return 2 resu…...
elasticsearch 8.2 设置账号密码
背景:单节点集群数据写入测试-CSDN博客 前述项目支持设置账号密码,但8+版本似乎不能那么做了。 ERROR: [1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch. bootstrap check failure [1] of…...
JavaScript代码如何测试?
测试JavaScript代码是确保其功能、性能和可靠性的关键步骤。以下是一些详细的步骤和方法,用于测试JavaScript代码: 1、编写测试用例 首先,你需要为要测试的JavaScript代码编写测试用例。这些用例应该涵盖代码的各种功能和场景,包…...

案例分享—国外ui设计优秀案例
国外企业更注重用户体验设计,倾向于简洁清晰的设计风格,以提高用户的使用体验和操作效率。他们注重“简约至上”的设计理念,认为简洁的设计可以减少用户的认知负担,提高用户的工作效率。 设计师在界面设计中往往更加注重创意性和个…...

【JavaEE】-- HTTP
1. HTTP是什么? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议,HTTP是基于TCP协议的一种应用层协议。 应用层协议:是计算机网络协议栈中最高层的协议,它定义了运行在不同主机上…...

python/java环境配置
环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...

k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
MySQL账号权限管理指南:安全创建账户与精细授权技巧
在MySQL数据库管理中,合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号? 最小权限原则…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...
CSS | transition 和 transform的用处和区别
省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...