Larry Wall

33 results back to index

Free as in Freedom by Sam Williams

Asperger Syndrome, cognitive dissonance, commoditize, Debian, Douglas Engelbart, East Village, Guido van Rossum, Hacker Ethic, informal economy, Isaac Newton, John Conway, John Markoff, Larry Wall, Marc Andreessen, Maui Hawaii, Murray Gell-Mann, profit motive, Richard Stallman, Silicon Valley, slashdot, software patent, Steven Levy, Ted Nelson, urban renewal, VA Linux, Y2K

Instead of viewing the license as a liability, Gilmore saw it as clear and concise expression of the hacker ethos. "Up until then, most licenses were very informal," Gilmore recalls. As an example of this informality, Gilmore cites a copyright notice for trn, a Unix utility. Written by Larry Wall, future creator of the Perl programming language, patch made it simple for Unix programmers to insert source-code fixes-" patches" in hacker jargon-into any large program. Recognizing the utility of this feature, Wall put the following copyright notice in the program's accompanying README file: Copyright (c) 1985, Larry Wall You may copy the trn kit in whole or in part as long as you don't try to make money off it, or pretend that you wrote it.See Trn Kit README. Such statements, while reflective of the hacker ethic, also reflected the difficulty of translating the loose, informal nature of that ethic into the rigid, legal language of copyright.

One of the audience members at the Linux Kongress was Tim O'Reilly, publisher of O'Reilly & Associates, a company specializing in software manuals and software-related books (and the publisher of this book). After hearing Raymond's Kongress speech, O'Reilly promptly invited Raymond to deliver it again at the company's inaugural Perl Conference later that year in Monterey, California. Although the conference was supposed to focus on Perl, a scripting language created by Unix hacker Larry Wall, O'Reilly assured Raymond that the conference would address other free software technologies. Given the growing commercial interest in Linux and Apache, a popular free software web server, O'Reilly hoped to use the event to publicize the role of free software in creating the entire infrastructure of the Internet. From web-friendly languages such as Perl and Python to back-room programs such as BIND (the Berkeley Internet Naming Daemon), a software tool that lets users replace arcane IP numbers with the easy-to-remember domain-name addresses (e.g.,, and sendmail, the most popular mail program on the Internet, free software had become an emergent phenomenon.

"We wanted to go out with a solidarity message," O'Reilly says. The term didn't take long to enter the national lexicon. Shortly after the summit, O'Reilly shepherded summit attendees to a press conference attended by reporters from the New York Times, the Wall Street Journal, and other prominent publications. Within a few months, Torvalds' face was appearing on the cover of Forbes magazine, with the faces of Stallman, Perl creator Larry Wall, and Apache team leader Brian Behlendorf featured in the interior spread. Open source was open for business. For summit attendees such as Tiemann, the solidarity message was the most important thing. Although his company had achieved a fair amount of success selling free software tools and services, he sensed the difficulty other programmers and entrepreneurs faced. "There's no question that the use of the word free was confusing in a lot of situations," Tiemann says.

pages: 561 words: 157,589

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

4chan, Affordable Care Act / Obamacare, Airbnb, Alvin Roth, Amazon Mechanical Turk, Amazon Web Services, artificial general intelligence, augmented reality, autonomous vehicles, barriers to entry, basic income, Bernie Madoff, Bernie Sanders, Bill Joy: nanobots, bitcoin, blockchain, Bretton Woods, Brewster Kahle, British Empire, business process, call centre, Capital in the Twenty-First Century by Thomas Piketty, Captain Sullenberger Hudson, Chuck Templeton: OpenTable:, Clayton Christensen, clean water, cloud computing, cognitive dissonance, collateralized debt obligation, commoditize, computer vision, corporate governance, corporate raider, creative destruction, crowdsourcing, Danny Hillis, data acquisition, deskilling, DevOps, Donald Davies, Donald Trump, Elon Musk,, Erik Brynjolfsson, Filter Bubble, Firefox, Flash crash, full employment, future of work, George Akerlof, gig economy, glass ceiling, Google Glasses, Gordon Gekko, gravity well, greed is good, Guido van Rossum, High speed trading, hiring and firing, Home mortgage interest deduction, Hyperloop, income inequality, 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 Maynard Keynes: Economic Possibilities for our Grandchildren, John Maynard Keynes: technological unemployment, Kevin Kelly, Khan Academy, Kickstarter, knowledge worker, Kodak vs Instagram, Lao Tzu, Larry Wall, Lean Startup, Leonard Kleinrock, Lyft, Marc Andreessen, Mark Zuckerberg, market fundamentalism, Marshall McLuhan, McMansion, microbiome, microservices, minimum viable product, mortgage tax deduction, move fast and break things, move fast and break things, Network effects, new economy, Nicholas Carr, obamacare, Oculus Rift, packet switching, PageRank, pattern recognition, Paul Buchheit, peer-to-peer, peer-to-peer model, Ponzi scheme, 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, 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, strong AI, TaskRabbit, telepresence, the built environment, 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, transaction costs, transcontinental railway, transportation-network company, Travis Kalanick, trickle-down economics, Uber and Lyft, Uber for X, uber lyft, ubercab, universal basic income, US Airways Flight 1549, VA Linux, 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

By contrast, I was convinced that the content itself was an essential part of the application, and that the dynamic nature of that content was leading to an entirely new architectural design pattern for a next stage beyond software, which at the time I called “infoware.” Where Eric was focused on the success of the Linux operating system, and saw it as an alternative to Microsoft Windows, I was particularly fascinated by the success of the Perl programming language in enabling this new paradigm on the web. Perl was originally created by Larry Wall in 1987 and distributed for free over early computer networks. I had published Larry’s book, Programming Perl, in 1991, and was preparing to launch the Perl Conference in the summer of 1997. I had been inspired to start the Perl Conference by the chance conjunction of comments by two friends. Early in 1997, Carla Bayha, the computer book buyer at the Borders bookstore chain, had told me that the second edition of Programming Perl, published in 1996, was one of the top 100 books in any category at Borders that year.

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).

The X Window System had been started in 1984, and by the time I encountered it in 1987, it was becoming the standard window system for Unix and Linux, adopted and adapted by virtually every vendor. My company developed a series of programming manuals for X that used the MIT specifications as a base, rewriting and expanding them, and then licensed them to companies shipping new Unix and X-based systems. Bob encouraged me. “That’s exactly what we want companies to do,” he said. “We’re laying a foundation, and we want everyone to build on it.” Larry Wall, creator of Perl, was another of my mentors in how to think about free software. When I asked him why he had made Perl free software, he explained that he had gotten so much value from the work of others that he felt an obligation to give something back. Larry also quoted to me a variation of Stewart Brand’s classic observation, saying, “Information doesn’t want to be free. Information wants to be valuable.”

pages: 525 words: 149,886

Higher-Order Perl: A Guide to Program Transformation by Mark Jason Dominus

always be closing, Defenestration of Prague, Donald Knuth, Isaac Newton, Larry Wall, P = NP, Paul Graham, Perl 6, slashdot, SpamAssassin

We could be doing a lot better, using Perl in ways undreamt of by C programmers, but we’re not. How did this happen? Perl was originally designed as a replacement for C on the one hand and Unix scripting languages like Bourne Shell and awk on the other. Perl’s first major proponents were Unix system administrators, people familiar with C and with Unix scripting languages; they naturally tended to write Perl programs that resembled C and awk programs. Perl’s inventor, Larry Wall, came from this sysadmin community, as did Randal Schwartz, his coauthor on Programming Perl, the first and still the most important Perl reference work. Other important early contributors include Tom Christiansen, also a C-and-Unix expert from way back. Even when Perl programmers didn’t come from the Unix sysadmin community, they were trained by people who did, or by people who were trained by people who did.

