Jump to content

Paul Graham (programmer)

From Wikipedia, the free encyclopedia
(Redirected from Blub (programming))

Paul Graham
Graham in 2011
Born (1964-11-13) November 13, 1964 (age 60)[1]
Citizenship
  • British
  • American
EducationCornell University (BA)
Harvard University (MS, PhD)
Known forViaweb
Y Combinator
Hacker News
Hackers & Painters
Spouse
(m. 2008)
Scientific career
FieldsComputer science
ThesisThe State of a Program and Its Uses (1990)
Websitepaulgraham.com Edit this at Wikidata

Paul Graham (/ɡræm/; born November 13, 1964)[3] is an English-American computer scientist, writer, entrepreneur and investor. His work has included the programming language Arc, the startup Viaweb (later renamed Yahoo! Store), co-founding the startup accelerator and seed capital firm Y Combinator, his essays, and Hacker News.

He is the author of the computer programming books On Lisp,[4] ANSI Common Lisp,[5] and Hackers & Painters.[6] Technology journalist Steven Levy has described Graham as a "hacker philosopher".[7]

Graham was born in England, where he and his family have maintained a permanent residence since 2016. He is also a citizen of the United States, where he attended all of his schooling and lived for 48 years prior to returning to England.

Education and early life

[edit]

Graham and his family moved to Pittsburgh, Pennsylvania, in 1968, where he attended Gateway High School. Graham gained interest in science and mathematics from his father who was a nuclear physicist.[8]

Graham received a Bachelor of Arts with a major in philosophy from Cornell University in 1986.[9][10][11] He then received a Master of Science in 1988, and a Doctor of Philosophy in 1990, both in computer science from Harvard University.[9][12]

Graham has also studied painting at the Rhode Island School of Design and at the Accademia di Belle Arti in Florence.[9][12]

Career

[edit]

In 1996, Graham and Robert Morris founded Viaweb and recruited Trevor Blackwell shortly after. They believed that Viaweb was the first application service provider.[13] Graham received a patent for webapps based on his work at Viaweb.[14] Viaweb's software, written mostly in Common Lisp, allowed users to make their own Internet stores. In the summer of 1998, after Jerry Yang received a strong recommendation from Ali Partovi,[15] Viaweb was sold to Yahoo! for 455,000 shares of Yahoo! stock, valued at $49.6 million.[16] After the acquisition, the product became Yahoo! Store.

Graham later gained notice for his essays, which he posts on his personal website. Essay subjects range from Beating the Averages,[17] which compares Lisp to other programming languages and introduced the hypothetical programming language Blub, to Why Nerds are Unpopular,[18] a discussion of nerd life in high school. A collection of his essays has been published as Hackers & Painters[6] by O'Reilly Media, which includes a discussion of the growth of Viaweb and the advantages of Lisp to program it.

In 2001, Graham announced that he was working on a new dialect of Lisp named Arc. It was released on 29 January 2008.[19] Over the years since, he has written several essays describing features or goals of the language, and some internal projects at Y Combinator have been written in Arc, including the Hacker News web forum and news aggregator program.

In 2005, after giving a talk at the Harvard Computer Society later published as How to Start a Startup, Graham along with Trevor Blackwell, Jessica Livingston, and Robert Morris started Y Combinator to provide seed funding to startups, particularly those started by younger, more technically oriented founders. Y Combinator has invested in more than 1300 startups, including Reddit, Twitch (formerly Justin.tv), Xobni, Dropbox, Airbnb, and Stripe.[20]

BusinessWeek included Paul Graham in the 2008 edition of its annual feature, The 25 Most Influential People on the Web.[21]

In response to the proposed Stop Online Piracy Act (SOPA), Graham announced in late 2011 that no representatives of any company supporting it would be invited to Y Combinator's Demo Day events.[22]

In February 2014, Graham stepped down from his day-to-day role at Y Combinator.[23]

In October 2019, Graham announced a specification for another new dialect of Lisp, written in itself, named Bel.[24]

