自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

我業(yè)余時間如何學習多門技術(shù)以及開發(fā)業(yè)余項目的一些心得

移動開發(fā)
本文主要與大家分享作者業(yè)余時間如何學習多門技術(shù)以及開發(fā)業(yè)余項目的一些心得,分為 初衷、硬技能、軟技能、第一生產(chǎn)力、環(huán)境、時間幾個部分,閱讀大概需要 10 分鐘。

本文主要與大家分享作者業(yè)余時間如何學習多門技術(shù)以及開發(fā)業(yè)余項目的一些心得,分為 初衷、硬技能、軟技能、***生產(chǎn)力、環(huán)境、時間幾個部分,閱讀大概需要 10 分鐘。

關(guān)于我之前做的一些業(yè)余項目,我在知乎上的一個回答大概可以總結(jié):

我的學習方法

在開始介紹我開發(fā)業(yè)余項目的經(jīng)驗前,先和大家分享一下我的學習方法吧,不過我認為學習這件事情因人而異,每個人都有適合自己的學習方式,所以這是作為一個參考,希望大家也都能先找到適合自己的學習方法。

[[207188]]

我在學習一門技術(shù)的時候,通常都是直接切入實踐,曾經(jīng)我也嘗試先看各種基礎的語法或者稍微深入的一些設計模式之類的書籍,但是發(fā)現(xiàn)這種方式對我來說很低效。

例如 Objective-c 的學習,當初我買了幾本書,啃了半年還是一知半解,當然另外還有一個關(guān)鍵點就是要時間連續(xù),如果每天看幾頁的話,也是低效的一個重要原因,因為程序的語法是偏生澀的,死記硬背很難記住所有知識點。

所以后來,在有一次辭職之后,我直接接了一個 iOS 的外包,那時候我甚至還從來沒有在 xcode 上寫過 iOS 代碼,我逼自己花一個月時間,掌握并且做出一個 app 來。

在這一個月時間里,我將大量的時間投入了 iOS 開發(fā)的學習,并且盡量采取高效的學習路徑,我來不及看明白所有的基礎 OC 語法,就直接去看講述 iOS 編程的文章(蘋果官方有很多實踐入門的文檔)。

然后直接實踐,在 xcode 上敲代碼做布局,然后運行看效果,對于不懂如何實現(xiàn)的功能,就直接去 google 搜索文章,快速查看別人的方法,然后實踐。

當然,這是一種比較走捷徑但是問題多多的學習方式,在這個月里,我通宵了好幾次,就為了解決某個細節(jié)的問題,不斷查文章不斷實驗,然后不行,就再查,如此反復,效率其實也不見得高。

但是與實踐結(jié)合的學習方式,***的益處是對知識點的掌握更扎實更具象,不過這一個月之后,其實我對 iOS 開發(fā)仍然是一知半解,后續(xù)通過另外一些不是很緊急的項目持續(xù)的磨練,才算是正式入門。

到了后來你會發(fā)現(xiàn),語法真的是一門開發(fā)技能最最基礎的東西,對語法掌握熟悉只是踏入開發(fā)的***步,后面還有很多知識需要不斷在實踐中總結(jié)。

包括我當初學習 node 開發(fā),也是直接從實踐切入,因為語法其實已經(jīng)沒有什么問題了,當時我就想,我需要做一個網(wǎng)站出來,通過網(wǎng)站的不同功能模塊,實踐 node 開發(fā)中的一些基礎或者是數(shù)據(jù)庫設計,部署,服務器運維等知識。

當時***個想法就是把自己搭建的 wordpress 博客自己用 node 實現(xiàn)一個,于是就說干就干,后來發(fā)現(xiàn)博客還是過于簡單,于是就想把自己的博客搞成一個社區(qū)。

大家可以來這里發(fā)表博客,或者是問答,還有論壇發(fā)帖等功能,整個網(wǎng)站的結(jié)構(gòu)變得復雜了,對程序的結(jié)構(gòu)設計,數(shù)據(jù)庫設計的要求也就凸顯了,通過這個網(wǎng)站的不斷迭代,我對 nodejs 的了解也越來越深入。

