當代電腦:簡短的歷史故事與更短的抱怨

此文經由作者同意,翻譯自 David KendalModern computing: A short history and a shorter rant


在最初,使用電腦很不方便。要使用電腦就一定要學會寫程式:除此之外,沒有其他使用電腦方式了。學寫程式很難,它跟學習一種新的符號語言有關,而該符號語言只是設計用來給予電腦指令。

(此文將「當代」定義起始於微電腦時代(約 1970 年)以符合文意,但前述的歷史除了微電腦,也可以套用在與更早的大型主機上。)

有不少人,花了很長的時間,讓電腦能夠更容易使用,例如麥金塔(Macintosh)個人電腦,但使用上的方便並沒有使撰寫程式更容易(反而更難,因為撰寫圖形介面有更多新的程式語言寫法,所以程式比起原本在命令列上執行的更大)。因此,雖然有更多人買了這些「容易使用」的電腦,很少人學會寫程式。

到最後,這些設計電腦的人覺得,既然沒有人學寫程式,寫程式應該跟大部分的人無關。沒有人應該要為了用電腦而學寫程式,只有想要成為軟體開發者的人才需要寫程式。他們認為寫程式永遠都會是很難的事情,沒有人會想要學,除了專業、全職的程式設計師。

所以他們開始推出比起前代更「容易使用」的電腦。更加的「容易使用」,容易到人們完全無法在上面執行任何自己的程式。不只是那些讓使用者能撰寫程式的功能消失了,他們反過來不讓你在自己的電腦上執行自己的程式,除非你付額外的費用來啟用「開發功能」。

但是當最早的「容易使用」的電腦出現時,有其他人還是在努力的要讓撰寫程式能更容易,讓人人都有能力寫程式的。畢竟,寫程式很簡單:只要了解執行條件和重複而已。而且到最後他們還找出了連這些都不用了解的寫程式方法。

這些人知道撰寫程式並不是本質上困難的事情,會這樣只是因為工藝尚未精純,且早期的工具很粗糙且簡陋。他們知道他們可以做出更好的寫程式工具。

他們也知道會寫程式是一件有力量與啟發性的事,因為它讓你能夠完全掌握且控制你周遭的電腦裝置(而不是讓別人,像是某個「程式設計師」,幫你決定做他認為你會想要的)。他們知道,因為他們總是時時撰寫自己的程式。他們能讓電腦幫忙做所有想做的事,從幫助自閉兒童選擇最好的照片、或是選擇約會對象。他們擁有改造自己與周遭人們生活的能力,且他們想要將這個能力傳遞給所有人。


當然,這整篇「歷史」應該是現在進行式。不過有些「最近」的歷史的確是過去式:人們已經花了快半個世紀研究如何讓撰寫程式更加容易,只是他們的成果在個人電腦起飛之後多半被忽略。

反之,撰寫程式在新的電腦上變得越變越困難,尤其是 Apple 的裝置。這很可惜,因為 Apple 的設計很好,但他們似乎認為容許可撰寫程式的功能,和好設計與易用性是相衝突的。這樣的易用性根本就是個幻覺,因為在畫面之下,電腦是一模一樣的。更精確的說,這種「易用性」高的電腦是更不好用的:它無法為人人所用,只能提供某些人(專業程式設計師)所預期的行為。

只要「撰寫程式本來就是困難的事」這樣的迷思存在一日,電腦等裝置的真實力量永遠只能被少數人所掌握,且讓撰寫程式更為簡單的工具永遠不會出現。


譯註:

  • Computer、computing:譯為電腦,但泛指所有能夠執行程式的計算裝置(computing device)。可以很拗口的翻譯為「計算機」但是這不是一般詞彙。
  • Programming、programmability:譯為「撰寫程式」,因為沒有常用的中文詞彙。在簡體中文有很精準的動詞,即「编程」。

Mozilla Summit 2013

I was invited to the last two Mozilla Summits but I always missed it. This year, I finally be able to attend the Summit.

Mozilla Summit 2013

So what is Mozilla Summit? The apparent approximation of the Summit would be to think of it as a three-day festival, to celebrate what we want to achieve and also to reaffirm our Mission; however, Summit is way, way more than that. I am humbled and comforted by the fact I got to engage in many high-level, philosophical conversations about Mozilla and the Mission itself, in a lot of breakout sessions. Some of the questions being bought up were fundamental questions like what is a Mozillian, challenges of communicate the vision to the boarder audiences like the general users (kudos to @potch on many of his insight comments), to practical questions like how to work with closed mobile industry partners, and our challenges with our current position in the mobile market, and internal organization.

These are all important conversations that I have little chance to talk about in the office, given the fact we are all caught up in daily work. To my embarrassment, I feel I should ask forgiveness on being cynical in conversations. Nonetheless, to me, it’s more important to know how we are doing than why. The summit shouldn’t be a three-day religious or self-reinforcing event where only the good news were told; I am really glad it didn’t being hold like this for the majority of the time spent. To my relieve, I am also happy to find out most of people are much more energetic and optimistic about how we are doing, and much more hopeful on whether or not we will getting there, and devoting their thoughts on what we could do more to get there.

During the keynote, the main message of the Summit given was “We’re here to build an Internet the world needs.”. I totally agree that Mozilla should expand it’s mission from simply Open Web to Open Internet, although my question about Open Hardware being the foundation of Open Internet and another eventual goal of the project was not being picked up during the QA session. I’ve also heard little discussions (expect DRM) on some of our seemly conflicting means to reach the end, which, arguably, is a good thing (because that means most of us in the Summit agrees the Mozilla way — making concessions in order to gain future influences).


toronto

On topics unrelated to the Summit directly: I found that Toronto is a really lucky city, being gifted to have the off-shore Toronto islands that serves as a getaways and an “central park”. The city itself is a bit chaotic though as they were constructions around the Union station. However the 12 hours time difference stuck me hard; I missed a few night events because I was so tired that I had to crush to bed.

By the way, best wishes to Margaret and Gavin 😀 They were call up to the stage by Jay during closing in Toronto on their #MozLove: they first met on Summit 2010 and got engaged last week. I am pretty sure they weren’t the first ones and they won’t be the last ones.

That’s us, we are the hopelessly idealistic, happy, and innocent, Mozillians.

As a secret Opera Software fan…

Opera had it first!

I think it’s fair to admit that I am a secret Opera Software fan, especially on their ability to deliver many of the browser innovations (Opera had it first!) we see today and relative independence within the browser arena.

Yet, recently, posts are popping up, revealing inconvenient truth of the inner-working of the company, and confirm the reasons behind it’s rational move to Chromium. As a public trading company, it have grown increasingly intolerant to products that is unable to bring in new revenue. The company have also known for underpaying it’s loyal employees, substituting salary with a “vision of achieving greater good”.

Obviously, stay relevant in the browser arena is hard. Mozilla is working hard on that too, either with new technologies like asm.js or Servo, or newly gain influence from the new product Firefox OS. Mozilla is actively seeking talents from Opera too like Hallvord R. M. Steen, the author of the aforementioned post; because to them, as Hallvord puts it:

And maybe, just maybe Mozilla is an environment where ideas are still kings..?

I sincerely hope the above notion describing Mozilla is true, and stay true in the feasible future.