胡優(yōu)妮
人人都學(xué)編程的年代?
——“現(xiàn)在可是連小學(xué)生都會(huì)編程!”
是在下輸了,外面都是人才,我覺(jué)得我應(yīng)該打道回府深造。而對(duì)面被邀請(qǐng)回校作志愿指導(dǎo)的師兄卻拉住猛然退縮的我,他舉這個(gè)例子,明明是想告訴我軟件工程這個(gè)專業(yè)的報(bào)名熱度的。
我怎么可能沒(méi)聽說(shuō)過(guò)這個(gè)病毒式蔓延的潮流趨勢(shì)?連我的表弟都靠著當(dāng)今最火的入門級(jí)編程語(yǔ)言python,在國(guó)際少年編程比賽中斬獲冠軍,也因此奪得了美國(guó)硅谷之旅的免費(fèi)游學(xué)機(jī)會(huì),讓我這個(gè)當(dāng)姐姐的都自愧不如地豎起大拇指。
計(jì)算機(jī)和編程是數(shù)字世界的核心。在如今這個(gè)技術(shù)橫行的互聯(lián)網(wǎng)時(shí)代,像軟件工程師、軟件測(cè)試工程師這樣的職業(yè)領(lǐng)域,人才缺口很大。
而軟件工程專業(yè)能夠培養(yǎng)良好的軟件技術(shù)與工程素養(yǎng),熟練掌握軟件工程技術(shù)、軟件工程管理以及軟件服務(wù)工程的基本知識(shí)與技能。因此,軟件工程的相關(guān)學(xué)科有計(jì)算機(jī)科學(xué)與技術(shù)、數(shù)學(xué)、計(jì)算機(jī)工程和系統(tǒng)工程等。
我詳細(xì)地研究分析了軟件工程專業(yè)的發(fā)展前景和核心學(xué)科內(nèi)容后,義無(wú)反顧地填報(bào)了這個(gè)專業(yè)。
親戚在問(wèn)到我高中理科,大學(xué)工科的學(xué)習(xí)征途后,都有些吃驚,皺眉建議女生適合去學(xué)金融,將來(lái)找工作也容易。只有父母放任我自己去做選擇,并問(wèn)我有承擔(dān)后果的覺(jué)悟嗎?
我為這個(gè)可能影響今后一生軌跡的決定而焦慮忐忑,同時(shí)也為自己第一次做出重大選擇而躁動(dòng)欣喜,最后卻只將紛繁的情緒壓在心底,鄭重地點(diǎn)下了頭。
很多人都只學(xué)了兩門語(yǔ)言,母語(yǔ)漢語(yǔ)和外語(yǔ)英語(yǔ)。
當(dāng)我大學(xué)上第一堂課程序設(shè)計(jì),接觸C語(yǔ)言時(shí),我顫抖而虔誠(chéng)地在鍵盤上敲下經(jīng)典的“Hello World!”演示程序,就象是一個(gè)畏畏縮縮躲在門邊的小孩,終于小心翼翼推開了新世界的大門一角……感覺(jué)還不錯(cuò)?
工科女背后的“真相”
大家提起計(jì)算機(jī)學(xué)院的工科男時(shí),頭腦里往往都是一幅情商低、頭發(fā)少、鏡片厚,窩在電腦前把鍵盤敲得風(fēng)生水起的邋遢宅男畫面。
可現(xiàn)實(shí)是擁有一技之長(zhǎng)的人專注學(xué)習(xí)或工作時(shí)很有魅力,他們?nèi)绻采约哟虬?,活脫脫就是IT精英男的氣質(zhì)形象。此時(shí)不得不承認(rèn),女生在數(shù)學(xué)邏輯思維和工程開發(fā)能力上,普遍還是比男生要差。
我無(wú)數(shù)次被數(shù)據(jù)結(jié)構(gòu)這門課程晦澀的算法思想折騰得差點(diǎn)想摔鍵盤,可最后所想到的只能是勤能補(bǔ)拙,抓著專業(yè)書奪命狂奔追上班級(jí)學(xué)霸大神的步伐。
高考前,老師反復(fù)告訴我們,熬過(guò)那段痛苦的時(shí)光,迎來(lái)的將是美妙難忘的大學(xué)歲月。可我卻捧著厚得能當(dāng)板磚的專業(yè)書,把說(shuō)好的輕松大學(xué)生涯活成了高三的樣子。
每晚熄燈后,舍友趴在床上煲劇,看我亮著小夜燈,噼里啪啦地敲鍵盤,運(yùn)指如飛,透過(guò)鏡片的眼睛還泛著疑似貪婪的光,經(jīng)常勸我不要沉迷于和網(wǎng)友聊天的虛擬網(wǎng)戀中。
——不存在的。
我對(duì)著電腦屏幕上密密麻麻的程序代碼,長(zhǎng)吁一口氣。對(duì)于打代碼的人來(lái)說(shuō),世界上最動(dòng)聽的話不是“我愛(ài)你”,而是編程時(shí)無(wú)報(bào)錯(cuò)警示的“0 error(s), 0 warning(s)”。
一入軟工深似海,從此掉發(fā)非路人
很多人對(duì)計(jì)算機(jī)學(xué)院的“軟件工程”與“計(jì)算機(jī)科學(xué)與技術(shù)”傻傻分不清楚。
它們涉及的領(lǐng)域并不相同,計(jì)算機(jī)科學(xué)與技術(shù)是一門綜合性知識(shí)學(xué)科,研究計(jì)算機(jī)的全面知識(shí);而軟件工程專業(yè)則強(qiáng)調(diào)軟件開發(fā)的工程性與程序的編寫,它的理論基礎(chǔ)是數(shù)學(xué)和計(jì)算機(jī)科學(xué)。
所以除了數(shù)據(jù)結(jié)構(gòu)、軟件設(shè)計(jì)模式、軟件質(zhì)量保證與測(cè)試、軟件項(xiàng)目管理和數(shù)據(jù)庫(kù)原理等計(jì)算機(jī)類專業(yè)課程,高等數(shù)學(xué)I、高等數(shù)學(xué)II、離散數(shù)學(xué)、線性代數(shù)等數(shù)學(xué)課程也是我們專業(yè)的必修基礎(chǔ)課程。
剛?cè)雽W(xué)報(bào)到時(shí),班助師兄幫我們提行李,路過(guò)學(xué)校歷史悠久的蒼翠古樹時(shí),曾悠悠地說(shuō)起一個(gè)讓不少學(xué)子以淚洗面的梗:從前有一棵很高的樹,上面吊死了很多人。此樹名曰:高數(shù)。
直到苦讀升至大二時(shí),我才幡然醒悟,他們一定沒(méi)有聽過(guò)另外一棵樹——離樹。離散數(shù)學(xué)是研究離散量的結(jié)構(gòu)及其相互關(guān)系的數(shù)學(xué)學(xué)科,也可以說(shuō)是計(jì)算機(jī)科學(xué)的基礎(chǔ)核心學(xué)科。
在離散數(shù)學(xué)中有一個(gè)著名的四色猜想,據(jù)說(shuō)是世界近代三大數(shù)學(xué)難題之一,最后使用計(jì)算機(jī)輔助計(jì)算得以證明。
每當(dāng)我遨游在代碼的海洋里,都會(huì)忍不住想象,假如將四色定理運(yùn)用到程序員的頭發(fā)上,將會(huì)擦出怎樣可怕的火花。因?yàn)楣J(rèn)的專業(yè)難度,每次上課遇到新老師時(shí),我們都忍不住用頭發(fā)量來(lái)衡量老師的知識(shí)量。
有次學(xué)習(xí)面向?qū)ο蟮木幊涕_發(fā)語(yǔ)言java,老教授操著濃厚的口音念到“抓娃”。我一下子從昏昏欲睡中清醒——抓娃娃機(jī)了解一下?我可是個(gè)擁有高強(qiáng)的抓娃娃技術(shù)的人啊,這么有趣的學(xué)科,真是讓我覺(jué)得苦盡甘來(lái)了。
可老師下一秒就飛快地演示無(wú)漢化版的國(guó)外開發(fā)工具,坐在教室后排的我猝不及防就被滿屏的純英文界面嚇到了,我甚至連工具欄的英文都還沒(méi)翻譯過(guò)來(lái)呢……這可就觸及到我的知識(shí)盲區(qū)了。
如同“我想起那天在夕陽(yáng)下的奔跑,那是我逝去的青春”這句臺(tái)詞所表達(dá)的,我意識(shí)到,我的大學(xué)生活將不復(fù)輕松。
最藍(lán)的不是藍(lán)色大海
許多人在大學(xué)社團(tuán)里混得生龍活虎,而我由于學(xué)期課表密集,沒(méi)有時(shí)間參加娛樂(lè)類的社團(tuán),卻加入了學(xué)院的ACM編程協(xié)會(huì)。
因?yàn)檫@個(gè)協(xié)會(huì)的高端傳說(shuō)實(shí)在廣為人知,令每個(gè)計(jì)算機(jī)學(xué)院的學(xué)子心向往之。它擁有校企合作的人工智能創(chuàng)客空間,協(xié)會(huì)成員還參加挑戰(zhàn)杯學(xué)術(shù)科技競(jìng)賽屢獲獎(jiǎng)項(xiàng)……
我還曾聽說(shuō)編程協(xié)會(huì)一個(gè)開源的學(xué)術(shù)研究成果被用作不正當(dāng)?shù)纳虡I(yè)盈利,后來(lái)協(xié)會(huì)的大神抓包(捕獲這個(gè)請(qǐng)求)分析后,發(fā)現(xiàn)連源代碼都一字不改就被直接套用。
而我加入編程協(xié)會(huì)后,卻意外感受到了難言的親切,技術(shù)大神褪去距離感,毫無(wú)保留地傳授經(jīng)驗(yàn)。協(xié)會(huì)能讓你不再“水”,它對(duì)內(nèi)定期組織聚餐、討論會(huì)、培訓(xùn)和月賽,對(duì)外也曾組隊(duì)參加包括藍(lán)橋杯軟件大賽、亞洲區(qū)域賽等大型比賽。
我想起多少個(gè)日夜,和團(tuán)隊(duì)伙伴一起熬夜做軟件項(xiàng)目,研究后端程序開發(fā)。到了后來(lái)日漸沉迷,無(wú)法自拔,我甚至自學(xué)網(wǎng)頁(yè)前端設(shè)計(jì)。我打開一個(gè)網(wǎng)站,第一件事就是打開網(wǎng)頁(yè)的源代碼去研究。
之前我會(huì)抱怨軟件工程專業(yè)越學(xué)越難,卻不知道什么時(shí)候起,原來(lái)早已癡戀于它。興趣愛(ài)好與情感態(tài)度才是學(xué)習(xí)最好的催化劑。
有小學(xué)同學(xué)指著我新?lián)Q的一片藍(lán)色的頭像,問(wèn)道為什么不換成紅色呢?紅紅火火恍恍惚惚……
“……”是在下輸了,大家都居然沒(méi)有發(fā)現(xiàn)潛伏于藍(lán)色里面密密麻麻的0和1,這可是程序員最摯愛(ài)的數(shù)字啊。而且,這不是普通藍(lán),明明是科技藍(lán)!