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