Python超級程序員使用的開發工具

jopen 9年前發布 | 32K 次閱讀 Python Python開發

我以個人的身份采訪了幾個頂尖的Python程序員,問了他們以下5個簡單的問題:

  1. 當前你的主要開發任務是什么?
  2. 你在項目中使用的電腦是怎樣的?
  3. 你使用什么IDE開發?
  4. 你將來的計劃是什么?
  5. 有什么給Python程序員的建議?

就是這幾個問題,我找了幾個頂尖的程序員和編程書籍作家,問他們這幾個相同的問題。下面是他們的回答,希望在他們的回答中你能找到一些可以讓你的開發更便捷的工具。

Alex Martelli

 Python超級程序員使用的開發工具

Alex Martelli

人物簡介:Alex Martelli是一位意大利計算機軟件程序員,他是Python軟件基金會的成員。從2005年初開始,他以“über技術首領”的身份在加利福尼亞景 山谷歌總部工作。他擁有意大利Bologna大學電子工程學位(1980)。他是《Python in a Nutshell》一書的作者,他還和其他人合著了《Python Cookbook》,他還寫了一些其它一些作品,大部分都是和Python相關的。因為他對Python社區杰出的貢獻,他被授予的榮譽包括2002 Activators’ Choice Award和2006 Frank Willison award。

你可以通過他的博客了解更多關于他的信息。

問題一、當前你的主要開發任務是什么?

給我的老板(谷歌)開發商業軟件,大部分是商業智能方面。

問題二、你在項目中使用的硬件機器是怎樣的?

基本上都是谷歌的云服務器,通過谷歌APP引擎直接或間接的使用。有時候也使用一個Unix工作站或Macbook Air,但很少。

問題三、你使用什么IDE開發?

vim, gvim, mvim; 偶爾用一下iPython,但這好像不能算是IDE吧。

問題四、你將來的計劃是什么?

應該還會待在谷歌——具體的研究方向那要看實際情況。

問題五、有什么給Python程序員的建議?

學習一下App Engine(通過webapp2 或flask, jinja2, &c以及其它類似django的輕量級環境):它們大部分都會對你的web項目有很好的用處——如果你想在這些環境之外的地方部署web應用,Appscale會是你最方便的選擇。

Daniel Greenfeld

 Python超級程序員使用的開發工具

Daniel Greenfeld

人物簡介: Daniel Greenfeld是《Two Scoops of django》一書的合著人。他有超過6年的在Django領域的研究經驗。之前他在美國宇航局做開發,就是在那里他開始了他的Python之旅,一直到現在。他目前是Cartwheel Web的負責人。

你可以通過他的推ter: @pydanny 和他的博客獲取他的更多信息。

問題一、當前你的主要開發任務是什么?

我現在的工作主要是客戶端方面,基本上都是用Python。內容服務方面有時候會用到Django,但當前的主要工作基本上跟web無關。

問題二、你在項目中使用的硬件機器是怎樣的?

硬件方面,我使用一個2011年的Macbook Air。因為我的開發方式,像Macbook Air這樣的超級本用起來非常舒服。可蘋果的產品一般都很貴,我就自己配了一個,我打算所有的任務都用它來做。如果哪天我能有一個新的筆記本,我想試試 Linux的超級本或Window8的平板(以前我是靠虛擬機運行Windows8)。

問題三、你使用什么IDE開發?

我使用Sublime Text。我更喜歡文本編輯器,而不是IDE,因為我喜歡深入研究程序庫和它們的文檔,而不是通過IDE工具來提示我。

問題四、你將來的計劃是什么?

我未來的計劃就是編程,鍛煉,做我最擅長的事情。也許會去一個新地方旅游。我喜歡去沒有去過的地方,認識新朋友,品嘗沒吃過的食物。但大部分我的旅游都是基于客戶的需求,今年我不知道什么時候會有這樣的機會。

問題五、有什么給Python程序員的建議?

我給Python程序員的建議是挑戰極限。尋找新的代碼庫,研究它們,使用它們。它們有些會不是很好,不好的東西也會教會你一些東西(不該做的事情)。

Miguel Grinberg

 Python超級程序員使用的開發工具

Miguel Grinberg

人物簡介: Miguel是一個程序員,攝影師和電影制作人。生活在美國俄勒岡州。他目前正在寫一本關于使用Python和Flask做web開發的書,將會由 O’Reilly Media出版。這本書的官方網站是Flask Book.

你可以通過他的推ter: @miguelgrinberg 和他的博客獲取更多信息。

問題一、當前你的主要開發任務是什么?

也許你會吃驚,工作中我并不做web開發。我在為Harmonic做視頻軟件。C++是我在工作中使用的主要語言,但我們卻使用了一個古老的用Python寫的自動化單元測試框架,用起來很有趣。

空閑時間里我目前的第一大任務就是給O’Reilly出版社寫一本關于Flask為框架的書,基本上快寫成了。

問題二、你在項目中使用的硬件機器是怎樣的?

我的機器是一個雙系統的臺式機,裝的是Ubuntu和Windows8.1。我還有一個Mac OS X筆記本。

我在跨平臺方面有些變態。除了給Arduino這樣的嵌入式系統寫代碼外,所有其它我寫的代碼(不管什么語言),都需要在三種平臺上運行。為了達到這個目的,我會不斷的在Linux,Windows和OS X機器間切換。

問題三、你使用什么IDE開發?

我有一些最愛。PyCharm非常棒,在大型項目時我越來越依賴它,主要是因為它的交互式的調試工具。

在Windows平臺上我會使用Visual Studio的一個Python插件,免費的,非常出色,我估計大部分人沒聽說過它。

我還經常使用SublimeText,通常是在筆記本上使用它。

Notepad++是我在Window臺式機上最順手的工具。在我所有的電腦上都裝有一個非常老的Vim,即使在Windows上也使用Cygwin運行它。

問題四、你將來的計劃是什么?

我在四月份的PyCon大會上會有一個關于Flask的演講,我下一步開始著手準備材料,因為書已經快寫好了。

我最近沒怎么寫博客,我很想寫一點。我想能多騰出一些時間寫博客。我已經擬了一份話題目錄,準備按著這個清單寫。如果需要的話,我可以把里面的一個關于Flask上的web sockets的文章提到最前面。

問題五、有什么給Python程序員的建議?

我對所有程序員——不光是Python愛好者——的建議是,多去實踐,然后把它們分享給世界。分享很重要,從別人那獲得反饋是讓你提高的好方法。

而對于Python程序員我想說的是,如果我們只需要用嘴去討論Python2和Python3的差別、而不需要花時間將眾多的軟件移植到Python3,那該多好。玩笑。

說的太好了!

揭開其他程序員的面紗,窺視他們如何施展魔法工作,這很有用。你可以看到,他們使用的工具、技術,我們都可以采用,很多都是免費的。我很感謝他們能分享這些信息。

英文原文:Tools used by Python Super Stars

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!