Guido van Rossum

31 results back to index


pages: 1,136 words: 73,489

Working in Public: The Making and Maintenance of Open Source Software by Nadia Eghbal

Amazon Web Services, Apollo 11, barriers to entry, Benevolent Dictator For Life (BDFL), Big Tech, bitcoin, Clayton Christensen, cloud computing, commoditize, commons-based peer production, context collapse, continuous integration, crowdsourcing, cryptocurrency, David Heinemeier Hansson, death of newspapers, Debian, disruptive innovation, Dunbar number, en.wikipedia.org, eternal september, Ethereum, Firefox, Free Software Foundation, Guido van Rossum, Hacker Ethic, Hacker News, Induced demand, informal economy, information security, Jane Jacobs, Jean Tirole, Kevin Kelly, Kickstarter, Kubernetes, leftpad, Mark Zuckerberg, Menlo Park, Neal Stephenson, Network effects, node package manager, Norbert Wiener, pirate software, pull request, RFC: Request For Comment, Richard Stallman, Ronald Coase, Ruby on Rails, side project, Silicon Valley, Snapchat, social graph, software as a service, Steve Jobs, Steve Wozniak, Steven Levy, Stewart Brand, tacit knowledge, the Cathedral and the Bazaar, The Death and Life of Great American Cities, The Nature of the Firm, TikTok, Tragedy of the Commons, transaction costs, two-sided market, urban planning, web application, wikimedia commons, Yochai Benkler, Zimmermann PGP

., https://twitter.com/sophiebits/status/1193686560413106177. 259 Owen Phillips, “The Anonymous MVP of the NBA Finals,” The Outline, June 12, 2017, https://theoutline.com/post/1706/the-anonymous-mvp-of-the-nba-finals-velocityraps-illegal-streaming. 260 Ryan Regier, “We Are in a Golden Age of Illegal Sports Streaming and It’s Showing Us How Copyright Infringement Can Result in Better Content,” Medium, January 20, 2019, https://medium.com/@ryregier/we-are-in-a-golden-age-of-illegal-sports-streaming-and-its-showing-us-how-copyright-infringement-d835ae291ed2. 05 261 Jane Jacobs, The Death and Life of Great American Cities (New York: Vintage Books, 1992), 55. 262 Office of the Under Secretary of Defense (Comptroller), “National Defense Budget Estimates for FY2020,” United States Department of Defense, May 2019, https://comptroller.defense.gov/Portals/45/Documents/defbudget/fy2020/FY20_Green_Book.pdf. 263 Guido van Rossum, “[Python-Committers] Transfer of Power,” The Python-Committers Archives, July 12, 2018, https://mail.python.org/pipermail/python-committers/2018-July/005664.html. 264 Jake Edge, “PEP 572 and Decision-Making in Python,” LWN.net, June 20, 2018, https://lwn.net/Articles/757713/. 265 Guido van Rossum, “A Different Way to Focus Discussions,” LWN.net, May 18, 2018, https://lwn.net/Articles/759557/. 266 Jonathan Zdziarski, “On the State of Open Source,” Zdziarski’s Blog of Things, October 3, 2016, https://www.zdziarski.com/blog/?

In response to a question about Nvidia’s lack of support for Linux (Nvidia is a manufacturer of graphics processing units, or GPUs), he turned to the camera, gave it the middle finger, and growled, “Nvidia, fuck you!”21 It’s not just Torvalds’s communication skills but also his governance style that helped him gain notoriety. In one of his essays, Raymond called this style “benevolent dictator,”23 which was later adapted by Guido van Rossum, author of the Python programming language, into the better-known phrase “Benevolent Dictator for Life” (BDFL), to describe authors of open source projects who retain control even as the project grows. Although the Linux Foundation reports more than 14,000 contributors to the Linux kernel since 2005,24 Torvalds is still the only person who’s allowed to merge those contributions into the main project.25 Although there is no shortage of memorable hacker personalities, the free and early open source ethos is also defined by a startling lack of interest in its people.

What I am saying is that this emerging third model is (a) distinct from [markets and firms], and (b) has certain systematic advantages over the other two in identifying and allocating human capital/creativity.112 A few of the conditions that Benkler identifies as necessary to pull off commons-based peer production are intrinsic motivation, modular and granular tasks, and low coordination costs. Intrinsic motivation is the currency of the commons: members do the work because they want to do it. In the case of open source, it’s assumed that developers participate because they enjoy writing code. Guido van Rossum, for example, wrote the programming language Python while looking for a “‘hobby’ programming project that would keep me occupied during the week around Christmas.”113 And Linus Torvalds released the Linux kernel and operating system as “just a hobby, won’t be big and professional,”114 then released the version control system Git as “some scripts to try to track things a whole lot faster.”115 Benkler proposes that, in order to keep people motivated, tasks must be modular and granular: When a project of any size is broken up into little pieces, each of which can be performed by an individual in a short amount of time, the motivation necessary to get any given individual to contribute need only be very small.116 Modularity refers to how the project is organized.


pages: 139 words: 35,022

Roads and Bridges by Nadia Eghbal

AGPL, Airbnb, Amazon Web Services, barriers to entry, Benevolent Dictator For Life (BDFL), corporate social responsibility, crowdsourcing, cryptocurrency, data science, David Heinemeier Hansson, Debian, DevOps, en.wikipedia.org, Firefox, Free Software Foundation, GnuPG, Guido van Rossum, Ken Thompson, Khan Academy, Kickstarter, leftpad, Marc Andreessen, market design, Network effects, platform as a service, pull request, Richard Stallman, Ruby on Rails, Salesforce, side project, Silicon Valley, Skype, software is eating the world, the Cathedral and the Bazaar, Tragedy of the Commons, Y Combinator

By individuals or a group of individuals Finally, many digital infrastructure projects are developed and maintained entirely by independent developers, or a community of developers. A few examples are as follows: Python, a programming language, was developed and published by computer scientist Guido van Rossum in 1991. Van Rossum claimed he was looking for a ‘hobby’ programming project that would keep me occupied during the week around Christmas.[59] The project took off, and Python is now considered to be one of the most popular programming languages today.[60] Van Rossum remains the principal author of Python (also known as a benevolent dictator for life, or BDFL, among developers) and is currently employed by Dropbox, whose software relies heavily on Python.[61] Python is partially managed by the Python Software Foundation, created in 2001, which has a number of corporate sponsors, including Intel, HP, and Google.

