Basically, continuations let you put “time travel” into your code. This allows you to do things like run programs backward, sideways, or in other crazy ways.
— Land of Lisp
2010.11.24 Wednesday ACHK
Basically, continuations let you put “time travel” into your code. This allows you to do things like run programs backward, sideways, or in other crazy ways.
— Land of Lisp
2010.11.24 Wednesday ACHK
Nobody should start to undertake a large project. You start with a small trivial project, and you should never expect it to get large. If you do, you’ll just overdesign and generally think it is more important than it likely is at that stage. Or worse, you might be scared away by the sheer size of the work you envision. So start small, and think about the details. Don’t think about some big picture and fancy design. If it doesn’t solve some fairly immediate need, it’s almost certainly over-designed. And don’t expect people to jump in and help you. That’s not how these things work. You need to get something half-way useful first, and then others will say “hey, that almost works for me”, and they’ll get involved in the project.
* Linux Times (2004-10-25).
— Linus Torvalds
2010.11.18 Thursday ACHK
假設你是一個程式員。你學了 Lisp 這種程式語言後,未必真的會在上班時用它來寫程式。但是,Lisp 會為你帶來很多嶄新的思考工具,大大改善你寫程式的風格,即使你維持使用其他程式語言。
(安:即是話,未用過 Lisp 的話,你不會知道你平日用的程式語言,有什麼限制。)
無錯。
(安:你要學習和領悟新的知識或技能,才能真切體會到自己原有的知識體系,有什麼不足之處。)
— Me@2010.11.05
Programming in Lisp is like playing with the primordial forces of the universe. It feels like lightning between your fingertips. No other language even feels close.
— Glenn Ehrlich
2010.11.05 Friday (c) All rights reserved by ACHK
1. How to Start a Startup.
Build something users love, and spend less than you make.
2. Startups in 13 Sentences.
Above all, understand your users.
3. Hiring is Obsolete.
The market is a lot more discerning than any employer.
4. How to Make Wealth.
To get rich you need to get yourself in a situation with two things, measurement and leverage.
5. You Weren’t Meant to Have a Boss.
Startup founders seem to be working in a way that’s more natural for humans.
6. Why to Not Not Start a Startup.
All the reasons you aren’t doing it, and why most (but not all) should be ignored.
7. Why to Start a Startup in a Bad Economy.
It’s the people that matter.
8. A Student’s Guide to Startups.
Starting a startup could well become as popular as grad school.
9. Ideas for Startups.
The initial idea is not a blueprint, but a question.
10. Why Smart People Have Bad Ideas.
A hacker who has learned what to make, and not just how to make, is extraordinarily powerful.
11. Be Relentlessly Resourceful.
You have to keep trying new things.
12. The 18 Mistakes that Kill Startups.
If you avoid every cause of failure, you succeed.
13. The Hardest Lessons for Startups to Learn
Some things about startups are kind of counterintuitive.
14. How to Fund a Startup.
Venture funding works like gears.
15. The Hacker’s Guide to Investors.
Hackers don’t know how little they know about this strange world.
16. How to Present to Investors.
Explain what you’re doing and why users will want it.
17. The Equity Equation.
You should always feel richer after trading equity.
18. A Fundraising Survival Guide.
Founders have to treat raising money as a dangerous process.
19. The Venture Capital Squeeze.
Why not let the founders have that first million, or at least half million?
20. The Other Road Ahead.
You may not believe it, but I promise you, Microsoft is scared of you.
21. How Not to Die.
Startups run on morale.
22. What Business Can Learn from Open Source.
There may be more pain in your own company, but it won’t hurt as much.
23. What the Bubble Got Right.
Even a small increase in the rate at which good ideas win would be a momentous change.
24. The High-Res Society.
The economy of the future will be a fluid network of smaller, independent units.
— Y Combinator Startup Library
2010.11.04 Thursday ACHK
Design and Research 2
.
You can see the same thing in programming languages. C, Lisp, and Smalltalk were created for their own designers to use. Cobol, Ada, and Java, were created for other people to use.
If you think you’re designing something for idiots, the odds are that you’re not designing something good, even for idiots.
— Paul Graham
.
.
.
2010.10.29 Friday ACHK
Hackers & Painters Table of Contents
1. Why Nerds Are Unpopular
Their minds are not on the game.
2. Hackers and Painters
Hackers are makers, like painters or architects or writers.
3. What You Can’t Say
How to think heretical thoughts and what to do with them.
4. Good Bad Attitude
Like Americans, hackers win by breaking rules.
5. The Other Road Ahead
Web-based software offers the biggest opportunity since the arrival of the microcomputer.
6. How to Make Wealth
The best way to get rich is to create wealth. And startups are the best way to do that.
7. Mind the Gap
Could “unequal income distribution” be less of a problem than we think?
8. A Plan for Spam
Till recently most experts thought spam filtering wouldn’t work. This proposal changed their minds.
9. Taste for Makers
How do you make great things?
10. Programming Languages Explained
What a programming language is and why they are a hot topic now.
11. The Hundred-Year Language
How will we program in a hundred years? Why not start now?
12. Beating the Averages
For web-based applications you can use whatever language you want. So can your competitors.
13. Revenge of the Nerds
In technology, “industry best practice” is a recipe for losing.
14. The Dream Language
A good programming language is one that lets hackers have their way with it.
15. Design and Research
Research has to be original. Design has to be good.
— Paul Graham
2010.08.26 Thursday ACHK
靈魂軟件論
自我虛級化
Self-de-centralization
當年,買了第一部電腦時,以為我會與它一生一世。
漸漸,我發現電腦會壞。即使不壞,也會過時。
所以,每隔幾年,就需要換一部新電腦。
但是,我和舊電腦分開時,不會傷感,因為在分開前,我都會把所有重要的程式和資料儲蓄下來,留待重新裝載在新的電腦中。
舊電腦的硬件雖毀,但它們軟件(程式和資料)與我常在(,只要我記得定時備份(backup)的話)。
— Me@2010.07.27
2010.07.30 Friday (c) All rights reserved by ACHK
「專利制度」表面上,主要是為了保障新產品發明者的利益而設的。那是大眾的誤解。實情是,「專利制度」的存在,主要是為了社會的整體利益。文明社會確立「專利制度」,是「兩害取其輕」的結果。
在有「專利制度」之前,新產品發明者為了保障自己的利益,往往會隱藏新產品的建構方法,導致很多新創見隨著發明者的離世而失傳。為了避免這種情形,人們創立了「專利制度」,容許新產品發明者為自己的新設計申請「專利」。申請成功的話,社會就賦予發明者長達大約 17 年的特權:只有他可以使用該設計來製造產品。
為什麼那就可以避免「新創見失傳」呢?
申請「專利」的先決條件是,發明者不單要公開自己新產品的建構方法,而且還要鉅細無遺地描述,哪些地方是全新的意念。在 17 年過後,全人類可以共同擁有使用那些新意念。
— Me@2010.06.28
2010.06.28 Monday (c) All rights reserved by ACHK
So, simplicity is key, and they purport to write such a system in a mere 20K LOC. To that end, they propose a sort of great unification theory of particles (homogeneous, extensible objects) and fields (the messages exchanged by myriad objects)—well, yes, it’s just a metaphor, but you can see it in action in the paper, applied to images and animations. The report also explains how the physical metaphor is completed with a proper simulation of the concept of time.
Reinventing programming
February 12, 2007 — jao
2010.06.18 Friday ACHK
The data types turn out to be analogous to types of particles, while the programs are analogous to Feynman diagrams with a given collection of particles coming in and another collection going out.
— Categorifying Fundamental Physics, John Baez
2010.05.27 Thursday ACHK
Lisp … made me aware that software could be close to executable mathematics.
— L. Peter Deutsch
2010.05.25 Tuesday ACHK
Lisp and Fortran were the trunks of two separate evolutionary trees, one rooted in math and one rooted in machine architecture. These two trees have been converging ever since.
— Paul Graham
2010.05.18 Tuesday ACHK
多次元宇宙 12
重點是,我建議你學 programming(寫程式)。學 programming 會有一些神奇效果:令你多了很多思考工具。
— Me@2010.04.18
2010.04.19 Monday (c) All rights reserved by ACHK
Everything we’ve learned about Lisp so far can be summarized by a single statement: Lisp is executable XML with a friendlier syntax.
— Slava Akhmechet
2010.04.19 Monday ACHK
Functional programming 5
The essence of functional programming is that programs are built entirely of functions with no side effects that compute their results based solely on the values of their arguments. The advantage of the functional style is that it makes programs easier to understand. Eliminating side effects eliminates almost all possibilities for action at a distance.
— Peter Seibel
2010.04.18 Sunday ACHK
“Lisp is the red pill.”
— John Fraser, comp.lang.lisp
The first appearance of the concept of the “red pill” in the 1999 film The Matrix. A hacker named Morpheus offers a choice to the film’s protagonist, Neo, to take the blue pill, where “the story ends, you wake up in your bed and believe whatever you want to believe”, or to take the red pill, where “you stay in wonderland, and I show you how deep the rabbithole goes.”
The term redpill is a pop culture term that was popularised in science fiction culture via the 1999 film The Matrix. The movie relies on the premise that an artificial reality that is advanced enough will be indistinguishable from reality and that no test exists that can conclusively prove that reality is not a simulation. This ties in closely with the skeptical idea that the everyday world is illusory. In the movie, a Redpill is the term used to describe a human who has been freed from the Matrix, a fictional computer-generated world set in 1999. Bluepill refers to a human still connected to the Matrix.
— Wikipedia on Redpill
2010.04.17 Saturday ACHK
By policy, LISP has never really catered to mere mortals. And, of course, mere mortals have never really forgiven LISP for not catering to them.
* Larry Wall, “Programming is Hard, Let’s Go Scripting…”
2010.04.16 Friday ACHK
多次元宇宙 11
程式員頭腦 9
時間定義 4
以上所講的,是個別 variable(變數)的「主觀時間」。同一個 variable x,不同的「時間」,有不同的數值;不同的數值,對應於不同的「時間」。
當有超過一個 variable 時,而眾多 variables 又會互相影響的話,它們數值的變化次序就不能隨便改變。那些 variables 間,就會有「因果」關係,形成一個「因果網絡」。那個「因果網絡」,就是「客觀時間」。
例如,假設那個「銀行會計程式」有三個 variables:x, y 和 z。 x 代表我的現金戶口的結餘; y 代表我的支票戶口的結餘; z 則代表我(存於該銀行)的財產。換言之, x + y = z 。
x 和 y 之間,沒有「因果」關係,因為你可以改 x 不改 y ,或者改 y 不改 x。但是,你改變 x 或 y 的話, z 就會改變。或者說,你要改變 z 的話,就一定要透過改變 x 或 y 才能做到。所以 x 和 y 是 z 的「原因」。
x, y 和 z 之間,有因果關係,形成一個「因果網絡」。
— Me@2010.04.15
2010.04.15 Thursday (c) All rights reserved by ACHK
… we read in 1970 of the “first steps toward transforming the art of programming into a science”. Meanwhile we have actually succeeded in making our discipline a science, and in a remarkably simple way: merely by deciding to call it “computer science.”
— Knuth: Computer Programming as an Art
2010.04.15 Thursday ACHK
Russell’s dream
I can remember Bertrand Russell telling me of a horrible dream. He was in the top floor of the University Library, about A.D. 2100. A library assistant was going round the shelves carrying an enormous bucket, taking down books, glancing at them, restoring them to the shelves or dumping them into the bucket. At last he came to three large volumes which Russell could recognize as the last surviving copy of Principia Mathematica. He took down one of the volumes, turned over a few pages, seemed puzzled for a moment by the curious symbolism, closed the volume, balanced it in his hand and hesitated….
* G. H. Hardy in A Mathematician’s Apology (1940)
2010.04.14 Wednesday ACHK
You must be logged in to post a comment.