我的主要技能仍然是前端開發(fā),這個是我的工作。然后其他開發(fā)技能基本都是在業(yè)余時間學習與實踐的,包括其他一些軟技能,例如設計,產(chǎn)品,運營之類。

方法無非就是我上面講的,所以接下來講的業(yè)余開發(fā)項目的感受,這些項目,其實最終的初衷除了創(chuàng)造之外,還有很重要的一個點,就是我用來學習技術(shù)的實踐,不管你的產(chǎn)品做成功還是失敗了,至少我的技術(shù)長進了。

所以,不要在業(yè)余時間做一些沒有技術(shù)含量的事情,例如接一些切圖的外包或者你已經(jīng)很熟悉的事情,多給自己一些挑戰(zhàn)自己的事情。

業(yè)余開發(fā)項目的初衷

總體來說,在我的感覺里,國內(nèi)的環(huán)境對于業(yè)余開發(fā)者來說其實是非常不友好的,不過作為一個開發(fā)者,一味抱怨并不會有大的改觀,能做的就是不忘初心,多做嘗試多做積累。

包括我之前也和一些朋友深入聊過類似的話題,例如“在行”上約我聊相關(guān)話題的同學,我其實是鼓勵大家勇敢的去做自由職業(yè)者或者業(yè)余開發(fā)者,雖然環(huán)境的確不是很友好。

但是年輕時多嘗試總是沒錯的,畢竟我們還有資本去尋找更多可能性,而且我相信每個開發(fā)者其實內(nèi)心都是向往利用自己的力量改變?nèi)藗兊纳罘绞降摹?/p>

而我們通常做的事情卻總是一個大工程中的螺絲釘,時間長了失卻了創(chuàng)新的初衷意味,這時候離一個創(chuàng)造者越來越遠,自會覺得內(nèi)心恐慌,我最初的熱愛去哪了?

雖然這些大工程的確在不斷改變我們的生活,但是我的初衷卻是能夠主導一場改變,即使它可能改變的只是一小群人的某個小小的生活方式。

我一直覺得程序員是一個很神奇的職業(yè),不是說這個職業(yè)本身神奇,而是代碼賦予我們的能力神奇,我們可以憑空創(chuàng)建起一個虛擬的世界,可以制定這個虛擬世界的規(guī)則,可以讓這個世界按照我們的想法運作。

但是這個世界也會反過來要求你改變你,因為一個正常運作的虛擬世界需要嚴謹?shù)囊?guī)則,這就需要你有設計產(chǎn)品,設計合理規(guī)則,設計運作閉環(huán)的能力。

這也是我們重點要強調(diào)的業(yè)余開發(fā)者的能力模型,你不能只是擁有 coding 的能力,不能只是 create,而是要合理的創(chuàng)造,探索人群的新的需求,創(chuàng)造真正有用的產(chǎn)品。

其實這是今天要探討的重要話題之一:業(yè)余開發(fā)者如何做出一個真正的產(chǎn)品?

硬技能

這件事絕非看起來這樣簡單,首先在技術(shù)上,你要掌握足夠的技術(shù)來完成這個產(chǎn)品的各個方面,現(xiàn)在假設以我的上一個app睡前故事為例,完成這個產(chǎn)品需要有哪些方面的技術(shù)積累呢?

客戶端開發(fā),iOS,Android,當然如果你選擇只支持某個平臺,可以只掌握其中一種,當然也可以使用一些跨平臺的技術(shù),但是除了語言和編程模式,編程框架之外,還遠遠不夠,平臺差異,平臺特性,版本兼容,自適應,還有最麻煩的一環(huán),你的 app 開發(fā)成功之后如何發(fā)布到對應的平臺?如何設置內(nèi)購等?特別是 iOS,發(fā)布一個 app 的成本遠比想象的高。另外與端相關(guān)的,還有基礎的數(shù)據(jù)統(tǒng)計,消息推送,分享集成等,在初版的時候***就能將這些工作做好,而這就需要你了解這些功能的集成開發(fā)。

