计算机专业弱校,一个普通学生开发项目时遇到的困难

2020-04-29 00:25:26 +08:00
 gricn

目前大二下,由于我目前所在大学学校并不是工科学校,甚至跟计算机等前沿领域牛头不对马嘴。目前楼主也不是在计算机专业或者是相关大类,如果涉及计算机的教学难度的话,估计专业学科等级只有 C 吧,学起来很痛苦。学校计算机相关老师只有硕士文凭,技术方面问题基本不会,纷纷写论文,但学术上很一般,有发现老师发布的知网论文图片一字不改照抄美国某大学论文。

目前帮一位老师做微信小程序,2 月初开始开发,原本 3 月中旬要发布的小程序拖延到现在。具体原因包括:

  1. **开发伙伴代码质量很差。**另一个一起开发的同学不会用 Git,也因网络限制问题没法上 GitHub 。中间沟通以及微信传送文件花费很多时间。也正是因为不会用 Git,代码质量非常差,每次发过来的代码超过六成都得重写一遍。(花了大半天时间把他原来一个 2000+行不停复制粘贴的 wxml 代码改成了 100+行)

  2. **我的基础也很差。**上过学校的玩具版 C 、JAVA 后,其他课基本都翘课自学了。老师上课 C 语言完全没谈指针,JAVA 老师用 Eclipse 敲代码速度像打字初学者一般,而且英文单词都经常拼错。甚至花了很多精力在 GUI Swing 部分……为了赶这个项目,我也花了很多精力,奈何基础太差,刚开始连 LEMP / LAMP 都没听过。连后端用的 Node.JS 也是网上搜才找出来的。前期 Linux 学习也花费了很多时间。

  3. **没有人帮忙。**之前 GET/POST 开发出现问题,找高一届计算机能力比较强的两个学长学姐问,都说不知道。老师更别说了,大多是写论文的能手。服务器购买选择、备案,开发过程中每一个 bug 都是自己 Google / StackOverflow 或者摸石头过河这样走来的,花费的时间非常多。如:如何在后台一直跑 Node.js 这个小问题,竟然花了半天时间; Node.js 如何将第一次网络请求获得的数据及时第二次请求(其实用 fetch 就行),但这个我花了一整天;数据库方面因为开放了安全组+权限没设置好,还被疯狂攻击当傀儡机,只能去阿里云那关机,然后半夜起来解决 bug 。

  4. **前期开发还想高大上。**Docker 、CircleCI 等都花了两三天甚至更多的时间,后面认清现实后 Cut 掉了。


现在微信小程序的进度是:

和老师聊天过程中,老师因为我严重超时非常嫌弃;同时,我每天翘在线上课写代码;但同时,进度很慢,经常一个问题就得耗费半天时间,且每天都非常累。

通过这段时间学习的确成长了很多,但一方面项目不能及时完成+本学期其实学校开了两门和计算机相关的重要课程自己也想好好学,所以最近非常焦虑。不知道这是不是瓶颈吧。不知道各位小伙伴能否提供一些建议呢。

5737 次点击
所在节点    学点什么
28 条回复
Pyjamas
2020-04-29 00:29:09 +08:00
放弃幻想,全都自己干,能一个人组队就一个人
WolfIsMyName
2020-04-29 00:34:46 +08:00
大学真的一个人一组会省很多事
fishCatcher
2020-04-29 00:40:25 +08:00
不瞒你说,我在计算机评分 A-的某中流 985,很多本科生和甚至研究生的水平也是这样的,只会死背课本,平时实验都是复制粘贴互相抄,毕业都不会写代码,工作只能找一些面试不考编程的公司。老师也只顾论文,瞧不起做开发的。
Lonely
2020-04-29 01:11:42 +08:00
没有金刚钻就别揽瓷器活。github 不能用的话可以用国内的托管平台。
Mithril
2020-04-29 01:17:39 +08:00
建议放弃。
虽说你觉得自己学了不少东西,但是为此放弃学业非常不值。
如何搭建并维护服务器,做个简单的全栈开发并不是非常难。只是因为没人带你需要自己花时间摸索。这些你以后工作了有大把的时间和机会去搞明白。
但是你现在放弃的专业课,可能你以后都不会有机会去认真学了。
CEBBCAT
2020-04-29 01:23:04 +08:00
首先要解决老师嫌弃你的问题。锅不能咱背着,不然自己很可能因为这个以后大学生活受阻。