Data accessed May 20, 2016. https://www.openhub.net/languages/compare [43] https://story.californiasunday.com/tim-hwang-infrastructure-tourist [44] http://blog.codinghorror.com/the-magpie-developer/ [45] https://en.wikipedia.org/wiki/Internet_Engineering_Task_Force [46] https://en.wikipedia.org/wiki/Go_(programming_language) [47] https://www.quora.com/How-was-the-idea-to-develop-React-conceived-and-how-many-people-worked-on-developing-it-and-implementing-it-at-Facebook/answer/Bill-Fisher-17 [48] https://en.wikipedia.org/wiki/React_(JavaScript_library) [49] https://en.wikipedia.org/wiki/Swift_(programming_language) [50] https://github.com/facebook/react/blob/master/PATENTS [51] http://venturebeat.com/2015/06/13/docker-now-valued-at-1b-paid-someone-799-for-its-logo-on-99designs/ [52] http://www.bloomberg.com/news/articles/2015-04-14/docker-said-to-join-1-billion-valuation-club-with-new-funding [53] https://www.crunchbase.com/organization/meteor [54] http://info.meteor.com/blog/announcing-meteor-galaxy [55] http://venturebeat.com/2015/12/06/its-actually-open-source-software-thats-eating-the-world/ [56] http://words.steveklabnik.com/is-npm-worth-26mm [57] https://www.crunchbase.com/organization/github [58] http://www.wsj.com/articles/SB10001424052702303292204577517111643094308 [59] https://www.python.org/doc/essays/foreword/ [60] http://blog.codeeval.com/codeevalblog/2015#.VjvKZhNViko= [61] https://en.wikipedia.org/wiki/Guido_van_Rossum [62] http://skillcrush.com/2015/02/02/37-rails-sites/ [63] https://twistedmatrix.com/trac/wiki/SuccessStories [64] https://twistedmatrix.com/glyph/ [65] https://peerj.com/preprints/1233.pdf [66] Email interview with Arash Payan [67] https://medium.com/@shazow/urllib3-stripe-and-open-source-grants-edb9c0e46e82 [68] https://readthedocs.org/sustainability/ [69] https://blog.mozilla.org/blog/2015/12/10/mozilla-open-source-support-first-awards-made/ [70] http://blog.readthedocs.com/ads-on-read-the-docs/ [71] Skype interview with Eric Holscher [72] http://david.heinemeierhansson.com/2013/the-perils-of-mixing-open-source-and-money.html [73] http://blog.codinghorror.com/is-money-useless-to-open-source-projects/ [74] http://www.datamation.com/open-source/linus-torvalds-and-others-on-community-burnout-1.html [75] http://www.apple.com/customer-letter/ [76] https://www.blackducksoftware.com/future-of-open-source [77] http://redmonk.com/sogrady/2013/12/19/dvcs-and-git-2013/#ixzz2qyfVpSR9 [78] As of January 6, 2016. https://www.openhub.net/repositories/compare [79] http://readwrite.com/2014/01/21/git-subversion-developers [80] https://github.com/blog/841-those-are-some-big-numbers [81] https://en.wikipedia.org/wiki/GitHub [82] https://github.com/blog/1724-10-million-repositories [83] http://dirkriehle.com/publications/2008-2/the-total-growth-of-open-source/ [84] https://en.wikipedia.org/wiki/Stack_Overflow [85] https://creativecommons.org/licenses/by-sa/2.0/ [86] http://meta.stackexchange.com/questions/271080/the-mit-license-clarity-on-using-code-on-stack-overflow-and-stack-exchange [87] http://meta.stackexchange.com/questions/272956/a-new-code-license-the-mit-this-time-with-attribution-required [88] http://www.infoworld.com/article/2615869/open-source-software/github-needs-to-take-open-source-seriously.html [89] http://www.infoworld.com/article/2611422/open-source-software/github-finally-takes-open-source-licenses-seriously.html [90] http://www.theregister.co.uk/2013/04/18/github_licensing_study/ [91] https://twitter.com/monkchips/status/247584170967175169 [92] http://blog.codinghorror.com/please-dont-learn-to-code/ [93] https://medium.com/@wob/the-sad-state-of-web-development-1603a861d29f#.443lcznv1 [94] https://coderanger.net/funding-foss/ [95] Email interview with Hynek Schlawack [96] http://timesofindia.indiatimes.com/tech/tech-news/Security-experts-expect-Shellshock-software-bug-to-be-significant/articleshow/43657819.cms [97] http://www.scmagazineuk.com/openssh-flaw-opens-the-door-to-brute-force-attackers/article/428304/ [98] http://arstechnica.com/security/2016/01/bug-that-can-leak-crypto-keys-just-fixed-in-widely-used-openssh/ [99] https://medium.com/@christophera/i-ve-been-working-to-address-this-gap-for-a-while-thus-my-recent-exploration-of-the-commons-in-my-8094d41a874a#.qyh31ida4 Quote edited for clarity by source


pages: 394 words: 118,929

Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software by Scott Rosenberg

A Pattern Language, AOL-Time Warner, Benevolent Dictator For Life (BDFL), Berlin Wall, Bill Atkinson, c2.com, call centre, collaborative editing, Computer Lib, conceptual framework, continuous integration, Do you want to sell sugared water for the rest of your life?, Donald Knuth, Douglas Engelbart, Douglas Engelbart, Douglas Hofstadter, Dynabook, en.wikipedia.org, Firefox, Ford Model T, Ford paid five dollars a day, Francis Fukuyama: the end of history, Free Software Foundation, functional programming, General Magic , George Santayana, Grace Hopper, Guido van Rossum, Gödel, Escher, Bach, Howard Rheingold, HyperCard, index card, intentional community, Internet Archive, inventory management, Ivan Sutherland, Jaron Lanier, John Markoff, John Perry Barlow, John von Neumann, knowledge worker, L Peter Deutsch, Larry Wall, life extension, Loma Prieta earthquake, machine readable, Menlo Park, Merlin Mann, Mitch Kapor, Neal Stephenson, new economy, Nicholas Carr, no silver bullet, Norbert Wiener, pattern recognition, Paul Graham, Potemkin village, RAND corporation, Ray Kurzweil, Richard Stallman, Ronald Reagan, Ruby on Rails, scientific management, semantic web, side project, Silicon Valley, Singularitarianism, slashdot, software studies, source of truth, South of Market, San Francisco, speech recognition, stealth mode startup, stem cell, Stephen Hawking, Steve Jobs, Stewart Brand, Strategic Defense Initiative, Ted Nelson, the Cathedral and the Bazaar, Therac-25, thinkpad, Turing test, VA Linux, Vannevar Bush, Vernor Vinge, Wayback Machine, web application, Whole Earth Catalog, Y2K

For instance: Should the language give programmers the power to poke directly into the computer’s memory—along with the freedom to make machine-crashing mistakes? Or should the language create zones of safety that limit the possibility of error—at the cost of tying the programmer’s hands? For the Vista prototype, Hertzfeld had used a language called Python, invented in the late 1980s by a Dutch programmer named Guido van Rossum who named it in honor of Monty Python’s Flying Circus, the British comedy troupe. (Monty Python’s form-smashing absurdism has always found some of its truest fans in computer labs; we call the flood of unsolicited and unwanted email “spam” thanks to the Internet pioneers who, looking to name the phenomenon, recalled a Python routine featuring a luncheonette menu offering nothing but variations on “eggs, sausage, spam, spam, spam, and spam.”)

This approach could make life easier for programmers; it also tended to make for slower and sometimes less reliable databases. As it happened, the community of Python programmers had already created an ambitious and well-known example of an object database. It was called ZODB, for Zope Object Database. McCusker’s anonymous email correspondent had referred to it. At that time Python creator Guido van Rossum worked for the company that produced it. ZODB was the answer to Chandler’s problems, Anderson concluded. At first Sagen, who had written Shimmer and had been in charge of Chandler’s back end, didn’t agree, but he admitted that his experience was more in programming for servers than for clients—the programs that actual users employ—and eventually bowed to Anderson’s choice.

Don’t worry, the company reassured its people. Go forth and scratch your itches! Google was gaining a reputation for having built a sort of engineers’ paradise where algorithms ruled the roost and coders called the shots. Those lucky enough to be employed at the Googleplex—including Andy Hertzfeld and Python’s Guido van Rossum, both of whom joined Google in 2005—found a working environment that, for a spell, had escaped the stasis of software time. Google had its share of half-baked products, but no one would dispute the value of its successes—from its original search engine to its keyword-based advertising business and its popular free email service.


Python Web Development With Django by Jeff Forcier

business logic, create, read, update, delete, database schema, Debian, don't repeat yourself, duck typing, en.wikipedia.org, Firefox, full text search, functional programming, Guido van Rossum, loose coupling, MVC pattern, revision control, Ruby on Rails, Silicon Valley, slashdot, SQL injection, web application

Note At the time of this writing, the Django components that App Engine ships with are part of an outdated yet stable release of Django (0.96.1). Google App Engine Helper for Django The key to making your experience with App Engine a bit more like “real” Django development is the Google App Engine Helper for Django.This is an open-source Googlesponsored project (with Python creator Guido van Rossum being listed as one of its contributors) that aims to make App Engine a more comfortable environment for those with Django experience. It even enables you to swap in a more current version of Django instead of the one that App Engine ships with. Getting the SDK and the Helper Before we go any further, we need to get the necessary software.You can download the Google App Engine SDK for your platform at http://code.google.com/p/ googleappengine/, the SDK Project home page.

For a more comprehensive list, please visit the book’s Web site, withdjango.com. n Google App Engine http://code.google.com/appengine/ n App Engine SDK Project http://code.google.com/p/googleappengine/ n App Engine Tutorial http://code.google.com/appengine/docs/gettingstarted/ Online Resources n Google App Engine Helper for Django http://code.google.com/p/google-app-engine-django/ n Using the Google App Engine Helper for Django (Matt Brown, May 2008) http://code.google.com/appengine/articles/appengine_helper_for_django.html n VIDEOS Rapid Development with Python, Django, and Google App Engine (Guido van Rossum, May 2008) http://sites.google.com/site/io/rapid-development-with-python-django-and-googleapp-engine n Introducing GAE at Google Campfire (various,Apr 2008, 7 videos) http:// innovationstartups.wordpress.com/2008/04/10/google-app-engine-youtubes/ 335 This page intentionally left blank Appendix F Getting Involved in the Django Project D jango is not just a Web framework.