Graham's hierarchy of disagreement

[edit]
Graham's hierarchy of disagreement

Graham proposed a disagreement hierarchy in a 2008 essay How to Disagree,[25] putting types of argument into a seven-point hierarchy and observing that "If moving up the disagreement hierarchy makes people less mean, that will make most of them happier." Graham also suggested that the hierarchy can be thought of as a pyramid, as the highest forms of disagreement are rarer.

Following this hierarchy, Graham notes that articulate forms of name-calling (e.g., "The author is a self-important dilettante") are no different from crude insults. When in disagreement people often become more animated and engaged, and this leads to them becoming angry.[26] At the lower levels, the attacks are directed against the person, which can be hateful. Higher levels of argument are directed against the idea, which is easier to recognize and accept.[27] When people argue at the higher levels, the exchange of viewpoint is more informative and helpful.[28]

The Blub paradox

[edit]

Graham considers the hierarchy of programming languages with the example of Blub, a hypothetically average language "right in the middle of the abstractness continuum. It is not the most powerful language, but it is more powerful than Cobol or machine language."[29] It was used by Graham to illustrate a comparison, beyond Turing completeness, of programming language power, and more specifically to illustrate the difficulty of comparing a programming language one knows to one that one does not.

...These studies would like to formally prove that a certain language is more or less expressive than another language. Determining such a relation between languages objectively rather than subjectively seems to be somewhat problematic, a phenomenon that Paul Graham has discussed in "The Blub Paradox".[30][31]

Graham considers a hypothetical Blub programmer. When the programmer looks down the "power continuum", they consider the lower languages to be less powerful because they miss some feature that a Blub programmer is used to. But when they look up, they fail to realize that they are looking up: they merely see "weird languages" with unnecessary features and assumes they are equivalent in power, but with "other hairy stuff thrown in as well". When Graham considers the point of view of a programmer using a language higher than Blub, he describes that programmer as looking down on Blub and noting its "missing" features from the point of view of the higher language.[30]

Graham describes this as the Blub paradox and concludes that "By induction, the only programmers in a position to see all the differences in power between the various languages are those who understand the most powerful one."[30]

The concept has been cited by programmers such as Joel Spolsky.[32]

Personal life

[edit]

In 2008, Graham married Jessica Livingston.[33][34][35] They have two children, and have been living in England since 2016.[36][37]

References

