8.21: Hackday、慈善x快速迭代

8.21: Hackday、慈善x快速迭代

過去總想着寫點小日誌什麼的來記錄一下平常的生活,可貴有了點想法 + 實力終於能夠作這件事了。固然,這不會是流水帳,每一天都會有一個主題,直到20天之後。git

因而,第一天以Hackday開始,由於不少idea就是這樣變成一個產品的。程序員

HackDay

Hackday是一個有意思的話題,畢竟人生苦短。身爲一個程序員,咱們總想創造一些有意思的東西。Hackday彷佛就是這樣的一個場景,然而多數的時候,咱們還須要圍繞着舉辦方的主題來構建Idea。github

過去參加過了那麼幾回的Hackday,而此次不同的緣由是主題離開了業務,以慈善爲中心。數據庫

慈善

慈善在中國已然是慘淡的。。。,,至少在我看來目前這個詞是貶大於褒。不過,這類東西主要是由於缺乏透明度。服務器

咱們的idea與之有一點點的小關係(說大話了)。其實是再日常不過的O2O捐贈了,只是接口變成了微信,接口仍是網頁微信

接着就來到了咱們的主題——快速迭代。微信公衆平臺

快速迭代

咱們只有兩天不到的時間去實現咱們的Idea。ide

當時咱們考慮到的現實是,對於多數人來講,掌握QQ和微信的速度比APP和網頁快、並且普及度高,所以咱們選擇了微信來看成咱們的入口。學習

第一次Inception

因而在前一天上午,咱們五我的開始站會(不想會太長的小夥伴們,就站着開會吧)。網站

說說咱們的idea,首先咱們須要有下面的微信界面

wechat

包含四個菜單:

  1. 我要捐。想要捐贈的人能夠由此進,拍照並填寫相應的捐贈信息。

  2. 我須要。那些須要捐贈的人能夠在此填寫相應的信息。

  3. 已捐贈。那些捐贈的人能夠看到相應的信息,並能夠分享到朋友圈blabla,而後還能夠點贊。

  4. 誰須要。想捐贈的人能夠在這裏查看須要捐贈的人。

而這個也須要有一個後臺,考慮到由於須要後臺,直接選用Django了。由於以前作過類型的東西,同時考慮到後期的數據量,以及學習成本。系統就會成了兩部分:

  1. donate。這部分主要是網頁代碼,Django + Haystack + ElasticSearch來實現表單及展現。

  2. donate-wechat。 這部分代碼主要是微信,實際上只是一些連接。

接着,咱們就劃分了任務:

  1. Django 圖片上傳

  2. 嘗試在前臺用ElastiSearch進行搜索

  3. 微信公衆平臺

因爲咱們是五我的,採用pair機制。做爲一個有女友就Solo了,問題是剩下的兩個單身漢子主動地pair了,因而兩個妹子在pair,唉。。。

快中午的時候,圖片上傳有結果了,微信公衆平臺在開始的十幾分鍾內有結果了,而後在下午開始的時候咱們開始了第二次Inception。

第二次迭代

由於已經能夠用Django上傳圖片了,因此剩下的就是修改表單和UI修改了。

接着,開始Setup本地的開發環境了,由於以前個人本地環境和服務器環境都是已經Ready的狀態。因此是個人挖的大坑,因此我只好默默地填好全部的坑:

  1. Django安裝

  2. ElastiSearch安裝

  3. Django Geo安裝

  4. Python PIL

因爲,最後坑在Google Map對於地址的解析,因此只好先把這部分的功能去掉了,即Django Geo。好在痛苦了大概一小時以後 ,就再也不痛了。隨後花了大概十幾分鍾,快速講了個Django、Haystack的Session。

咱們開始第二次劃分任務:

  1. 我繼續修改Form

  2. 添加"我須要"

  3. 嘗試搜索功能

在第一天結束的時候,勉強能夠工做,然而咱們並無意識到微信是有問題的。。

第二次站會

在次日的站會中,咱們發現了微信的問題,即修改公衆號菜單須要24小時才能生效。而在前一臺,咱們的幾個連接都指向的是某中文搜索網站。

同時,咱們發現後臺的審覈須要增強。

因而,咱們開始了第三次劃分任務:

  1. 由於有微信經驗,因此我來負責這個

  2. 修改UI

  3. 修改索引

所幸,微信的功能在半個小時內就完成了。便加入了後臺管理功能,實際上只是兩個Boolean,有萬能的Django:

admin.site.register

後臺都是小問題。

第四次迭代

因而,咱們很快來到了第四次迭代。在下午的時候,基本上已經作完了。可是咱們又從新分配了一下任務:

  1. 我開始了我最想作的海報

  2. 繼續修改UI

  3. 準備PPT和ShowCase

最後,仍是拿了個三等獎~~。

快速迭代的思考

在進行的過程當中,我一直在思考這個問題,由於我意味到了咱們在快速的迭代。在不斷地反饋問題中,咱們丟掉了一些方案,才能更快地向目標移動。

若是,咱們在過程當中被一些問題卡住,而沒有試圖用別的方式解決。如:

  1. 咱們以前在嘗試用ElasticSearch的前臺搜索的時候,咱們發現直接用後臺更快。

  2. 咱們在嘗試建立成功建立"我要捐"頁面的時候返回詳細信息,一開始調用的是ES,後來發現咱們能夠用數據庫解決——畢竟這時候是不須要索引的。

那麼,咱們很容易影響到整體的進度。只有在不斷獲取反饋的時候,才能成長。

而,這樣的迭代,彷佛在開放的團隊中更容易看到?

其餘

項目Github: icharity

微信關注我: Phodal

截圖:

Donate

相關文章
相關標籤/搜索