作為一名程序員,你是怎麼開始自己的第一個項目的?
你的第一個項目(個人的或者團體的)是怎麼開始的?當時的心態和經歷是怎樣?現在回想,有什麼印象深刻的記憶或者收穫(包括教訓等)?
這還是要講當初高中寫的那個RPG了(作品:《天地傳》 )。當初主要是玩了伊蘇之後,發現了成都有個金點子小組也做RPG,結果居然是回合制的,渾身不舒服,我就想我一定要寫的比他好,然後從高一的勞動節寫到了高二的除夕,然後把東西搞出來了。當然了,圖和音樂還是用了那個被我鄙視的遊戲的,我只做了程序和劇情。
我應該是大一下學期才開始有了第一個項目,我不像輪子哥高中就接觸到編程,我是高三暑假才知道如何上網,真正意義接觸到電腦。當時是做一個叫BugHunt的遊戲,其實也是一門課的課程設計,所以其實也算被"逼迫"的。不過既然開始了,就想做好,不過可惜當時實力不夠,最後還是只得了一個中的評定結果。獲得的感想就是原來我也可以編程做出東西來,雖然做的比較搓。
大一的時候知道了LISP這個名詞,學了點Common Lisp;大二的時候看數據結構的書知道了廣義表;到某天忽然間想起了C語言有函數指針,然後就開始用C語言來實現自己的LISP方言了,一直到現在,寫個沒完沒了,瞎折騰~(≧▽≦)/~
初中的時候,剛接觸計算機,就立志寫一個操作系統,名字都定好了,叫:Doors。(別笑!
然後直到現在,我都在學C++。2010年的時候,還在讀大學,自己看了Android開發的書,經常寫點小程序玩玩。
寫了個俄羅斯方塊,裝在了我喜歡的姑娘的G1上,每次消除都會彈出提醒「xxx(姑娘名字),你真棒!」每次過關都會彈出「哇哦,xxx,你真是太厲害了!」
姑娘說她玩上癮了,能玩到十幾關。
追到手以後,我說你努力玩到20關試試,她有天凌晨非常激動地打電話給我說玩到了,
第20關的顯示是「xxx,我喜歡你!」
媽蛋,這個事情的發展情況跟我的計劃完全相反嘛~
論程序員怎麼把妹~不管你是否相信,我第一個程序是一個截圖工具,在學習機上用Vim編寫的。我是97後。
初二的時候,用易語言,做了個論壇破壞器。30秒對一個板塊刷了30多頁的垃圾帖子,後來這個論壇被我搞的多次升級,我的破壞器也就跟著升級(即使後來加入驗證碼我的程序也能自動分析,準確率達99%),最後以管理員大叔以要報網警,而我害怕而收手。再後來,我針對這個論壇的漏洞做出了很多修補工具。再再後來就一發不可收拾做了個解釋器,創造了一門七不像的語言←那年我也只是高一。高考完的暑假自己在家做了2個網站,一個仿github,一個仿twitter,google+,facebook,但是寫的很挫,也不懂設計模式。大一(也就是現在)開始接項目,上個月做了個非法字元過濾器(php)和物聯網酒駕監控系統,最近在做wordpress相關的項目,還接觸了xojo,下個月還有一個關於學校失物招領的項目。
現在是一邊學習(設計模式,數據結構,演算法,框架,.net,資料庫,計算機網路……)一邊接項目,桌子上還堆了七八本書沒看,挺累的(還不是因為你窮
用《星際1》的地圖編輯器做了個小遊戲。初中的時候做的,純粹是自娛自樂。
內容么,大概就是控制小兵躲避各種爆炸和炮火一路跑到終點。爆炸效果和死亡判定都是拿觸發器做的。後來還逐漸完善,加上了歡迎界面和提示。
當時給每個判定點都用一個獨立的觸發器來控制,地圖做的大了感覺自己要累死了(那個時候完全沒有什麼復用的思想)。。。現在看起來真傻。。。
其實這種地圖在網上有很多版本,我玩了玩他們的,然後自己摸索著做了一個(他們做的圖都是加密的,只能玩,不能看裡面的腳本)。
看了樓上各位,感覺自己好奇葩。。。
用vb開發的圖書館管理系統。。。
寫了個小監控系統,賺了3萬塊錢,中介拿去賣了30萬,所以做銷售才是賺大錢啊
第一個擁有完整生命周期的項目比較簡單。匿了。
就是實現一個全局的網路搜索。
自己看文獻,有搜索的需求,但是親自打開瀏覽器太慢了。就寫了一個自動用百度搜索的軟體。
朋友看了,覺得不錯。但是如此簡單的工具不好意思給他用。就加了一些功能,迭代了幾次,出了正式版。已經畢業了才開始第一個純粹自己想做的項目呢 還在實現中 稍微有點體會 希望對你有幫助
對於像我一樣完美主義,受成就感激勵的類型。我的建議是:
- 千萬不要等一切都準備好了才開始。版本控制,界面設計,相關的新技術,設計模式... 太多太多,但是等你都準備好了你的靈感和激情已經過去了。
- 有了靈感和基本思路,馬上新建一個項目,敲下第一行代碼。接下來你的完美主義會督促你完成。
- 控制自己專註在重!要!的事情上。就像上面說到的丑哭的界面,剛做完的時候真的是要用意志力控制自己不要去修改它,先把邏輯做完。
- 不要過早優化!!!盡量為以後留出更多的可能性。雖然這話很多書都有說過,但是體會和應用真的是另一回事,你知道但是意識不到。有一回我在糾結應該用哪種方法更完美更有效率,一行代碼都沒有寫,犀利的小夥伴又出現了,他問我這麼點空間真的有必要嘛....很有道理,後來我學資料庫的時候又重溫了這個概念,找到成為性能瓶頸的SQL,針對他優化。
某天無聊,看到有人在發項目需求一看好傻逼還不如課設就開始搞了
給命令行程序寫GUI,然後試圖適配各種程序,於是通用化,通用化,一不小心就變成做DSL了,之後各種做語言,從初中折騰到大學,入坑深似海。
深切體會,什麼項目規模大了就會自動產生一個不完善的LISP。
說到實際項目,是同學介紹的,當時已經完成了部分功能代碼,我來集成並測試,當時賺了一點小錢
推薦閱讀:
※如何成為一個成熟的男人?
※旅行可以看出一個人是否適合婚姻嗎?
※年輕是四處漂泊在外工作,還是踏踏實實在家呢?是你,你怎麼選擇?
※考慮大部分人的情況,我們可以把「目標」分為哪幾類?如果考慮的方向為個人的成長
※如何提高自己的邏輯思維能力,說話,寫文章有理有據,條理清晰?讀些什麼書或者做些哪方面的鍛煉?特別在緊張的時候如何仍然能保證良好的邏輯思維?