[edit]
  1. ^ @paulg (13 January 2023). "Register" (Tweet) – via Twitter.
  2. ^ "No; I was born in Weymouth, England. My father's Welsh though". Hacker News. Ycombinator. 5 October 2008. Retrieved 8 April 2020.
  3. ^ "Graham, Paul 1964- Authorities & Vocabularies (Library of Congress Name Authority File)". U.S. Library of Congress. 11 March 2005. Retrieved 12 March 2012. (Paul Graham, b. Nov. 13, 1964)
  4. ^ Graham, Paul (1994). On Lisp: advanced techniques for Common Lisp. Englewood Cliffs, N.J: Prentice Hall. ISBN 0-13-030552-9.
  5. ^ Graham, Paul (1996). ANSI Common Lisp. Englewood Cliffs, N.J: Prentice Hall. ISBN 0-13-370875-6.
  6. ^ a b Graham, Paul (2004). Hackers & painters: big ideas from the computer age. Sebastopol, California: O'Reilly. ISBN 0-596-00662-4.
  7. ^ Levy, Steven. "Y Combinator Has Gone Supernova". Wired.
  8. ^ "What Doesn't Seem Like Work?". Paul Graham. January 2015. Retrieved 28 May 2023.
  9. ^ a b c "Bio". Paul Graham. Retrieved 22 July 2011.
  10. ^ Paul Graham (March 2005). "Undergraduation". Retrieved 22 July 2011.
  11. ^ EZRA: Cornell's Quarterly Magazine (Fall 2011) "Paul Graham '86"
  12. ^ a b "Paul Graham biography". SpeakerMix.com. Archived from the original on 9 April 2012. Retrieved 6 March 2012.
  13. ^ Graham, Paul. "Was Viaweb First?". Retrieved 19 February 2023.
  14. ^ "US Patent for Method for client-server communications through a minimal interface Patent (Patent # 6,205,469 issued March 20, 2001) - Justia Patents Search". patents.justia.com. Retrieved 15 February 2024.
  15. ^ Jessica., Livingston (2010). Founders at work : stories of startups' early days. Apress. ISBN 978-1-4302-1078-8. OCLC 705381923.
  16. ^ "Yahoo! to Acquire Viaweb". Yahoo! Inc. 8 June 1998. Archived from the original on 1 July 2007. Retrieved 14 April 2008.
  17. ^ Graham, Paul. "Beating the Averages". Paulgraham.com.
  18. ^ Graham, Paul. "Why Nerds are Unpopular". Paulgraham.com.
  19. ^ Graham, Paul (29 January 2008). "Arc's Out". Paulgraham.com. Retrieved 9 April 2020.
  20. ^ "Y Combinator Companies". Y Combinator Universe. April 2020. Retrieved 9 April 2020.
  21. ^ "The Papa Bear: Paul Graham". Bloomberg BusinessWeek. 29 September 2008. Archived from the original on 24 April 2012. Retrieved 29 September 2008.
  22. ^ Tsotsis, Alexia (22 December 2011). "Paul Graham: SOPA Supporting Companies No Longer Allowed at YC Demo Day". TechCrunch. Retrieved 23 December 2011.
  23. ^ "Paul Graham Steps Down as President of Y Combinator". NBC News. 21 February 2014. Archived from the original on 8 March 2021. Retrieved 15 February 2024.
  24. ^ Graham, Paul (2019). "Bel". paulgraham.com. Retrieved 26 September 2021.
  25. ^ Graham, Paul (March 2008). "How to Disagree". Paul Graham. Retrieved 27 October 2023.
  26. ^ Leslie, Ian (16 October 2021). "How to have better arguments online". The Guardian. Guardian News & Media Limited. Retrieved 28 October 2023.
  27. ^ Koblin, Jonas (18 August 2022). "Graham's Hierarchy of Disagreement". Sproutsschools.com. Sprouts Learning Co., Ltd. Retrieved 2 November 2023.
  28. ^ Harris, Gregory (14 August 2021). "Learning to disagree: Paul Graham and the hierarchy of argumentative quality". warbletoncouncil.org. Retrieved 2 November 2023.
  29. ^ Graham, Paul (2001). "Beating the Averages". Retrieved 28 April 2007.; published in Hackers & Painters, 2004; the essay was also reprinted in The Planning and Scheduling Working Group Report on Programming Languages Archived 16 June 2011 at the Wayback Machine, by JM Adams, R Hawkins, C Myers, C Sontag, S Speck
  30. ^ a b c Robinson, D. "An Introduction to Aspect Oriented Programming in e" (PDF). Verilab. Archived from the original (PDF) on 11 April 2022.
  31. ^ Hidders, J.; Paredaens, J.; Vercammen, R.; Marrara, S. "Expressive power of recursion and aggregates in XQuery" (PDF). Adrem Data Lab. University of Antwerp.
  32. ^ Spolsky, Joel (29 December 2005). "The Perils of JavaSchools". More Joel on Software.
  33. ^ "Where are we going?". Arclanguage.org. 26 October 2008. Retrieved 14 November 2008.
  34. ^ "Congrats to PG on getting hitched". news.ycombinator.com. 2 June 2008. Retrieved 14 November 2008.
  35. ^ Graham, Paul (January 2009). "California Year-Round". Y Combinator. Archived from the original on 13 March 2012. Jessica Livingston and I (who are married despite our different last names) are expecting our first child any day now.
  36. ^ @paulg (14 April 2020). "@OconHQ We live in England" (Tweet) – via Twitter.
  37. ^ Paul Graham [@paulg] (25 January 2023). "Yep, since 2016" (Tweet) – via Twitter.
[edit]