关于建议,其实你忘了把你的问题清晰地列出来。

开发上,要记得时刻保持跟各方的沟通,即使是自己闯了祸,或者有严重延期,也要硬着头皮说出来,不然到时候别人满心欢喜找你验收,后患更大。

关于个人的技术成长,我也有点纳闷自己是怎么一步步成长起来的,似乎觉得哪里都没好好学,但现在也是同学中比较出众的了。但是,我觉得如果你跟着一些比较好的书籍或在线文档、博客、视频学下来一两门技术或完整项目应该是可以取得比较大的收益的。保持 Google 不要丢,另外时间允许的话可以看见不懂的名词就去 Google,这样可以扩大知识面(但很浪费时间)

看到你的文字,我似乎看到了当年的自己,老师消息比较闭塞,不仅身边没有,往上找学长也没有比较拔尖的。(但说真的我怎么觉得你说得你老师一无是处……我老师里有的还是有两把刷子的)

如果你觉得这是瓶颈的话,那我想这是一个上升受阻的瓶颈,你找不到更好的学习资源可以借用、借鉴
Zheming
2020-04-29 01:31:03 +08:00
无限递归学习极其影响心情和自信心,能做这么多依然很可以了。
lights
2020-04-29 02:25:47 +08:00
你现在遇到的困难并不是你的错
认清现实,老师和同学都没法带你的话,建议草草完结这个项目(或者直接不干了,看你自己),然后自己做自己的项目(比如做个开源的 Nes 模拟器、搭建一个只是在本地跑的论坛服务给室友玩)

另外就是计算机,打好基础比做项目重要一万倍,还在学校的话,可以不用过于着急项目,基础都自学好了吗?
jadec0der
2020-04-29 03:23:13 +08:00
我觉得你不错,你的队友和老师坑也是很常见的问题。找个合适的机会和他们拜拜,然后找更好的队友,或者自己玩。

作为非计算机专业的学生,如果你将来打算做码农的话,专业课确实没必要投入太多精力,计算机专业的专业课需要自学一下,没必要全学,主要是计组、数据结构与算法、网络、操作系统、数据库这些基础课要学好,这是应届生面试最重要的部分。

项目的话,宜精不宜多,像你这种小程序项目,做一个并且做好是加分项,做三个就是浪费时间了。做完这个之后可以认识一些计算机专业的同学,看看他们参加什么比赛,组队去参加一下。ACM 我估计你参与不上,阿里腾讯之类的大公司组织的比赛还是有价值的,蓝桥杯就可有可无了。
nvkou
2020-04-29 04:53:08 +08:00
心疼抗压。
但是这行业就是这样的,学生比老师更有生产力的比比皆是。企业要求员工有能上手的技能的同时也要求对基础知识有相当的理解,避免低级错误。有基础知识才能入行,有项目经验才能快速上手。这 2 方面要并驾齐驱的,不然你简历永远只能写 微信小程序开发。
至于学校的事情,都这个样子了能混过去就混。多去补充自己短板,毕竟没那学位证连面试机会都没有。
crella
2020-04-29 07:09:56 +08:00
所以说楼主不是计算机专业的,为什么要给老师做小程序呢?
watzds
2020-04-29 07:17:20 +08:00
大二就懂这么多啊,就做项目还赶着,像是工作压力一样,
chihiro2014
2020-04-29 07:19:09 +08:00
另外放弃想用高大上的技术
1. 你没能力,啥也不懂,上了瞎搞,时间浪费了,反倒得不偿失
2. 学习开发,先看培训机构视频,这是目前学习的最快途径,毕竟看书,没人看得下去
3. 大学没事好好学习,不要帮人做项目,你先学会培训机构那一套,再去考虑做项目
4. 把学业搞好,基础打牢,才是王道。其他这种项目忽视即可,因为基础不牢,你写的项目再多也是不行的。项目随时都能写,但是基础学习不能落下,哪怕不会写项目,也无所谓,因为套路就那么点
gricn
2020-04-29 07:21:05 +08:00
@crella 好吧,首先这是一个学校课题,我同意加入项目是因为听说我这个小伙伴做了个“深度学习”的微信小程序,然后等我入坑后才发现核心代码是某位老师提供的,课题结辩时小程序没上线~~原本看到那个小伙伴挺兴奋的,觉得总算找到了好伙伴,结果~~~

