首页 业界动态 作为一个高中生开发者,我的所思所想

作为一个高中生开发者,我的所思所想

**各位若觉得我年幼无知、缺乏阅历、不知天高地厚,尽可直言 —— 这些评价,真没毛病。
要是觉得有些ai味,没错,实在不太善于表达,写完之后用豆包润色了一下
这是我的项目 CsGrafeq
https://www.cnblogs.com/StuLittleLi/p/19055095 希望不吝点个star 鼓励支持一下

自我介绍
我是上海一所高中的高二学生,就读于 xx 大学附属中学。
常听人说高中生活 “卷”,但我很庆幸生在上海:这里的升学环境相对宽松,父母为我提供了优渥的生活条件,学校更从不会克扣双休与法定假期。
更幸运的是,我有一台属于自己的办公本 —— 这是我敲开编程世界大门的钥匙;而还算不错的学习成绩,又让我能在完成课业后,有余力钻进代码里琢磨。

自我"们"介绍
其实在我身边,像我这样的中学生编程爱好者并不少。
有人是为了冲击信息学奥赛,有人是被 Scratch 启蒙后,对其底层的 “HTML5+JavaScript” 产生了好奇;也有人是玩网页小游戏时想 “作弊”,搜代码时意外栽进了编程坑;还有人是因机器人社团入门,或是单纯向往 “黑客” 的酷,又或是想靠技术 “装个小逼”……动机虽千差万别,但我们对编程的热爱是纯粹的:不管是用 QT 还是 Node,用.NET 还是 Java,哪怕暂时说不出这些工具能 “干出多大事”,至少能靠自己的手,敲出一个能跑的小玩意儿 —— 这种 “从 0 到 1” 的快乐,足够让人满足。
[PS:插个小推荐 —— 同学做的课表工具真的 “小而精”,不仅功能全,还支持课程拖动、修改,感兴趣的可以看看→https://github.com/DuguSand/Class_frame]

我作为高中生,因而遇到的问题
1.知识储备:非科班的 “先天不足”
作为一个纯靠自学的 “野生程序员”,我的知识储备短板太明显了:曾经不知道 APK 文件本质就是压缩包,至今没搞懂 Git 命令(全靠 GitHub Desktop “傻瓜式” 操作),看了无数教程也没摸透 GitHub Action;
没有专业老师带,我的 “老师” 是博客园的技术帖、菜鸟教程的入门课、GitHub Discussion 的问答区,还有在 QQ 群、论坛里问 “蠢问题” 的勇气 —— 比如 “为什么myelement.innerhtml获取不到元素内容?”
但这些 “不足” 也意外锻炼了我的学习能力:现在的我,不会对着一篇技术文档、一本专业书晕头转向,更不会因为 “学不会” 就轻易放弃。遇到陌生的知识、卡壳的 bug,我第一反应不是慌,而是打开搜索引擎,把问题拆解开,一点一点找答案。

时间不足:挤出来的 “编程窗口”
我终究不是全职程序员,没法把所有时间扑在代码上。
即便在上海,我的高中也有晚自习,每天要待到晚上九点半(当然,比起河南、河北那些 “卷王” 省份,已经算轻松了)。
我确实很喜欢编程,如果你质疑我的热爱……我好像也没法证明…… 总之我的确抓紧一切有空的时候,投入学习,对我来说,能安安静静敲会儿代码,本身就是一种放松。

3.动力不足:最磨人的 “自我怀疑”
比起知识和时间,我想对我们来说最糟糕,最头疼的其实是 “动力不足”。
知识能补,时间能挤,但当我陷入 “我为什么要写代码” 的迷茫时,连敲键盘的手都会变重。
我们这种 “高中生开发者”,身份没优势,技术也没成熟到能赚钱(唯一一次接近 “创收”,是差点靠写脚本赚 50 块,最后也没成)—— 当然,作为脱产学生这点钱什么也做不了;
可如果自己写的东西没人用,GitHub 上的 Star 全是自己开小号刷的,难免会钻牛角尖:“我花这么多时间写代码,放弃了打游戏、和朋友出去玩,到底收获了什么?”“没人在意我的作品,我这是在自娱自乐吗?”
每次 emo 到想放弃时,我都会跟自己说:“自娱自乐,也没什么不好。”想通了其实很简单:比起打游戏,我就是觉得写代码更有意思。那 emo 过去之后,继续敲键盘就好了。

谈谈我的自学经历
我的编程启蒙,说起来有点 “偶然”—— 始于网课时期。
那是很多同学第一次长时间接触电脑,我某天不知从哪儿下了个 VBS 脚本(后来才知道,VBS 所属的 ASP 技术,早在十几年前就不流行了):

t()
function t()
dad=inputbox("叫爸爸")
if dad="爸爸" then
msgbox "好儿子"
wscript.quit
end if
msgbox "不乖!"
t()
end function
这个脚本的逻辑很简单:不输入 “爸爸”,就一直弹窗。
当时我特别好奇:为什么只能输 “爸爸”?输 “dad” 或者 “爹” 行不行?
于是我用记事本打开脚本,试着把t()改成d(),把 “不乖” 改成 “abcdef”—— 没想到真的能跑通!后来又发现,只要改if dad="xxx" then里的 “xxx”,程序就会按我的想法执行。
那一刻的激动,我到现在都记得:就像突然拥有了一个 “新器官”,我的意识居然能 “指挥” 电脑做事。
从那以后,我开始追着各种问题问:“VBS 是什么?”“字符串是什么?”“为什么算判别式时,bb-4ac会报错?”“函数和子程序有什么区别?”“递归、循环、if 语句到底怎么用?”
慢慢摸索着,我写出了人生中第一个 “完整程序”—— 一个解一元二次方程的脚本:

a=inputbox("a")
b=inputbox("b")
c=inputbox("c")
delta=b*b-4*a*c
if delta<0 then
msgbox "无解"
else
x1=(-b-sqrt(delta))/(2*a)
x2=(-b+sqrt(delta))/(2*a)
if delta=0 then
msgbox "有一解"&x1
else
msgbox "x1="&x1&" x2="&x2
end if
end if
当时当然写不出这么“优雅”的代码,要比这粗糙很多。
可没过多久,我就陷入了迷茫:VBS 其实也有很多可学的内容,比如 WMI(Windows 管理规范)。然而vbs网上的教程大多是 2000 年到 2010 年的,里面全是 DHTML、JavaScriptLet 这类古早技术,jquery在里头都是新东西。为此我也花时间学习JavaScript。
于是我遇到了 VBS 的 “兄弟”——被微软忘记的干儿子JScript。我偶然发现,JScript 有个.NET 版本叫JScript.NET,至今还在.NET Framework 里 “低调” 发布。这是我第一次接触.NET 框架。但JScript.NET的资料太少了,几乎找不到教程和示例。我在一个技术论坛上求了好久,才拿到一个批处理脚本(后来我还在那个论坛上写了不少关于JScript.NET的帖子,算是 “反向输出” 了):

jsc.exe /target:xxx /out:xxx xxx.js
靠着这个脚本,我第一次体验到了 “编译” 的神奇:黑窗口里跳出 “Hello World”,生成的 EXE 文件用记事本打不开 —— 这种 “神秘感”,又把我勾进了新的领域。
那段时间,我还学了 VB6.0 和 HTA(HTML Application),甚至花了一整个学期做了个 HTA 编辑器,成品真的能用,感兴趣的可以看看我的vbs编辑器。
再后来学 PowerShell 时,发现用Add-Type必须写 C# 代码。我索性把 C# 代码摘出来,单独建了个.cs 文件,试着编译、运行,再对照菜鸟教程一点点琢磨。也就是从这个 “小项目” 开始,我才算有底气说:“我是个业余程序员。”

我的第一个开源项目
真正让我沉下心做 “完整项目”,是因为被 Desmos 的函数图形吸引 —— 我觉得 “把数学公式变成图形” 太神奇了,于是决定自己做一个函数绘图工具,也就是我的开源项目CsGrafeq。 \
这个项目的开发过程,说起来有点 “笨拙”:一边写代码,一边查资料,一边改框架 —— 从 Winform 换成 Avalonia,表达式编译从用 CodeDom(调用 csc.exe)改成 DynamicMethod 和 ExpressionTree,每一步都走得磕磕绊绊。
我试着啃过 Jeff Tupper 的论文,虽然没怎么看懂,却顺着参考文献一路查下去,最后实在超出了我的能力范围,才不得不放弃。
但好在,我还是做出了一个能用的函数绘图器 —— 虽然运行起来有点卡,但至少实现了核心功能,现在还放在项目的 OldVersion 文件夹里。
之后,我又在这个基础上做几何画板:当我写出一大堆继承于 Shape 类的对象时,用同一个函数调用不同的内容,突然懂了 “面向对象” 的美 —— 原来代码也能这么 “规整”,这么有逻辑。

我对未来的期望
说实话,我从没想过靠编程谋生,只希望它能一直是我的爱好,而不是一份 “必须完成的工作”,或是 “需要死记硬背的知识点”。
我知道,能对一件事保持纯粹的热爱,有多难得。如果有一天,我觉得写代码是负担,那才是真的对不起现在这个为了一行代码兴奋半天、为了一个 bug 熬夜调试的自己。
未来的日子,我只想把这份热爱保留下去:不管走哪条路,不管学什么专业,都能在空闲时打开编辑器,敲一段自己喜欢的代码 —— 这样就够了。

站星网

**各位若觉得我年幼无知、缺乏阅历、不知天高地厚,尽可直言 —— 这些评价,真没毛病。要是觉得有些ai味,..

为您推荐

《独立开发者精选工具》第 018 期

IndieTools 是一个专为独立开发者打造的精选工具和资源平台。通过直观的分类,轻松找到 Web 开发、设计、营销、SEO 等全流程实用工具。让你快速找到所需,专注于创造产品。独立开发者必备网站:https://www.indietoo..

于是转身独立开发者

往事如风,怎么就十年了。【一】最近两年,社媒上有句很火的文案:不要谩骂以前的自己,他当时站在雾里也很迷茫。每次刷到这条内容,嘴里都嘀咕一句:现在就不迷茫了吗?就不在迷雾里了吗?对于大部分普通人来说,经..

开发者的中年危机:接下来做什么?

这周,我辞掉了我那份舒适、薪水又高的工作。我之所以会走这一步,是因为在我回顾过去已经取得的成绩之后,我不知道接下来的30年应该做什么。那就是中年危机……这里所谓的中年危机指的是,作为一个开发者,你总会到..

平庸开发者的生存指南

撇开题目不谈,我个人认识一些非常有才华的开发人员,他们可以一帆风顺地创建极好的软件。正是这些天赋人士,使得外行人对我们这个行业充满了很高的期望。但我要说的一个可悲的事实是:并非每个人都是忍者/大师/明星..

Happus:给准备离职成为独立开发者的你 5 点建议

Happus 是你追寻幸福健康关系、甚至提高婚姻生活品质的贴心助手。无论是关系维系、情侣问答、聊天话题、趣味事实、生活窍门、休闲游戏,还是约会灵感,App 中的一切都希望让你们成为更加幸福的一对。不同于其他产品..

独立开发者从零到一,揭秘产品孵化全过程

对于许多独立开发者而言,从创意的萌芽到最终产品的诞生是一个漫长而又充满挑战的过程。在这个过程中,需要克服各种困难,不断优化和完善自己的产品,才能最终将其推向市场。(Solo社区投稿)一、创意萌芽在产品孵化..

为什么开发者应该摒弃敏捷?

所谓“热门”“敏捷”俨然成为了热门。毫无疑问,由Scrum Alliance领导的通过ScrumMaster认证的风潮,导致我们现在蜂拥而来成百上千个所谓的“敏捷”教练和培训师,以及许多竞争性的框架和方法。所谓的“敏捷”领导..

chrome 开发者工具如何查看元素:hover时的样式

在 Chrome 开发者工具中查看元素的 :hover 样式,可以通过以下步骤实现:打开开发者工具:右键点击页面中的元素,然后选择“检查(Inspect)”或按下 F12 或 Ctrl + Shift + I (Windows) / Cmd + Option +..

GitHub Copilot 已沦为编程考试作弊的神器,正在“摧毁”初级开发者?

自 2021 年 6 月,微软发布 AI 代码建议工具 GitHub Copilot 以来,业界关于它的争议就没有断过。这不,继 Copilot 相继宣布收费、代码版权引发软件自由保护协会怒批之后,来自美国马萨诸塞大学阿默斯特分校计算机科..

AppStore 要求开发者提供ICP备案号

AppStore 已正式要求开发者提供 ICP 备案号,最迟到明年 4 月,还没有拿到备案号的 App 将会被下架处理。到目前为止,所有主流 App 市场都已经响应今年 8 月由工业和信息化部印发的《关于开展移动互联网应用程序备案..

已有250万Java开发者使用Visual Studio Code

微软于2023年12月5日在官方博客宣布,Visual Studio Code 的活跃 Java 开发者已经超过 250 万,此外微软声称与红帽进行合作,带来了未来几个月的线路图。VS Code Java线路图更新内容如下:支持 JDK 21 及未来版本增..

JetBrains 2023年.NET(C#)开发者技术趋势

JetBrains 在 2023 年年度开发者生态系统调查中收集了来自全球 26,348 名开发者的见解。本文重点关注 C# 和 .NET的趋势。.NET Core 最受欢迎我们知道 ASP.NET Core 是 C# 开发人员最常用的 .NET 框架 – 56% 使..

Nginx核心开发者Maxim Dounin宣布推出FreeNginx

2024年2月19日,Nginx核心开发者Maxim Dounin宣布推出FreeNginx,这是一个Nginx的开源分叉版本。Dounin表示,他之所以推出FreeNginx,是因为他对Nginx当前所有者F5 Inc.在开发和管理Nginx方面的一些决定感到失望。Do..

为什么给游戏开发者小费是一个坏主意

70 美元加 20%?要点给游戏开发者小费可能是一种选择,但众筹和 Patreon 等其他方法已经存在。游戏开发者的收入从 40,000 美元到 150,000 美元不等。游戏中的小费文化可能会导致低工资和恶劣的条件;可持续的游戏经..

发表回复

返回顶部

微信分享

微信分享二维码

扫描二维码分享到微信或朋友圈

链接已复制
蜂鸟影院2048影视资源论坛熊猫影视河马影视星辰影视萝卜影院八哥电影网人人看电影无忧影视网橙子影视网叮当影视网天天影视网青青影视网电影天堂开心追剧网西瓜影院麻花影视网70影视网年钻网茶小舍电影藏影堂新神州影域煮酒观影体积影视爱看影院星光电影至尊影院极影公社超清视界