It’s also a community of coders, testers, translators, question-answerers, and a global collective of volunteers.The Django AUTHORS file lists more than 200 contributors, and there are many, many others who contribute in large and small ways to keep the project going. Django is an exemplary open source project—Python creator Guido van Rossum has said as much—and among other things that means it offers many ways for interested people to get involved. It’s likely that, like many others, you find Django makes your life as a Web developer easier and more fun, and you may find your incredible surplus of leisure and happiness inspires you to give something back.


pages: 62 words: 14,996

SciPy and NumPy by Eli Bressert

Debian, Guido van Rossum, p-value, sparse data

A big thanks goes to my wife and son, Judith van Raalten and Taj Bressert, for their help and inspiration, and willingness to deal with me being huddled away behind the computer for endless hours. Chapter 1. Introduction Python is a powerful programming language when considering portability, flexibility, syntax, style, and extendability. The language was written by Guido van Rossum with clean syntax built in. To define a function or initiate a loop, indentation is used instead of brackets. The result is profound: a Python programmer can look at any given uncommented Python code and quickly understand its inner workings and purpose. Compiled languages like Fortran and C are natively much faster than Python, but not necessarily so when Python is bound to them.


pages: 483 words: 145,225

Rebel Code: Linux and the Open Source Revolution by Glyn Moody

barriers to entry, business logic, commoditize, Compatible Time-Sharing System, Debian, Dennis Ritchie, Donald Knuth, Eben Moglen, Free Software Foundation, ghettoisation, Guido van Rossum, history of Unix, hypertext link, Johann Wolfgang von Goethe, John Gilmore, Ken Thompson, Kickstarter, Larry Ellison, Larry Wall, Marc Andreessen, MITM: man-in-the-middle, Multics, Network effects, new economy, packet switching, RFC: Request For Comment, Richard Stallman, Silicon Valley, skunkworks, slashdot, SoftBank, Steve Ballmer, Steve Jobs, Steven Levy, the Cathedral and the Bazaar, thinkpad, VA Linux

Alongside such worthy undertakings, a more formal approach to teaching programming that would naturally lead people to contribute to open source projects is needed. This is one of the aims of a project called Computer Programming For Everybody (CP4E), the brainchild of another key figure in the world of open source. Guido van Rossum was born in 1956, in the Netherlands. In the late 1980s, while living in Amsterdam, he worked on a branch of the Amoeba project, the main research interest of Andrew Tanenbaum, the creator of Minix, who is a professor at the Free University in the city. “I remember Tanenbaum asking me once, ‘Are you a researcher or a developer?’”

Initially, it had sold a proprietary solution, but in November 1998 Zope’s venture capitalist convinced its founders that they should release the software as open source to drive a wider uptake and to enjoy all the other benefits of making code freely available. Zope generates revenues through providing support, consultancy, and training in the usual free software fashion. Zope draws deeply on Python for its power, so it was appropriate that Python’s creator, Guido van Rossum, should join the company as director of its PythonLabs in October 2000, along with the other main Python developers. Zope also became cosponsor of the Python Software Foundation, which was launched in March 2001 as the guardian of Python’s intellectual property. The second founding sponsor was ActiveState, another company that has successfully built a business around open source software.

Since then, the company has come out with programs based on open source software such as Perl, Python, Tcl, and Mozilla as well as support for Microsoft’s developer tools. ActiveState’s growing stature in the open source world can be gauged from the roster of top hackers who joined its technical advisory board in March 2001: Larry Wall, Brendan Eich (the main architect for Mozilla), Guido van Rossum, and Rasmus Lerdorf. The swelling ranks of what might be termed second-generation open source companies such as MySQL, Zend, Zope, and ActiveState are a clear indication that whatever the setbacks the early players have suffered, a business built around free software can still thrive. Yet, for all their success, such companies are no longer the main engines driving the uptake of open source in corporates.


pages: 263 words: 20,730

Exploring Python by Timothy Budd

c2.com, centre right, duck typing, functional programming, general-purpose programming language, Guido van Rossum, higher-order functions, index card, random walk, sorting algorithm, web application

A solid foundation in one language (such as Python) makes it much easier to learn a second Exploring Python – Preface 4 (or third, or forth). An appendix at the back of this book provides hints as to how one should approach the task of learning a new language. History of Python Python was designed by Guido van Rossum while he was working at the CWI (the Centrum voor Wiskunke and Informatica; literally “center for wisdom and informatics”) a world-class research lab in the Netherlands. The CWI group he was associated with designed a programming language called ABC. I was fortunate to spend a year with this group in 1985.

This empowers the student to take control of his or her own voyage of discovery, instead of simply playing the role of a passive container into which the instructor (or the book) pours information. I have discussed this active learning approach in my earlier remarks for the student. But the fact that simple things are easy to write in Python should not be an excuse to imagine that the language is just a toy. It is a credit to the good design skills of Guido van Rossum (the language designer) and countless others that simple ideas are simple to express, and complex ideas can also be illustrated with simple examples. In what other language might an introductory textbook include examples of a blog, a wiki, or an XML parser? Python is also an excellent vehicle for teaching computer science.


pages: 496 words: 174,084

Masterminds of Programming: Conversations With the Creators of Major Programming Languages by Federico Biancuzzi, Shane Warden

Benevolent Dictator For Life (BDFL), business intelligence, business logic, business process, cellular automata, cloud computing, cognitive load, commoditize, complexity theory, conceptual framework, continuous integration, data acquisition, Dennis Ritchie, domain-specific language, Douglas Hofstadter, Fellow of the Royal Society, finite state, Firefox, follow your passion, Frank Gehry, functional programming, general-purpose programming language, Guido van Rossum, higher-order functions, history of Unix, HyperCard, industrial research laboratory, information retrieval, information security, iterative process, Ivan Sutherland, John von Neumann, Ken Thompson, Larry Ellison, Larry Wall, linear programming, loose coupling, machine readable, machine translation, Mars Rover, millennium bug, Multics, NP-complete, Paul Graham, performance metric, Perl 6, QWERTY keyboard, RAND corporation, randomized controlled trial, Renaissance Technologies, Ruby on Rails, Sapir-Whorf hypothesis, seminal paper, Silicon Valley, slashdot, software as a service, software patent, sorting algorithm, SQL injection, Steve Jobs, traveling salesman, Turing complete, type inference, Valgrind, Von Neumann architecture, web application

If you are looking for inspiring thoughts regarding software and programming languages, you will need a highlighter, or maybe two, because I promise that you will find plenty of them throughout these pages. —Federico Biancuzzi Organization of the Material The chapters in this book are ordered to provide a varied and provocative perspective as you travel through it. Savor the interviews and return often. Chapter 1, C++, interviews Bjarne Stroustrup. Chapter 2, Python, interviews Guido van Rossum. Chapter 3, APL, interviews Adin D. Falkoff. Chapter 4, Forth, interviews Charles H. Moore. Chapter 5, BASIC, interviews Thomas E. Kurtz. Chapter 6, AWK, interviews Alfred Aho, Peter Weinberger, and Brian Kernighan. Chapter 7, Lua, interviews Luiz Henrique de Figueiredo and Roberto Ierusalimschy.

” * * * [1] http://www.open-std.org/JTC1/sc22/wg21/docs/TR18015.pdf/ [2] http://www.research.att.com/~bs/oopsla.pdf/ [3] http://www.open-std.org/jtc1/sc22/wg21// [4] http://www.research.att.com/~bs/C++0xFAQ.html/ Chapter 2. Python Python is a modern, general-purpose, high-level language developed by Guido van Rossum as a result of his work with the ABC programming language. Python’s philosophy is pragmatic; its users often speak of the Zen of Python, strongly preferring a single obvious way to accomplish any task. Ports exist for VMs such as Microsoft’s CLR and the JVM, but the primary implementation is CPython, still developed by van Rossum and other volunteers, who just released Python 3.0, a backward-incompatible rethinking of parts of the language and its core libraries.

Ports exist for VMs such as Microsoft’s CLR and the JVM, but the primary implementation is CPython, still developed by van Rossum and other volunteers, who just released Python 3.0, a backward-incompatible rethinking of parts of the language and its core libraries. The Pythonic Way What differences are there between developing a programming language and developing a “common” software project? Guido van Rossum: More than with most software projects, your most important users are programmers themselves. This gives a language project a high level of “meta” content. In the dependency tree of software projects, programming languages are pretty much at the bottom—everything else depends on one or more languages.


pages: 754 words: 48,930

Programming in Scala by Martin Odersky, Lex Spoon, Bill Venners

domain-specific language, functional programming, Guido van Rossum, higher-order functions, Larry Wall, off-by-one error, Silicon Valley, sorting algorithm, the Cathedral and the Bazaar, type inference, web application

