前言:
本文主要與大家分享我業(yè)余時間如何學(xué)習(xí)多門技術(shù)以及開發(fā)業(yè)余項(xiàng)目的一些心得芝硬,分為 初衷蚜点、硬技能、軟技能拌阴、第一生產(chǎn)力绍绘、環(huán)境、時間幾個部分,
業(yè)余開發(fā)項(xiàng)目的初衷
總體來說陪拘,在我的感覺里厂镇,國內(nèi)的環(huán)境對于業(yè)余開發(fā)者來說其實(shí)是非常不友好的,不過作為一個開發(fā)者左刽,一味抱怨并不會有大的改觀捺信,能做的就是不忘初心,多做嘗試多做積累欠痴。
包括我之前也和一些朋友深入聊過類似的話題迄靠,例如“在行”上約我聊相關(guān)話題的同學(xué),我其實(shí)是鼓勵大家勇敢的去做自由職業(yè)者或者業(yè)余開發(fā)者喇辽,雖然環(huán)境的確不是很友好掌挚,但是年輕時多嘗試總是沒錯的,畢竟我們還有資本去尋找更多可能性茵臭,而且我相信每個開發(fā)者其實(shí)內(nèi)心都是向往利用自己的力量改變?nèi)藗兊纳罘绞降模?/p>
推薦閱讀:iOS開發(fā)——2019 最新 最全 BAT面試題合集(持續(xù)更新中)
作為一個開發(fā)者疫诽,有一個學(xué)習(xí)的氛圍跟一個交流圈子特別重要,這是一個我的iOS交流群:638302184旦委,不管你是小白還是大牛歡迎入駐 奇徒,分享BAT,阿里面試題、面試經(jīng)驗(yàn)缨硝,討論技術(shù)摩钙, 大家一起交流學(xué)習(xí)成長!希望幫助開發(fā)者少走彎路查辩。
以下資料需要的可以加群領(lǐng)取胖笛。
而我們通常做的事情卻總是一個大工程中的螺絲釘,時間長了失卻了創(chuàng)新的初衷意味宜岛,這時候離一個創(chuàng)造者越來越遠(yuǎn)长踊,自會覺得內(nèi)心恐慌,我最初的熱愛去哪了萍倡?雖然這些大工程的確在不斷改變我們的生活身弊,但是我的初衷卻是能夠主導(dǎo)一場改變,即使它可能改變的只是一小群人的某個小小的生活方式列敲。
我一直覺得程序員是一個很神奇的職業(yè)阱佛,不是說這個職業(yè)本身神奇,而是代碼賦予我們的能力神奇戴而,我們可以憑空創(chuàng)建起一個虛擬的世界凑术,可以制定這個虛擬世界的規(guī)則,可以讓這個世界按照我們的想法運(yùn)作所意,但是這個世界也會反過來要求你改變你淮逊,因?yàn)橐粋€正常運(yùn)作的虛擬世界需要嚴(yán)謹(jǐn)?shù)囊?guī)則催首,這就需要你有設(shè)計(jì)產(chǎn)品,設(shè)計(jì)合理規(guī)則壮莹,設(shè)計(jì)運(yùn)作閉環(huán)的能力翅帜。
這也是我們重點(diǎn)要強(qiáng)調(diào)的業(yè)余開發(fā)者的能力模型,你不能只是擁有 coding 的能力命满,不能只是 create涝滴,而是要合理的創(chuàng)造,探索人群的新的需求胶台,創(chuàng)造真正有用的產(chǎn)品歼疮。
其實(shí)這是今天要探討的重要話題之一:業(yè)余開發(fā)者如何做出一個真正的產(chǎn)品?
硬技能
1诈唬,這件事絕非看起來這樣簡單韩脏,首先在技術(shù)上,你要掌握足夠的技術(shù)來完成這個產(chǎn)品的各個方面铸磅,現(xiàn)在假設(shè)以我的上一個app睡前故事為例赡矢,完成這個產(chǎn)品需要有哪些方面的技術(shù)積累呢?
2阅仔,客戶端開發(fā)吹散,iOS,Android八酒,當(dāng)然如果你選擇只支持某個平臺空民,可以只掌握其中一種,當(dāng)然也可以使用一些跨平臺的技術(shù)羞迷,但是除了語言和編程模式界轩,編程框架之外,還遠(yuǎn)遠(yuǎn)不夠衔瓮,平臺差異浊猾,平臺特性,版本兼容热鞍,自適應(yīng)与殃,還有最麻煩的一環(huán),你的 app 開發(fā)成功之后如何發(fā)布到對應(yīng)的平臺碍现?如何設(shè)置內(nèi)購等?
3米奸,特別是 iOS昼接,發(fā)布一個 app 的成本遠(yuǎn)比想象的高。另外與端相關(guān)的悴晰,還有基礎(chǔ)的數(shù)據(jù)統(tǒng)計(jì)慢睡,消息推送逐工,分享集成等,在初版的時候最好就能將這些工作做好漂辐,而這就需要你了解這些功能的集成開發(fā)泪喊。
4,前端開發(fā)髓涯,故事上傳有一個后臺袒啼,當(dāng)然這個很簡單,然后故事從 app 里分享出去之后有一個 H5頁面纬纪,這個頁面里可以直接播放音頻蚓再,然后有一些下載 app 的引導(dǎo)。所以前端開發(fā)的技能也是必備的包各。還有就是一些平常要用的宣傳頁之類的摘仅。服務(wù)端,所有故事都是在后臺存儲的问畅,需要數(shù)據(jù)庫娃属,還有服務(wù)端應(yīng)用提供數(shù)據(jù)分發(fā),以及一些數(shù)據(jù)統(tǒng)計(jì)之類护姆。
5矾端,數(shù)據(jù)記錄與分析,我需要在用戶的使用過程中签则,記錄用戶的動作和其他有用信息到服務(wù)端须床,然后以這些數(shù)據(jù)分析用戶行為,以便決定后續(xù)哪些故事是最受歡迎的渐裂,以及受誰的歡迎豺旬,我可以做定向的推送或者收費(fèi)服務(wù)。
6柒凉,設(shè)計(jì)能力族阅,說起來這也是非常核心的需要,如果沒有基礎(chǔ)的設(shè)計(jì)能力膝捞,很難做出一個讓大家眼前一亮至少看著舒服的 app坦刀,特別是現(xiàn)在市面上的主流 app 都擁有比較高的體驗(yàn)門檻,粗制濫造的 app 很難吸引用戶蔬咬,在這點(diǎn)上鲤遥,也需要做一些刻意的培養(yǎng),雖然我們可能沒有受過專業(yè)的訓(xùn)練林艘,但是可以多看多想盖奈,從別人的設(shè)計(jì)風(fēng)格中借鑒,慢慢培養(yǎng)審美狐援,當(dāng)然還有最重要的就是 設(shè)計(jì)工具當(dāng)然需要熟練掌握钢坦。
7究孕,除了技術(shù)之外,還需要其他一些技術(shù)之外的能力爹凹,這些能力可能是區(qū)分你與其他程序員的重要分水嶺厨诸,它決定了你可以創(chuàng)造產(chǎn)品,而不是掌握了哪些具體的技術(shù)禾酱。
軟技能
我們簡單談?wù)劊?/b>
1微酬,需求分析,產(chǎn)品規(guī)劃宇植。要做一個什么產(chǎn)品得封,不是因?yàn)槲艺莆樟耸裁醇夹g(shù),能夠?qū)懗鍪裁礃拥拇a來指郁,技術(shù)只是一個工具忙上,要發(fā)揮其價值,必然是需要有原始的需求和基礎(chǔ)產(chǎn)品形態(tài)闲坎。所以要開始獨(dú)立開發(fā)一個應(yīng)用疫粥,首先要做的可能并不是去掌握很多種技術(shù),而是想清楚腰懂,你要做一個什么產(chǎn)品梗逮。
2,例如绣溜,我要做睡前故事的 app 的時候慷彤,我的確已經(jīng)掌握了上述的技術(shù),但這些都不是決定性的怖喻,如果我沒掌握底哗,我可以去學(xué)習(xí),但是為什么要做這個 app锚沸?是因?yàn)槲矣匈Y源(我老婆跋选,講故事講得好,她是老師哗蜈,身邊有一群潛在的種子用戶)前标,有受眾(強(qiáng)需求,高粘性)距潘,于是我開始思考如何利用這些資源炼列,我想一個聽故事的 app 成本應(yīng)該是不高,而且容易推廣音比,粘性足夠高的唯鸭。雖然市面上已經(jīng)有很多類似的 app,但是我可以做我的特色硅确,
例如:我只有一個講故事的老師目溉,而且講的質(zhì)量很高(市面上大多數(shù)故事app都講的很敷衍),有很強(qiáng)的品牌和標(biāo)簽屬性菱农,另外我的設(shè)計(jì)能力和開發(fā)能力突出缭付,我可以將我的 app 做的比任何一個 app 都精致好用。
3循未,推廣和運(yùn)營陷猫。大多數(shù)業(yè)余開發(fā)者應(yīng)該都為此非常發(fā)愁,我好不容易做出的應(yīng)用的妖,如何曝光給受眾绣檬?如何讓更多的人安裝我的應(yīng)用?如何維持應(yīng)用的活躍度留存率嫂粟?這方面的能力娇未,我推薦大家首先多去嘗試挖掘,另外就是在平常公司的工作中多多留意大家的慣用手段星虹,多向相應(yīng)職位的同事學(xué)習(xí)零抬,另外在職場中遇到類似問題的時候也多從自身思考,如果讓你來推廣一個 app宽涌,你有什么辦法平夜?具體如何推廣 app,這里也可以分享一下卸亮。首先忽妒,你要保證你的 app 是優(yōu)秀的,否則你把 app 推給用戶兼贸,他不愿意下載段直,那無論如何推廣都是無效的。
4寝受,然后推廣渠道坷牛,可以找一些免費(fèi)渠道,一些app推薦的網(wǎng)站很澄、app京闰、公眾號,想辦法聯(lián)系到他們的編輯甩苛,然后請他們推薦你的應(yīng)用蹂楣,如果你的應(yīng)用足夠優(yōu)秀,他們會很樂意幫忙讯蒲,這種渠道還是挺多的痊土,例如最美應(yīng)用、少數(shù)派墨林、appso之類赁酝。另外一個渠道就是一些垂直的論壇和社交網(wǎng)站犯祠,甚至是知乎之類。然后所謂的運(yùn)營酌呆,最基礎(chǔ)的衡载,在 app 內(nèi)要有一些與用戶的互動,能夠維持用戶的使用激情隙袁,甚至幫你擴(kuò)散 app 到朋友圈痰娱,具體可以是一些活動的形式(運(yùn)營管用手段)。
最后再說一點(diǎn)菩收,適當(dāng)?shù)臅r候梨睁,要舍得花錢,但是要花在點(diǎn)子上娜饵,可以搞一些送禮物的活動坡贺,也可以做一些付費(fèi)的推廣配合沖一下榜。
創(chuàng)新是第一生產(chǎn)力
1划咐,當(dāng)我們知道構(gòu)建一個產(chǎn)品需要些什么基礎(chǔ)技能之后拴念,那我們?nèi)缦抡嬲南率肿鲆粋€產(chǎn)品出來呢?我應(yīng)該做什么類型的產(chǎn)品褐缠?我能想到的產(chǎn)品別人都做過了怎么辦政鼠?我人手不足無法開展大型工程如何與別人競爭?我的推廣和運(yùn)營能力有限沒人用怎么辦队魏?
2公般,有時候我也會困惑,特別是我做了一個 app 出來胡桨,然后千辛萬苦推廣的時候官帘,要么發(fā)現(xiàn)對個人來說推廣一個 app 是極其困難的,要么就是發(fā)現(xiàn)當(dāng)我把 app 推到用戶面前的時候昧谊,用戶并不會很興奮的接受你的產(chǎn)品刽虹,這時候我就會開始思考,如何突破呢诬?是尋求更多曝光渠道涌哲?還是做一些很花哨很吸引人的運(yùn)營活動?感覺這些事情對我來說都沒有那么簡單尚镰,成本也都很高阀圾,越想越頭疼,越想越會覺得自己做個事情出來真的不容易狗唉。
3初烘,不過,可能我想著突破的點(diǎn)的方向就是錯的。業(yè)余開發(fā)者的核心競爭力是什么肾筐?不是你的資源哆料,不是你花里胡哨嘩眾取寵的玩法,而是你個人意志主導(dǎo)的創(chuàng)新能力吗铐!用戶對于創(chuàng)新功能(當(dāng)然首先要是合理的)的敏感度是很高的剧劝,如果你的 app 提供了一種前所未見但是又能夠解決問題的使用方式,這才是你的產(chǎn)品的核心競爭力抓歼,在極致情況下,可能不需要任何主動地推廣拢锹、運(yùn)營谣妻,用戶會自發(fā)幫你傳播,并且保持很高的活躍度卒稳。當(dāng)然蹋半,這種創(chuàng)新,不是特指一項(xiàng)具體的技術(shù)實(shí)現(xiàn)充坑,也不是指一個花里胡哨的設(shè)計(jì)减江,需要自己去做理解和平衡。
環(huán)境
1捻爷,知道了如何獨(dú)立開發(fā)一個產(chǎn)品之后辈灼,我們再談些別的,例如:為什么我說國內(nèi)的環(huán)境對業(yè)余開發(fā)者是很不友好的也榄?為什么很少有專職的業(yè)余開發(fā)者巡莹?
2,從經(jīng)濟(jì)上來說甜紫,其實(shí)一個業(yè)余開發(fā)者要養(yǎng)活自己還是沒有問題的降宅,但是現(xiàn)在國內(nèi)的環(huán)境是,能養(yǎng)活自己遠(yuǎn)遠(yuǎn)不夠囚霸,首先你要能養(yǎng)活一個家庭腰根,然后你要養(yǎng)房子車子,你要還貸款養(yǎng)銀行拓型,你要交稅養(yǎng)國家额嘿,種種因素要求你,要么有穩(wěn)定的收入吨述,要么就有足夠硬的經(jīng)濟(jì)條件岩睁。如果你沒有很好地經(jīng)濟(jì)基礎(chǔ),而又沒有穩(wěn)定的收入揣云,對于家庭來說是一件很難接受的事情捕儒。
3,當(dāng)然,這是大環(huán)境刘莹,你完全可以跳脫這些束縛阎毅,但是大環(huán)境對人的影響還是非常大的,你很難擺脫正常人的生活方式與狀態(tài)点弯,這些都在暗示你扇调,從事不穩(wěn)定收入的自由職業(yè)獨(dú)立開發(fā)不是一個好的選擇。還有其他一些問題抢肛,例如社保狼钮,五險一金,戶口捡絮,簽證等問題熬芜,如果你沒有正式的工作,這些事情都會變得很麻煩福稳。
4涎拉,其實(shí)我非常向往自由職業(yè),所以曾經(jīng)有一年我沒有工作的圆,在家里嘗試了一年時間鼓拧,除了自己的自制力問題之外,我也深知越妈,我沒法維持“自由”這個狀態(tài)太久(除非我一夜成功季俩,但是那時候的我,也并非“自由”了)叮称,因?yàn)樽鳛橐粋€正常人种玛,我需要承擔(dān)很多這個社會需要我承擔(dān)但是我自己可能并不特別樂意的責(zé)任。
5瓤檐,當(dāng)然還有一點(diǎn)赂韵,我需要回到職場觀察學(xué)習(xí),如何成為一個“正常人”挠蛉,如何創(chuàng)造“大型產(chǎn)品”祭示,雖然可能這并非我的初衷,但是我們并非天才谴古,做任何事情都需要這個世界的輔助质涛,所以我們需要很好地和這個世界溝通。在這種大環(huán)境下掰担,除了鼓勵更多的人參與到自由職業(yè)和獨(dú)立開發(fā)的隊(duì)伍中來之外汇陆,最好的選擇就是做部分妥協(xié),但是勿忘初心带饱,利用工作之余毡代,拾起你對技術(shù)和產(chǎn)品的熱愛阅羹,慢慢打磨一個業(yè)余的產(chǎn)品,通過這個打磨的過程教寂,積累經(jīng)驗(yàn)(硬技能捏鱼、軟技能),同時保持創(chuàng)造的活躍度酪耕。
時間
1导梆,接下來探討的這個話題可以涵蓋好幾個問題,例如如何一個人在短時間內(nèi)掌握多項(xiàng)相關(guān)的技能迂烁?如何維持自己業(yè)余開發(fā)的熱情看尼?覺得技術(shù)一直沒有長進(jìn)怎么辦?
除了 0.1% 的悟性盟步、1%的方法之外狡忙,你能做到別人做不到的事情的最大秘訣就是:時間。
2址芯,如果你真的對一個事情感興趣,那就投入 100% 的熱情和精力窜觉,例如每天下班后 7 點(diǎn)到晚上 2 點(diǎn)(當(dāng)然不鼓勵熬夜)的時間谷炸,就是 7 個小時,你一天投入到工作學(xué)習(xí)的時間比別人多了 7 個小時禀挫,一個月就是 200 個小時旬陡,加上周末的時間,遠(yuǎn)比你正式工作的時間還要長语婴,這些時間才是人和人之間拉開差距的重點(diǎn)描孟。
3,例如學(xué)習(xí) iOS 開發(fā)砰左,一天學(xué)一個知識點(diǎn)(加上實(shí)踐)匿醒,我覺得最多一個月就可以覆蓋大部分知識點(diǎn),當(dāng)然這需要極大地?zé)崆椴迹吘共皇撬腥硕忌岬脤⒋蟀训臉I(yè)余時間投入到學(xué)習(xí)或者做項(xiàng)目中去廉羔。
4,我在做之前的個人論壇和 app 的過程中僻造,其實(shí)狀態(tài)都是比較累的憋他,每天大概需要付出大部分業(yè)余時間加熬夜的時間,因?yàn)橛脩舴答佋絹碓蕉嗨柘鳎倚枰粩嗟貎?yōu)化自己的產(chǎn)品竹挡,完善自己的想法,并且將他們實(shí)現(xiàn)出來立膛。雖然很累揪罕,但是成就感還是很強(qiáng)的,這些成就感會激勵我持續(xù)的投入更多的時間,形成一個自身成長的正循環(huán)耸序。
不過做事情總有遇到瓶頸的時候忍些,在遇到瓶頸的時候,我會刻意將節(jié)奏放緩坎怪,看看別的類型的書罢坝,研究下別的類型的技術(shù),或者純粹的放松搅窿。
5嘁酿,講了這么多,不知道對大家會不會有幫助男应,不論如何闹司,最重要的還是開始執(zhí)行,腦海里總會冒出一些想法吧沐飘,不知道是不是合理游桩?那就先嘗試做,慢慢的就會發(fā)現(xiàn)什么是合理的耐朴,什么是不合理的借卧,每個人都有這樣的一個過程。然后多去觀察生活中出現(xiàn)的大大小小的問題筛峭,總有我力所能及可以用技術(shù)去解決的問題铐刘,而這可能就是一個很好的 idea。另外希望真正熱愛技術(shù)和創(chuàng)造的朋友可以一直保有自己的那份初心影晓。
作為一個開發(fā)者镰吵,有一個學(xué)習(xí)的氛圍跟一個交流圈子特別重要,這是一個我的iOS交流群:638302184挂签,不管你是小白還是大牛歡迎入駐 疤祭,分享BAT,阿里面試題、面試經(jīng)驗(yàn)饵婆,討論技術(shù)画株, 大家一起交流學(xué)習(xí)成長!希望幫助開發(fā)者少走彎路啦辐。