前端開發(fā),故事上傳有一個后臺,當然這個很簡單,然后故事從 app 里分享出去之后有一個 H5頁面,這個頁面里可以直接播放音頻,然后有一些下載 app 的引導。所以前端開發(fā)的技能也是必備的。還有就是一些平常要用的宣傳頁之類的。

服務端,所有故事都是在后臺存儲的,需要數(shù)據(jù)庫,還有服務端應用提供數(shù)據(jù)分發(fā),以及一些數(shù)據(jù)統(tǒng)計之類。

數(shù)據(jù)記錄與分析,我需要在用戶的使用過程中,記錄用戶的動作和其他有用信息到服務端,然后以這些數(shù)據(jù)分析用戶行為,以便決定后續(xù)哪些故事是***的,以及受誰的歡迎,我可以做定向的推送或者收費服務。

設計能力,說起來這也是非常核心的需要,如果沒有基礎的設計能力,很難做出一個讓大家眼前一亮至少看著舒服的 app,特別是現(xiàn)在市面上的主流 app 都擁有比較高的體驗門檻,粗制濫造的 app 很難吸引用戶。在這點上,也需要做一些刻意的培養(yǎng),雖然我們可能沒有受過專業(yè)的訓練,但是可以多看多想,從別人的設計風格中借鑒,慢慢培養(yǎng)審美,當然還有最重要的就是 設計工具當然需要熟練掌握。

除了技術(shù)之外,還需要其他一些技術(shù)之外的能力,這些能力可能是區(qū)分你與其他程序員的重要分水嶺,它決定了你可以創(chuàng)造產(chǎn)品,而不是掌握了哪些具體的技術(shù)。

軟技能

我們簡單談談:

需求分析,產(chǎn)品規(guī)劃。要做一個什么產(chǎn)品,不是因為我掌握了什么技術(shù),能夠?qū)懗鍪裁礃拥拇a來,技術(shù)只是一個工具,要發(fā)揮其價值,必然是需要有原始的需求和基礎產(chǎn)品形態(tài)。所以要開始獨立開發(fā)一個應用,首先要做的可能并不是去掌握很多種技術(shù),而是想清楚,你要做一個什么產(chǎn)品。例如,我要做睡前故事的 app 的時候,我的確已經(jīng)掌握了上述的技術(shù),但這些都不是決定性的,如果我沒掌握,我可以去學習,但是為什么要做這個 app?是因為我有資源(我老婆,講故事講得好,她是老師,身邊有一群潛在的種子用戶),有受眾(強需求,高粘性),于是我開始思考如何利用這些資源,我想一個聽故事的 app 成本應該是不高,而且容易推廣,粘性足夠高的。雖然市面上已經(jīng)有很多類似的 app,但是我可以做我的特色,例如:我只有一個講故事的老師,而且講的質(zhì)量很高(市面上大多數(shù)故事 app 都講的很敷衍),有很強的品牌和標簽屬性,另外我的設計能力和開發(fā)能力突出,我可以將我的 app 做的比任何一個 app 都精致好用。

推廣和運營。大多數(shù)業(yè)余開發(fā)者應該都為此非常發(fā)愁,我好不容易做出的應用,如何曝光給受眾?如何讓更多的人安裝我的應用?如何維持應用的活躍度留存率?這方面的能力,我推薦大家首先多去嘗試挖掘,另外就是在平常公司的工作中多多留意大家的慣用手段,多向相應職位的同事學習,另外在職場中遇到類似問題的時候也多從自身思考,如果讓你來推廣一個 app,你有什么辦法?具體如何推廣 app,這里也可以分享一下。首先,你要保證你的 app 是優(yōu)秀的,否則你把 app 推給用戶,他不愿意下載,那無論如何推廣都是無效的。然后推廣渠道,可以找一些免費渠道,一些 app 推薦的網(wǎng)站、app、公眾號,想辦法聯(lián)系到他們的編輯。然后請他們推薦你的應用,如果你的應用足夠優(yōu)秀,他們會很樂意幫忙,這種渠道還是挺多的,例如最美應用、少數(shù)派、appso之類。另外一個渠道就是一些垂直的論壇和社交網(wǎng)站,甚至是知乎之類。然后所謂的運營,最基礎的,在 app 內(nèi)要有一些與用戶的互動,能夠維持用戶的使用激情,甚至幫你擴散 app 到朋友圈,具體可以是一些活動的形式(運營管用手段)。***再說一點,適當?shù)臅r候,要舍得花錢,但是要花在點子上,可以搞一些送禮物的活動,也可以做一些付費的推廣配合沖一下榜。