For example, consider this list: scala> val people = List( new Person("Larry", "Wall"), new Person("Anders", "Hejlsberg"), new Person("Guido", "van Rossum"), new Person("Alan", "Kay"), new Person("Yukihiro", "Matsumoto") ) people: List[Person] = List(Larry Wall, Anders Hejlsberg, Guido van Rossum, Alan Kay, Yukihiro Matsumoto) Because the element type of this list, Person, mixes in (and is therefore a subtype of) Ordered[People], you can pass the list to orderedMergeSort: scala> val sortedPeople = orderedMergeSort(people) sortedPeople: List[Person] = List(Anders Hejlsberg, Alan Kay, Yukihiro Matsumoto, Guido van Rossum, Larry Wall) Now, although the sort function shown in Listing 19.12 serves as a useful illustration of upper bounds, it isn’t actually the most general way in Scala to design a sort function that takes advantage the Ordered trait.


pages: 603 words: 141,814

Python for Unix and Linux System Administration by Noah Gift, Jeremy M. Jones

Amazon Web Services, bash_history, Bram Moolenaar, business logic, cloud computing, create, read, update, delete, database schema, Debian, distributed revision control, Firefox, functional programming, Guido van Rossum, industrial robot, inventory management, job automation, Mark Shuttleworth, MVC pattern, skunkworks, web application

Also thanks to Alberto Valez, my boss at Sony Imageworks, for being possibly the best boss I ever had and giving me the chance to completely automate my job. Thanks to film editor Ed Fuller, who helped with advice on the book, and was a good friend during this process. Thanks to many people in the Python community. First, thanks to Guido van Rossum for writing a great language, for being a great leader, and for being patient with me when I asked for advice on the book. There are so many rock stars in the Python community who crank out useful tools that I use everyday. They include Ian Bicking, Fernando Perez and Villi Vainio, Mike Bayer, Gustavo Niemeyer, etc.

I also want to thank Linus Torvalds, the Debian folks, the Ubuntu folks, and anyone else who has ever worked on Linux. Almost every word that I typed was done on Linux. You made it incredibly simple to set up new environments and test different things. Thank you. Finally, but by no means least, I want to thank Guido van Rossum and everyone who has ever done any work on Python. I have been benefitting from your work for a number of years now. I was hired for my last two jobs because of Python. Python, the language, and Python, the community, have been both a great joy for me since I started working with it sometime around 2001–2002.


pages: 209 words: 54,638

Team Geek by Brian W. Fitzpatrick, Ben Collins-Sussman

anti-pattern, barriers to entry, cognitive dissonance, Dean Kamen, do what you love, en.wikipedia.org, fail fast, fear of failure, Free Software Foundation, Guido van Rossum, Ken Thompson, Paradox of Choice, Paul Graham, publish or perish, Richard Stallman, Silicon Valley, Steve Jobs, TED Talk, value engineering, web application

— Johnathan Nightingale “Team Geek is How to Win Friends and Influence People for programmers. It’s full of clear and actionable advice on how to be more happy, productive and effective on your technical team. Excellent and needed.” — Adrian Holovaty “Ben and Fitz say what I’ve been practicing but could never quite put in words.” — Guido van Rossum “Please send one copy to: Poul-Henning Kamp c/o FreeBSD core team Delivery no later than March 1994.” — Poul-Henning Kamp “Ben and Fitz come not to praise the myth of the lone programmer, but to bury it. They preside over its wake in a series of essays designed to teach right-brained engineers how to hack the most complex system they’ll ever encounter: people in a group.


pages: 561 words: 157,589

WTF?: What's the Future and Why It's Up to Us by Tim O'Reilly

"Friedman doctrine" OR "shareholder theory", 4chan, Affordable Care Act / Obamacare, Airbnb, AlphaGo, Alvin Roth, Amazon Mechanical Turk, Amazon Robotics, Amazon Web Services, AOL-Time Warner, artificial general intelligence, augmented reality, autonomous vehicles, barriers to entry, basic income, behavioural economics, benefit corporation, Bernie Madoff, Bernie Sanders, Bill Joy: nanobots, bitcoin, Blitzscaling, blockchain, book value, Bretton Woods, Brewster Kahle, British Empire, business process, call centre, Capital in the Twenty-First Century by Thomas Piketty, Captain Sullenberger Hudson, carbon tax, Carl Icahn, Chuck Templeton: OpenTable:, Clayton Christensen, clean water, cloud computing, cognitive dissonance, collateralized debt obligation, commoditize, computer vision, congestion pricing, corporate governance, corporate raider, creative destruction, CRISPR, crowdsourcing, Danny Hillis, data acquisition, data science, deep learning, DeepMind, Demis Hassabis, Dennis Ritchie, deskilling, DevOps, Didi Chuxing, digital capitalism, disinformation, do well by doing good, Donald Davies, Donald Trump, Elon Musk, en.wikipedia.org, Erik Brynjolfsson, fake news, Filter Bubble, Firefox, Flash crash, Free Software Foundation, fulfillment center, full employment, future of work, George Akerlof, gig economy, glass ceiling, Glass-Steagall Act, Goodhart's law, Google Glasses, Gordon Gekko, gravity well, greed is good, Greyball, Guido van Rossum, High speed trading, hiring and firing, Home mortgage interest deduction, Hyperloop, income inequality, independent contractor, index fund, informal economy, information asymmetry, Internet Archive, Internet of things, invention of movable type, invisible hand, iterative process, Jaron Lanier, Jeff Bezos, jitney, job automation, job satisfaction, John Bogle, John Maynard Keynes: Economic Possibilities for our Grandchildren, John Maynard Keynes: technological unemployment, John Zimmer (Lyft cofounder), Kaizen: continuous improvement, Ken Thompson, Kevin Kelly, Khan Academy, Kickstarter, Kim Stanley Robinson, knowledge worker, Kodak vs Instagram, Lao Tzu, Larry Ellison, Larry Wall, Lean Startup, Leonard Kleinrock, Lyft, machine readable, machine translation, Marc Andreessen, Mark Zuckerberg, market fundamentalism, Marshall McLuhan, McMansion, microbiome, microservices, minimum viable product, mortgage tax deduction, move fast and break things, Network effects, new economy, Nicholas Carr, Nick Bostrom, obamacare, Oculus Rift, OpenAI, OSI model, Overton Window, packet switching, PageRank, pattern recognition, Paul Buchheit, peer-to-peer, peer-to-peer model, Ponzi scheme, post-truth, race to the bottom, Ralph Nader, randomized controlled trial, RFC: Request For Comment, Richard Feynman, Richard Stallman, ride hailing / ride sharing, Robert Gordon, Robert Metcalfe, Ronald Coase, Rutger Bregman, Salesforce, Sam Altman, school choice, Second Machine Age, secular stagnation, self-driving car, SETI@home, shareholder value, Silicon Valley, Silicon Valley startup, skunkworks, Skype, smart contracts, Snapchat, Social Responsibility of Business Is to Increase Its Profits, social web, software as a service, software patent, spectrum auction, speech recognition, Stephen Hawking, Steve Ballmer, Steve Jobs, Steven Levy, Stewart Brand, stock buybacks, strong AI, synthetic biology, TaskRabbit, telepresence, the built environment, the Cathedral and the Bazaar, The future is already here, The Future of Employment, the map is not the territory, The Nature of the Firm, The Rise and Fall of American Growth, The Wealth of Nations by Adam Smith, Thomas Davenport, Tony Fadell, Tragedy of the Commons, transaction costs, transcontinental railway, transportation-network company, Travis Kalanick, trickle-down economics, two-pizza team, Uber and Lyft, Uber for X, uber lyft, ubercab, universal basic income, US Airways Flight 1549, VA Linux, warehouse automation, warehouse robotics, Watson beat the top human players on Jeopardy!, We are the 99%, web application, Whole Earth Catalog, winner-take-all economy, women in the workforce, Y Combinator, yellow journalism, zero-sum game, Zipcar

Under competitive pressure from Microsoft, which had built a browser of its own and had given it away for free (but without source code) in order to “cut off Netscape’s air supply,” Netscape had no choice but to go back to the web’s free software roots. At the meeting, which was held at the Stanford Court Hotel (now the Garden Court) in Palo Alto, I brought together Linus Torvalds, Brian Behlendorf (one of the founders of the Apache web server project), Larry Wall, Guido van Rossum (the creator of the Python programming language), Jamie Zawinski (the chief developer of the Mozilla project), Eric Raymond, Michael Tiemann (the founder and CEO of Cygnus Solutions, a company that was commercializing free software programming tools), Paul Vixie (the author and maintainer of BIND [Berkeley Internet Name Daemon], the software behind the Internet Domain Name System), and Eric Allman (the author of Sendmail, the software that routed a majority of the Internet’s email).