Lisp programmers have been using these features since 1957. They know a lot about how to use these language features in powerful ways. If Perl programmers can find out the things that Lisp programmers already know, they will learn a lot of things that will make their Perl programming jobs easier. This is easier said than done. Hardly anyone wants to listen to Lisp programmers. Perl folks have a deep suspicion of Lisp, as demonstrated by Larry Wall’s famous remark that Lisp has all the visual appeal of oatmeal with fingernail clippings mixed in. Lisp programmers go around making funny noises like ‘cons’ and ‘cooder,’ and they talk about things like the PC loser-ing problem, whatever that is. They believe that Lisp is better than other programming languages, and they say so, which is irritating. But now it is all okay, because now you do not have to listen to the Lisp folks.

The constraint system drawing program of Chapter 9 was a big project, and I was stuck on it for a long time. Without the timely assistance of Wm Leler, I might still be stuck. Tom Christiansen, Jon Orwant, and Nat Torkington played essential and irreplaceable roles in integrating me into the Perl community. Finally, the list of things “without which this book could not have been written” cannot be complete without thanking Larry Wall for writing Perl and for founding the Perl community, without which this book could not have been written. 1. Recursion and Callbacks The first “advanced” technique we’ll see is recursion. Recursion is a method of solving a problem by reducing it to a simpler problem of the same type. Unlike most of the techniques in this book, recursion is already well known and widely understood. But it will underlie several of the later techniques, and so we need to have a good understanding of its fine points. 1.1 Decimal to Binary Conversion Until the release of Perl 5.6.0, there was no good way to generate a binary numeral in Perl.

pages: 612 words: 187,431

The Art of UNIX Programming by Eric S. Raymond

A Pattern Language, Albert Einstein, barriers to entry, bioinformatics, Clayton Christensen, combinatorial explosion, commoditize, correlation coefficient, David Brooks, Debian, domain-specific language, don't repeat yourself, Donald Knuth, Everything should be made as simple as possible, facts on the ground, finite state, general-purpose programming language, George Santayana, Innovator's Dilemma, job automation, Larry Wall, MVC pattern, pattern recognition, Paul Graham, peer-to-peer, premature optimization, pre–internet, publish or perish, revision control, RFC: Request For Comment, Richard Stallman, Robert Metcalfe, Steven Levy, transaction costs, Turing complete, Valgrind, wage slave, web application

The longhairs, repeating a theme from Unix's early days ten years before, liked to see themselves as rebels against a corporate empire; one of the small companies put out a poster showing an X-wing-like space fighter marked “BSD” speeding away from a huge AT&T ‘death star’ logo left broken and in flames. Thus we fiddled while Rome burned. But something else happened in the year of the AT&T divestiture that would have more long-term importance for Unix. A programmer/linguist named Larry Wall quietly invented the patch(1) utility. The patch program, a simple tool that applies changebars generated by diff(1) to a base file, meant that Unix developers could cooperate by passing around patch sets — incremental changes to code — rather than entire code files. This was important not only because patches are less bulky than full files, but because patches would often apply cleanly even if much of the base file had changed since the patch-sender fetched his copy.

This was followed in 1985 by the POSIX standards, an effort backed by the IEEE. These described the intersection set of the BSD and SVR3 (System V Release 3) calls, with the superior Berkeley signal handling and job control but with SVR3 terminal control. All later Unix standards would incorporate POSIX at their core, and later Unixes would adhere to it closely. The only major addition to the modern Unix kernel API to come afterwards was BSD sockets. In 1986 Larry Wall, previously the inventor of patch(1), began work on Perl, which would become the first and most widely used of the open-source scripting languages. In early 1987 the first version of the GNU C compiler appeared, and by the end of 1987 the core of the GNU toolset was falling into place: editor, compiler, debugger, and other basic development tools. Meanwhile, the X windowing system was beginning to show up on relatively inexpensive workstations.

Matters were not helped when, in 1992–1994, the Computer Science Research Group at Berkeley shut down; afterwards, factional warfare within the BSD community split it into three competing development efforts. As a result, the BSD lineage lagged behind Linux at a crucial time and lost to it the lead position in the Unix community. The Linux and BSD development efforts were native to the Internet in a way previous Unixes had not been. They relied on distributed development and Larry Wall's patch(1) tool, and recruited developers via email and through Usenet newsgroups. Accordingly, they got a tremendous boost when Internet Service Provider businesses began to proliferate in 1993, enabled by changes in telecomm technology and the privatization of the Internet backbone that are outside the scope of this history. The demand for cheap Internet was created by something else: the 1991 invention of the World Wide Web.

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 process, cellular automata, cloud computing, commoditize, complexity theory, conceptual framework, continuous integration, data acquisition, domain-specific language, Douglas Hofstadter, Fellow of the Royal Society, finite state, Firefox, follow your passion, Frank Gehry, general-purpose programming language, Guido van Rossum, HyperCard, information retrieval, iterative process, John von Neumann, Larry Wall, linear programming, loose coupling, Mars Rover, millennium bug, NP-complete, Paul Graham, performance metric, Perl 6, QWERTY keyboard, RAND corporation, randomized controlled trial, Renaissance Technologies, Ruby on Rails, Sapir-Whorf hypothesis, Silicon Valley, slashdot, software as a service, software patent, sorting algorithm, Steve Jobs, traveling salesman, Turing complete, type inference, Valgrind, Von Neumann architecture, web application

Perl Perl fans call it the “Pathologically Eclectic Rubbish Lister” and the “Swiss-Army Chainsaw”, flaunting the motto, “There’s More Than One Way to Do It!” Creator Larry Wall sometimes describes it as a kind of glue language, originally intended as a sweet spot between the Unix shell and C to help people get things done. It incorporates linguistic principles and design decisions from Unix (and sports perhaps the largest repository of libraries of any language in the CPAN). Many programmers anxiously await the long-developed revision of Perl 6, a language designed to last at least 20 years. The Language of Revolutions How do you define Perl? Larry Wall: Perl is an ongoing experiment in how best to incorporate some of the principles of natural language into computer language, not at a shallow syntactic level like COBOL, but at a much deeper pragmatic level.

Chapter 8, Haskell, interviews Simon Peyton Jones, Paul Hudak, Philip Wadler, and John Hughes. Chapter 9, ML, interviews Robin Milner. Chapter 10, SQL, interviews Don Chamberlin. Chapter 11, Objective-C, interviews Tom Love and Brad Cox. Chapter 12, Java, interviews James Gosling. Chapter 13, C#, interviews Anders Hejlsberg. Chapter 14, UML, interviews Ivar Jacobson, James Rumbaugh, and Grady Booch. Chapter 15, Perl, interviews Larry Wall. Chapter 16, PostScript, interviews Charles Geschke and John Warnock. Chapter 17, Eiffel, interviews Bertrand Meyer. Contributors lists the biographies of all the contributors. Conventions Used in This Book The following typographical conventions are used in this book: Italic Indicates new terms, URLs, filenames, and utilities. Constant width Indicates the contents of computer files and generally anything found in programs.

Al: I think there’s a connection. Certainly in the early days of Unix, pipes facilitated function composition on the command line. You could take an input, perform some transformation on it, and then pipe the output into another program. This provided a very powerful way of quickly creating new functionality with simple compositions of programs. People started thinking how to solve problems along these lines. Larry Wall’s language Perl, which I think of as a descendant of AWK and other Unix tools, combined many aspects of this kind of program composition into a single language. When you say “function composition,” that brings to mind the mathematical approach of function composition. Al: That’s exactly what I mean. Was that mathematical formalism in mind at the invention of the pipe, or was that a metaphor added later when someone realized it worked the same way?

Speaking Code: Coding as Aesthetic and Political Expression by Geoff Cox, Alex McLean

