談論了這么多程序語言的事情,說得好像語言的好壞就是選擇它們的決定性因素。然而我一直沒有提到的一個問題是,“程序語言”和“程序語言工具” 的設計,其實完全是兩碼事。一個優秀的程序語言,有可能由于設計者的忽視或者時間短缺,沒有提供良好的輔助工具。而一個不怎么好的程序語言,由于用的人多 了,往往就會有人花大力氣給它設計工具,結果大大的提高了易用性和程序員的生產力。我曾經提到,程序語言其實不是工具,它們是像木頭,釘子,膠水一樣的材 料。
最近我為一個內核程序員的職位面試了十幾個候選人。這些候選人都來自一些不錯的大公司,這些公司在芯片或嵌入式操作系統領域十分有名。這些候選人大多聲稱自己在內核方面有著十年的在職工作經驗。他們的簡歷看起來非常耀眼——各種相關的項目、術語和獎項……
程序員的樣子(三)
我其實是一個悲觀主義者,從開始成為一名程序員的那一天開始,我就對自己的職業充滿著擔憂。早期,我擔憂的是我剛進入這一行,落后身邊從事這一 行多年的人太多,跟他們比,我一開始就處于“不公平“的起跑線上;二是當我稍微深入這行后,發現技術的道路充滿了歧路和死胡同,稍不留神,就將落入再也跟 不上技術進步的節奏,身邊也充斥著類似的示例。
記得我畢業的時候看程序員的工作,那時年薪十萬都覺得很高了(2009 年畢業)。但是最近招聘程序員,怎么動不動就要大幾十萬?
程序員變程序猿,這是個中國問題。多年前,浦東某開發區一個年輕的編程員因病去世,他母親從四川赴滬奔喪,清理遺物時,她發現兒子床墊下都是錢,老人家痛哭失聲,她說,你們看吶,我兒子忙得連花錢的時間都沒有。所以說這是個中國問題。
在昨天財報后的盈利會議上,Facebook CEO 扎克伯格公布了公司未來 3 年,5 年及 10 年的計劃。總體而言,主要是將 WhatsApp,Messenger,Oculus 等產品打造成 10 億級用戶產品; 提升廣告體驗,加大移動端投入;通過 Oculus 打造下一代計算平臺。
早期提到開發人員,大家并不會覺得一定就會是男性。成為一名優秀的程序員,曾經也同樣是女性的夢想,絲毫不亞于男性。還有一種說法是最早的一名程序員就是女生。
我算是靠坑蒙拐騙進了程序員的門,然后一路狂奔。26歲之前幾乎沒有任何寫代碼的經驗,研究生畢業卻意外選擇了一家不可能提供培訓的初創公司,在每 日擔憂公司倒閉、害怕被炒魷魚以及同事冷落白眼的三重壓力下逆流而上,一年半后離職,已是擁有500萬用戶產品的后臺主程。從前我對計算機技術心懷畏懼, 認定技術高人一定有佛光籠罩,晝夜不息運鍵如飛日吐代碼上萬行。
根本原因是 90% 這么說的人不懂技術,不了解行業,把技術實現想太簡單,以為編程就是打字。分開來說包括以下 4 個方面:不尊重程序員、不只缺一個、大大低估投入、還沒到需要程序員的時候。
一直以來「奇葩」這個詞都是偏貶義的,直到去年有個綜藝節目叫「奇葩說」挺熱鬧,這里的人不一定是奇葩,更多指達人的意思。 「奇葩說」里的達人都是能說會道的,我的主業是程序員,所以只能寫寫在我職業生涯中碰到的一些「奇葩」程序員。 你懂的,我這里的「奇葩」沒有任何貶義的意思。
Tails是基于Debian GNU/Linux和Tor的Live操作系統,能安裝在光盤、U盤和SD卡上,可以隨身攜帶,需要時直接從光盤、U盤或SD卡啟動。它讓使用者可以匿名 訪問互聯網,繞過審查,不留下任何跟蹤痕跡。它的最著名用戶可能是前NSA合同工Edward Snowden。但的今天的互聯網,需要數字安全的不只是安全專家了。為了方便新用戶安全安裝Tails,Debian開始提供Tails Installer。
QProcess與外部程序的調用分類:?嵌入式??項目做到一定階段,經常需要在原來的工程上調用外部程序。Qt為此提供了QProcess類,QProcess可用于完成啟動外部程序,并與之交互通信。
一、程序員的生活天已經七分黑了,屋里卻還沒開燈。這個全身黑衣服的男子突然像想起什么,從包里掏出煙,抽出一只,遞給旁邊的人:“兄弟,抽煙么?”――那煙是紅塔山。旁邊那人連忙一邊擺手,一邊說:“不,不。”語氣有點緊張,好像那黑衣服遞過來的不是煙,是海洛因。這個黑衣服的男子,后來的網名叫“絕影”。他旁邊那個,后來被他們稱為“土匪”。這件屋子,就是他們大學寢室。第一天到學校,其實沒有一點新鮮的感覺。絕影的舅舅和舅媽就在這里教書,早在這學校還不叫“大學”的時候,絕影已經在學校足球場學騎自行車了。
樂趣職業的樂趣編程為什么有趣?作為回報,它的從業者期望得到什么樣的快樂? 首先是一種創建事物的純粹快樂。如同小孩在玩泥巴時感到愉快一樣,成年人喜歡創建事物,特別是自己進行設計。我想這種快樂是上帝創造世界的折射,一種呈現在每片獨特、嶄新的樹葉和雪花上的喜悅1.其次,快樂來自于開發對其他人有用的東西。內心深處,我們期望其他人使用我們的勞動成果,并能對他們有所幫助。
hadoop Map/Reduce開發實例
import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; public class ImgTool { private int startX; private int startY; private int width; private int height; /** * 源路徑
////////////////////////////////////////////////// /*KMP算法*/ #include<stdio.h> #include<string.h> #include<iostream> using namespace std; void getNext(char a[],int next[]){ int i,j; next[1] = 0; j = 0
昨天重點內容回顧Java語言概述Java語言基礎(數據類型、運算符、語句及控制流)第一個Java Application和Java Applet數組等面向對象概念方法重載(overloading)與方法覆蓋(overridden)今天內容安排高級類的特性(static、final關鍵字,抽象類、內部類、接口等)異常處理技術(聲明、拋出、捕獲、實例講解等)。
程序調試概述 Debugger工具欄簡介 啟動Debugger 變量跟蹤 設置斷點 快速執行到一個斷點 結束Debugger 快速查看變量類型