如何看待自己寫的爛代碼

如果你不是入行不久的新程序員,你很可能會遇到一些你曾經寫過的老代碼,看到它們,你可能會有這樣的反應:

哦,shit!這是什么?當時我腦袋進水了?

我就這樣過。我的朋友和同事們都經歷過。你很可能也發生過這樣的事情。

最近我的一些前同事聯系到我,問我是否能幫助他們做一些前端開發工作。我想著掙一些外快也不錯,而且,這個公司里我曾經工作過兩年半,他們都是優秀的程序員。

昨晚,我遇到了一些之前在那個公司里任職時自己寫的JavaScript老代碼,下面是我的反應:

  1. 懷舊追思: 哇塞!這是當年我寫的啊!
  2. 羞恥: 我靠,怎么寫成這樣。應該使用更好的方法。真慚愧,當時怎么會把這樣的代碼放到產品中。
  3. 困:不早了,我該睡覺了。
  4. 驕傲:這段代碼運行的良好——雖然不是最佳算法。更妙的是,我是5年前寫的它,計算一下,它至少被成功的執行了70億次!

早上醒來時我感覺好多了,不再為我那不是很完美的代碼而憂愁。寫代碼不是為了美,是為了價值。所以,下次,當你再看到自己的一年前、5年前、甚至更多年前寫的讓人難為情的“爛代碼”時,如果它們還在產品庫中,還在生產著價值,你應該為它們驕傲!

本文屬翻譯作品,英文原文標題是:Your Old Crappy Code。若無特別說明,英文原文及其衍生作品均使用知識共享署名-相同方式共享(Creative Commons)協議。您可以自由復制、散布、展示及演出本作品;若您改變、轉變或更改本作品,僅在遵守與本作品相同的授權條款下,您才能散布由本作品產生的派生作品。

本文是在程序師網首次發表。文章內容屬作者個人觀點,不代表本站立場。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/447373.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/447373.shtml
英文地址,請注明出處:http://en.pswp.cn/news/447373.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

給創業者的一些建議

CEO要像個產品經理 就拿我的項目來說,網站的模板設計,視覺體驗,操作體驗,產品展示,網址等都是不合格的。創始人開始創業其實就是一個產品經理,好好雕琢你的產品。 不做機會最大的,只做自己擅長…

談操作系統的碎片化和融合

摘要:目前,Android和iOS統治著移動操作系統,桌面端被Windows所主宰,隨著智能家居、可穿戴設備等新興平臺的興起,造成了各家操作系統四分五裂的情況,但在不久的將來他們終究會走向融合。 目前,An…

盤點大數據的十大發展方向,Scale-out將成主流

摘要:隨著人們對大數據認知的加強,除去特點之外,人們開始更加關注于它的使用價值和未來的服務方向。本文列舉了大數據的十大發展方向,其中Scale-out將成為主流。 【編者按】如今,大數據儼然成為IT領域最受關注的熱詞之…

程序員的成功是否有規律可循?

摘要:自然界中存在許多規律,那么在程序人生上是否有規律可循呢?這種規律是如大多數人期望的那樣嗎?V眾投發起人李智勇對此進行了探討,他分析了必然與偶然、本質與細節,并就程序人生規律的三要素進行了解讀。…

S?D?I?與?A?S?I 接口詳解介紹

分量編碼 在對彩色電視信號進行數字化處理和傳輸是,一種常用的方式是分別對其3個分量(Y,R-Y,B-Y)進行數字化編碼。這就是分量分量編碼,另外還有全信號編碼,全信號編碼是對彩色全電視信號直接進行…

FFMPEG解碼多線程

FFMPEG多線程解碼 FFMPEG多線程編碼器一般以在Slice內分功能模塊進行多線程編碼,如h263,h263P,msmpeg(v1, v2, v3),wmv1。包含以下幾個線程:(1)Pre_estimation_motion_thread運動估計前的準備;(2)Estimation_motion_t…

SpringNBoot日志配置

