Eleanor Roosevelt 曾經(jīng)說過:“從別人的錯誤中學習。你不可能活得足夠長來親身經(jīng)歷一切?!?/span>
來自 Beacons 的 Neal Jean 想與你們分享,他們在開發(fā)首款 Shopify 應用程序時犯了很多錯誤。為了幫你節(jié)省時間和減少挫敗感,他們要分享他們學到的知識,以便你更高效地構(gòu)建自己的應用,并更快發(fā)布。
這是他們第一次構(gòu)建Shopify 應用,從第一次提交代碼到應用被接受,他們花了大概兩個月的時間。即便你像他們一樣是新手,他們認為你用一半的時間就能完成。
以下是 Neal Jean 團隊在開發(fā)第一款 Shopify 應用時犯下的四個錯誤(并從中吸取了教訓)。
1. 保持簡單: 構(gòu)建 MVP
每個人都知道這一點,但不知為何還是在上面栽跟頭。構(gòu)建一款最小化可行產(chǎn)品(MVP)然后發(fā)布它。
首次提交至 Shopify 應用商店的作品不必傳達你100%的產(chǎn)品愿景。它甚至不必傳達一個月后你將提供給商家的價值的50%。最重要的是構(gòu)建一個至少對商家有用的 MVP,讓它被接受,然后快速迭代。
他們做了什么
第一次提交的應用包含了一堆很酷但不成熟的功能,這些功能并非絕對必要。而且更重要的是,它們并沒有完全起作用。在后續(xù)的每次提交中,他們刪除了更多不必要的功能。這些額外功能阻礙了接納速度,最終拖慢了我們的速度。
例如,最初提交的應用有一個叫做“分析”的額外選項,它與應用的核心價值并不直接相關。他們沒有花時間去調(diào)試它,而是將它移除,以便繼續(xù)前進。最終,總共提交了六次應用(包括一些自動拒絕)才被接受!
在應用被接受后的幾周里,重新添加了之前刪除的一些功能,但還有幾個其它的功能沒有重新添加,也許永遠不會添加。他們花在開發(fā)這些功能上的時間顯然可以花在其他地方。
你應該做什么
要特別小心,避免功能蔓延。請記住,你的應用被接受后不需要再經(jīng)歷一次審核流程(除了極個別情況)。你可以隨時更改你的應用和應用列表,除非真的出了什么問題,不然 Shopify 應用審核人員會盡其所能支持你。他們是來幫助你的!
只需讓一些比較有用的東西被接受,然后根據(jù)早期用戶的反饋快速改進它。
專業(yè)提示:確保在一開始就跟真正的商家對話,你將很快發(fā)現(xiàn)比你在團隊中頭腦風暴好得多的想法。
2. 測試你的應用,不是在成品中!
很多早期創(chuàng)業(yè)者和應用開發(fā)人員養(yǎng)成了習慣,直接將代碼推送到生產(chǎn)環(huán)境并快速修復漏洞。畢竟,你的應用可能沒那么重要,即便是,你可能也還沒有大量的用戶。
當你在別人的平臺上構(gòu)建時,這種“YOLO” (you only live once,你只活一次)的方法就不那么有效了。在你可以把代碼展示給真實用戶(他們正在為你做質(zhì)檢工作)之前,你必須得到專業(yè)應用測試人員的批準!
他們做了什么
在構(gòu)建 Shopify 應用之前,他們有一些構(gòu)建 Beacons 網(wǎng)站應用的經(jīng)驗,他們對 Shopify 應用提交作品進行了與他們用在自己的應用上同等級的測試。在開發(fā) Beacons 應用時,同步實現(xiàn)和測試新功能,編寫一些單元測試并確保它們通過檢驗,然后將新功能推送給所有用戶。如果有什么崩潰了,他們會立即修復問題。通常,他們能夠在太多人注意到之前解決問題。
在他們的 Shopify 應用中,沒有真實商家注意到錯誤,因為他們從來沒有機會發(fā)現(xiàn),任何錯誤都會被他們的 Shopify 應用審核人員發(fā)現(xiàn),他們的提交在到達任何用戶之前就被拒絕了。
你應該做什么
在第三次被拒后,我們整個團隊坐下來,試圖對 Shopify 應用測試員測試我們應用的過程進行逆向工程,他們當然不是隨機進行的。
當你開發(fā)應用程序時,把它們放在一起并不斷地添加至一個嚴格的檢查清單,以全面測試應用程序的所有功能。這個清單至少應該包括所有相關的公用應用程序要求。如果有任何不清楚的地方,試著查看 Shopify 論壇,我們使用了 APIs & SDKs 論壇來獲得幾個問題的答案。
創(chuàng)建并遵循測試清單
創(chuàng)建測試清單很重要,因為它有助于標記測試過程中任何遺漏的步驟,并突出顯示應用中需要修改的地方。我們創(chuàng)建了一個包含操作視頻的檢查清單,這樣就很容易按照說明操作。
下面是一個檢查清單示例,你可以作為指南,在創(chuàng)建自己的檢查清單和發(fā)送給 Shopify 應用審核人員的測試清單時使用。確保你修改它以適用自己的應用程序!
在你可以操控的商店上安裝你的 Shopify 應用,確保店內(nèi)有可售產(chǎn)品。
為應用程序啟用付款并批準費用。
進入應用,轉(zhuǎn)到“產(chǎn)品”選項卡并嘗試切換一款產(chǎn)品來啟用它。(我們的應用是一個銷售渠道,因此我們啟用的任何產(chǎn)品將用于此銷售渠道。)
接下來,轉(zhuǎn)到“設置”選項卡并確認發(fā)布狀態(tài)顯示某款產(chǎn)品可售。
檢查是否有任何產(chǎn)品錯誤,它們也會出現(xiàn)在“設置”選項卡中。
確保你徹底測試安裝、卸載以及重新安裝你的應用,因為我們在這上面栽了幾次跟頭。下面是我們倒數(shù)第二次被拒的摘錄,我們的應用審核人員在把它安裝到一個新店時發(fā)現(xiàn)了一個漏洞,用的是相同的電子郵件:
修改要求
我在測試你的應用時遇到了一個功能錯誤。請查看截圖了解更多細節(jié)。在此視頻中你可以看到我安裝你的應用來存儲“testystuff66”這個安裝,但你的應用只是提取我上次審核安裝的數(shù)據(jù)來存儲“testystuff66”。兩個商店有相同的電子郵件地址,但是不同的商店,有不同的員工和商品。請解決問題。由于該錯誤,我無法完成對此應用的全面審核,因為我無法按照訂單返回我的商店。請重新提交,再次強調(diào),這是一款好產(chǎn)品。
批準或拒絕通過綠色或紅色的banner組件傳達給商家。請記住,商家的產(chǎn)品種類繁多,如果它們不符合你的要求,你需要為特定產(chǎn)品類型添加此選項。
截止2020年3月,所有銷售渠道(手機應用開發(fā)者除外)必須適用“只讀自有訂單”范圍?!爸蛔x自有訂單”范圍由審核團隊于審批過程中添加 ,并確保該渠道只能讀取由其創(chuàng)建的訂單。請讓我們知道你的應用是否準備好添加此標志,亦或你需要更多時間。該標志會在審核流程結(jié)尾時添加,即上線之前。
根據(jù)你的團隊目前的習慣,這可能需要轉(zhuǎn)變思維,一開始你會覺得慢下來了。請保持耐心:現(xiàn)在慢一點,以后才能快一點。
3. 盡快找一個人工應用審核人員
應用審核流程的早期階段似乎不透明,令人泄氣。這是一種走走停停的感覺:幾天的努力工作,感覺自己進步飛快,接下來是幾天的等待,然后被拒絕,只有少量回復。通常,回復甚至可能與應用的核心功能無關,而是一些微小但嚴重的漏洞,阻礙了付費或頁面加載。
他們做了什么
對他們來說,應用審核流程的早期階段是一個重復的循環(huán):
提交應用
等待一周
被拒絕,收到幾句話的意見
實施反饋意見
重新提交更新后的應用
每次被拒絕并收到反饋后,他們都會馬上與整個團隊會面,想出應對反饋的策略,然后著手實施。如前所述,他們的修復、測試和重新提交在每次被拒后變得更嚴格。
在接近尾聲時,他們開始在每次提交中包含瀏覽我們應用的 Loom 視頻,讓審核人員更易操作,強烈建議這樣做!
你應該做什么
當你即將通過審核時,你的拒信會有更多詳細反饋,你可以選擇直接發(fā)送郵件給審核人員。這是一種激勵,它縮緊了反饋循環(huán)。通過遵循本文前面兩步的建議,盡快到達這一步!這是你在審核流程中獲得最有價值、最深入的反饋的節(jié)點。
此處大聲感謝我們的審核人員 Ivana,她超級鼓舞人心(一旦我們能夠與她對話后),并努力幫助我們越過終點線。即使是在我們的應用被 Shopify 應用商店接受后,她也十分愿意提供反饋,讓我們覺得在 Shopify 有自己的守護天使。
4. 分離過渡及成品
每次你提交應用程序供審核時,Shopify 會提醒你不要修改審核中的版本。這是為了確保你不會破壞 Shopify 應用審核人員正在查看的任何內(nèi)容。
審核周期基本上不受你控制,你的應用可能還有一部分需要修改。那么,你如何不斷進步呢?
他們做了什么
他們最終通過設置一個過渡環(huán)境解決了這個問題,在這個環(huán)境中,他們可以在成品應用程序?qū)徍诉^程中持續(xù)改進。他們通過托管兩個獨立的應用實現(xiàn)這一點,一個在過渡中,另一個在成品中。
當應用審核人員在審核應用的成品版本時,他們得以修復一些小漏洞,并在過渡應用中繼續(xù)改進現(xiàn)有功能。
你應該做什么
可能有更復雜的方法,通過使用功能標志或其它技術來保持進步。我們很樂意了解更多經(jīng)驗豐富的開發(fā)團隊是如何做到的,請留下評論分享你的知識!
專業(yè)提示:主要使用你熟悉的工具。我們的團隊最喜歡使用 React 和 Python。幸運的是,Shopify 針對 React 提供很多支持,包括設計圖庫:Polaris。使用 Polaris 為我們節(jié)省了思考組件布局并確保它們有視覺協(xié)同作用的精力。
另外,我們可以利用已有的幾個開發(fā)流程和工具:代碼審核、CI/CD(感謝 GitLab)、PostgreSQL、 Firebase 和我們自己版本的敏捷流程,使我們能夠保持同步并快速構(gòu)建。
享受過程
shopify應用開發(fā)
作為 Shopify 應用開發(fā)新手,他們很興奮地進入流程,但感覺到很多不確定性。你很可能已經(jīng)問過自己很多問題,這些問題也在他們腦海中反復出現(xiàn)(或此刻正在問你自己這些問題):
應用審核需要多久?
審核人員會很難說話嗎?
如果我們賺了太多錢,Shopify 不喜歡我們怎么辦?
如何讓 Shopify 喜歡我們?
回過頭來看,真的不需要擔心這些問題。與其他平臺不同(不點名),Shopify 十分支持其生態(tài)系統(tǒng) ,并積極配合確保他們的合作伙伴和應用開發(fā)者取得成功。
Shopify 應用審核人員 Ivana甚至在我們的應用被接受后,花時間進行視頻通話,就如何改進提供意見。
總而言之,Shopify 應用提交流程相對高效,你可以做很多事來幫助加快整個流程,包括遵循上面的建議!
他們的應用已經(jīng)在 Shopify 應用商店上線幾周了,并一直忙于為早期用戶改進應用?,F(xiàn)在犯的錯誤更少了,希望你在看了這些文章后也會少犯錯誤。
記?。骸爸挥猩倒喜艔淖约旱腻e誤中吸取教訓。智者從他人的錯誤中吸取教訓?!?/span>