創(chuàng)新是***生產(chǎn)力

當我們知道構(gòu)建一個產(chǎn)品需要些什么基礎技能之后,那我們?nèi)缦抡嬲南率肿鲆粋€產(chǎn)品出來呢?我應該做什么類型的產(chǎn)品?我能想到的產(chǎn)品別人都做過了怎么辦?我人手不足無法開展大型工程如何與別人競爭?我的推廣和運營能力有限沒人用怎么辦?

有時候我也會困惑,特別是我做了一個 app 出來,然后千辛萬苦推廣的時候,要么發(fā)現(xiàn)對個人來說推廣一個 app 是極其困難的,要么就是發(fā)現(xiàn)當我把 app 推到用戶面前的時候,用戶并不會很興奮的接受你的產(chǎn)品,這時候我就會開始思考,如何突破?是尋求更多曝光渠道?

還是做一些很花哨很吸引人的運營活動?感覺這些事情對我來說都沒有那么簡單,成本也都很高,越想越頭疼,越想越會覺得自己做個事情出來真的不容易。

不過,可能我想著突破的點的方向就是錯的。業(yè)余開發(fā)者的核心競爭力是什么?不是你的資源,不是你花里胡哨嘩眾取寵的玩法,而是你個人意志主導的創(chuàng)新能力!

用戶對于創(chuàng)新功能(當然首先要是合理的)的敏感度是很高的,如果你的 app 提供了一種前所未見但是又能夠解決問題的使用方式,這才是你的產(chǎn)品的核心競爭力,在***情況下,可能不需要任何主動地推廣、運營,用戶會自發(fā)幫你傳播,并且保持很高的活躍度。

當然,這種創(chuàng)新,不是特指一項具體的技術(shù)實現(xiàn),也不是指一個花里胡哨的設計,需要自己去做理解和平衡。

環(huán)境

知道了如何獨立開發(fā)一個產(chǎn)品之后,我們再談些別的,例如:為什么我說國內(nèi)的環(huán)境對業(yè)余開發(fā)者是很不友好的?為什么很少有專職的業(yè)余開發(fā)者?

從經(jīng)濟上來說,其實一個業(yè)余開發(fā)者要養(yǎng)活自己還是沒有問題的,但是現(xiàn)在國內(nèi)的環(huán)境是,能養(yǎng)活自己遠遠不夠,首先你要能養(yǎng)活一個家庭,然后你要養(yǎng)房子車子,你要還貸款養(yǎng)銀行,你要交稅養(yǎng)國家,種種因素要求你,要么有穩(wěn)定的收入,要么就有足夠硬的經(jīng)濟條件。

如果你沒有很好地經(jīng)濟基礎,而又沒有穩(wěn)定的收入,對于家庭來說是一件很難接受的事情。

當然,這是大環(huán)境,你完全可以跳脫這些束縛,但是大環(huán)境對人的影響還是非常大的,你很難擺脫正常人的生活方式與狀態(tài),這些都在暗示你,從事不穩(wěn)定收入的自由職業(yè)獨立開發(fā)不是一個好的選擇。

還有其他一些問題,例如社保,五險一金,戶口,簽證等問題,如果你沒有正式的工作,這些事情都會變得很麻煩。

其實我非常向往自由職業(yè),所以曾經(jīng)有一年我沒有工作,在家里嘗試了一年時間,除了自己的自制力問題之外,我也深知,我沒法維持“自由”這個狀態(tài)太久(除非我一夜成功,但是那時候的我,也并非“自由”了)。

因為作為一個正常人,我需要承擔很多這個社會需要我承擔但是我自己可能并不特別樂意的責任。