4chan, Amazon Mechanical Turk, augmented reality, bash_history, bitcoin, cloud computing, computer age, computer vision, crowdsourcing, dematerialisation, Donald Knuth, Douglas Hofstadter,, Everything should be made as simple as possible, finite state, Gödel, Escher, Bach, Jacques de Vaucanson, Larry Wall, late capitalism, means of production, natural language processing, new economy, Norbert Wiener, Occupy movement, packet switching, peer-to-peer, Richard Stallman, Ronald Coase, Slavoj Žižek, social software, social web, software studies, speech recognition, stem cell, Stewart Brand, The Nature of the Firm, Turing machine, Turing test, Vilfredo Pareto, We are Anonymous. We are Legion, We are the 99%, WikiLeaks

CREATE OR REPLACE PROCEDURE update_tragedies (warcrim_ids IN name_varray, num_victims IN number_varray) IS BEGIN 24 Chapter 1 FOR indx IN warcrim_ids.FIRST .. warcrim_ids.LAST LOOP UPDATE war_criminal SET victim_count = num_victims (indx) WHERE war_criminal_id = warcrim_ids (indx); END LOOP; END;25 This demonstrates the effectiveness of secondary notation, but as Oracle is used primarily in large-scale businesses, including much of the global financial infrastructure, Feuerstein’s examples of excessive CEO compensation, union busting, and war crimes in a mainstream published book about technology were met with an outcry.26 A similar approach to combining technical and political commentary can be seen in the following extract from Harwood’s Perl Routines to Manipulate London, porting William Blake’s poem “London” (of 1792) into the Perl programming language.27 In both the original version and the adaptation, statistics and the modulation of populations are used for social comment: local @SocialClasses = qw( RentBoy YoungGirl-Syphalitic-Inoculator CrackKid WarBeatenKid ForcedFeatalAbortion ); The interpreter will instead “perceive” an abstract, tokenized version, somewhat like: t_local @v1 = [t1, t2, t3, t4, t5] Much of the meaning of the program and how it might be understood is simply ignored by the computer. The program may extract the original text “RentBoy” from the pointer “t1,” but the context of the container name “SocialClasses” will have been lost, and the program itself will have no notion of what the word “RentBoy” means. In terms of the literate application of the programming language Perl (developed by Larry Wall in 1987), Harwood is extending an established aesthetic practice referred to as “Perl poetry,” the practice of writing poems that can be compiled as Perl code, made possible by the semantic qualities of Perl. Wall was emphasizing the point that code has expressive qualities, and the need for programmers to “express both their emotional and technical natures simultaneously.”28 The technique is effective as it manages to combine both primary and secondary notation, both syntactical and semantic registers, and the tension between human and machine interpretation is made painfully evident (so much so that you might imagine yourself to hear the screams). local %InfantsScreamInFear; # WoeOfEveryMan is the main method for constructing the # InfantScreamInFear structure: # If we find that say that the hash %{RentBoy} is defined # with values then we add this to the hash %{InfantScreamInFear} Vocable Code 25 sub WoeOfEveryMan foreach my $Class (@SocialClasses){ warn "New class = $Class\n"; $InfantsScreamInFear->{Class} = %{$Class} if {Class}; } } # # # # In every cry of every Man, In every Infants cry of fear, In every voice: in every ban, The mind-forg'd manacles I hear The interplay of the body of the code, the programmer’s comments, and the human-machine reader express how hardware and software, text and code, are “embodied.”

Instead of HR and order entry, I talked about excessive CEO compensation, union busting, war crimes— all sorts of truly inspiring examples. Hmmm. Anyway, lots of people liked it, lots of people hated.” (Available at -politics.) 27. Harwood, in XXXXX (Berlin and London: Openmute Press, 2006), 120–127. Note that Harwood is the preferred name of the artist Graham Harwood. 28. Larry Wall, “Perl Culture,” in Programming Perl (Sebastopol, CA: O’Reilly, 2001); available at Also see Geoff Cox and Adrian Ward, “Perl,” in Matthew Fuller, ed., Software Studies: A Lexicon (Cambridge, MA: MIT Press, 2008). 29. Hayles, Writing Machines, 107. 30. N. Katherine Hayles, My Mother Was a Computer (Chicago: University of Chicago Press, 2005), 56. 31.

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, Benevolent Dictator For Life (BDFL), Berlin Wall,, call centre, collaborative editing, conceptual framework, continuous integration, Donald Knuth, Douglas Engelbart, Douglas Engelbart, Douglas Hofstadter, Dynabook,, Firefox, Ford paid five dollars a day, Francis Fukuyama: the end of history, George Santayana, Grace Hopper, Guido van Rossum, Gödel, Escher, Bach, Howard Rheingold, HyperCard, index card, Internet Archive, inventory management, Jaron Lanier, John Markoff, John von Neumann, knowledge worker, Larry Wall, life extension, Loma Prieta earthquake, Menlo Park, Merlin Mann, Mitch Kapor, new economy, Nicholas Carr, Norbert Wiener, pattern recognition, Paul Graham, Potemkin village, RAND corporation, Ray Kurzweil, Richard Stallman, Ronald Reagan, Ruby on Rails, 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, Ted Nelson, Therac-25, thinkpad, Turing test, VA Linux, Vannevar Bush, Vernor Vinge, web application, Whole Earth Catalog, Y2K

The spirit of the Monty Python fan slips into his conversation only rarely, as when he introduces himself to an audience of programmers with a biographical slide that reads: Age 4: First Lego kit Age 10: first electronics kit Age 18: first computer program (on punched cards) Age 21: First girlfriend:-) Just as dogs often come to resemble their owners, it seems that programming languages end up reflecting the temperaments and personalities of their creators in some subtle ways. For instance, Larry Wall, the linguist who is the father of Perl, is a droll spirit enamored of verbal and visual puns. At a conclave for open source programmers in 2004, delivering an annual review of new Perl developments, he found a way to connect a meditation on the mutating visual geometries of screensavers with an account of his recent battle with a stomach tumor, then tied it all together with a vision of the community of Perl programmers “performing random acts of beauty for each other.”

“hand to hand combat with the machine”: Backus’s phrase is quoted in Steve Lohr, Go To: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Maverick Scientists and Iconoclasts—the Programmers Who Created the Software Revolution (Basic, 2001), p. 13. Moore’s Law is outlined at Intel’s Web site: Quotations from Guido van Rossum are from a talk given February 17, 2005, at the Software Development Forum in Palo Alto, California. Audio is available at Larry Wall’s talk was at the O’Reilly Open Source Conference, Portland, Oregon, July 2004. Text is available at one observer’s characterization: The observer is Danny O’Brien in his NTK newsletter from August 6, 2004, at “I spent a few weeks trying”: Benjamin Pierce in a June 2001 message on a private mailing list; full quote confirmed in email to author.

name=News&file=article&sid=145 and can be found via the Internet Archive’s Wayback Machine at CHAPTER 7 DETAIL VIEW Simple things should be simple: This quotation is widely attributed to Alan Kay. I have been unable to trace its original source. It is also occasionally attributed to Larry Wall. Clay Shirky wrote about Christopher Alexander’s “A City Is Not a Tree” in the Many to Many blog on April 26, 2004, at city_is_not_a_tree.php. Alexander’s article was originally published in Architectural Forum, April–May 1965. It is available online at index.cfm. The story of Donn Denman and the cancellation of MacBasic is at, at

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, Debian, DevOps, don't repeat yourself,, Firefox, Guido van Rossum, Internet Archive, Larry Wall, microservices, Perl 6, premature optimization, pull request, Richard Stallman, risk tolerance, Turing machine