If your company has an Internet domain name—say nytimes.com or wsj.com or fortune.com—that name only works because of BIND, the software written by this man—Paul Vixie. The web server you use is probably Apache, created by a team co-founded by Brian Behlendorf, sitting here. That website also makes heavy use of programming languages like Perl and Python, written by Larry Wall, here, and Guido van Rossum, here. If you send email, it was routed to its destination by Sendmail, written by Eric Allman. And that’s before we even get to Linux, which you’ve all heard about, which was written by Linus Torvalds here. And here’s the amazing thing: All of these guys have dominant market share in important categories of Internet software without any venture capitalist giving them money, without any company behind them, just on the strength of building great software and giving it away to anyone who wants to use it or to help them build it.


pages: 504 words: 89,238

Natural language processing with Python by Steven Bird, Ewan Klein, Edward Loper

bioinformatics, business intelligence, business logic, Computing Machinery and Intelligence, conceptual framework, Donald Knuth, duck typing, elephant in my pajamas, en.wikipedia.org, finite state, Firefox, functional programming, Guido van Rossum, higher-order functions, information retrieval, language acquisition, lolcat, machine translation, Menlo Park, natural language processing, P = NP, search inside the book, sparse data, speech recognition, statistical model, text mining, Turing test, W. E. B. Du Bois

Computing machinery and intelligence. Mind, 59(236): 433–460, 1950. [van Benthem and ter Meulen, 1997] Johan van Benthem and Alice ter Meulen, editors. Handbook of Logic and Language. MIT Press, Cambridge, MA, 1997. [van Rossum and Drake, 2006a] Guido van Rossum and Fred L. Drake. An Introduction to Python—The Python Tutorial. Network Theory Ltd, Bristol, 2006. [van Rossum and Drake, 2006b] Guido van Rossum and Fred L. Drake. The Python Language Reference Manual. Network Theory Ltd, Bristol, 2006. [Warren and Pereira, 1982] David H. D. Warren and Fernando C. N. Pereira. An efficient easily adaptable system for interpreting natural language queries.


Free as in Freedom by Sam Williams

Asperger Syndrome, cognitive dissonance, commoditize, Compatible Time-Sharing System, Debian, Douglas Engelbart, East Village, Eben Moglen, Free Software Foundation, Guido van Rossum, Hacker Ethic, informal economy, Isaac Newton, John Conway, John Gilmore, John Markoff, Ken Thompson, Larry Wall, machine readable, Marc Andreessen, Maui Hawaii, Multics, Murray Gell-Mann, PalmPilot, profit motive, Project Xanadu, Richard Stallman, Silicon Valley, slashdot, software patent, Steven Levy, Ted Nelson, the Cathedral and the Bazaar, urban renewal, VA Linux, Y2K

He decided to limit the list to west-coast developers such as Wall, Eric Allman, creator of sendmail, and Paul Vixie, creator of BIND. There were exceptions, of course: Pennsylvania-resident Raymond, who was already in town thanks to the Mozilla launch, earned a quick invite. So did Virginia-resident Guido van Rossum, creator of Python. "Frank Willison, my editor in chief and champion of Python within the company, invited him without first checking in with me," O'Reilly recalls. "I was happy to have him there, but when I started, it really was just a local gathering." For some observers, the unwillingness to include Stallman's name on the list qualified as a snub.


pages: 255 words: 78,207

Web Scraping With Python: Collecting Data From the Modern Web by Ryan Mitchell

AltaVista, Amazon Web Services, Apollo 13, cloud computing, Computing Machinery and Intelligence, data science, en.wikipedia.org, Firefox, Guido van Rossum, information security, machine readable, meta-analysis, natural language processing, optical character recognition, random walk, self-driving car, Turing test, web application