市面上的日志框架 日志門面 (日志的抽象層)日志門面 (日志的抽象層)JCL(Jakarta Commons LoggingSLF4j(Simple Logging Facade for Java) jboss-loggiJUL(java.util.logging&#x…

ffmpeg的內部Video Buffer管理和傳送機制

本文主要介紹ffmpeg解碼器內部管理Video Buffer的原理和過程,ffmpeg的Videobuffer為內部管理,其流程大致為:注冊處理函數->幀級釋放->幀級申請->清空。 1 注冊get_buffer()和release_buffer() FFAPI_InitCodec() avcodec_alloc_c…

springBoot的模版引擎

模版引擎 常見的模版引擎有JSP、Velocity、Freemarker和Thymeleaf Thymeleaf模版 使用時需要把html頁面放在classpath&#xff1a;/templates/文件夾下&#xff0c;thymeleaf就能自動渲染創建模版文件&#xff0c;并需要導入thymeleaf的名稱空間 <html lang"en"…

FFmepg 多線程解碼歷程

FFmepg 多線程解碼歷程 - 1:validate_thread_parameters /** * Set the threading algorithms used.//設置線程的使用算法 * Threading requires more than one thread.//需要一個以上的線程 * Frame threading requires entire frames to be passed to the codec,//幀線程…

SpringMVC自動配置

springboot為SpringMVC配置了自動配置&#xff0c;以下是SpringBoot對SpringMVC的默認配置 org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration 自動配置在Spring的默認配置之上添加了以下功能 包含ContentNegotiatingViewResolver和BeanNameView…

做一名合格的生意人

偶然的成功&#xff0c;包含著某種必然的因素&#xff0c;那就是一個生意人本身的素質。作為一名現代生意人&#xff0c;要想使自己所從事的事業取得新的成功&#xff0c;就要加強自身的修養&#xff0c;不斷掌握新知識&#xff0c;努力使自己成為“全才”。 □ 事業成功的十個…

restful風格的增刪改查

注意 如果靜態資源放到了靜態資源文件夾下卻無法訪問&#xff0c;請檢查一下是不是在自定義的配置類上加了EnableWebMvc注解templete文件夾不是靜態資源的文件夾&#xff0c;默認是無法訪問的&#xff0c;所以要添加視圖映射 package cn.xxxxxx.hellospringbootweb.config;imp…

歷史上最有影響力的10款開源項目

開源是大趨勢&#xff0c;開源軟件也在越來越多的出現在日常電腦桌面上&#xff0c;如Firefox瀏覽器、Ubuntu操作系統等。人們選擇開源軟件的原因&#xff0c;主要有低成本、安全無病毒侵害、更加透明和開放等。按照大多數的開源協議如GPL&#xff0c;開源軟件允許自由分發。在…

SpringBoot默認的錯誤處理機制

錯誤處理機制&#xff1a; 訪問一個不存在的頁面時&#xff0c;或者程序拋出異常時 默認效果 瀏覽器返回一個錯誤的頁面&#xff0c;注意查看瀏覽器發送請求的請求頭可以使用專業的軟件比如postman分析返回的json數據 springboot錯誤處理的自動配置信息 主要給日容器中注冊…

GitHub政府用戶破萬:開源成重塑政府新手段

據GitHub官方博客介紹&#xff0c;目前GitHub上的各地政府用戶數量已經達到1萬個&#xff01; 2009年&#xff0c;紐約參議院正式入駐GitHub公開部分技術資料與文檔&#xff0c;成為GitHub上的第一個政府組織。隨后&#xff0c;美國華盛頓特區、邁阿密、芝加哥、紐約&#xff…

配置嵌入式Servlet容器

如何定制和修改Servlet容器的相關配置 修改定制和修改Servlet容器的相關配置 server.port8081 server.context-path/crudserver.tomcat.uri-encodingUTF-8//通用的Servlet容器設置 server.xxx //Tomcat的設置 server.tomcat.xxx 編寫一個EmbeddedServletContainerCustomizer&…

云OS:Linux在桌面打翻身仗的機會?

不可否認&#xff0c;Chrome OS取得了驚人的增長。Chromebook自發行以來&#xff0c;迅速席卷全球&#xff0c;常年位居最暢銷筆記本榜首。這款基于Linux的筆記本在合適時間提供了合適的解決方案。很多情況下&#xff0c;云不僅僅是一個可選項&#xff0c;而是一個最優選項。Li…

Docker容器基本使用

Dcoker Docker是一個開源的應用容器引擎&#xff0c;是一個輕量級別的容器技術Dcoker支持將軟件編譯成一個鏡像&#xff1b;然后在鏡像中對各種軟件做好配置&#xff0c;再將鏡像發布出去&#xff0c;供別人使用運行中的鏡像稱為容器&#xff0c;容器的啟動是非常快速的核心概…

為什么35歲的C++依然能主導編程世界

早在1979年&#xff0c;Bjarne Stroustrup設計了C編程語言&#xff0c;并且C很快成為了無處不在的通用系統編程語言。現在盡管有Java、Javascript、Python、Go&#xff0c;甚至是蘋果的Swift和它競爭&#xff0c;但C依然處于主導編程世界的地位。 今天在Morgan Stanley的科技訪…