Some projects want you to ask on the mailing list. Others in the issue tracker. Still others in the chatroom or by some other mechanism. Make sure to review the CONTRIBUTING file to verify the correct way to ask questions for that project. Drop the attitude. Even if you’ve contributed to other projects before, even if you’ve been in software development for thirty years, even if you’re Linus Torvalds[92], Larry Wall[93], and Tim Berners-Lee[94] all rolled into one: Get over yourself. It’s entirely possible to phrase a question that is confident and competent yet does not make you sound like an arrogant twit. For instance, when asking about a programming optimization, rather than pointing out that you have a PhD in computer science and have been programming in that language for twelve years (information which is irrelevant to the suggestion at hand), simply state the problem you’ve noticed, how the code could be improved, and ask whether anyone would have a problem with you making the change.

Use this chapter as a guideline, but always follow the established communication norms for the project. Now that you know how to communicate with others in a FOSS community, it’s time to get to know them, and what better way to do that than getting together in person? Footnotes [92]; The inventor of Linux. [93]; The inventor of rn, patch, Perl, and Perl 6. [94]; The inventor of the World Wide Web. [95] [96] [97] Copyright © 2018, The Pragmatic Bookshelf. Chapter 8 It’s About the People By now you’ve noticed a large part of the book is dedicated to methods and tips for interacting with others.

pages: 786 words: 195,810

NeuroTribes: The Legacy of Autism and the Future of Neurodiversity by Steve Silberman

Albert Einstein, animal electricity, Asperger Syndrome, assortative mating, crowdsourcing, Douglas Engelbart,, epigenetics, experimental subject, Golden Gate Park, Haight Ashbury, hypertext link, IBM and the Holocaust, index card, Isaac Newton, John Markoff, Kickstarter, Larry Wall, megacity, meta analysis, meta-analysis, Mother of all demos, neurotypical, New Journalism, pattern recognition, placebo effect, scientific mainstream, side project, Silicon Valley, Simon Singh, Skype, slashdot, Stephen Hawking, Steve Jobs, Steve Wozniak, Steven Levy, Stewart Brand, the scientific method, twin studies, union organizing, Whole Earth Catalog, women in the workforce, Yom Kippur War

Introduction: Beyond the Geek Syndrome There is more than one way to do it. —LARRY WALL On a bright May morning in 2000, I was standing on the deck of a ship churning toward Alaska’s Inside Passage with more than a hundred computer programmers. The glittering towers of Vancouver receded behind us as we slipped under the Lions Gate Bridge heading out to the Salish Sea. The occasion was the first “Geek Cruise”—an entrepreneur’s bid to replace technology conferences in lifeless convention centers with oceangoing trips to exotic destinations. I booked passage on the ship, a Holland America liner called the Volendam, to cover the maiden voyage for Wired magazine. Of the many legendary coders on board, the uncontested geek star was Larry Wall, creator of Perl, one of the first and most widely used open-source programming languages in the world.

INTRODUCTION: BEYOND THE GEEK SYNDROME to cover the maiden voyage for Wired magazine: “Scripting on the Lido Deck,” Steve Silberman. Wired, 8.10, Oct. 2000. “Swiss Army chainsaw”: “Beginner’s Introduction to Perl,” Doug Sheppard., 2000. he derived it from the parable of the “pearl of great price”: Larry Wall, interview with the author, 2000. laziness, impatience, and hubris: Programming Perl, Larry Wall, Jon Orwant, and Tom Christiansen. O’Reilly Media, 3rd ed., 2000, p. xix. she helped Vint Cerf develop the TCP/IP protocols: Closing the Innovation Gap: Reigniting the Spark of Creativity in a Global Economy, Judy Estrin. McGraw-Hill, 2008. “No two people with autism are the same”: An Anthropologist on Mars, Oliver Sacks. Knopf, 1995. more likely to be engineers: “Is There a Link between Engineering and Autism?”

pages: 499 words: 144,278

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

2013 Report for America's Infrastructure - American Society of Civil Engineers - 19 March 2013, 4chan, 8-hour work day, Ada Lovelace, AI winter, Airbnb, Amazon Web Services, Asperger Syndrome, augmented reality, Ayatollah Khomeini, barriers to entry, basic income, Bernie Sanders, bitcoin, blockchain, blue-collar work, Brewster Kahle, Brian Krebs, Broken windows theory, call centre, cellular automata, Chelsea Manning, clean water, cloud computing, cognitive dissonance, computer vision, Conway's Game of Life, crowdsourcing, cryptocurrency, Danny Hillis, David Heinemeier Hansson, don't be evil, don't repeat yourself, Donald Trump, dumpster diving, Edward Snowden, Elon Musk, Erik Brynjolfsson, Ernest Rutherford, Ethereum, ethereum blockchain, Firefox, Frederick Winslow Taylor, game design, glass ceiling, Golden Gate Park, Google Hangouts, Google X / Alphabet X, Grace Hopper, Guido van Rossum, Hacker Ethic, HyperCard, illegal immigration, ImageNet competition, Internet Archive, Internet of things, Jane Jacobs, John Markoff, Jony Ive, Julian Assange, Kickstarter, Larry Wall, lone genius, Lyft, Marc Andreessen, Mark Shuttleworth, Mark Zuckerberg, Menlo Park, microservices, Minecraft, move fast and break things, move fast and break things, Nate Silver, Network effects, neurotypical, Nicholas Carr, Oculus Rift, PageRank, 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, 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, TaskRabbit, 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!, WikiLeaks, women in the workforce, Y Combinator, Zimmermann PGP, éminence grise

This harmonic resonance between magic and code is why teenaged nerd programmers of the early ’80s hybridized so fluently with Dungeons & Dragons (a game that merged fantasy with probabilistic dice-rolling math), or the spell-uttering wizards of Tolkien’s epics. In the ’60s, when programmers invented a type of code that would constantly run in the background, they called it a “daemon.” When he created the computer language Perl, Larry Wall, the computer scientist, included a function called “Bless.” As the coder Danny Hillis once noted, “A few hundred years ago in my native New England, an accurate description of my occupation would have gotten me burned at the stake.” This sense of magical control can be intoxicating and fun; it lends itself frequently to a sort of starry-eyed idealism. And it can also lead, particularly in younger coders—who’ve yet to be humbled by life and their own screw-ups—to some epic hubris.

Humans are inherently pretty lazy; as Nicholas Carr notes in The Glass Cage, when someone offers us the ability to take a shortcut, we take it. We only discover later that we may have traded off an ingrained skill—or, in the case of calculus, never learned it in the first place. But it’s incredibly hard to resist because we’re constantly given new tools from programmers who’ve figured out how to remove friction from daily life. Larry Wall, the famous coder and linguist who created the Perl programming language, deeply intuited this coderly aversion to repetition. In his book on Perl, he and his coauthors wrote that one of the key virtues of a programmer is “laziness.” It’s not that you’re too lazy for coding. It’s that you’re too lazy to do routine things, so it inspires you to automate them. This, as they noted, is the quality that makes you go to great effort to reduce overall energy expenditure.

Greek word for “time”: Kah Seng Tay, “What Is the Etymology of ‘Cron’?,” Quora, December 22, 2015, accessed August 18, 2018, do it over and over: Peter Seibel, Coders at Work: Reflections on the Craft of Programming (New York: Apress, 2009), 77. we take it: Nicholas Carr, The Glass Cage (New York: W. W. Norton, 2014). “so many questions about it”: Tom Christiansen, Brian D. Foy, Larry Wall, and Jon Orwant, Programming Perl: Unmatched Power for Text Processing and Scripting (Sebastapol, CA: O’Reilly Media, 2012), 387, 1062. “when are you free?”: “As a programmer, what tasks have you automated to make your everyday life easier? How can one expect to improve life through automated programming?,” Quora, June 4, 2017, accessed August 18, 2018,

The Manager’s Path by Camille Fournier

failed state, fear of failure, hiring and firing, hive mind, interchangeable parts, job automation, Larry Wall, microservices, pull request, risk tolerance, Schrödinger's Cat, side project, Steve Jobs, WebSocket

