當前位置

首頁 > 英語閱讀 > 雙語新聞 > 爲非程序員開發新的電子表格工具

爲非程序員開發新的電子表格工具

推薦人: 來源: 閱讀: 1.66W 次

爲非程序員開發新的電子表格工具

The Microsoft researcher was, by his own admission, already going through something of a midlife crisis. But it was the woman sitting next to him on a flight who, with her spreadsheet, changed the course of his career. His new path would put him at the centre of an effort to bring the power of computer code to those who are unable to write it themselves, which is to say the vast majority of us.

這位微軟(Microsoft)研究員自己承認,當時他已經在經歷某種中年危機。但正是飛機上坐在他旁邊的那位女士用她的電子表格改變了他的職業生涯。新的職業道路將讓他處於一項努力的核心,目的是幫助那些無法自己編程的人——也就是我們絕大多數人——獲得計算機代碼的力量。

I met Sumit Gulwani in Vienna this month at the annual workshop for Software Engineering Methods in Spreadsheets, where he was the keynote speaker. He holds a PhD in computer science from the University of California, Berkeley. It was this, along with his role at Microsoft, that so impressed his fellow passenger when he was returning from a seminar five years ago. With such credentials, surely he could help her with the text manipulations she was struggling with in an Excel spreadsheet?

我在本月召開的“電子表格軟件工程方法”維也納年度研討會上遇到了素密•古爾瓦尼(Sumit Gulwani),他是基調演講人。他擁有美國加州大學伯克利分校(University of California, Berkeley)計算機科學的博士學位。正是這一學位,加上他在微軟的職位,在5年前出席一個研討會後的返程中打動了與鄰座的乘客。憑藉這樣的資歷,他當然能幫助她解決她搞不定的Excel電子表格中的文本操作,不是嗎?

“At that time, I had to excuse myself out of the situation,” he tells me when we sit down in a courtyard to talk after his speech. “I’d never used Excel before in my life.”

古爾瓦尼演講完之後,我們在一個院子裏坐下來交談。他告訴我:“當時我不得不抱歉地說自己處理不了。我此前從未用過Excel。”

Although Gulwani couldn’t help, he was intrigued enough to change jobs. He went from helping programmers at Microsoft to helping non-programmers, enabling users to perform simple, repetitive tasks more easily. Flash Fill, one of the tools that Gulwani’s team developed, was released in Excel 2013. To get an idea of what it does, imagine organising an event. You have a list of the guests’ email addresses but, in order to make a check-in sheet for the event, what you want is a list of their names in the format “last name, first name”. Although Excel functions can do this, some users will not know how.

儘管沒有幫上忙,但古爾瓦尼覺得好奇,於是改了行。他從幫助微軟的程序員改行爲幫助非程序員,讓用戶更容易執行重複性的簡單任務。Flash Fill是古爾瓦尼團隊開發的工具之一,它包括在Excel 2013版本中。要了解它的用途,想象一下組織一場活動。你有客人的電子郵件地址名單,但爲了製作一份簽到表格,你想要一份“姓在前名在後”格式的名單。儘管Excel的功能能做到這一點,但一些用戶不知道怎麼做。

With Flash Fill, you type in an example or two of what you want as “output” from the email inputs, and the tool will fill in the rest. For instance, once you have written “Clinton, Hillary” in the column after , Flash Fill will automatically produce “Trump, Donald” from — all without having to enter a single formula. This is called “programming by example”.

有了Flash Fill,你可以自己打出一兩個樣例,說明你從電郵地址“輸入”希望得到什麼“輸出”,這個工具就會填充整個名單。例如,一旦你在後的那一欄寫入“克林頓,希拉里”,Flash Fill就會自動從後的那一欄生成“特朗普,唐納德”——這些都不用輸入任何公式就能完成。這被稱爲“樣例編程”(programming by example)。

Developments such as these will, according to Gulwani, “keep control of the digital divide”, preventing the existing split between those who can programme and those who cannot from growing even wider.

古爾瓦尼表示,這些工具的開發將會“控制數字鴻溝”,阻止那些可以編程和那些無法編程者之間的現有差距越來越大。

But I fear that, while a tool such as Flash Fill is empowering, it is also in its present form something of a “black box” — meaning it is unclear how it calculates outputs from given inputs. As such, it does not (yet) encourage a user to go a step further and learn how to adapt the code Flash Fill uses in order to perform different tasks.

但我擔心,儘管Flash Fill等工具功能強大,但就目前形式而言也是某種“黑匣子”,也就是說不清楚它如何從給定輸入計算出結果。這樣的話,它(仍)沒有鼓勵用戶更進一步,學會如何改寫Flash Fill的代碼來執行不同的任務。

Another speaker at the Sems conference had a radical idea about a different way in which spreadsheets could narrow the digital divide: take the elements that are most attractive about the application and use those to encourage non-programmers to code.

維也納研討會的另一位演講者對電子表格縮小數字鴻溝的不同方式有着激進的看法:提煉出這款應用中最吸引人的元素,用它們鼓勵非程序員編碼。

Professor Felienne Hermans, head of the Spreadsheet Lab at Delft University of Technology, notes that the “liveness” and “directness” of spreadsheets makes them attractive to use. With spreadsheets, the results are instantly visible, or “live”, as you change numbers or formulas. You also see “directly” the entirety of the field of play — formulas, data, output — as you work. By contrast, when developing a website, there is distance between what is visible on the site and where you can edit the code that produces it.

荷蘭代爾夫特理工大學(Delft University of Technology)的電子表格實驗室主管、教授費列利安娜•埃爾曼(Felienne Hermans)指出,電子表格的“活躍感”和“直接性”使它們對用戶具有吸引力。用電子表格,只要你改變公式或數據,結果立即可見,也就是“活躍”的。你也能在工作時“直接”看到整個場景——公式、數據和輸出。相比之下,在開發網站時,網站顯示內容和你編寫代碼的地方不在一個界面。

Hermans has co-authored a paper that proposes the development of an interface where a user can directly write code while a spreadsheet, in the same field of view, updates live. Encouragingly, Microsoft has hired Hermans for the summer, though the company won’t say anything about her work for them.

埃爾曼與他人合著了一篇論文,提議開發用戶可以直接編碼的界面,同一場景中的電子表格即時更新。令人鼓舞的是,微軟今年夏季僱傭了埃爾曼,儘管該公司不會透露她的具體工作。

Another thing the company keeps quiet about are estimates of the number of spreadsheet users around the world. But there is a mention of “more than 750m Excel users” in an article by the company’s UK enterprise team.

該公司保持沉默的另一件事是對全世界電子表格用戶數量的估計。但該公司的英國企業團隊在一篇文章中提到“逾7.5億Excel用戶”。

That is a lot of people to empower. And, while a helpful black box may grab and intrigue them, it is the development of a better, friendlier way to code in spreadsheets that I look forward to the most.

這意味着有很多人有待獲得編碼的力量。儘管一個有用的黑匣子可能引起他們的注意,並激發他們的興趣,但我最期望的是在電子表格中發展出更容易、更友好的編碼方式。