當然還有一點,我需要回到職場觀察學習,如何成為一個“正常人”,如何創(chuàng)造“大型產(chǎn)品”,雖然可能這并非我的初衷,但是我們并非天才,做任何事情都需要這個世界的輔助,所以我們需要很好地和這個世界溝通。

在這種大環(huán)境下,除了鼓勵更多的人參與到自由職業(yè)和獨立開發(fā)的隊伍中來之外,***的選擇就是做部分妥協(xié)。

但是勿忘初心,利用工作之余,拾起你對技術(shù)和產(chǎn)品的熱愛,慢慢打磨一個業(yè)余的產(chǎn)品,通過這個打磨的過程,積累經(jīng)驗(硬技能、軟技能),同時保持創(chuàng)造的活躍度。

時間

接下來探討的這個話題可以涵蓋好幾個問題,例如如何一個人在短時間內(nèi)掌握多項相關(guān)的技能?如何維持自己業(yè)余開發(fā)的熱情?覺得技術(shù)一直沒有長進怎么辦?

除了 0.1% 的悟性、1%的方法之外,你能做到別人做不到的事情的***秘訣就是:時間。

如果你真的對一個事情感興趣,那就投入 100% 的熱情和精力,例如每天下班后 7 點到晚上 2 點(當然不鼓勵熬夜)的時間,就是 7 個小時,你一天投入到工作學習的時間比別人多了 7 個小時,一個月就是 200 個小時,加上周末的時間,遠比你正式工作的時間還要長,這些時間才是人和人之間拉開差距的重點。

例如學習 iOS 開發(fā),一天學一個知識點(加上實踐),我覺得最多一個月就可以覆蓋大部分知識點,當然這需要極大地熱情,畢竟不是所有人都舍得將大把的業(yè)余時間投入到學習或者做項目中去。

我在做之前的個人論壇和 app 的過程中,其實狀態(tài)都是比較累的,每天大概需要付出大部分業(yè)余時間加熬夜的時間,因為用戶反饋越來越多,我需要不斷地優(yōu)化自己的產(chǎn)品,完善自己的想法,并且將他們實現(xiàn)出來。

雖然很累,但是成就感還是很強的,這些成就感會激勵我持續(xù)的投入更多的時間,形成一個自身成長的正循環(huán)。

不過做事情總有遇到瓶頸的時候,在遇到瓶頸的時候,我會刻意將節(jié)奏放緩,看看別的類型的書,研究下別的類型的技術(shù),或者純粹的放松。

Just Do it!

講了這么多,不知道對大家會不會有幫助,不論如何,最重要的還是開始執(zhí)行,腦海里總會冒出一些想法吧,不知道是不是合理?

那就先嘗試做,慢慢的就會發(fā)現(xiàn)什么是合理的,什么是不合理的,每個人都有這樣的一個過程。

然后多去觀察生活中出現(xiàn)的大大小小的問題,總有我力所能及可以用技術(shù)去解決的問題,而這可能就是一個很好的 idea。另外希望真正熱愛技術(shù)和創(chuàng)造的朋友可以一直保有自己的那份初心。

責任編輯:未麗燕 來源: 程序師
相關(guān)推薦

2015-12-14 16:48:09

完成業(yè)余項目

2018-11-22 14:51:09

Python 開發(fā)編程語言

2018-09-13 10:20:49

編程語言PythonPython庫

2018-09-13 21:38:15

Python語言

2015-07-06 10:44:31

Node.js開發(fā)

2015-10-19 11:25:33

程序員項目業(yè)余

2015-08-10 10:47:59

2019-08-23 12:34:14

2015-08-13 09:50:20

2022-12-29 07:44:02

免費軟件SD

2021-08-21 15:27:32

谷歌工程師開發(fā)

2013-10-16 09:59:39

程序員

2013-12-26 10:32:30

編程學習

2015-05-21 15:46:20

2018-07-06 08:53:23

AI 工具 人工智能

2017-10-23 12:22:58

Android編程基礎總結(jié)

2011-06-16 20:35:34

SEO

2018-09-27 09:00:00

DjangoPython

2024-07-01 08:58:40

2020-09-10 08:47:41

編程代碼開發(fā)
點贊
收藏

51CTO技術(shù)棧公眾號