In the case where the goals are fuzzy and the mission is unclear, do your best to understand the company culture and think about how you can set your teams up to work well within that culture. By collaborating across teams and across business functions, your teams will come to understand the bigger picture and appreciate their mission as part of that picture. The Virtues of Laziness and Impatience I love Larry Wall’s idea that “laziness, impatience, and hubris” are virtues of engineers, as he articulated in Programming Perl.3 These virtues persist into leadership, and learning how to channel these traits into advantages is something I encourage all managers to do. As a manager, when you are dealing with people one-on-one you probably don’t want to be impatient, of course. Impatience can be rude if it’s directed at individuals.

What is the value in automation if you don’t use it to make your job easier? We engineers automate so that we can focus on the fun stuff—and the fun stuff is the work that uses most of your brain, and it’s not usually something you can do for hours and hours, day after day. So be impatient to figure out the nut of what’s important. As a leader, any time you see something being done that feels inefficient, question it: Why does 3 Tom Christiansen, brian d foy, Larry Wall, and Jon Orwant, Programming Perl, 4th edition (Sebastopol, CA: O’Reilly, 2012). 122 | THE MANAGER’S PATH this feel inefficient to me? What is the value in the thing we are doing? Can we deliver that value faster? Can we strip down this project into something simpler and get it done more quickly? The problem with this line of questioning is that often when managers ask whether something can be done faster, what they explicitly or implicitly want to know is whether the team can work harder or longer hours to deliver it in fewer days.

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,, Firefox, fudge factor, general-purpose programming language, Guido van Rossum, Larry Wall, MVC pattern, Paul Graham, Perl 6, premature optimization, union organizing, web application

Perl Perl is known by its mantra TMTOWTDI, and it is an extremely flexible and utilitarian language—one that has certainly had an impact on both Ruby and programming, in general. TMTOWTDI stands for There’s More Than One Way To Do It, which is a design philosophy that Perl certainly exemplifies. Its role in stressing the importance of regular expressions is enough to earn it a place in history. Perl was invented in 1987 by Larry Wall, and it was primarily intended to perform a role similar to that of Unix-centric languages like shell, awk, and sed. Perl focuses on ease of use for tasks like Unix system administration, and it is heavily used for web applications, as well. Perl’s initial design was procedural, but in recent years it has moved in an increasingly functional direction. It can also be used for object-oriented programming, a task for which it was never intended and for which it is not ideally suited—but the fact that this is even possible in Perl is a testament to its flexibility.

PHP PHP is another interpreted language using weak dynamic typing that is very popular for web applications. In fact, some people erroneously believe that PHP is only usable for web applications. It is technically a complete, generalpurpose programming language, although it has several features that make it 4 Critics contend that this feature makes Lisp a more appropriate acronym for Lots of Irritating Superfluous Parentheses. Larry Wall, the creator of Perl, suggested that Lisp code has all the aesthetic appeal of “oatmeal with toenail clippings.” Clearly, Lisp has some public relations problems. 5 Relatedly, Philip Greenspun’s tenth Rule of Programming at research is “Any sufficiently complicated C or Fortran program contains an ad-hoc, informallyspecified bug-ridden slow implementation of half of Common Lisp.” 6 264 A pp en dix This quote also comes from Paul Graham’s website,

pages: 706 words: 120,784

The Joy of Clojure by Michael Fogus, Chris Houser

cloud computing, domain-specific language, Donald Knuth, Douglas Hofstadter,, finite state, Gödel, Escher, Bach, haute couture, Larry Wall, Paul Graham, rolodex, traveling salesman

Ritchie, The C Programming Language (Englewood Cliffs, NJ: Prentice Hall, 1988). 1972 Prolog Alain Colmerauer Ivan Bratko, PROLOG: Programming for Artificial Intelligence (New York: Addison-Wesley, 2000). 1975 Scheme Guy Steele and Gerald Sussman Guy Steele and Gerald Sussman, the “Lambda Papers,” 1983 C++ Bjarne Stroustrup Bjarne Stroustrup, The Design and Evolution of C++ (Reading, MA: Addison-Wesley, 1994). 1986 Erlang Telefonaktiebolaget L. M. Ericsson Joe Armstrong, “A History of Erlang,” Proceedings of the Third ACM SIGPLAN Conference on History of Programming Languages (2007). 1987 Perl Larry Wall Larry Wall, Tom Christiansen, and Jon Orwant, Programming Perl (Cambridge, MA: O’Reilly, 2000). 1990 Haskell Simon Peyton Jones Miran Lipovača, “Learn You a Haskell for Great Good!” 1995 Java Sun Microsystems David Bank, “The Java Saga,” Wired 3.12 (1995). 2007 Clojure? Rich Hickey You’re reading it. Like them or not, there’s little dispute that the listed programming languages have greatly influenced the way that software is constructed.

pages: 754 words: 48,930

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

domain-specific language, Guido van Rossum, Larry Wall, Silicon Valley, sorting algorithm, type inference, web application

Thus, you could pass a List[Person] to orderedMergeSort, because Person mixes in Ordered. 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: 241 words: 43,073

Puppet 3 Beginner's Guide by John Arundel

cloud computing, Debian, DevOps, job automation, job satisfaction, Lao Tzu, Larry Wall, Network effects, SpamAssassin

Mayekar Project Coordinator Anugya Khurana Proofreader Lawrence A. Herman Indexer Monica Ajmera Mehta Graphics Ronak Dhruv Aditi Gajjar Production Coordinator Melwyn D'sa Cover Work Melwyn D'sa About the Author John Arundel is an infrastructure consultant who helps people make their computer systems more reliable, useful, and cost-effective and has fun doing it. He has what Larry Wall describes as the three great virtues of a programmer: laziness, impatience, and hubris. Laziness, because he doesn't like doing work that a computer could do instead. Impatience, because he wants to get stuff done right away. Hubris, because he likes building systems that are as good as he can make them. He was formerly a senior operations engineer at global telco Verizon, designing resilient, high-performance infrastructures for corporations such as Ford, McDonald's, and Bank of America.

pages: 1,201 words: 233,519

Coders at Work by Peter Seibel

Ada Lovelace, bioinformatics, cloud computing, Conway's Game of Life, domain-specific language, don't repeat yourself, Donald Knuth, fault tolerance, Fermat's Last Theorem, Firefox, George Gilder, glass ceiling, Guido van Rossum, HyperCard, information retrieval, Larry Wall, loose coupling, Marc Andreessen, Menlo Park, Metcalfe's law, 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, the scientific method, Therac-25, Turing complete, Turing machine, Turing test, type inference, Valgrind, web application

But the things that aren't done infix; the common ones, being loops and conditionals, are not prefix. They're done by alternating keywords and what it is they apply to. In that respect they are actually more verbose than Lisp. But that brings me to the other half, the other reason why I like Python syntax better, which is that Lisp is lexically pretty monotonous. Seibel: I think Larry Wall described it as a bowl of oatmeal with fingernail clippings in it. Deutsch: Well, my description of Perl is something that looks like it came out of the wrong end of a dog. I think Larry Wall has a lot of nerve talking about language design—Perl is an abomination as a language. But let's not go there. If you look at a piece of Lisp code, in order to extract its meaning there are two things that you have to do that you don't have to do in a language like Python. First you have to filter out all those damn parentheses.

We're working with Andreas Gal and he gets these papers rejected because they're too practical. Of course, we need researchers who are inclined that way, but we also need programmers who do research. We need to have the programming discipline not be just this sort of blue-collar thing that's cut off from the people in the ivory towers. Seibel: How do you feel about proofs? Eich: Proofs are hard. Most people are lazy. Larry Wall is right. Laziness should be a virtue. So that's why I prefer automation. Proofs are something that academics love and most programmers hate. Writing assertions can be useful. In spite of bad assertions that should've been warnings, we've had more good assertions over time in Mozilla. From that we've had some illumination on what the invariants are that you'd like to express in some dream type system.

pages: 274 words: 58,675

Puppet 3 Cookbook by John Arundel

Amazon Web Services, cloud computing, continuous integration, Debian, defense in depth, DevOps, don't repeat yourself, GnuPG, Larry Wall, place-making, Ruby on Rails, web application

Run the following command: ubuntu@cookbook:~/puppet$ rake add_check ln -s /home/ubuntu/puppet/hooks/ /home/ubuntu/puppet/.git/hooks/pre-commit Puppet syntax check hook added 31 Puppet Infrastructure How it works… The script will prevent you from committing any files with syntax errors: ubuntu@cookbook:~/puppet$ git commit -m "test commit" Error: Could not parse for environment production: Syntax error at '}' at line 3 Error: Try 'puppet help parser validate' for usage manifests/nodes.pp: Error: 1 syntax errors found, aborting commit. If you add the hooks directory to your Git repo, anyone who has a checkout can run the rake add_check task and get this syntax checking behavior. 32 2 Puppet Language and Style Computer language design is just like a stroll in the park. Jurassic Park, that is. —Larry Wall In this chapter we will cover: ff Using community Puppet style ff Checking your manifests with puppet-lint ff Using modules ff Using standard naming conventions ff Using inline templates ff Iterating over multiple items ff Writing powerful conditional statements ff Using regular expressions in if statements ff Using selectors and case statements ff Using the in operator ff Using regular expression substitutions Puppet Language and Style Introduction In this chapter you'll learn to write elegant Puppet manifests.

pages: 224 words: 48,804

The Productive Programmer by Neal Ford

anti-pattern, business process,, continuous integration, database schema, domain-specific language, don't repeat yourself, Firefox, general-purpose programming language, knowledge worker, Larry Wall, Ruby on Rails, side project, type inference, web application, William of Occam

At the time I credited my increased productivity to the acceleration I experienced using the bash shell, but it was more than that—it was my increasing familiarity with that tool as I stopped having to struggle to do things and could just get them done. We spent some time discussing that hyperproductivity and how to bottle it. Several years, untold conversations, and a series of lectures later, Neal has produced a definitive work on the subject. In his book Programming Perl (O’Reilly), Larry Wall describes the three virtues of a programmer as “laziness, impatience, and hubris.” Laziness, because you will expend effort to reduce the amount of overall work necessary. Impatience, because it will anger you if you are wasting time doing something the computer could do faster for you. And hubris, because excessive pride will make you write programs that other people won’t say bad things about.

pages: 292 words: 81,699

More Joel on Software by Joel Spolsky

a long time ago in a galaxy far, far away, barriers to entry, Black Swan, Build a better mousetrap, business process, call centre, Danny Hillis, David Heinemeier Hansson, failed state, Firefox, fixed income, George Gilder, Larry Wall, low cost airline, low cost carrier, Mars Rover, Network effects, Paul Graham, performance metric, place-making, price discrimination, prisoner's dilemma, Ray Oldenburg, Ruby on Rails, Sand Hill Road, Silicon Valley, slashdot, social software, Steve Ballmer, Steve Jobs, Superbowl ad, The Great Good Place, type inference, unpaid internship, wage slave, web application, Y Combinator

Some idealistic youngsters may imagine a totally uncensored world as one in which the free exchange of intelligent ideas raises everyone’s IQ, an idealized Oxford Debate Society or Speakers’ Corner. I am pragmatic and understand that a totally uncensored world just looks like your inbox: 80% spam, advertising, and fraud, rapidly driving away the few interesting people. 118 More from Joel on Software If you are looking for a place to express yourself in which there will be no moderation, my advice to you would be to (a) create a new forum and (b) make it popular. (Apologies to Larry Wall.) Q. How do you decide what to delete? A. First of all, I remove radically off-topic posts or posts that, in my opinion, are only of interest to a very small number of people. If something is not about the same general topics as Joel on Software is about, it may be interesting as all heck to certain people, but it’s not likely to interest the majority of people who came to my site to hear about software development.

pages: 260 words: 40,943

Hacking Exposed: Network Security Secrets and Solutions by Stuart McClure, Joel Scambray, George Kurtz

AltaVista, bash_history, Larry Wall, MITM: man-in-the-middle, peer-to-peer, remote working, web application

It can be found at software/npasswd. This program subjects user passwords to stringent checks to decrease the likelihood that users will choose weak passwords. It is a commercial-grade solution that greatly enhances password security. Anlpasswd This Perl program was written at Argone National Laboratories (hence, anl). It is an improvement upon a program originally written by Larry Wall (Larry is the creator of Perl). It can be found at It is a good proactive password checker that uses a dictionary file of your choice and allows you to create custom rules. Also, it is a well-written Perl program that can give the reader some insight into password checking strategies. Pluggable Authentication Modules PAM can be used to force good passwords at password change time.

pages: 471 words: 94,519

Managing Projects With GNU Make by Robert Mecklenburg, Andrew Oram

bioinformatics, general-purpose programming language, Larry Wall, Richard Stallman

In addition, I introduced many symbolic formatting styles appropriate for the material, such as mp_variable and mp_target. This allowed me to select a trivial format, such as literal, and change it later to whatever the production department preferred without having to perform a global search and replace. I'm sure the XML aficionados will probably send me boat loads of email telling me how to do this with entities or some such, but remember Unix is about getting the job done now with the tools at hand, and as Larry Wall loves to say, "there's more than one way to do it." Besides, I'm afraid learning too much XML will rot my brain. The second task for m4 was handling the XML identifiers used for cross-referencing. Each chapter, section, example, and table is labeled with an identifier: <sect1 id="MPWM-CH-7-SECT-1"> References to a chapter must use this identifier. This is clearly an issue from a programming standpoint.

pages: 398 words: 107,788

Coding Freedom: The Ethics and Aesthetics of Hacking by E. Gabriella Coleman

activist lawyer, Benjamin Mako Hill, commoditize, crowdsourcing, Debian, Donald Knuth, dumpster diving,, financial independence, ghettoisation, GnuPG, Hacker Ethic, informal economy, Jacob Appelbaum, Jaron Lanier, Jason Scott:, Jean Tirole, knowledge economy, laissez-faire capitalism, Larry Wall, Louis Pasteur, means of production, Paul Graham, peer-to-peer, pirate software, popular electronics, RFC: Request For Comment, Richard Stallman, rolodex, Ronald Reagan, Silicon Valley, Silicon Valley startup, slashdot, software patent, software studies, Steve Ballmer, Steven Levy, Ted Nelson, The Hackers Conference, the scientific method, The Structural Transformation of the Public Sphere, web application, web of trust

Espe describes this unfavorable turn of events as being plucked from his “high tower of control and purity,” only to be “thrown into a bubbling pool of vaguery and confusion.” In having to read and parse other people’s codes, programmers routinely encounter what has been depicted aptly as a “twisting maze of corridors, a bottomless pit” (Ullman 2003, 262). In the second extract, we have DMH, also a San Francisco hacker, but unlike Espe, a self-styled Perl alchemist. Perl’s creator, a linguist and programmer named Larry Wall, intended the code to embody the flexible and often-irrational properties of a natural language. As noted by DMH, Perl’s aesthetic and technical features are opaqueness, complexity, and flexibility. Also run as an open-source project, Perl is incorporated into the identity of many of its supporters, who call themselves Perl Monks, underscoring the single-minded dedication they have for what is considered a language that can produce poetic (or highly unreadable code) that is creatively displayed during obfuscated code contests, which are usually held for Perl, C, and C++.3 While DMH respects Perl for what it is most famous for—its cryptic nature and poetic elegance—he is drawn to Perl for pragmatic reasons.

Remix: Making Art and Commerce Thrive in the Hybrid Economy by Lawrence Lessig

Amazon Web Services, Andrew Keen, Benjamin Mako Hill, Berlin Wall, Bernie Sanders, Brewster Kahle, Cass Sunstein, collaborative editing, commoditize, disintermediation, don't be evil, Erik Brynjolfsson, Internet Archive, invisible hand, Jeff Bezos, jimmy wales, Joi Ito, Kevin Kelly, Larry Wall, late fees, Mark Shuttleworth, Netflix Prize, Network effects, new economy, optical character recognition, PageRank, peer-to-peer, recommendation engine, revision control, Richard Stallman, Ronald Coase, Saturday Night Live, SETI@home, sharing economy, Silicon Valley, Skype, slashdot, Steve Jobs, The Nature of the Firm, thinkpad, transaction costs, VA Linux, yellow journalism

As Robert Young and Wendy Goldman Rohm put it in their book, Under the Radar (1999): In 1981, Eric Allman created Sendmail, an open source program that is responsible for routing 80 percent of the email that travels 80706 i-xxiv 001-328 r4nk.indd 163 8/12/08 1:55:29 AM REMI X 164 over the Internet. It is currently still maintained by thousands of online programmers via In addition, Allman started Sendmail Inc. as a business in November 1998. For a profit, he sells easy-to-use versions of the open source software, along with support and service, to corporations. Another important force in the open source world is Perl. It was created by 43-year-old Larry Wall, a former linguist who created Perl while at Burroughs Corp. on a government-funded project. The software is free, although Wall has sold 500,000 copies of his Perl manuals. Another open source program, BIND, was originally developed at the University of California at Berkeley as freeware. It allows domain names like to be entered as textual name addresses instead of machine numbers (called IP addresses, for example,, making it much easier for ordinary people to surf the Internet.

pages: 494 words: 142,285

The Future of Ideas: The Fate of the Commons in a Connected World by Lawrence Lessig

AltaVista, Andy Kessler, barriers to entry, business process, Cass Sunstein, commoditize, computer age, creative destruction, dark matter, disintermediation, disruptive innovation, Donald Davies, Erik Brynjolfsson, George Gilder, Hacker Ethic, Hedy Lamarr / George Antheil, Howard Rheingold, Hush-A-Phone, HyperCard, hypertext link, Innovator's Dilemma, invention of hypertext, inventory management, invisible hand, Jean Tirole, Jeff Bezos, Joseph Schumpeter, Kenneth Arrow, Larry Wall, Leonard Kleinrock, linked data, Marc Andreessen, Menlo Park, Mitch Kapor, Network effects, new economy, packet switching, peer-to-peer, peer-to-peer model, price mechanism, profit maximization, RAND corporation, rent control, rent-seeking, RFC: Request For Comment, Richard Stallman, Richard Thaler, Robert Bork, Ronald Coase, Search for Extraterrestrial Intelligence, SETI@home, Silicon Valley, smart grid, software patent, spectrum auction, Steve Crocker, Steven Levy, Stewart Brand, Ted Nelson, Telecommunications Act of 1996, The Chicago School, transaction costs, zero-sum game

Many of the developers worked part-time, paid by the companies they worked for. One of the leaders of the project, Net wizard Brian Behlendorf, says this “essential volunteerism” was crucial for the project. The work done for the project had to come from people who were motivated to help the project, not from people just paid to code from nine to five. Linux and Apache are the two most prominent open code projects. But there are others still. Perl, developed by Larry Wall, is a programming language that enables high-power manipulation of text. It is the glue that makes most Web sites run. It too was developed as an open source project, and it is by far the dominant language of its class, ported to every important operating system. And deeper in the guts of the Internet's code are other systems that are even more crucial to the Net. The Berkeley Internet Name Domain (BIND) system (which connects names, such as, to IP addresses, such as was developed originally as an open code project at the University of California at Berkeley; at version 4.9.2, Paul Vixie became its principal architect.19 Some believe that BIND is “the single most mission-critical Internet application.”20 Whether it is or not, it was built through open code.

Multitool Linux: Practical Uses for Open Source Software by Michael Schwarz, Jeremy Anderson, Peter Curtis

business process, Debian, defense in depth, GnuPG, index card, indoor plumbing, Larry Wall, MITM: man-in-the-middle, optical character recognition, publish or perish, RFC: Request For Comment, Richard Stallman, SETI@home, slashdot, web application

Covers: Apache Web server Question: I want my Web server to do something unusual, like authenticate against a proprietary data store, log to a relational database, or provide real-time statistics about the machine it's on. I've looked for packages to do these things, but I can't find anything that will work to my satisfaction. What can I do? Answer: Consider building an Apache module. I admit this violates one of Larry Wall's three great virtues of a programmer, namely, Laziness. But sometimes nothing else will get the job done, and writing a CGI is not an option. You'll have to hold your breath and dive into the world of Apache server extensions. Apache is the most popular Web server in the world! There, I said it. It also happens to be the most flexible, thanks to the fact that it's completely open source. Apache was built with modularity in mind, and Apache run on Linux can realize its full potential for extensibility.

Version Control With Git: Powerful Tools and Techniques for Collaborative Software Development by Jon Loeliger, Matthew McCullough

continuous integration, Debian, distributed revision control, GnuPG, Larry Wall, peer-to-peer, peer-to-peer model, pull request, revision control, web application, web of trust

Applying Patches Git has two basic commands that apply patches. The higher level porcelain command, git am, is partially implemented in terms of the plumbing command git apply. The command git apply is the workhorse of the patch application procedure. It accepts git diff or diff style outputs and applies it to the files in your current working directory. Though different in some key respects, it performs essentially the same role as Larry Wall’s patch command. Because a diff contains only line-by-line edits and no other information (such as author, date, or log message), it cannot perform a commit and log the change in your repository. Thus, when git apply is finished, the files in your working directory are left modified. (In special cases, it can use or modify the index as well.) In contrast, the patches formatted by git format-patch, either before or after they have been mailed, contain the extra information necessary to make and record a proper commit in your repository.

pages: 726 words: 172,988

The Bankers' New Clothes: What's Wrong With Banking and What to Do About It by Anat Admati, Martin Hellwig

Andrei Shleifer, asset-backed security, bank run, banking crisis, Basel III, Bernie Madoff, Big bang: deregulation of the City of London, Black Swan, bonus culture, break the buck, business cycle, Carmen Reinhart, central bank independence, centralized clearinghouse, collapse of Lehman Brothers, collateralized debt obligation, corporate governance, credit crunch, Credit Default Swap, credit default swaps / collateralized debt obligations, crony capitalism, diversified portfolio,, Exxon Valdez, financial deregulation, financial innovation, financial intermediation, fixed income, George Akerlof, Growth in a Time of Debt, income inequality, information asymmetry, invisible hand, Jean Tirole, joint-stock company, joint-stock limited liability company, Kenneth Rogoff, Larry Wall, light touch regulation, London Interbank Offered Rate, Long Term Capital Management, margin call, Martin Wolf, money market fund, moral hazard, mortgage debt, mortgage tax deduction, negative equity, Nick Leeson, Northern Rock, open economy, peer-to-peer lending, regulatory arbitrage, risk tolerance, risk-adjusted returns, risk/return, Robert Shiller, Robert Shiller, Satyajit Das, shareholder value, sovereign wealth fund, technology bubble, The Market for Lemons, the payments system, too big to fail, Upton Sinclair, Yogi Berra

We thank Viral Acharya, Philippe Aghion, Sheila Bair, Mary Barth, Nadine Baudot-Trajtenberg, Jane Baxter, Lawrence Baxter, Urs Birchler, Niklaus Blattner, Jürg Blum, Arnoud Boot, Claudio Borio, Michael Boskin, John Boyd, Dick Brealey, Claudia Buch, Charles Calomiris, John Cochrane, Peter DeMarzo, Thomas Gehrig, Hans Gersbach, Hendrik Hakenes, Andy Haldane, Ian Harrison, Richard Herring, Tom Hoenig, Rob Johnson, Ed Kane, Dennis Kelleher, Mervyn King, David Kreps, Sebastian Mallaby, Maureen McNichols, Hamid Mehran, Allan Meltzer, David Miles, Chuck Morris, Manfred J. M. Neumann, George Parker, Francisco Perez-Gonzalez, Thierry Philipponnat, John Plender, Barbara Rehm, Isabel Schnabel, David Skeel, Chester Spatt, Ilya Strebulaev, Martin Summer, Elu von Thadden, Adair Turner, Jim Van Horne, Larry Wall, Beatrice Weder di Mauro, Juli Weiss, Mark Whitehouse, Martin Wolf, Daniel Zimmer, and Jeff Zwiebel. Some of them may disagree with our views, but all of them have contributed to the book with their insights. In the book we are critical of politicians and regulators, but many do not fit our characterizations. Our thinking has been influenced, in particular, by serving on policy committees. We are grateful for the opportunity provided by these committees to apply academic thinking to practical questions and to discuss the issues with politicians and administrators, central bankers and regulators, corporate executives, and other academics.

pages: 602 words: 207,965

Practical Ext JS Projects With Gears by Frank Zammetti

a long time ago in a galaxy far, far away, Albert Einstein, corporate raider, create, read, update, delete, database schema,, Firefox, full text search, Gordon Gekko, Kickstarter, Larry Wall, loose coupling, Ronald Reagan, web application

In the next chapter we’ll start with the project so you can see how Chapters 1 and 2 fit together. You will learn how to build some cool applications with very little effort. 127 P A R T 2 The Projects The Internet is the most important single development in the history of human communication since the invention of call waiting. —Dave Barry Real programmers can write assembly code in any language. —Larry Wall You have that vacant look in your eyes that says “Hold my head to your ear, you’ll hear the sea!” —Londo Mollari (Babylon 5) Well, believe me, Mike, I calculated the odds of this succeeding versus the odds I was doing something incredibly stupid . . . and I went ahead anyway. —Crow (Mystery Science Theater 3000) They’ve finally come up with the perfect office computer. If it makes a mistake, it blames another computer.

pages: 999 words: 194,942

Clojure Programming by Chas Emerick, Brian Carper, Christophe Grand

Amazon Web Services, Benoit Mandelbrot, cloud computing, continuous integration, database schema, domain-specific language, don't repeat yourself,, failed state, finite state, Firefox, game design, general-purpose programming language, Guido van Rossum, Larry Wall, mandelbrot fractal, 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, Turing complete, type inference, web application

The core Clojure team maintains a wiki page where organizations using Clojure can make themselves known: On that page, you’ll find that: global, established corporations like Citicorp and Akamai use Clojure; startups like Backtype (now with Twitter), The Climate Corporation (née Weatherbill), and Woven use Clojure; consulting shops like Relevance use Clojure; and hardcore research shops like the Max Planck Institute for Molecular Biomedicine use Clojure. If your organization starts using Clojure, it will have good company. * * * [437] The Eclipse Public License, which allows for free commercial use and redistribution: [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 [440] irc:// or in your browser at [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

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,, Firefox, general-purpose programming language, Guido van Rossum, job automation, Larry Wall, lateral thinking, p-value, plutocrats, Plutocrats, revision control, sorting algorithm, transfer pricing, type inference, web application

The informal slogan of those inside the community was to “avoid success at all costs.” Few outsiders had heard of the language at all. 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: 468 words: 233,091

Founders at Work: Stories of Startups' Early Days by Jessica Livingston

8-hour work day, affirmative action, AltaVista, Apple II, Brewster Kahle, business cycle, business process, Byte Shop, Danny Hillis, David Heinemeier Hansson, don't be evil, fear of failure, financial independence, Firefox, full text search, game design, Googley, HyperCard, illegal immigration, Internet Archive, Jeff Bezos, Joi Ito,, Larry Wall, Maui Hawaii, Menlo Park, Mitch Kapor, nuclear winter, Paul Buchheit, Paul Graham, Peter Thiel, Richard Feynman, Robert Metcalfe, Ruby on Rails, Sam Altman, Sand Hill Road, side project, Silicon Valley, slashdot, social software, software patent, South of Market, San Francisco, Startup school, stealth mode startup, Steve Ballmer, Steve Jobs, Steve Wozniak, web application, Y Combinator

Certain features—flying first class, Aeron chairs, double monitors, the best computers that money can buy—these are things which might be considered extravagant, but it’s nice just to be able to do things the way that we believe they should be done, without having to have a big argument educating other people as to why we know how to develop software and they don’t. Livingston: Is there any advice you would give a programmer who wanted to start a startup who wants to avoid having to take any outside investment? Spolsky: It’s totally possible. I would recommend that you create a weblog and have millions of readers every month from around the world that read it. That’s not really necessarily followable. Step two is a little bit hard. I think it’s Larry Wall who used to have this saying about Perl that, “Well, if you don’t like it, just make your own language and then make it popular.” That was his way of refuting any and all complaints about the Perl syntax or whatever. So the reason I’m saying this, even though it’s tongue-in-cheek, is that we definitely got a lot of publicity—what a traditional company would call PR— through Joel on Software. And that caused us to get an enormous number of initial customers.

pages: 394 words: 110,352

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

barriers to entry, Benevolent Dictator For Life (BDFL), collaborative editing, crowdsourcing, Debian, DevOps, do-ocracy,, Firefox, 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, telemarketer, union organizing, VA Linux, web application

When I organized the Freeware Summit (later known as the Open Source Summit) in 1998, it was because I recognized that there were multiple communities like that, that their leaders had never met in person, and would benefit from talking about common problems and shaping a common story. And being a media company, we organized a press conference at the end of the day to get that story out. And sure enough, two months later, Linus Torvalds was on the cover of Forbes, with full-page pictures inside of Larry Wall, Richard Stallman, Brian Behlendorf, and others. Social media is about community, about the stories that tie those communities together, and about tools to amplify the connections between them. I was doing that long before I got on Twitter or Facebook. Which social media networks really captured your interest first? It was Twitter that first pulled me in. I had signed up for Twitter and Facebook to try them out, but didn’t stick around.

pages: 1,758 words: 342,766

Code Complete (Developer Best Practices) by Steve McConnell

Ada Lovelace, Albert Einstein, Buckminster Fuller, call centre, continuous integration, data acquisition, database schema, don't repeat yourself, Donald Knuth, fault tolerance, Grace Hopper, haute cuisine, if you see hoof prints, think horses—not zebras, index card, inventory management, iterative process, Larry Wall, loose coupling, Menlo Park, Perl 6, place-making, premature optimization, revision control, Sapir-Whorf hypothesis, slashdot, sorting algorithm, statistical model, Tacoma Narrows Bridge, the scientific method, Thomas Kuhn: the structure of scientific revolutions, Turing machine, web application

If you don't try to analyze requirements and design before you begin coding, much of your learning about the project will occur during coding and the result of your labors will look more like a three-year-old's finger painting than a work of art. Laziness Laziness manifests itself in several ways: Laziness: The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so that you don't have to answer so many questions about it. — Larry Wall Deferring an unpleasant task Doing an unpleasant task quickly to get it out of the way Writing a tool to do the unpleasant task so that you never have to do the task again Some of these manifestations of laziness are better than others. The first is hardly ever beneficial. You've probably had the experience of spending several hours futzing with jobs that didn't really need to be done so that you wouldn't have to face a relatively minor job that you couldn't avoid.