1 This line might be a reference to the Dutch computer scientist Edsger Dijkstra, who said in a 1978 talk: “I thought that it was a firm principle of language design...that in all respects equivalent programs should have few possibilities for different representations... Otherwise completely different styles of programming arise unnecessarily, thereby hampering maintainability, readability and what have you” (http://www.cs.utexas.edu/ ~EWD/transcriptions/EWD06xx/EWD660.html). Or it may simply be due to the fact that the original creator of Python, Guido van Rossum, is Dutch. No one seems to be entirely sure on this subject, however. Python at a Glance | 211 APPENDIX B The Internet at a Glance As the types of transactions the Internet is required to handle become increasingly complex, the terms and technologies used to describe these transactions also increa‐ ses in complexity.


pages: 266 words: 79,297

Forge Your Future with Open Source by VM (Vicky) Brasseur

AGPL, anti-pattern, Benevolent Dictator For Life (BDFL), call centre, continuous integration, Contributor License Agreement, Debian, DevOps, don't repeat yourself, en.wikipedia.org, Firefox, FOSDEM, Free Software Foundation, Guido van Rossum, information security, Internet Archive, Larry Wall, microservices, Perl 6, premature optimization, pull request, Richard Stallman, risk tolerance, Turing machine

The relatively small size and scope allow an atomic commit to be reviewed more easily and thoroughly and is easier to roll back should something go wrong. Both the review and the easy rollback mitigate the risk of fatal bugs slipping into the project. BDFL Short for Benevolent Dictator For Life. BDFLs are rare in FOSS but they do exist. For example, Guido van Rossum was the BDFL of Python and Dries Buytaert is the BDFL of Drupal. A BDFL is typically the founder of the project. They have final say in and can veto all decisions related to the project, but it’s very rare that they use this power. Typically a BDFL will lean on the Benevolent part of the title by seeking consensus and always working toward what’s best for both the project and its community.


Programming Python by Mark Lutz

Benevolent Dictator For Life (BDFL), Build a better mousetrap, business logic, business process, cloud computing, Firefox, general-purpose programming language, Google Chrome, Guido van Rossum, iterative process, linear programming, loose coupling, machine readable, MVC pattern, natural language processing, off grid, slashdot, sorting algorithm, web application

I opted to keep the conclusion itself, though, because it’s still relevant to many readers and bears some historic value. Well, that, plus the jokes… The forewords are gone For reasons similar to those of the prior two points, the accumulated forewords from the prior three editions were also dropped this time around. You can read all about Python creator Guido van Rossum’s historical rationale for Python’s evolution in numerous places on the Web, if you are so inclined. If you are interested in how Python has changed technically over the years, see also the “What’s New” documents that are part of the Python standard manuals set (available at http://www.python.org/doc, and installed alongside Python on Windows and other platforms).

(In fact, this is a particularly good script for Sue—something she might consider scheduling to run often, using a cron job on Unix, or a Startup folder or msconfig entry on Windows…) What’s in a Name? Though it’s a surprisingly well-kept secret, Python gets its name from the 1970s British TV comedy series Monty Python’s Flying Circus. According to Python folklore, Guido van Rossum, Python’s creator, was watching reruns of the show at about the same time he needed a name for a new language he was developing. And as they say in show business, “the rest is history.” Because of this heritage, references to the comedy group’s work often show up in examples and discussion.

Today, the nonprofit Python Software Foundation (PSF) oversees Python conferences and other noncommercial activities. The PSF was preceded by the PSA, a group that was originally formed in response to an early thread on the Python newsgroup that posed the semiserious question: “What would happen if Guido was hit by a bus?” These days, Python creator Guido van Rossum is still the ultimate arbiter of proposed Python changes. He was officially anointed the BDFL—Benevolent Dictator for Life—of Python at the first Python conference and still makes final yes and no decisions on language changes (and apart from 3.0’s deliberate incompatibilities, has usually said no: a good thing in the programming languages domain, because Python tends to change slowly and in backward-compatible ways).


Learn Algorithmic Trading by Sebastien Donadio

active measures, algorithmic trading, automated trading system, backtesting, Bayesian statistics, behavioural economics, buy and hold, buy low sell high, cryptocurrency, data science, deep learning, DevOps, en.wikipedia.org, fixed income, Flash crash, Guido van Rossum, latency arbitrage, locking in a profit, market fundamentalism, market microstructure, martingale, natural language processing, OpenAI, p-value, paper trading, performance metric, prediction markets, proprietary trading, quantitative trading / quantitative finance, random walk, risk tolerance, risk-adjusted returns, Sharpe ratio, short selling, sorting algorithm, statistical arbitrage, statistical model, stochastic process, survivorship bias, transaction costs, type inference, WebSocket, zero-sum game

We always associate Python with a general-purpose language with an understandable syntax and simplicity, while R was developed with statisticians as an end user by giving emphasis to data visualization. Even if Python can also give you the same visualization experience, R was designed for this purpose. R is not significantly more recent than Python. It was released in 1995 by the two founders, Ross Ihaka and Robert Gentleman, while Python was released in 1991 by Guido Van Rossum. Today, R is mainly used by the academic and research world. Unlike many other languages, Python and R allows us to write a statistical model with a few lines of code. Because it is impossible to choose one over the other, since they both have their own advantages, they can easily be used in a complementary manner.


pages: 1,082 words: 87,792

Python for Algorithmic Trading: From Idea to Cloud Deployment by Yves Hilpisch

algorithmic trading, Amazon Web Services, automated trading system, backtesting, barriers to entry, bitcoin, Brownian motion, cloud computing, coronavirus, cryptocurrency, data science, deep learning, Edward Thorp, fiat currency, global macro, Gordon Gekko, Guido van Rossum, implied volatility, information retrieval, margin call, market microstructure, Myron Scholes, natural language processing, paper trading, passive investing, popular electronics, prediction markets, quantitative trading / quantitative finance, random walk, risk free rate, risk/return, Rubik’s Cube, seminal paper, Sharpe ratio, short selling, sorting algorithm, systematic trading, transaction costs, value at risk

Although Python for algorithmic trading is a niche at the intersection of Python programming and finance, it is a fast-growing one that touches on such diverse topics as Python deployment, interactive financial analytics, machine and deep learning, object-oriented programming, socket communication, visualization of streaming data, and trading platforms. For a quick refresher on important Python topics, read the Appendix A first. Python for Finance The Python programming language originated in 1991 with the first release by Guido van Rossum of a version labeled 0.9.0. In 1994, version 1.0 followed. However, it took almost two decades for Python to establish itself as a major programming language and technology platform in the financial industry. Of course, there were early adopters, mainly hedge funds, but widespread adoption probably started only around 2011.


pages: 309 words: 65,118

Ruby by example: concepts and code by Kevin C. Baird

Benevolent Dictator For Life (BDFL), David Heinemeier Hansson, Debian, digital map, Donald Knuth, en.wikipedia.org, Firefox, fudge factor, functional programming, general-purpose programming language, Guido van Rossum, Larry Wall, MVC pattern, Paul Graham, Perl 6, premature optimization, union organizing, web application

PHP’s web integration is such an important part of its most frequent use (if not its design) that it is often best compared to other programming languages when combined with their own web integration systems, such Perl and Mason, or Ruby and eRuby or Rails. PHP’s creator Rasmus Lerdorf began work on the project that would eventually become PHP in 1995. You can find out more about it at http://php.net. Python Python is a language very similar to Ruby. Its creator, the “Benevolent Dictator For Life” Guido van Rossum, named it after the British comedy troupe Monty Python when he invented it in the early 1990s. It has strong, dynamic typing very similar to Ruby’s and a similarly clean syntax, which is aided by its use of semantically significant whitespace. In Python, neither functions, blocks of code, nor statements need to have an explicit end-of-line mark (often a semicolon).


pages: 688 words: 107,867

Python Data Analytics: With Pandas, NumPy, and Matplotlib by Fabio Nelli

Amazon Web Services, backpropagation, centre right, computer vision, data science, Debian, deep learning, DevOps, functional programming, Google Earth, Guido van Rossum, Internet of things, optical character recognition, pattern recognition, sentiment analysis, speech recognition, statistical model, web application

This kind of ambiguity can create confusion, especially in terms of choosing which version to use and the differences between these two versions. One question that you surely must be asking is why version 2.x is still being released if it is distributed around a much more enhanced version such as 3.x. When Guido Van Rossum (the creator of Python) decided to bring significant changes to the Python language, he soon found that these changes would make the new version incompatible with a lot of existing code. Thus he decided to start with a new version of Python called Python 3.0. To overcome the problem of incompatibility and avoid creating huge amounts of unusable code, it was decided to maintain a compatible version, 2.7 to be precise.


pages: 312 words: 93,504

Common Knowledge?: An Ethnography of Wikipedia by Dariusz Jemielniak

Andrew Keen, barriers to entry, Benevolent Dictator For Life (BDFL), citation needed, collaborative consumption, collaborative editing, commons-based peer production, conceptual framework, continuous integration, crowdsourcing, Debian, deskilling, digital Maoism, disinformation, en.wikipedia.org, Filter Bubble, Free Software Foundation, Gabriella Coleman, Google Glasses, Guido van Rossum, Hacker Ethic, hive mind, Internet Archive, invisible hand, Jaron Lanier, jimmy wales, job satisfaction, Julian Assange, knowledge economy, knowledge worker, Menlo Park, moral hazard, online collectivism, pirate software, RFC: Request For Comment, Richard Stallman, selection bias, Silicon Valley, Skype, slashdot, social software, Stewart Brand, the Cathedral and the Bazaar, The Hackers Conference, The Nature of the Firm, the strength of weak ties, The Wisdom of Crowds, transaction costs, Wayback Machine, WikiLeaks, wikimedia commons, Wikivoyage, Yochai Benkler, zero-sum game

Another is rotating dictatorship, in which control is occasionally passed from one member to another within a circle of senior co-developers; the Perl developers organize themselves this way. (1999/2004, pp. 101–102) Raymond possibly took the term from the “Benevolent Dictator for Life” nickname arguably given to Guido van Rossum, the creator of the Python programming language (Van Rossum, 2008). In Raymond’s concept, benevolent dictatorship is quite close to what Wales would refer to as a constitutional 1 6 2    L e a d e r s h i p T r a n s f o r m e d monarchy. Yet Wales was probably right to say that the term “benevolent dictatorship” may be obscure outside the hacker and open-source community and even evoke association with the likes of Ho Chi Minh, Josif Broz Tito, or Fidel Castro (interestingly, the Wikipedia entry on “benevolent dictatorship” has been a field of an ongoing edit war on who should be given as an example of a benevolent dictator, and so far no clear consensus has been established).


Text Analytics With Python: A Practical Real-World Approach to Gaining Actionable Insights From Your Data by Dipanjan Sarkar

bioinformatics, business intelligence, business logic, computer vision, continuous integration, data science, deep learning, Dr. Strangelove, en.wikipedia.org, functional programming, general-purpose programming language, Guido van Rossum, information retrieval, Internet of things, invention of the printing press, iterative process, language acquisition, machine readable, machine translation, natural language processing, out of africa, performance metric, premature optimization, recommendation engine, self-driving car, semantic web, sentiment analysis, speech recognition, statistical model, text mining, Turing test, web application

Getting to Know Python Before we can dive into the Python ecosystem and look at the various components associated with it, we must look back at the origins and philosophy behind Python and see how it has evolved over time to be the choice of language powering many applications, servers, and systems today. Python is a high-level open source general-purpose programming language widely used as a scripting and across different domains. The brainchild of Guido Van Rossum, Python was conceived in the late 1980s as a successor to the ABC language , and both were developed at the Centrum Wiskunde and Informatica (CWI) , Netherlands. Python was originally designed to be a scripting and interpreted language, and to this day it is still one of the most popular scripting languages out there.


Software Design for Flexibility by Chris Hanson, Gerald Sussman

Alan Turing: On Computable Numbers, with an Application to the Entscheidungsproblem, connected car, domain-specific language, Donald Knuth, en.wikipedia.org, functional programming, Guido van Rossum, higher-order functions, interchangeable parts, loose coupling, Magellanic Cloud, phenotype, premature optimization, Richard Stallman, stem cell, the scientific method, Turing machine, type inference

Adams IV; “T: A dialect of Lisp or, lambda: The ultimate software tool,” in Conference Record of the 1982 ACM Symposium on Lisp and Functional Programming, 114–122 (1982). [103]John C. Reynolds; “The discoveries of continuations,” in Proc. Lisp and Symbolic Computation, 233–248 (1993). [104]J.A. Robinson; “A Machine-Oriented Logic Based on the Resolution Principle,” in Journal of the ACM, 12(1) (January 1965): 23–41. [105]Guido van Rossum; The Python Language Reference Manual, ed. Fred L. Drake Jr., Network Theory Ltd, 2003. [106]Jane L. Russell, George D. Gatewood, and Thaddeus F. Worek; “Parallax Studies of Four Selected Fields,” in The Astronomical Journal, 87(2) (February 1982): 428–432. [107]Erik Sandewall; “From systems to logic in the early development of nonmonotonic reasoning,” in Artificial Intelligence, 175 (2011): 416–427


pages: 1,829 words: 135,521

Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython by Wes McKinney

Bear Stearns, business process, data science, Debian, duck typing, Firefox, general-purpose programming language, Google Chrome, Guido van Rossum, index card, p-value, quantitative trading / quantitative finance, random walk, recommendation engine, sentiment analysis, side project, sorting algorithm, statistical model, Two Sigma, type inference

Suppose we had a large list of strings and we wanted to compare different methods of selecting all strings starting with a particular prefix. Here is a simple list of 600,000 strings and two identical methods of selecting only the ones that start with 'foo': # a very large list of strings strings = ['foo', 'foobar', 'baz', 'qux', 'python', 'Guido Van Rossum'] * 100000 method1 = [x for x in strings if x.startswith('foo')] method2 = [x for x in strings if x[:3] == 'foo'] It looks like they should be about the same performance-wise, right? We can check for sure using %time: In [561]: %time method1 = [x for x in strings if x.startswith('foo')] CPU times: user 0.19 s, sys: 0.00 s, total: 0.19 s Wall time: 0.19 s In [562]: %time method2 = [x for x in strings if x[:3] == 'foo'] CPU times: user 0.09 s, sys: 0.00 s, total: 0.09 s Wall time: 0.09 s The Wall time (short for “wall-clock time”) is the main number of interest.


pages: 752 words: 131,533

Python for Data Analysis by Wes McKinney

Alignment Problem, backtesting, Bear Stearns, cognitive dissonance, crowdsourcing, data science, Debian, duck typing, Firefox, functional programming, Google Chrome, Guido van Rossum, index card, machine readable, random walk, recommendation engine, revision control, sentiment analysis, Sharpe ratio, side project, sorting algorithm, statistical model, type inference

Suppose we had a large list of strings and we wanted to compare different methods of selecting all strings starting with a particular prefix. Here is a simple list of 700,000 strings and two identical methods of selecting only the ones that start with 'foo': # a very large list of strings strings = ['foo', 'foobar', 'baz', 'qux', 'python', 'Guido Van Rossum'] * 100000 method1 = [x for x in strings if x.startswith('foo')] method2 = [x for x in strings if x[:3] == 'foo'] It looks like they should be about the same performance-wise, right? We can check for sure using %time: In [561]: %time method1 = [x for x in strings if x.startswith('foo')] CPU times: user 0.19 s, sys: 0.00 s, total: 0.19 s Wall time: 0.19 s In [562]: %time method2 = [x for x in strings if x[:3] == 'foo'] CPU times: user 0.09 s, sys: 0.00 s, total: 0.09 s Wall time: 0.09 s The Wall time is the main number of interest.


pages: 499 words: 144,278

Coders: The Making of a New Tribe and the Remaking of the World by Clive Thompson

"Margaret Hamilton" Apollo, "Susan Fowler" uber, 2013 Report for America's Infrastructure - American Society of Civil Engineers - 19 March 2013, 4chan, 8-hour work day, Aaron Swartz, Ada Lovelace, AI winter, air gap, Airbnb, algorithmic bias, AlphaGo, Amazon Web Services, Andy Rubin, Asperger Syndrome, augmented reality, Ayatollah Khomeini, backpropagation, barriers to entry, basic income, behavioural economics, Bernie Sanders, Big Tech, bitcoin, Bletchley Park, blockchain, blue-collar work, Brewster Kahle, Brian Krebs, Broken windows theory, call centre, Cambridge Analytica, cellular automata, Charles Babbage, Chelsea Manning, Citizen Lab, clean water, cloud computing, cognitive dissonance, computer vision, Conway's Game of Life, crisis actor, crowdsourcing, cryptocurrency, Danny Hillis, data science, David Heinemeier Hansson, deep learning, DeepMind, Demis Hassabis, disinformation, don't be evil, don't repeat yourself, Donald Trump, driverless car, dumpster diving, Edward Snowden, Elon Musk, Erik Brynjolfsson, Ernest Rutherford, Ethereum, ethereum blockchain, fake news, false flag, Firefox, Frederick Winslow Taylor, Free Software Foundation, Gabriella Coleman, game design, Geoffrey Hinton, glass ceiling, Golden Gate Park, Google Hangouts, Google X / Alphabet X, Grace Hopper, growth hacking, Guido van Rossum, Hacker Ethic, hockey-stick growth, HyperCard, Ian Bogost, illegal immigration, ImageNet competition, information security, Internet Archive, Internet of things, Jane Jacobs, John Markoff, Jony Ive, Julian Assange, Ken Thompson, Kickstarter, Larry Wall, lone genius, Lyft, Marc Andreessen, Mark Shuttleworth, Mark Zuckerberg, Max Levchin, Menlo Park, meritocracy, microdosing, microservices, Minecraft, move 37, move fast and break things, Nate Silver, Network effects, neurotypical, Nicholas Carr, Nick Bostrom, no silver bullet, Northpointe / Correctional Offender Management Profiling for Alternative Sanctions, Oculus Rift, off-the-grid, OpenAI, operational security, opioid epidemic / opioid crisis, PageRank, PalmPilot, paperclip maximiser, pattern recognition, Paul Graham, paypal mafia, Peter Thiel, pink-collar, planetary scale, profit motive, ransomware, recommendation engine, Richard Stallman, ride hailing / ride sharing, Rubik’s Cube, Ruby on Rails, Sam Altman, Satoshi Nakamoto, Saturday Night Live, scientific management, self-driving car, side project, Silicon Valley, Silicon Valley ideology, Silicon Valley startup, single-payer health, Skype, smart contracts, Snapchat, social software, software is eating the world, sorting algorithm, South of Market, San Francisco, speech recognition, Steve Wozniak, Steven Levy, systems thinking, TaskRabbit, tech worker, techlash, TED Talk, the High Line, Travis Kalanick, Uber and Lyft, Uber for X, uber lyft, universal basic income, urban planning, Wall-E, Watson beat the top human players on Jeopardy!, WeWork, WikiLeaks, women in the workforce, Y Combinator, Zimmermann PGP, éminence grise

That includes Max Whitney, Fred Benenson, Tom Igoe, Michelle Tepper, Saron Yitbarek, Katrina Owens, Cathy Pearl, Tim O’Reilly, Caroline Sinders, Heather Gold, Ian Bogost, Marie Hicks, Anil Dash, Robin Sloan, danah boyd, Bret Dawson, Evan Selinger, Gary Marcus, Gabriella Coleman, Greg Baugues, Holden Karau, Jessica Lam, Karla Starr, Mike Matas, Paul Ford, Ray Ozzie, Ross Goodwin, Scott Goodson, Zeynep Tufekci, Steve Silberman, Tim Omernick, Emily Pakulski, Darius Kazemi, Cyan Banister, Craig Silverman, Chris Coyier, Chet Murthy, Chad Folwer, Brendan Eich, Lauren McCarthy, Annette Bowman, Allison Parrish, Dan Sullivan, Grant Paul, Guido van Rossum, Jens Bergensten, Mark Otto, Mitch Altman, Peter Skomoroch, Jimoh Ovbiagele and all the hackers at Ross Intelligence, Rob Graham, Steve Klabnik, Rob Liguori, Adam D’Angelo, Belle Cooper, Dug Song, Kim Zetter, David Silva, Sam Lang, Ron Jeffries, Susan Tan, and John Reisig. This is a very incomplete list, alas, given the frailties of human memory.


pages: 1,606 words: 168,061

Python Cookbook by David Beazley, Brian K. Jones

don't repeat yourself, Firefox, Guido van Rossum, iterative process, p-value, SQL injection, web application

However, other than that, it’s usually never a bad idea to stick with a more simple approach (simply use methods with different names). Ideas concerning different ways to implement multiple dispatch have floated around the Python community for years. As a decent starting point for that discussion, see Guido van Rossum’s blog post “Five-Minute Multimethods in Python”. 9.21. Avoiding Repetitive Property Methods Problem You are writing classes where you are repeatedly having to define property methods that perform common tasks, such as type checking. You would like to simplify the code so there is not so much code repetition.


pages: 834 words: 180,700

The Architecture of Open Source Applications by Amy Brown, Greg Wilson

8-hour work day, anti-pattern, bioinformatics, business logic, c2.com, cloud computing, cognitive load, collaborative editing, combinatorial explosion, computer vision, continuous integration, Conway's law, create, read, update, delete, David Heinemeier Hansson, Debian, domain-specific language, Donald Knuth, en.wikipedia.org, fault tolerance, finite state, Firefox, Free Software Foundation, friendly fire, functional programming, Guido van Rossum, Ken Thompson, linked data, load shedding, locality of reference, loose coupling, Mars Rover, MITM: man-in-the-middle, MVC pattern, One Laptop per Child (OLPC), peer-to-peer, Perl 6, premature optimization, recommendation engine, revision control, Ruby on Rails, side project, Skype, slashdot, social web, speech recognition, the scientific method, The Wisdom of Crowds, web application, WebSocket

We were able to write down new PEPs with more confidence in what worked and what did not, and maybe it would have been impossible to do so differently. So it's all about detecting when some third-party tools are contributing innovations that are solving problems and that should ignite a PEP change. 14.6.2. A Package that Enters the Standard Library Has One Foot in the Grave I am paraphrasing Guido van Rossum in the section title, but that's one aspect of the batteries-included philosophy of Python that impacts a lot our efforts. Distutils is part of the standard library and Distutils2 will soon be. A package that's in the standard library is very hard to make evolve. There are of course deprecation processes, where you can kill or change an API after 2 minor versions of Python.


pages: 999 words: 194,942

Clojure Programming by Chas Emerick, Brian Carper, Christophe Grand

Amazon Web Services, Benoit Mandelbrot, cloud computing, cognitive load, continuous integration, database schema, domain-specific language, don't repeat yourself, drop ship, duck typing, en.wikipedia.org, failed state, finite state, Firefox, functional programming, game design, general-purpose programming language, Guido van Rossum, higher-order functions, Larry Wall, mandelbrot fractal, no silver bullet, Paul Graham, platform as a service, premature optimization, random walk, Ruby on Rails, Schrödinger's Cat, semantic web, software as a service, sorting algorithm, SQL injection, Turing complete, type inference, web application

If your organization starts using Clojure, it will have good company. * * * [437] The Eclipse Public License, which allows for free commercial use and redistribution: http://www.eclipse.org/legal/epl-v10.html. [438] In Clojure’s case, Rich Hickey, who has a role similar to Python’s Guido Van Rossum, Ruby’s Yukihiro Matsumoto, Perl’s Larry Wall, and C++’s Bjarne Stroustrup. [439] All recognized contributors are listed at http://clojure.org/contributing. [440] irc://irc.freenode.net/clojure or in your browser at http://webchat.freenode.net/?channels=#clojure. [441] One of us has run a community-wide survey for the past two years to gauge the origins, mood, and priorities of the Clojure community; full results of the last editing of that survey are available at http://cemerick.com/2011/07/11/results-of-the-2011-state-of-clojure-survey/.


pages: 643 words: 53,639

Rapid GUI Programming With Python and Qt by Mark Summerfield

Debian, duck typing, Guido van Rossum, loose coupling, MVC pattern, software patent, sorting algorithm, web application

He has been supportive of the book from the start, even adding features and improvements to PyQt as a direct result of discussions we have had regarding the book. He has made numerous suggestions for the book’s improvement, and corrected many mistakes and misunderstandings. Special thanks to Samuel Rolland, who let me loose on his Mac laptop, to install PyQt, test the examples, and take screenshots. Thanks are also due to Guido van Rossum, creator of Python, as well as to the wider Python community who have contributed so much to make Python, and especially its libraries, so useful and enjoyable to use. Thanks also to Trolltech, for developing and maintaining Qt, and in particular to the Trolltech developers both past and present, many of whom I have had the pleasure of working with, and who ensure that Qt is the best cross-platform GUI development framework in existence.


pages: 1,201 words: 233,519

Coders at Work by Peter Seibel

Ada Lovelace, Bill Atkinson, bioinformatics, Bletchley Park, Charles Babbage, cloud computing, Compatible Time-Sharing System, Conway's Game of Life, Dennis Ritchie, domain-specific language, don't repeat yourself, Donald Knuth, fallacies of distributed computing, fault tolerance, Fermat's Last Theorem, Firefox, Free Software Foundation, functional programming, George Gilder, glass ceiling, Guido van Rossum, history of Unix, HyperCard, industrial research laboratory, information retrieval, Ken Thompson, L Peter Deutsch, Larry Wall, loose coupling, Marc Andreessen, Menlo Park, Metcalfe's law, Multics, no silver bullet, Perl 6, premature optimization, publish or perish, random walk, revision control, Richard Stallman, rolodex, Ruby on Rails, Saturday Night Live, side project, slashdot, speech recognition, systems thinking, the scientific method, Therac-25, Turing complete, Turing machine, Turing test, type inference, Valgrind, web application

Then the launch process is the most formal of them all. Then, there is a checklist—it's very formal in terms of security issues. If we launch this, is someone going to be able to go in and do cross-site scripting to take over something else? That's fairly strict. Seibel: You told me once that when Guido van Rossum came here he had to get checked out on Python and Ken Thompson had to get checked out on C, to make sure they could meet very explicit coding standards. Do you have design standards that are equally explicit? Norvig: No. Some of the coding standards go into some design issues, but you get a lot more leeway there.


pages: 1,065 words: 229,099

Real World Haskell by Bryan O'Sullivan, John Goerzen, Donald Stewart, Donald Bruce Stewart

bash_history, database schema, Debian, distributed revision control, domain-specific language, duck typing, en.wikipedia.org, Firefox, functional programming, general-purpose programming language, Guido van Rossum, higher-order functions, job automation, Larry Wall, lateral thinking, level 1 cache, machine readable, p-value, panic early, plutocrats, revision control, sorting algorithm, SQL injection, transfer pricing, type inference, web application, Yochai Benkler

Indeed, functional programming as a field was quite obscure. During this time, the mainstream programming world experimented with relatively small tweaks, from programming in C, to C++, to Java. Meanwhile, on the fringes, programmers were beginning to tinker with new, more dynamic languages. Guido van Rossum designed Python; Larry Wall created Perl; and Yukihiro Matsumoto developed Ruby. As these newer languages began to seep into wider use, they spread some crucial ideas. The first was that programmers are not merely capable of working in expressive languages; in fact, they flourish. The second was in part a byproduct of the rapid growth in raw computing power of that era: it’s often smart to sacrifice some execution performance in exchange for a big increase in programmer productivity.


pages: 394 words: 110,352

The Art of Community: Building the New Age of Participation by Jono Bacon

barriers to entry, Benchmark Capital, Benevolent Dictator For Life (BDFL), collaborative editing, crowdsourcing, Debian, DevOps, digital divide, digital rights, do what you love, do-ocracy, en.wikipedia.org, Firefox, Free Software Foundation, game design, Guido van Rossum, Johann Wolfgang von Goethe, Jono Bacon, Kickstarter, Larry Wall, Mark Shuttleworth, Mark Zuckerberg, openstreetmap, Richard Stallman, side project, Silicon Valley, Skype, slashdot, social graph, software as a service, Stephen Fry, telemarketer, the long tail, union organizing, VA Linux, web application

Surely that can’t actually work! You would be surprised. There are many dictator-led communities that are popular and attract large numbers of people. Two very prominent technical examples of this are Linux and Python. Within these communities exist two highly visible leaders: Linus Torvalds and Guido van Rossum, respectively. Linus and Guido are the people who have traditionally decided on direction, set focus, and accepted or rejected contributions. In the Free Software world, one of the most notable cases of dictatorship was the choice of the third version of the GNU General Public License, perhaps the software license in most widespread use by Free Software projects (including Linux).


pages: 982 words: 221,145

Ajax: The Definitive Guide by Anthony T. Holdener

AltaVista, Amazon Web Services, business logic, business process, centre right, Citizen Lab, Colossal Cave Adventure, create, read, update, delete, database schema, David Heinemeier Hansson, en.wikipedia.org, Firefox, full text search, game design, general-purpose programming language, Guido van Rossum, information retrieval, loose coupling, machine readable, MVC pattern, Necker cube, p-value, Ruby on Rails, SimCity, slashdot, social bookmarking, sorting algorithm, SQL injection, Wayback Machine, web application

LAMP provides a stable, scalable, and cheap web platform for use with any Ajax web application. As the Web 2.0 movement grows with more Ajax web applications replacing the more classic sites, LAMP will be right there as well. Check out O’Reilly’s LAMP site, ONLamp.com, at http://www.onlamp.com/ for more on LAMP. Python Guido van Rossum created Python in 1990, not as a scripting language but as a general-purpose programming language. Python 2.1 came out in 2002 and is significant not just because it combined Python 1.6.1 and Python 2.0 into a single release, but because Python 2.1 was the first version of Python to fall under a new license owned by the Python Software Foundation.