從編程小白到完成第一款 Web 應用,我只用了 90 天,而且大多數時間都是在苦惱自己是否能成為開發人員,真正寫代碼的時候只有 30 天。
通過這場充滿自我懷疑的旅程,我總結出了一些令人難忘的教訓:
學習編程之路充滿坎坷,直到有一天我做出了一項改變。
為什么使用無代碼工具就是浪費時間?
為什么充滿靈活性的產品往往最沒有用?
何時學習編程最合理,以及如何在沒有正式培訓的情況下學習編程?
一連串的失敗
當計算機科學流行的時候,當我認為學習編程可以幫助我成為一名項目經理的時候,當我想證明自己可以“成為技術人員”時,我曾嘗試過編程,但都失敗了。
每一次,我都在不知不覺中犯了同樣的錯誤:我更喜歡編程的想法,而不是動手實踐。所以,每當課程很無聊或遇到困難時,我都會放棄。放棄的次數太多了,部分原因是:我不是當程序員的料。
教訓:除非實際嘗試過,否則就不要否定自己。
如果真的想嘗試編程,就找一個自己喜歡的項目。當你充滿動力想要實現某個應用時,一切都會有所不同。
在(虛擬)教室中學習編程的風險太低,即使編寫的功能現故障,我也不會擔心。但是如果我的網站上的過濾器出現故障,我就會感到難為情,并在互聯網的每個角落尋找修復方法。建立一個項目會強迫自己把代碼寫好。
我犯的另一個大錯誤是等待無代碼工具來拯救我。
無代碼工具的真相
圍繞無代碼或低代碼的炒作有很多,以至于你會誤以為學習編程不是必須的。
如果你想構建一個博客網站或登錄頁面,那自然沒問題。你有很多選擇,比如Typedream、Carrd、Webflow(難學,但百分百可定制)。你可以通過拖拽的方式制作精美的產品,從而產生一種“如今一切皆有可能”的錯覺。
實際上,這些工具非常好用的原因就在于它們非常不靈活,只能創建靜態網站。
如果你想制作一個簡單的 Web 應用,例如根據用戶的輸入從數據庫檢索信息,那么不動手寫代碼幾乎是不可能的。我前后嘗試了5~6個糟糕的無代碼原型,才意識到這種方式根本行不通。忽視產品開發的萬有引力定律是很愚蠢的想法……
易用性與靈活性
每一款易于使用的產品背后,都有人付出了艱辛的工作。首先,需要深入理解特定用例,然后再下一番功夫盡可能簡化常用操作。這意味著減少操作步驟,或者一目了然,通常兩者兼而有之。
問題在于,可以簡化的功能是有限的,屏幕空間就是天然的限制。看看下面這個導航欄:
如果不限制靈活性,就無法保證易用性。你需要在二者之間權衡利弊,這也解釋了為什么無代碼工具吹噓的“完整的功能”和“完全自由的設計”根本無法實現。
Bubble是一款被人看好的產品,但結果卻不盡如人意。盡管籌集了 1 億美元的資金,卻充斥著漏洞和劣質流量。說到這里,如果你在嘗試無代碼構建器的過程中發現了一些 bug,則請遠離,永遠不要回頭。
繼承功能和bug
選擇無代碼工具就相當于以低廉的成本雇傭了他們的產品開發團隊。在此,我有兩個重要的警告:
你也繼承了他們的 bug 和響應能力:如果他們是二流團隊,則你的產品最多只能達到二流質量;
你不僅需要支付費用,還要承擔學習其系統規則和怪癖的時間。
靈活性從來都不是免費的。代價是易用性降低,以及更有可能出 bug,因為可能出錯的地方更多。
盡管無代碼工具有著種種看不見的缺陷,但在下列情況,這些工具仍然可以節省你的時間:
找到適合的解決方案(例如,Soft:出色的可視化前端;Retool:可用于內部工具的出色前端);
學習速度很快,而且還提供了能夠滿足最低可行產品的功能。
然而,如果想獲得面向客戶的 Web 應用的全面控制權,最大的捷徑就是挑戰最大的難題:學習編程。
編程才是捷徑
我以為學習編程需要花費幾年的時間,我以為我會無聊死,而且還無法獲得任何好處。然而,事實證明,編寫自己的項目情況完全不同。一旦掌握基礎知識,編寫程序的速度就會很快,而且利用基礎知識就能完成很多功能。
整體的感受:
不能馬虎:思考馬虎的想法很容易,但記錄馬虎的想法很難,而將馬虎的想法編寫成代碼則更難。
深刻地體會到了工程師的不易。
通過一行又一行的代碼構建產品能產生巨大的滿足感。
擺脫無代碼的約束。
學習如何使用無代碼工具是創業需要付出的代價,但學習如何編程是對自己的投資。如果你擁有一些想要構建的想法,并計劃一遍又一遍地使用學習到的編程技術,那么投資回報率是巨大的。
為了尋找合適的無代碼工具,我浪費了大量時間,最后反而是自學編程救了我。如果你也想擁有靈活性和易用性,那么就自己動手吧。
最后是一些學習編程的注意事項:
選擇一種流行的編程語言,最好與英語很接近。我選擇了 Python Django,因為簡單易學,還擁有一個龐大的在線社區,這很重要,因為對于你遇到的問題,網上都提供了常用的解決方案。
編寫代碼=主要是修改別人的代碼。我所有的代碼都受到 Stack Overflow、JSFiddle 和 YouTube 上的解決方案的啟發。
如果你不知道如何修改別人的代碼,請參加短期課程,但不要在理論上停留太久,只有能夠應用到自己的項目中的概念才能真正發揮作用。
在學習教程時,請確保下載最新的軟件包。一些優秀的視頻很老,而且使用的是過時的軟件包,編寫代碼后升級可能會破壞功能。
95%的時間都會浪費在5% 的問題上,這 5% 的問題會讓你欲哭無淚,但不要害怕,告訴自己這樣的問題只有 5%!你可以在這些問題上發揮創造力。
如有疑問,請盡管嘗試!嘗試每一種變化;隨著時間的推移,你的預感會變得敏銳起來。
最后,我想向 Python Django 的開發人員致敬!
責任編輯:haq
-
Web
+關注
關注
2文章
1269瀏覽量
69733 -
編程
+關注
關注
88文章
3637瀏覽量
93989 -
代碼
+關注
關注
30文章
4828瀏覽量
69058
原文標題:我只用了 30 天的時間就學會了編程
文章出處:【微信號:coder_life,微信公眾號:程序人生】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論