我为什么选择成为程序员?
前言:
我选择成为程序员不是兴趣所在,也不是为了职业发展,全是生活所迫!
第一章:那年,我双手插兜,对外面的世界一无所知
时间回到2009年,时间过得真快啊,一下就是15年前的事情了,15年前我刚小学毕业,在此之前我从未接触过电脑,电脑对于我来说是个遥远的“物件”,从未用过电脑,也从来没想过电脑会给我的生活带来什么改变,还记得初中第一次去电脑室上电脑课的时候,我连电脑如何开机都不知道,班上条件好的同学,或者那些“不乖”的同学会去网吧玩电脑游戏,可能了解一点电脑,对于我们这种家里条件不好的,相对也比较“乖”的同学来说几乎没去过网吧,电脑可能也就是出现在书本里的知识,第一次去上电脑课的那种兴奋以及到了电脑室以后连怎么开机都不会的尴尬,现在都还历历在目!

我对上网没什么兴趣,主要是老师和父母反对,自己也没什么钱,唯一能接触到电脑的时候就是上电脑课的时候学一下怎么打字,我学会玩的第一款游戏叫做“蜘蛛纸牌”,

在我的印象里,那时候的电脑还是用的window xp系统,那是我对电脑的最初印象。

老家的紫外线强的让人想死,我的父母每天顶着烈日劳作,皮肤被晒的黝黑,三十岁的他们却苍老得像五十岁一样,但是一年下来却挣不到几个钱,开学前是最难熬的,因为父母经常会为了凑足我的费用而不断争吵,那时候的梦想很纯粹,能正常上学,能多有一点零花钱,能吃饱饭,以后长大了不用再下地干活(我真的很讨厌晒太阳),电脑这种遥远的东西,我真的没有想过我能拥有它!介于当时的生长环境,怎么也想不到以后的我会和程序员这个行当有任何的交集。
第二章:命运的齿轮开始转动

整个初中能接触到电脑的机会不多,到了初二和初三电脑课也被停了,老师给的解释是“这东西不考试,我们要把精力花在刀刃上!”
所以我也全身心投入到文化课中,这时候对我来说也没什么影响,因为我本身对电脑也"不感兴趣",中考结束以后我的成绩还算理想,考上了市里一所还算可以的高中,学校的配套设施很完善,老师讲课都使用电脑,课间休息的时候经常使用,电脑看篮球比赛,放假的时候别人都回家了,我们就几个同学留在学校,一起用电脑看电影,有什么问题就会用电脑去网上搜一下,我们的数学老师天天用电脑玩"三国杀"这款卡牌游戏。

我们也会经常用电脑下载音乐,电影之类的东西!我离电脑的距离也越来越近了,但是那时候电脑对于我来说只是一个娱乐工具,并不知道他能给我带来任何的经济价值,那时候的我打字还是用一根手指,这个习惯一直保留到我上大学接触到英雄联盟这款游戏!这里先按下不表,后面我再说这个事。
第三章:歪打正着之面向薪资选专业
不要和穷人谈理想,因为穷人已经尝了很多生活的苦,不习惯理想这么甜的东西,会让他们水土不服!

时间来到2014年的七月,那时的我刚经历了一场失败的高考,感觉人生非常的暗淡,我想到复读,可是父母没有什么文化,他们听了很多,“本来考上了,复读一年没考上”的故事,死活不让我复读,因为他们觉得我已经考上一本了,已经很好了,复读反对,再加上自己家里如此贫困,我也只能选择去报志愿,我选志愿的策论很简单,就两个:
1.那些学校是一本学校且招的人数多
2.哪些专业毕业以后收入高!
上网查了一圈后很多人都说通信工程和网络工程毕业以后薪酬待遇相对较高,我也不知道是真是假,我直接把所有学校的所有拍在全面的专业都写成了通信工程和网络工程!我上大学了,并且上了通信工程专业,这是我新的开始,从此以后我将会经常以电脑为伴!
第四章:划水的大学生涯
大学下学期我开始接触编程,我接触了第一门编程《C语言程序设计》,

这时候我也有了自己的个人电脑,大部分时间电脑还是被用在娱乐上,偶尔也会用电脑做写实验课的作业,外加一些电脑的基础课是需要考试的,这时候我几乎每天都要花时间去接触电脑,很多的电脑软件安装了卸载,卸载了又重新安装,也有一些电脑软件虽然安装了但是一直没用过。“差生文具多”,这句话绝对有他的道理!