@CEBBCAT 有列滴答清单的看板,现在回顾解决了 70 多个小问题吧,到时候写几篇博客总结一些。我老师也有一两个有两把刷子,但是要么很注重 work-life-balance,如果不涉及自己项目应该不怎么管学生。要么是只有暑假小学期能见到。所以要想获得长期帮忙的话,还得靠自己。
gricn
2020-04-29 07:23:26 +08:00
可能昨晚编辑时没考虑顺序问题带来的影响吧,这里还得为我一起开发的同学说一句。其实那人心还是很好的,但可能不是很喜欢编程吧。和他沟通时被迫当一个类似上级的角色。以及,这个项目的 CSS 部分还多亏了他,我的审美不够。但是以后涉及 js 、html 以及其他代码,我还是自己来了。
gricn
2020-04-29 07:29:23 +08:00
@fishCatcher 我是从学校评分 A 专业转到的这个新的专业,还算稍稍知道目前大学情况吧,高考保证了公平性,但是在录取时对学生专业热爱、专业能力方面的考核没有涉及,因此的确有很多这样的同学(比如在原专业痛苦且咸鱼的我)。但是在这种强势专业的好处是,还是有很多处于热爱选择计算机专业的大牛,而且学长学姐总是能找到大牛;以及除了计算机这种对实际能力要求真的很高的专业外,其他专业其实很是很好找工作的……
gricn
2020-04-29 07:30:37 +08:00
@Mithril 嗯,谢谢建议,但是我还会完成这个项目,因为团队需要。不过完成后我会尽量将所有时间涉及专业知识的学习中。
gricn
2020-04-29 07:39:53 +08:00
@jadec0der 谢谢回复,和你想法相同。专业课方面学校专业课我现在也是能水就水,项目也是弄完这个后就不做微信小程序了。
gricn
2020-04-29 07:44:52 +08:00
@Lonely 谢谢建议,原本我小伙伴说 GitHub 用不了时,我也是花了半天比较选择国内的托管平台,注册好码云后,他直接表示,就在微信传吧。。。
至于能力问题,我当时也清楚自己不懂小程序,但是现在和我一起开发的小伙伴之前写了个,我以为能跟着学一些东西。经历了这些后也就明白在哪都还得靠自己。
gricn
2020-04-29 07:57:25 +08:00
@chihiro2014 谢谢建议。明白基础重要性。现在很多老师想找我合作,从他们利益考虑,其实就是帮他们造项目发论文。(本科阶段提前体验了把研究生生活)所以我现在已经推脱过几次老师了。另外想请教一个问题,学习开发最好方式真的是看培训机构视频吗?我当时也本想着用视频学的,但是看了蒲公英 pt 站搜索排名前几的国内的视频后觉得质量很差,于是后面直接看文档去了。但一些 YouTube 视频的确帮助了我,代码规范性以及告诉了我大概能实现什么效果。但觉得视频适合入门,不太适合依赖性学习。不知道是不是和我没选好视频有关,故想来问问。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/667132

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX