我的專案簡淘網與TOP開發大賽
此文為淘寶的“贏在淘寶”TOP開發大賽而作。該比賽的網址為http://open.taobao.com/win/ 。
我的參賽專案是簡淘網 (http://www.simtao.com ),已經在展示中,連結是http://open.taobao.com/win/production_detail.php?appid=13645
專案名稱:簡淘網_頁內關鍵字廣告 。
專案效果顯示在http://top.outtrip.com/about/demo.htm 。
該專案的推廣口號:“大道至簡 以簡馭淘
”
我來自上海,畢業於某院校電腦科學系。從高中時就開始在當地少科站玩蘋果II型
計算機,家境當時屬偏下水平,屬於上海窮人,高一時我父和我打賭賭輸,不得不兌現承諾給我買了一臺80286型電腦。我當時不知道,那臺電腦花去了家中所有的積蓄。幸虧有那臺電腦,使我比同齡人接觸電腦早好多,使我在讀大學的時候,可以靠程式設計賺錢。感謝我的父親!
畢業後工作的這10來年,做過大大小小數十個專案,跳過幾次槽,做過程式設計師、專案經理、部門經理、技術總監等職位,還創過兩次業,最終還是因為太喜愛程式設計,找了一份能夠繼續有機會寫程式的某小公司技術總監職位。在專案中使用過的計算機語言有C/C++, PHP, C#.NET, PERL, ERLANG, JAVA等,其中最喜歡的是後三種。
現在的工作很輕鬆,除了不斷改善公司軟體的核心架構之外,大部分精力被放在把公司產品的程式碼寫的更優雅上面。然後就是研究一下最新的技術,最新的演算法,剖析一些著名開源軟體的原始碼,並實踐那些程式碼中所使用的設計模式等等。
人到中年,生活安逸,工作無壓力,人開始漸漸胖起來,不得不每天晚上靠在跑步機上跑幾下減減肥。剩下的時間,不是打PS電玩,就是看美劇,總覺得創業,應該是那些朝氣蓬勃,敢做敢為的年輕人的事。
直到2009年9月2日,在javaeye上看到淘寶網的TOP開發大賽廣告,才知道淘寶已經開放API。之前曾研究過facebook,校內之類的API,潛意識裡感覺到淘寶的API開放,將孕育巨大的商機。於是萌生了報名參賽的念頭,一開始即不是為了大賽獎品IPHONE和MACBOOK,對“淘寶動力”資質更是不甚瞭解,參賽只是想知道“吾老矣,尚能飯否?”
緊接著的兩個晚上,先把API文件從頭到尾讀一遍。用API開發,其實就是就米下鍋,因為API開放內容非常有限,不能天馬行空的想一些功能,然後指望能夠找到對應的API,這樣結果往往會相當的失望。所以,必須要先對API有個大致的瞭解。
考慮到比賽的時間很短,允許提交作品的時間僅三個月,我又有自己的工作,只能使用業餘時間。因此,提交的作品,最好能夠使用我已有的技術積累。同時,通過翻閱這個活動的相關宣傳文件,瞭解到淘寶是希望通過這次比賽,找到一些有技術實力,並且善於經營的優秀團隊,入選其核心合作伙伴隊伍。這兩點,成為我選擇參賽專案的重要參考依據。
這次淘寶大賽選擇的參賽作品主要分為賣家工具、買家工具和社群營銷外掛三類。我沒在淘寶上開過店,未曾有機會通過實踐獲得作為淘寶賣家的切身體會,因此如果說讓我寫一個賣家工具幫助賣家更好的銷售產品,那除了我模仿其他人的作品外,就只能是建一個空中樓閣,不能切中實際需求。而買家工具這方面,雖然我在淘寶也經常買東西,但卻從沒想過需要輔助購物工具來幫忙。通常來說,有產品搜尋,有淘寶旺旺與掌櫃聊天,就足夠了。個人覺得淘寶這個平臺,為買家已經考慮的相當周到。另試想,如果某個買家輔助購物工具即便能夠使買家獲得更好的購物體驗,而真正能為此輔助工具掏腰包的買家,又佔多少比例,如果讓賣家來付費,那這個工具就喪失了普遍性,只能為很小的一部分買賣服務?因此,如果我在社群營銷外掛這個領域再找不到合適的思路,那也就無緣這次比賽了。
回顧我之前做過的幾十個專案,有一部分是網路安全相關的國家保密專案,涉及加密演算法、授權與訪問控制、網路安全審計等領域,顯然不能拿出來再利用,而且也是驢脣不對馬嘴。剩下的包括系統整合專案、企業ERP系統、呼叫中心繫統、網際網路站等,都不太適合。
突然想到曾在08年,用業餘時間,給我在美國的弟弟做過一個內文廣告系統,這個系統在美國已經被多個證券類網站使用,主要功能是當網站正文中包括某個上市公司的名稱時,訪客把滑鼠移至其名稱上,能夠彈出一個框顯示該上市公司股票的實時行情,在框下同時又放置了一些證券公司的banner廣告,引導訪客前去開戶。試想,若把這個系統改造一下,讓它顯示的不是股票行情,而是淘寶的推廣商品,會不會大受網站主的歡迎呢?
其實內文廣告公司在國內已經有幾家,做的比較大的譬如有clickeye。內文廣告的優勢一是吸引眼球,二是精準,依賴關鍵詞匹配相關的廣告內容。但是在國內,“精準”優勢已經被clickeye糟蹋殆盡。彈出的廣告內容和啟用它的關鍵詞,沒有任何關係,文不對題。造成此問題的原因就是廣告發布者競價購買關鍵詞,並在所購買的關鍵詞上投放任意廣告,廣告內容可以和所購關鍵詞無關。
如果把內文廣告系統和淘寶開放的API結合起來,關鍵詞不採用競價銷售,而是從淘寶公開的關鍵詞庫中獲得,投放的廣告僅僅是淘寶的推廣銷售商品,並且做到嚴格的關鍵詞和銷售商品名稱相匹配,就可以有效的解決內文廣告不夠“精準”的問題。同時,淘寶推廣是CPS結算而非CPC結算,因此也不需要處理虛假點選的問題。想到此處,真的有醍醐灌頂,豁然開朗的感覺。
但此時還不能盲目的立即著手行動。首先要查一下最大的淘寶推廣商品服務供應商阿里媽媽有沒有在做類似的產品,一查,還沒有。然後以“淘寶 內文廣告”或者“淘寶 文中廣告”或者“淘寶 關鍵字廣告”等在百度和谷歌上查詢有沒有別人已經實現類似產品,一查,也沒有。但是查到有人在阿里媽媽的社群提出類似的思想,等待別人實現。
這還等什麼,行動立即開始。
在選擇使用何種開發平臺的時候,有過一絲的猶豫。在給弟做的那套系統上進行二次開發,可以最短的實現這個專案。該系統是執行在.net framework 3.5 sp1下的,使用C#開發,採用了目前最先進的.net開發思想,譬如使用了全新的asp.net mvc架構,使用了ado.net entity framework、linq和lamda表示式等等。開發效率非常高,甚至感覺優於RoR。但是,基礎平臺Windows不是可以免費獲取的,或者付錢買正版,或者使用盜版然後成天提心吊膽擔心收到律師信。反覆的思量後,還是決定放棄原已開發完成的成熟系統,轉而重新開發。
整個專案分為外掛、網站和蜘蛛三個部分:
- 外掛執行在使用者的瀏覽器上,使用javascript語言是唯一選擇。
- 經過反覆權衡各種開發語言和平臺後,網站最終決定採用j2ee方案,在Linux系統中部署。我個人從以往所參與的諸多專案中感覺,使用java的開發效率要高於使用PHP及其他語言。
- 蜘蛛程式負責抓取客戶網站的頁面,分析其中的關鍵詞,初期採用perl語言編寫。大規模使用後,將採用併發效能和分佈性更好的ERLANG來改寫。
J2EE也有很多種方案,有重量級的基於EJB3.0的,也有輕量級的基於spring的。初期階段,考慮採用spring架構。需要用到的基本元件包括freemarker、spring mvc、spring security、blazeDS、hibernate jpa以及若干的spring module。
因為有之前的基礎,專案原型開發的很快。我每天晚上7點左右回到家,每天花5個小時在開發上。淘寶為java開發提供了相關SDK,可是在官方可供下載的SDK是相對較舊的版本(taobaoke部分),我在旺旺上聯絡到了TOP的技術支援,獲取了最新版的SDK以及SDK的原始碼,為開發帶來了很多便利。TOP的開發平臺提供了一個叫作沙箱的測試環境,對真實的淘寶網進行模擬,開發者可以在沙箱中進行開發,測試通過後,可以申請接入到正式環境中。可是直到我寫這篇博文進行回顧的時候,沙箱仍然不支援taobaoke API的基本功能。無奈之下我只能在正式環境中直接進行我的開發。
開發過程倒是相當的順利。使用的都是自己非常熟悉的技術。大約花了不到1個月的時間就釋出了第一個版本,放在域名outtrip.com(這個域名我本來是想用來開發一個戶外運動及旅遊網站)上,取名傲趣內文廣告。
終於等到了可以申請參賽作品展示的日子,躊躇滿志的寫完參賽作品的文字介紹,並莊嚴的點選了“申請展示”的按鈕。然後就是度日如年的等待,等待應用稽核通過後上架。誰知,幾天後,系統中噩耗傳來,我的作品被稽核者拒絕了,理由是“系統沒有實現免登陸”。原來淘寶原則上是不允許使用TOP API開發的應用採用獨立的使用者系統(後來獲知非買家和非賣家應用,沒有嚴格要求)。當時就急了,立即致電TOP的杜娟,詢問該怎麼辦?杜小姐真的是很幫忙,立即幫我聯絡稽核者忠忠,經過一系列解釋後,忠忠同意將該應用稽核通過,但是還是強烈建議我將應用改為免登陸,也就是使用TOP的使用者認證系統對訪客進入認證,而不是自己的獨立使用者系統。
又是一個艱難的抉擇,獨立的使用者系統是我的專案今後營銷及獲利的關鍵,涉及廣告費用結算。如果利用淘寶的使用者系統,則需要我去說服我的使用者去註冊淘寶帳戶。這樣我將無法積累自身的使用者資源。於是,我選擇從現有的版本中分支出一個比賽專用版本,剔除了獨立使用者系統,部署在域名top.outtrip.com上,重新作為參賽作品提交。這次很順利的通過了稽核。而原有系統,則部署在域名simtao.com上,取名“簡淘”,執行在TOP正式環境中,開始試運營。
在試運營期間,技術上的問題頻出,譬如網站編碼問題和瀏覽器相容性問題。和給弟做的運營於美國的內文廣告系統最大的不同在於,中文網站最常使用的有 GB2312和UTF-8兩種編碼方式,蜘蛛程式在分析頁面的時候,需要對兩種編碼方式區別對待,否則無法正常識別關鍵詞。而記錄和統計關鍵詞的時候,為統一資料,只採用其中的一種方式,於是其中就有許多編碼轉換的環節,稍有不慎,或者是引起推廣廣告無法正常彈出,或者是彈出顯示一堆的亂碼。更糟的是瀏覽器的不相容性,在美國,用IE6的人不多 了,但是在國內,用IE6的人可能還佔有四成的比例,而IE6在CSS支援和Javascript執行上,都有很多問題。這些問題折騰的我幾個晚上失眠。 頗有趣的是,有時晚上搞到後半夜都搞不定的問題,在凌晨睡著的時候會開始做夢,夢裡也在程式設計,也在嘗試解決問題,一覺醒來,靈感突現,問題竟然會立即被解決。
然而,這期間最大問題還是宣傳,得先讓別人知道你的作品。在宣傳中發現,冒冒失失的跑到別人的地盤上去做宣傳,很難成功。譬如我先嚐試到alimama的社群裡去發貼,結果發現在一小時之內就沉到第二頁去了,速度非常快,沒幾個人可以看的到。去chinaz站長站發貼,跟貼的人倒是不少,沒沉下去,有說做的不錯的,也有些是看熱鬧的,可是一小時後,被版主鎖了貼,別人無法再跟貼,就很自然而然的沉了下去。兩次失敗後,明白了,要先混個臉熟,要先成為社群的積極分子,這樣別人才會對你的貼子感興趣,版主也就不敢隨意的封你的貼,至少會先跟你打個招呼。如果再努力一把,混成版主,那就更好辦了。於是我開始混跡於各大論壇,其中還包括淘寶TOP的官方論壇以及7個官方的旺旺群。由於我實在太積極,譬如在旺旺群裡,和其他的開發者每天都在熱烈的討論問題,引起了淘寶TOP官方的注意,終於有一天他們找上我,說問我願不願意當這些官方群的管理員以及論壇的版主。哈哈,於是我就成真的成了官方TOP旺旺群的群副,以及TOP的論壇的版主。
在旺旺群裡積極的參與討論,收穫很大,不僅是收穫“群副”。之前簡淘網剛上線時,心裡忐忑不安,不知道能不能成,是群裡的成員給了我很大的鼓舞。在群裡,還認識了baiok,一個來自福建的天才少年,後來決定和他組成“亮劍”團隊,以團隊的形式參加TOP大賽。群裡還有很多成員給我提了很多中肯的建議,譬如kirain建議使用本地快取預存商品資訊,我立即接受並著手修改,結果驚喜的發現修改後彈出淘寶推廣窗品的速度有明顯提高,而且暫時也不再擔心會超出每天1萬次的API呼叫限額。另一個網友則向我透露了一個關於淘寶未公開的圖片資訊細節,這個資訊使我再一次簡化程式碼,大大降低了本機的CPU負荷、儲存負荷以及廣告彈出延遲。更有一個熱心網友,僅僅是因為我幫他解決了一個技術上的小問題,他就花了兩天時間來義務幫我整理淘寶的熱門關鍵詞。
參加TOP開發大賽確實是一次有趣的經歷,不管最終結果如何,至少這個過程,我是享受過了。如果能夠獲獎,那也許就能立即開始我的第三次創業。如果啥都沒得到,那我也會繼續利用業餘時間經營simtao.com,或者是找其他天使投資,或者是把這個專案貢獻給我所在的公司。隨著TOP API的不斷完善,也會有越來越多的IDEA能夠通過TOP API轉化為實際的應用,我也會持續關注,並且在適當時機推出更多的TOP API應用。
相關文章
- 黔村淘專案開發計劃
- 我的專案開發系統
- 開源大賽形式創新 參賽專案百花齊放
- 專案管理與足球比賽專案管理
- 我的專案開發經驗積累總結
- 大淘客cms原始碼修改二次開發原始碼
- 我如何用Django開發一個專案Django
- Thinkphp開發的簡約大氣導購網站PHP網站
- DBA參與開發專案的意義
- 我國航空專案管理的演變與發展(轉)專案管理
- 我參與 Seata 開源專案的一些感悟
- 軟體開發專案的需求管理簡述(Z)
- 物聯網【專案開發】開源系統開發
- 我們剛開發完成的專案在部署時發生的事情
- 接手了一個外包開發的專案,我感覺我的頭快要裂開了~
- 專案管理之我見:程式開發步驟專案管理
- GitHub排名TOP30的機器學習開源專案Github機器學習
- 小程式雲開發專案的建立與配置
- 京淘專案總結day02
- 推薦 | 機器學習開源專案 Top 10機器學習
- TOP專案成果全線參與軍民融合發展戰略
- django 開發網站-建立 django 專案Django網站
- 商務網站專案開發外包網站
- JNPF快速開發平臺-簡單快速高效開發java專案Java
- 前端網頁開發專案用到的框架有哪些前端網頁框架
- AOP在大規模軟體開發專案中應用的嘗試與思考
- Vue3專案的簡單搭建與專案結構的簡單介紹Vue
- 敏捷開發與jira之專案現狀敏捷
- 也談專案經理與敏捷開發敏捷
- Google Flutter Clock 大賽優秀專案推薦GoFlutter
- 【實訓專案】大獎賽計分系統
- 想找人開發下 vue 簡單的商城專案 報價Vue
- vue pc端網站專案開發坑點與難度記錄Vue網站
- 分享手淘過年專案中採用到的前端技術前端
- 離岸專案開發的管理
- 關於軟體專案開發的分析與設計
- 職場<火焰杯>測試開發大賽決賽即將開始!
- Flutter與Native的混合開發之--Andriod專案呼叫Flutter專案頁面-初探Flutter