不管你承不承认,农村的孩子和城市的孩子始终是有差距的,比如在对电脑这一点就很有差距,城里的孩子接触的早,所以长大了学习电脑方面的知识也更快,农村的孩子起步比较晚,所以我到了大学学编程就会感到”水土不服“!学习编程我感觉是很痛苦的,很多时候我学不懂,导致我更没什么兴趣了,所以我的大学生活学习基本上都是在划水,基本上都是60分飘过,或者给老师发短信,求老师让我过,编程课基本都是靠背,硬是把编程学成了语文,操啊!这种痛估计只有学渣才能理解得了!

但是这个时候我入坑了英雄联盟,这款游戏好玩,但是也很气人,我经常会在游戏中和别人对喷,每次和别人对喷我都因为自己一个手指打字,被别人骂的气死,为了和别人对骂不落于下风,我改掉了自己一个手指打字的习惯,慢慢的,我打字速度也变快了,从此别人要是骂我,我就骂死他,成了真正的键盘侠!(当时我一般不会主动骂人,也不会在网络上和别人对线,只在游戏里和别人对线)

第五章:放弃吧,少年
可是我也知道,日子不能这样过呀,像我这样的孩子,我能靠谁呢,反正编程是学不进去了,那就想别的法子吧,于是我就尝试别的出路,我去做过很多兼职,去图书馆当图书管理员,去发传单,去来着三轮车给别人送水,也自己做过一些小生意,当学生开学的时候我们室友就会去进货,搞一些新生用品来卖,赚点生活费,同时也是为了锻炼自己的能力,印象最深的是,大二的暑假,那个暑假我没有回家,我做了一份有挑战的兼职,你可以理解为销售,个人对商家销售一些产品,然后我们再从公司赚取佣金,没有底薪,没有提成,只有佣金,我搞了一个假期,没卖出一份产品,每顿都吃一块三一碗的热干面,我真的吃吐了,后面我看到热干面我都干呕!

第六章:少年,回头是岸
这个暑假的经历,让我不得不思考,我是否真的适合做销售这份工作,编程虽然难,但是学好了确是一辈子的手艺,古人云:“天旱饿不死手艺人”,于是我又硬着头皮开始学,可是学什么呢?那时候Java比较流行,而我又刚好有一门课就是Java,刚考完没多久,还有一些印象,于是我就每天学习,误打误撞的终于在毕业的时候找到了一份软件开发的工作我,我也顺利成为了一名Java程序员!

终章:回望过去,全是无奈

我不是一个有梦想的人,也不是一个很有规划的人,成为一名程序员既不是我的兴趣爱好,也是不起球为了职责发展,只是在贫瘠的环境中,让我时刻需要为了自己生计发愁,为明天的饱和饥而担忧,如果可以的话,我也愿意一双拖鞋,一条短裤,几串钥匙,每逢月底收收租,躺在沙发上,喝着绿茶,摇着蒲扇,好不快活!然后告诉我的朋友们,真羡慕你们能够出门闯荡,长见识,我在家可太无聊了,所以我喝了好多绿茶!

相关文章:
我为什么选择成为程序员?
前言: 我选择成为程序员不是兴趣所在,也不是为了职业发展,全是生活所迫! 第一章:那年,我双手插兜,对外面的世界一无所知 时间回到2009年,时间过得真快啊,一下就是15年前…...
Open CASCADE学习|统计形状拓扑数量
边界表示法(Boundary Representation,简称B-Rep)是几何造型中最成熟、无二义的表示法。它主要用于描述物体的几何信息和拓扑信息。在边界表示法中,一个实体(Solid)由一组封闭的面(Faceÿ…...
LeetCode 热题 100 题解(二):双指针部分(2)| 滑动窗口部分(1)
题目四:接雨水(No. 43) 题目链接:https://leetcode.cn/problems/trapping-rain-water/description/?envTypestudy-plan-v2&envIdtop-100-liked 难度:困难 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&am…...
常用的深度学习自动标注软件
0. 简介 自动标注软件是一个非常节省人力资源的操作,而随着深度学习的发展,这些自动化标定软件也越来越多。本文章将会着重介绍其中比较经典的自动标注软件 1. AutoLabelImg AutoLabelImg 除了labelimg的初始功能外,额外包含十多种辅助标注…...
选择程序员是为什么?
本章节是关于为什么会选择一名程序员的经验分享 首先,我为什么会选择这个方向,可能是因为钱多,学东西不就是为了赚钱嘛?这是一点,不过最让我接收这个行业的是好奇世界的新大陆,可以简单的说就是,…...
线程池参数如何设置
线程池参数设置 hello丫,各位小伙伴们,好久不见了! 下面,我们先来复习一下线程池的参数 1、线程池参数有哪些? corePoolSize(核心线程数):线程池中的常驻核心线程数。即使这些线程…...
qt环境搭建-镜像源安装Qt Creator(5.15.2)以及配置环境变量
前言: 版本:5.15.2 镜像源:ustc与清华 纯小白,找了半天的镜像源安装qtcreator,搞了半天结果安装的是最新的,太新的对小白很不友好,bug比较多,支持的系统也不全,口碑不…...
SQL Server详细安装使用教程
1.安装环境 现阶段基本不用SQL Server数据库了,看到有这样的分析话题,就把多年前的存货发一下,大家也可以讨论看看,思路上希望还有价值。 SQL Server 2008 R2有32位版本和64位版本,32位版本可以安装在Windows XP及以上…...
深度解读C++17中的std::string_view:解锁字符串处理的新境界
深入研究C17中的std::string_view:解锁字符串处理的新境界 一、简介二、std::string_view的基础知识2.1、构造函数2.2、成员函数 三、std::string_view为什么性能高?四、std::string_view的使用陷阱五、std::string_view源码解析六、总结 一、简介 C中有…...
汇编基础-----常见命令基本使用
汇编基础-----常见命令基本使用 MOV:将数据从一个位置复制到另一个位置。 MOV destination, source例如: MOV RAX, RBX ; 将RBX寄存器中的值复制到RAX寄存器中ADD/SUB:将两个操作数相加或相减。 ADD destination, source SUB destinatio…...
科研学习|可视化——相关性结果的可视化
一、相关性分析介绍 相关性分析是指研究两种或者两种以上的变量之间相关关系的统计分析方法,一般分析步骤为: 1)判断变量间是否存在关联;2)分析关联关系(线性/非线性)、关联方向(正相…...
MapReduce过程解析
一、Map过程解析 Read阶段:MapTask通过用户编写的RecordReader,从输入的InputSplit中解析出一个个key/value。Map阶段:将解析出的key/value交给用户编写的Map()函数处理,并产生一系列的key/value。Collect阶段:在用户编…...
速看!这8道嵌入式面试题你都会吗?
大家好,我是知微! 正逢求职季,分享一些嵌入式面试当中经常会遇到的题目,希望这些干货对小伙伴们面试有用哦! 1、介绍一下static关键字的作用 在C语言中,static 关键字有几种不同的作用,根据其…...
基于SSM的电影网站(有报告)。Javaee项目。ssm项目。
演示视频: 基于SSM的电影网站(有报告)。Javaee项目。ssm项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构,通过Spring SpringMv…...
SOCKS代理是如何提高网络性能和兼容性的?
SOCKS代理作为一种网络协议中间件,不仅在提升网络隐私和安全性方面发挥着重要作用,也在提高网络性能和兼容性方面有着不容忽视的影响🚀。本文将深入探讨SOCKS代理如何通过减少网络延迟🚀、优化数据传输🔄、提高跨平台兼…...
好菜每回味道不同--建造者模式
1.1 炒菜没放盐 中餐,老板需要每次炒菜,每次炒出来的味道都有可能不同。麦当劳、肯德基这些不过百年的洋快餐却能在有千年饮食文化的中国发展的那么好呢?是因为你不管何时何地在哪里吃味道都一样,而鱼香肉丝在我们中餐却可以吃出上…...
RuoYi-Cloud下载与运行
一、源码下载 若依官网:RuoYi 若依官方网站 鼠标放到"源码地址"上,点击"RuoYi-Cloud 微服务版"。 跳转至Gitee页面,点击"克隆/下载",复制HTTPS链接即可。 源码地址为:https://gitee.com/y_project/RuoYi-Cloud.git 点击复制 打开IDEA,选…...
Vue2.x计算属性
1.计算属性 在Vue 插值表达式内实现一些操作其实非常便利,但如果表达式的逻辑过于复杂,会让插值过于臃肿且难以维护。这时可以考虑使用Vue的计算属性 1.1 不使用计算属性的例子 <!DOCTYPE html> <html><head><meta charset"…...
Vue中使用require.context()自动引入组件和自动生成路由的方法介绍
目录 一、自动引入组件 1、语法 2、使用 2.1、在compoents文件下随便创建index.js文件 2.2、mian.js引入该js 二、自动生成路由 1、示例: 2、使用 2.1、在router文件下随便创建autoRouter.js文件 2.2、在router文件下index.js文件中引入autoRouter.js文件…...
【炒股Zero To Hero】MACD金叉死叉到底是否有效,加上这个指标回报率增加197倍
移动平均收敛散度(MACD - Moving Average Convergence Divergence)是一种趋势跟踪动量指标,显示了证券价格的两个移动平均之间的关系。它用于识别趋势的方向和强度,属于技术分析中振荡器的一类。 MACD如何衡量股票及其趋势 有两…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
【配置 YOLOX 用于按目录分类的图片数据集】
现在的图标点选越来越多,如何一步解决,采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集(每个目录代表一个类别,目录下是该类别的所有图片),你需要进行以下配置步骤&#x…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...
