33 results back to index
Free as in Freedom by Sam Williams
Asperger Syndrome, cognitive dissonance, Debian, East Village, Hacker Ethic, informal economy, Isaac Newton, John Conway, Maui Hawaii, Murray Gell-Mann, profit motive, Richard Feynman, Richard Stallman, Silicon Valley, slashdot, software patent, Steven Levy, Ted Nelson, urban renewal, VA Linux, Y2K
"I guess that probably means I can help you drift gently into a blissful, relaxing sleep. And some of you might need that. I guess I shouldn't object if you do. If you need to sleep, by all means do." The speech ends with a brief discussion of software patents, a growing issue of concern both within the software industry and within the free software community. Like Napster, software patents reflect the awkward nature of applying laws and concepts written for the physical world to the frictionless universe of information technology. The difference between protecting a program under copyright and protecting a program under software patents is subtle but significant. In the case of copyright, a software creator can restrict duplication of the source code but not duplication of the idea or functionality that the source code addresses. In other words, if a developer chooses not to use a software program under the original developer's terms, that second developer is still free to reverse-engineer the program-i.e., duplicate the software program's functionality by rewriting the source code from scratch.
Where companies such as Microsoft and Apple once battled over copyright and the "look and feel" of various technologies, today's Internet companies use patents as a way to stake out individual applications and business models, the most notorious example being Amazon.com's 2000 attempt to patent the company's "one-click" online shopping process. For most companies, however, software patents have become a defensive tool, with cross-licensing deals balancing one set of corporate patents against another in a tense form of corporate detente. Still, in a few notable cases of computer encryption and graphic imaging algorithms, software vendors have successfully stifled rival technologies. For Stallman, the software-patent issue dramatizes the need for eternal hacker vigilance. It also underlines the importance of stressing the political benefits of free software programs over the competitive benefits. Pointing to software patents' ability to create sheltered regions in the marketplace, Stallman says competitive performance and price, two areas where free software operating systems such as GNU/Linux and FreeBSD already hold a distinct advantage over their proprietary counterparts, are red herrings compared to the large issues of user and developer freedom.
., duplicate the software program's functionality by rewriting the source code from scratch. Such duplication of ideas is common within the commercial software industry, where companies often isolate reverse-engineering teams to head off accusations of corporate espionage or developer hanky-panky. In the jargon of modern software development, companies refer to this technique as "clean room" engineering. Software patents work differently. According to the U.S. Patent Office, companies and individuals may secure patents for innovative algorithms provided they submit their claims to a public review. In theory, this allows the patent-holder to trade off disclosure of their invention for a limited monopoly of a minimum of 20 years after the patent filing. In practice, the disclosure is of limited value, since the operation of the program 98 is often self-evident.
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, computer age, dark matter, disintermediation, 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, linked data, Menlo Park, Network effects, new economy, packet switching, price mechanism, profit maximization, RAND corporation, rent control, rent-seeking, RFC: Request For Comment, Richard Stallman, Richard Thaler, 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
As Richard Stallman writes, “The worst threat we face comes from software patents, which can put . . . features off-limits to free software for up to twenty years.”106 Red Hat chairman Bob Young thinks much the same: “[S]oftware patents [are] an evil, or at least [a] very damaging encroachment on the efficacy of the software programming industry.” 107 The reason patents harm open code in particular is not hard to see. Think about the mechanics of licensing a patent when you are licensing for anyone working on an open code project. Who knows who they are? How many users need to be sanctioned? As Peter Wayner writes, “[T]hese questions are much easier to answer if you're a corporation charging customers to buy a product.”108 Thus patents tilt the process to harm open code developers. The problem is exacerbated with software patents because though the patent system was designed to induce inventors to reveal their invention to the public, there is no obligation that a software inventor reveal his source code to get a patent.
Semiconductor Industry, 1979-1995,” Rand Journal of Economics 32 (2001): 101 (attributing the increase to portfolio races). 81 E-mail from Greg Aharonian, author, Internet Patent News Service, May 28, 2001, on file with author. Greg Aharonian is perhaps the leading expert on the practice of software and Internet-related patents. While he is a supporter of patents in principle, he has been a strong critic of the U.S. Patent Office. Aharonian estimates the number of software patents in a number of ways. He provided the following data to me: “TOTAL is the total number of patents issued that year, GREG is my count or estimated count of software patents (using the Greg Aharonian scheme) issued in that year. SOFTWARE is the number of patents in that year that include the word software some-where in the specification, claims, or abstract. 364&395 is the total number of patents issued in these two main computing classes.” YEAR TOTAL GREG SOFTWARE (364&395) 1999 154,534 21,000 (est.) 17,603 6,410 1998 150,961 17,500 (est.) 16,100 10,571 1997 124,181 13,000 (est.) 10,017 8,190 1996 121,799 9,000 9,104 7,922 1995 113,941 6,142 6,951 6,114 1994 113,706 4,569 6,009 5,745 1993 109,876 2,400 4,929 4,862 1992 107,489 1,624 4,068 4,073 1991 106,831 1,500 3,543 3,817 1990 99,210 1,300 3,046 3,606 1989 102,686 1,600 3,090 3,980 1988 84,433 800 2,053 2,708 1987 89,578 800 2,038 2,766 1986 77,039 600 1,483 2,202 1985 77,268 500 1,324 1,978 1984 72,668 400 1,003 1,857 1983 62,005 350 635 1,517 1982 63,291 300 603 1,446 1981 71,105 300 544 1,257 1980 66,206 250 465 1,239 1979 52,480 200 269 986 1978 70,564 150 299 1,272 1977 69,797 100 300 1,320 1976 70,924 100 208 1,113 1975 72,156 100 188 817 1974 62,342 100 188 838 1973 61,019 150 122 871 1972 58,603 200 110 906 1971 50,904 100 68 896 2,537,596 33,635 96,360 91,279 82 Seth Shulman, Owning the Future (Boston: Houghton Mifflin, 1999), 69. 83 Douglas Brotz made this statement at the Public Hearing on Use of the Patent System to Protect Software Related Inventions, January 26, 1994, at the San Jose Convention Center, transcript available at http://lpf.ai.mit.edu/Patents/testimony/statements/ adobe.testimony.html. 84 “Oracle Corporation opposes the patentability of software.”
,” Computer & High Technology Law Journal 16 (2000): 263 ; William Krause, “Sweeping the E-Commerce Patent Minefield: The Need for a Workable Business Method Exception,” Seattle University Law Review 24 (2000): 79; Jared Earl Grusd, “Internet Business Methods: What Role Does and Should the Law Play?,” Virginia Journal of Law & Technology 4 (1999): 9. 99 “In the United States, despite the long-standing controversy around software patents, there has been virtually no government effort to study the economic effects of expanded patent protection. The one government-commissioned study of which I am personally aware was suspended at the request of a multinational company with a unique position in software patents.” Brian Kahin, comments in response to “The Patentability of Computer-Implemented Inventions,” available at http://europa.eu.int/comm/ internal_market/en/intprop/indprop/maryland.pdf. The National Academies has launched a study, “Intellectual Property Rights in the Knowledge-Based Economy,” http://www. nationalacademies.org/ipr. 100 See “Internet Society Panel on Business Method Patents,” http://www/oreillynet. com/lpt/a/434 (“Property, the first of the three debates I argued, I would argue is beyond reproach and the burden of proof is not on those who would need to say property should be but on those who say property should not be because historically societies that did not respect property rights, all rights, ended up in the dust bin of history.”
Against Intellectual Monopoly by Michele Boldrin, David K. Levine
accounting loophole / creative accounting, agricultural Revolution, barriers to entry, cognitive bias, David Ricardo: comparative advantage, Dean Kamen, Donald Trump, double entry bookkeeping, en.wikipedia.org, Ernest Rutherford, experimental economics, financial innovation, informal economy, interchangeable parts, invention of radio, invention of the printing press, invisible hand, James Watt: steam engine, Jean Tirole, John Harrison: Longitude, Joseph Schumpeter, linear programming, market bubble, market design, mutually assured destruction, Nash equilibrium, new economy, open economy, pirate software, placebo effect, price discrimination, profit maximization, rent-seeking, Richard Stallman, Silicon Valley, Skype, slashdot, software patent, the market place, total factor productivity, trade liberalization, transaction costs, Y2K
On July 2, 2005, the European Parliament voted 648 to 14 (with 18 abstentions) to scrap the so-called Directive on the Patentability of Computer Implemented Inventions. Although this was good news, the battle on software patents in Europe is far from over. The vote is attributable more to a general fight with the EU Commission, which tends to ignore whatever the Parliament suggests, than to a widespread opposition to software patents within the latter body. In the meanwhile, though, grassroots opposition has grown and, especially within the business community, a variety of action groups have sprung up that oppose software patents along pro-business lines and on the basis of pro–free market arguments such as those exposed in this book. 13. News and information on this topic are widespread through all kinds of media.
The discussion and quotations are from “Suit Claiming Similarities in Tower Design Can Proceed” New York Times Region Section, August 11, 2005. 29. Bessen and Hunt (2003), p. 25. James Bessen, formerly an electronic publishing innovator, has become during the past few years a prolific researcher on the theme of software patents, with a particular attention to the empirical aspects of the problem. A number of other interesting papers, beside those we quote here, can be found at his site, http://www.researchoninnovation.org, and a substantial amount of technical news is at the blog Technological Innovation and Intellectual Property, found at http://www.researchoninnovation.org/WordPress/, which he edits. For more fun with software patents go to the site by the same name, at swpat. ffii.org/patents/effects/index.en.html, which defines itself as a “Collection of news P1: KNP head margin: 1/2 gutter margin: 7/8 CUUS245-04 cuus245 978 0 521 87928 6 May 21, 2008 19:42 The Evil of Intellectual Monopoly 95 stories and case studies showing how the granting, licensing and litigation of patents is affecting players in the software field.”
The bottom line “shows that stronger IPRs [Intellectual Property Rights] have had few impacts on the development of new breeds and that few Mexican breeders used IPRs to protect their innovations.”19 Finally, the Mann study is worth reading because it is the only attempt we are aware of to turn around the empirical findings of Bessen. As we extensively reported in Chapter 4, in a sequence of studies, Bessen and collaborators show that software patents did not increase and most likely decreased the rate of innovation in the software industry. As Bessen himself correctly points out in an unpublished rejoinder: The actual empirical findings in this paper point to rather different conclusions than those that Mann draws, namely: few software startups benefits from software patents and patents are not widely used by software firms to obtain venture financing. Indeed, among other things, the paper reports that 80% of venture-financed software startups had not acquired any patents within four years of receiving financing.20 The remaining studies, like Lerner, find little or negative evidence that increased patent protection lead to increased innovation: We find evidence that patents substitute for R&D effort at the firm level; they are associated with lower R&D intensity.21 P1: PDX head margin: 1/2 gutter margin: 7/8 CUUS245-08 cuus245 978 0 521 87928 6 April 29, 2008 15:42 198 Against Intellectual Monopoly The results suggest that stronger patents may have facilitated entry by firms in niche product markets, while spawning “patent portfolio races” among capital-intensive firms.22 It is too soon to draw any conclusion about what the effects will be of India’s upcoming introduction of product patents for pharmaceuticals. . . .
Dogfight: How Apple and Google Went to War and Started a Revolution by Fred Vogelstein
Apple II, cloud computing, disintermediation, don't be evil, Dynabook, Firefox, Google Chrome, Google Glasses, Googley, Jony Ive, Mark Zuckerberg, Peter Thiel, pre–internet, Silicon Valley, Silicon Valley startup, Skype, software patent, spectrum auction, Steve Ballmer, Steve Jobs, Steve Wozniak, Steven Levy, Tim Cook: Apple, web application
What is different with software patents: LeRoy L. Kondo, “Untangling the Tangled Web: Federal Court Reform Through Specialization for Internet Law and Other High Technology Cases,” UCLA Journal of Law and Technology, 2002. But by 1981, with the PC gaining: Most of this historical case is from BitLaw, which lays out a fantastic timeline and explains how everything connects, at www.bitlaw.com/software-patent/history.html; also, Erin Biba’s November 2012 interview with an Electronic Frontier Foundation (EFF) lawyer. But in 1987 Quattro: Lotus Development Corporation v. Borland International, Inc., U.S. Court of Appeals, First Circuit, 10/6/1994, https://bulk.resource.org/courts.gov/c/F3/49/49.F3d.807.93-2214.html. Two years before Apple: Presentation at Solutions to the Software Patent Problem, a conference at Santa Clara University, 11/16/2012; Jason Mick, “Analysis: Neonode Patented Swipe-to-Unlock 3 Years Before Apple,” DailyTech.com, 2/20/2012; Liam Tung, “Apple Secures Patent on iPhone’s Slide-to-Unlock Feature,” ZDNet.com, 2/6/2013.
He ruled that it could be, but he also wondered why he was being asked to decide at all. “I cannot stop without calling attention to the extraordinary condition of the law which makes it possible for a man without any knowledge of even the rudiments of chemistry to pass upon such questions as these. The inordinate expense of time is the least of the resulting evils, for only a trained chemist is really capable of passing upon such facts.” What is different with software patents today is that despite thirty years of trying, the legal precedents governing what makes a good or a bad patent remain in dispute. In the early days of the computer industry the answer to this question was easy: software wasn’t patentable. It wasn’t viewed as a product separate from the computer itself. Courts didn’t think software did much anyway beyond telling a machine to do mathematical calculations faster.
It was a unique process for determining the best way to mold rubber. The patent on molding rubber without software had long expired. But the addition of software had created a new, unique, and patentable way of doing it. This decision became critical to Silicon Valley entrepreneurs in the 1990s. Up until then the legal convention had been to protect software under copyright law, given courts’ previous resistance to permitting software patents. Writing software is creative just as writing books or music is, so it should be protected the same way, attorneys thought. With the English language, letters are used to form words and express ideas. With the language of music, notes are used to tell musicians what sounds to play with their instruments. With computer language, software code is written to tell machines what to do. But in 1987 Quattro, a spreadsheet software program from Borland, pushed the limits of copyright law in software and successfully rendered it useless.
affirmative action, barriers to entry, bioinformatics, Brownian motion, call centre, Cass Sunstein, centre right, clean water, dark matter, desegregation, East Village, fear of failure, Firefox, game design, George Gilder, hiring and firing, Howard Rheingold, informal economy, invention of radio, Isaac Newton, iterative process, Jean Tirole, jimmy wales, market bubble, market clearing, Marshall McLuhan, New Journalism, optical character recognition, pattern recognition, pre–internet, price discrimination, profit maximization, profit motive, random walk, recommendation engine, regulatory arbitrage, rent-seeking, RFID, Richard Stallman, Ronald Coase, Search for Extraterrestrial Intelligence, SETI@home, shareholder value, Silicon Valley, Skype, slashdot, social software, software patent, spectrum auction, technoutopianism, The Fortune at the Bottom of the Pyramid, The Nature of the Firm, transaction costs
And, just as they did in the context of trusted systems, the incumbent industrial culture producers--Hollywood and the recording industry-- would, in fact, like to control how the Internet is used and how software behaves. 764 Software Patents 765 Throughout most of its history, software has been protected primarily by copyright, if at all. Beginning in the early 1980s, and culminating formally in the late 1990s, the Federal Circuit, the appellate court that oversees the U.S. patent law, made clear that software was patentable. The result has been that software has increasingly become the subject of patent rights. There is now pressure for the European Union to pass a similar reform, and to internationalize the patentability of software more generally. There are a variety of policy questions surrounding the advisability of software patents. Software [pg 438] development is a highly incremental process. This means that patents tend to impose a burden on a substantial amount of future innovation, and to reward innovation steps whose qualitative improvement over past contributions may be too small to justify the discontinuity represented by a patent grant.
Using Networked Communication to Work Around Authoritarian Control Toward a Networked Public Sphere Chapter 8 - Cultural Freedom: A Culture Both Plastic and Critical Cultural Freedom in Liberal Political Theory The Transparency of Internet Culture The Plasticity of Internet Culture: the Future of High-Production-Value Folk Culture A Participatory Culture: Toward Policy Chapter 9 - Justice and Development Liberal Theories of Justice and the Networked Information Economy Commons-Based Strategies for Human Welfare and Development Information-Embedded Goods and Tools, Information, and Knowledge Industrial Organization of Hdi-Related Information Industries Toward Adopting Commons-Based Strategies for Development Software Scientific Publication Commons-Based Research for Food and Medicines Food Security: Commons-Based Agricultural Innovation Access to Medicines: Commons-Based Strategies for Biomedical Research Commons-Based Strategies for Development: Conclusion Chapter 10 - Social Ties: Networking Together From "Virtual Communities" to Fear of Disintegration A More Positive Picture Emerges over Time Users Increase Their Connections with Preexisting Relations Networked Individuals The Internet As a Platform for Human Connection The Emergence of Social Software The Internet and Human Community Part Three - Policies of Freedom at a Moment of Transformation Introduction Chapter 11 - The Battle Over the Institutional Ecology of the Digital Environment Institutional Ecology and Path Dependence A Framework for Mapping the Institutional Ecology The Physical Layer Transport: Wires and Wireless Devices The Logical Layer The Digital Millennium Copyright Act of 1998 The Battle over Peer-to-Peer Networks The Domain Name System: From Public Trust to the Fetishism of Mnemonics The Browser Wars Free Software Software Patents The Content Layer Copyright Contractual Enclosure: Click-Wrap Licenses and the Uniform Computer Information Transactions Act (UCITA) Trademark Dilution Database Protection Linking and Trespass to Chattels: New Forms of Information Exclusivity International "Harmonization" Countervailing Forces The Problem of Security Chapter 12 - Conclusion: The Stakes of Information Law and Policy Blurb Endnotes Index Copyright © 2006 Yochai Benkler.
It prohibited even technologies that users can employ to use the materials in ways that the owners have no right to prevent. Today we are seeing efforts to further extend similar technological regulations-- down to the level of regulating hardware to make sure that it complies with design specifications created by the copyright industries. At other layers of the communications environment, we see efforts to expand software patents, to control the architecture of personal computing devices, and to create ever-stronger property rights in physical infrastructure--be it the telephone lines, cable plant, or wireless frequencies. Together, these legislative and judicial [pg 381] acts have formed what many have been calling a second enclosure movement: A concerted effort to shape the institutional ecology in order to help proprietary models of information production at the expense of burdening nonmarket, nonproprietary production. 152 The new enclosure movement is not driven purely by avarice and rent seeking--though it has much of that too.
The Future of the Internet: And How to Stop It by Jonathan Zittrain
A Declaration of the Independence of Cyberspace, Amazon Mechanical Turk, Andy Kessler, barriers to entry, book scanning, Brewster Kahle, Burning Man, c2.com, call centre, Cass Sunstein, citizen journalism, Clayton Christensen, clean water, corporate governance, Daniel Kahneman / Amos Tversky, distributed generation, en.wikipedia.org, Firefox, game design, Hacker Ethic, Howard Rheingold, Hush-A-Phone, illegal immigration, index card, informal economy, Internet Archive, jimmy wales, license plate recognition, loose coupling, mail merge, national security letter, packet switching, Post-materialism, post-materialism, pre–internet, price discrimination, profit maximization, Ralph Nader, RFC: Request For Comment, RFID, Richard Stallman, Richard Thaler, risk tolerance, Robert X Cringely, SETI@home, Silicon Valley, Skype, slashdot, software patent, Steve Ballmer, Steve Jobs, Ted Nelson, Telecommunications Act of 1996, The Nature of the Firm, The Wisdom of Crowds, web application, wikimedia commons
The kind of law that shields Wikipedia and Geocities from liability for material contributed by outsiders, as long as the organization acts expeditiously to remove infringing material once it is notified, ought to be extended to the production of code itself.64 Code that incorporates infringing material is not given a free pass, but those who have promulgated it without knowledge of the infringement would have a chance to repair the code or cease copying it before becoming liable. The patent thicket is also worrisome. There is a large and growing literature devoted to figuring out whether and under what circumstances software patents contribute to innovation, since they can promise returns to those who innovate. Scholars James Bessen and Robert Hunt have observed that the number of software patents has grown substantially since the early 1980s, from one thousand per year to over twenty thousand per year.65 These patents are obtained, on average, by larger firms than those acquiring patents in other fields, and non-software firms acquire over 90 percent of software patents.66 Bessen and Hunt suggest that these patterns are consistent with a patent thicket— large firms obtaining patents to extract royalties from rivals and to defend themselves from their rivals’ patents.67 While large firms can reach patent détente with each other through cross-licensing,68 smaller firms and individuals may be left out.
United States, http://volokh.com/posts/1182208168.shtml (last visited June 23, 2007). 63. See Posting of Jacobson to Free Software Found. Blog on GPL Compliance and Licensing, Employers: Don’t Panic, http://www.fsf.org/blogs/licensing/nopanicing (Feb. 17, 2006, 15:52). 64. See 17 U.S.C. § 512 (2000) (defining the DMCA safe harbor protections). 65. See James Bessen & Robert M. Hunt, An Empirical Look at Software Patents, 16 J. ECON. & MGMT. SCI. 157 (2007). 66. Id. 67. See James Bessen & Robert M. Hunt, The Software Patent Experiment, 14—15 (Research on Innovation Working Paper, 2004), available at http://www.researchoninnovation.org/softpat.pdf. Software companies that assert strong intellectual property rights can also deter the work of standards-setting organizations by claiming ownership of some part of a standard. See Mark Lemley, Intellectual Property Rights and Standard-Setting Organizations (Boalt Working Papers in Public Law, Paper No. 24, 2002), available at positories.cdlib.org/boaltwp/24/. 68.
Scholars James Bessen and Robert Hunt have observed that the number of software patents has grown substantially since the early 1980s, from one thousand per year to over twenty thousand per year.65 These patents are obtained, on average, by larger firms than those acquiring patents in other fields, and non-software firms acquire over 90 percent of software patents.66 Bessen and Hunt suggest that these patterns are consistent with a patent thicket— large firms obtaining patents to extract royalties from rivals and to defend themselves from their rivals’ patents.67 While large firms can reach patent détente with each other through cross-licensing,68 smaller firms and individuals may be left out. There are thousands of software patents, and patent infringement, unlike copyright, does not require a copying of the original material: so long as someone else already came up with the idea, the new work is infringing. With copyright, if someone miraculously managed independently to come up with the tune to a Beatles song, that tune would not be infringing the Beatles’ copyright, since it did not copy the song—it was independently invented. It is this virtue of copyright law that allowed Richard Stallman to begin the free software movement’s effort to reproduce Unix’s functionality without infringing its copyright by simply creating new code from scratch that acts the same way that Unix’s code does.
Culture & Empire: Digital Revolution by Pieter Hintjens
4chan, airport security, anti-communist, anti-pattern, barriers to entry, Bill Duvall, bitcoin, blockchain, business climate, business intelligence, business process, Chelsea Manning, clean water, congestion charging, Corn Laws, correlation does not imply causation, cryptocurrency, Debian, Edward Snowden, failed state, financial independence, Firefox, full text search, German hyperinflation, global village, GnuPG, Google Chrome, greed is good, Hernando de Soto, hiring and firing, informal economy, invisible hand, James Watt: steam engine, Jeff Rulifson, Julian Assange, Kickstarter, M-Pesa, mutually assured destruction, Naomi Klein, national security letter, new economy, New Urbanism, Occupy movement, offshore financial centre, packet switching, patent troll, peak oil, pre–internet, private military company, race to the bottom, rent-seeking, reserve currency, RFC: Request For Comment, Richard Feynman, Richard Feynman, Richard Stallman, Satoshi Nakamoto, security theater, Skype, slashdot, software patent, spectrum auction, Steve Crocker, Steve Jobs, Steven Pinker, Stuxnet, The Wealth of Nations by Adam Smith, The Wisdom of Crowds, trade route, transaction costs, union organizing, web application, WikiLeaks, Y2K, zero day, Zipf's Law
I started to decrypt and document the dynamics of the digital revolution and counter-revolution in 1999, and then in 2005 took over as president of the Foundation for a Free Information Infrastructure (FFII), a European activist network that fought software patents. We built websites and campaigns, organized conferences, and wrote laws. They called us "anti-business" so we wore suits and brought countless small business owners to speak. We tried to convince emerging Internet giants to support us. We were five years too early. At the time, Google had a single solitary patent lawyer and could not take the patent problem seriously and help us. While we defeated a huge army of lobbyists in the European Parliament in 2005, it was a temporary success. Every committed FFII activist burned out and had to go back to a "normal" life. The FFII is more or less shuttered now. It spawned successors like April and imitators like End Software Patents. Younger minds, unhampered by twentieth century conventions of style and reputation, continue to deconstruct the concept of "organization."
The second was the patent debate, in which the industrial-age patent industry tried to move into software, successfully in the US and with partial success in Europe. Both of these fights -- which are widespread and ongoing -- involve the basic definitions of "property" and the right of large firms to lobby governments into changing these definitions for their own benefit. Both are also typified by the politicization of digital society, as it finds that its road to freedom is blocked by old (copyright) laws or new (software patent) laws. There are other fights as well, related to these. One is over the way the state is using digital technology to censor the Internet, to spy on its citizens, and to build up databases of every aspect of our lives. Somehow, we don't mind too much if Google records every search we make and every site we visit. However, when our government records every phone call, email, search, and download, we get annoyed.
In 2000, the Internet had not yet become cheap enough for mass-market use, and open source communities were small and often regional, frequently focused around universities. Open source communities such as the Debian Foundation still operated as classic not-for-profit organizations, as legal entities with boards, treasurers, and the like. In 2005, I joined a number of collaborative projects. On the one hand, I was involved with the FFII, working to stop software patents in Europe. We (the good guys) spoke in the European Parliament, debated with the European Patent Office (the bad guys), organized seminars, tabled amendments, got votes, and broadly, took part in the largest lobbying effort ever to hit Brussels. On the other hand, I was developing open standards, starting with the Advanced Message Queuing Protocol (AMQP). The contrast between the cultures of these organizations was sharp.
One Click: Jeff Bezos and the Rise of Amazon.com by Richard L. Brandt
Amazon Web Services, automated trading system, big-box store, call centre, cloud computing, Dynabook, Elon Musk, inventory management, Jeff Bezos, Kevin Kelly, new economy, science of happiness, search inside the book, Silicon Valley, Silicon Valley startup, skunkworks, software patent, Steve Jobs, Stewart Brand, Tony Hsieh, Whole Earth Catalog, Y2K
After it was granted, it attracted enormous derision from those creating retail sites on the Internet, as well as advocates of patent reform. Patents are supposed to be granted only for “non-obvious” inventions. How much thinking does it take to figure out how to cut the ordering process to a single click? Legal experts began referring to it as the “notorious” patent. An article in one law journal described it as “probably the most memorable example of an unoriginal software-patent.” Technology book publisher and open-source advocate Tim O’Reilly described that patent as “one more example of an intellectual property milieu gone mad.” In an open letter to Bezos, published online, he said that the patent “fails to meet even the most rudimentary tests for novelty and non-obviousness to an expert in the field” and would stifle creativity on the Internet. He asked people to sign a petition to get Bezos to give up the patent.
Barnes & Noble fired back with its own press release, insisting that the suit was a “desperate attempt to retaliate for our growing market share” in online bookselling. It didn’t specify exactly how fast that share of market was growing. (By 2010, Barnes & Noble was suffering, while Amazon.com is as strong as ever.) In response to Amazon.com’s lawsuit against Barnes & Noble, the Free Software Foundation, an advocacy group that promotes open-source software and is staunchly against software patents, called for a boycott against Amazon.com. That didn’t work either. In December 1999, a district court in Washington State upheld Amazon’s patent, issuing a preliminary injunction preventing Barnes & Noble from using Express Lane. The appeal took several years. Finally, in 2002, Barnes & Noble settled the suit with Amazon.com. Although terms were not disclosed, Barnes & Noble was finally able to put its fast purchase method on its site.
Washington Post, July 10, 1998. 10. “People don’t just buy: Bezos, “A Bookstore by Any Other Name.” 10. “To be nine times: Ibid. 10. When one elderly woman: Peter de Jonge, “Riding the Wild, Perilous Waters of Amazon.com,” New York Times, March 14, 1999. 11. One of Bezos’s: Bezos, “A Bookstore by Any Other Name.” 12. So what we think: Ibid. 13. “probably the most: R. M. Ballardini, “The Software Patent Thicket: A Matter of Disclosure,” (2009) 6:2 SCRIPTed 207, www.law.ed.ac.uk/ahrc/script-ed/vol6-2/ballardini.asp. 14. one more example: http://oreilly.com/amazon_patent/amazon_patent.comments.html. Chapter 2: Portrait of the Entrepreneur as a Young Man 19. Jeff’s family’s Texas roots: Joshua Quittner, “Jeff Bezos: An Eye on the Future,” Time, December 27, 1999. 20. “what I considered: “Interview with Jeff Bezos,” Time, May 4, 2001. 20.
Digital Wars: Apple, Google, Microsoft and the Battle for the Internet by Charles Arthur
AltaVista, Build a better mousetrap, Burning Man, cloud computing, credit crunch, crowdsourcing, disintermediation, don't be evil, en.wikipedia.org, Firefox, gravity well, Jeff Bezos, John Gruber, Mark Zuckerberg, Menlo Park, Network effects, PageRank, pre–internet, Robert X Cringely, Silicon Valley, Silicon Valley startup, skunkworks, Skype, slashdot, Snapchat, software patent, speech recognition, stealth mode startup, Steve Ballmer, Steve Jobs, the scientific method, Tim Cook: Apple, upwardly mobile
If there is a single threat to the future of the smartphone, it is patents – and particularly software patents, which allow the patenting of an outcome rather than a process. If developers get too scared to develop, the apps market will become the province only of the well-funded and legally protected; the long tail of tiny developers with great ideas will be stunted. The outcome of the patent wars won’t be decided within a year or even two years. Yet, for Apple and Google and Microsoft, anything that dissuades developers from writing software for their platform (and so reduces the number of apps, which reduces the reliance on a particular OS) is bad. Whether lobbying can turn the supertanker of software patents in the United States around is questionable, but the experience of app developers like Craig Hockenberry, whose Twitterrific app was one of the reasons that thousands of people joined Twitter, and who found himself being targeted by not one but two patent-holding companies, is not encouraging.
In November 2013, the Rockstar company (now a standalone patent licensing entity with offices in Ottawa, Canada and Pano, Texas) filed a lawsuit in Delaware alleging that Google’s AdWords infringe a patent filed in 1997 – before the company existed. It was as though the ghost of Overture had returned – but this time, backed by bitter rivals. App patents The patent licensing business cut both ways, though. As smartphones took off, two US companies with software patents granted in the United States – Lodsys and MacroSolve – began suing developers in the United States and beyond, claiming infringement of their intellectual property. Apple and Google had licensed the patents involved – for Lodsys, it involved in-app purchases, a function available only through Apple’s own SDK – and said their protection extended to the developers. By mid-July 2011, British developers were withdrawing their apps from sale in the United States across all platforms.
Sometimes based on the structure of the sale we have a financial interest in the outcome of those efforts, but we never have control over, or are involved in, the path to monetization that these companies pursue once we sell the patent. Some suggested that Lodsys and MacroSolve were shell companies, set up by Intellectual Ventures to profit from lawsuits, while risking nothing if cases collapsed. (Intellectual Ventures declined to comment.) In the long term, some worried, US-based software patents might turn app development from a potentially huge cottage industry into a business only for the largest corporations. And apps are important. Dediu calculated from Apple’s stated figures – a total of $11 billion paid to developers by the end of June 2013– that apps would soon be a more valuable business, month by month, than music sales. By June 2013, he was sure: Apple’s figures showed that on average each of its 575 million iTunes users spent $12 per year on music – and $16 per year on apps.
Democratizing innovation by Eric von Hippel
additive manufacturing, correlation coefficient, Debian, hacker house, informal economy, inventory management, iterative process, James Watt: steam engine, knowledge economy, meta analysis, meta-analysis, Network effects, placebo effect, principal–agent problem, Richard Stallman, software patent, transaction costs, Vickrey auction
Benkler, Y. 2002. “Intellectual Property and the Organization of Information Production.” International Review of Law and Economics 22, no. 1: 81–107. Bessen, J. 2003. Patent Thickets. Working paper, Research on Innovation and Boston University School of Law. Bessen, J. 2004. Open Source Software. Working paper, Research on Innovation. Bessen, J., and R. M. Hunt. 2004. An Empirical Look at Software Patents. Working paper, Federal Reserve Bank of Philadelphia. Bijker, Wiebe. 1995. Of Bicycles, Bakelites and Bulbs. MIT Press. Boldrin, M., and D. Levine. 2002. “The Case against Intellectual Property.” AEA Papers and Proceedings, May: 209–212. Bresnahan, T. F., and S. Greenstein. 1996a. “Technical Progress and Co-Invention in Computing and in the Uses of Computers.” Brookings Papers on Economic Activity.
“The Commercialization of User Innovations: Sixteen Cases in an Extreme Sporting Industry.” In Proceedings of the 26th R&D Management Conference, Sesimbra, Portugal. Hirschleifer, J. 1971. “The Private and Social Value of Information and the Reward to Inventive Activity.” American Economic Review 61, no. 4: 561–574. Hollander, S. 1965. The Sources of Increased Efficiency. MIT Press. Horwich, M. 1982. Clipped Wings. MIT Press. Hunt, R. M., and J. Bessen. 2004. “The Software Patent Experiment.” Business Review, Federal Reserve Bank of Philadelphia Q3: 22–32. Jensen, M. C., and W. H. Meckling. 1976. “Theory of the Firm: Managerial Behavior, Agency Costs, and Ownership Structure.” Journal of Financial Economics 3, no. 4: 305–360. Jeppesen, L. B. 2004. Profiting from Innovative User Communities. Working paper, Department of Industrial Economics and Strategy, Copenhagen Business School.
Masterminds of Programming: Conversations With the Creators of Major Programming Languages by Federico Biancuzzi, Shane Warden
business intelligence, business process, cellular automata, cloud computing, 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, HyperCard, information retrieval, iterative process, John von Neumann, linear programming, loose coupling, Mars Rover, millennium bug, NP-complete, Paul Graham, performance metric, QWERTY keyboard, RAND corporation, randomized controlled trial, Renaissance Technologies, 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
Of course, this is rarely done, is often unaffordable, and is easily lost since it is separate from the code. Quoting from http://www.colorforth.com/HOPL.html : “The issue of patenting Forth was discussed at length. But since software patents were controversial and might involve the Supreme Court, NRAO declined to pursue the matter. Whereupon, rights reverted to me. I don’t think ideas should be patentable. Hindsight agrees that Forth’s only chance lay in the public domain. Where it has flourished.” Software patents are still controversial today. Is your opinion about patents still the same? Chuck: I’ve never been in favor of software patents. It’s too much like patenting an idea. And patenting a language/protocol is especially disturbing. A language will only be successful if it’s used. Anything that discourages use is foolish.
Since its initial release in 2000, the C# programming language has gained widespread adoption and is now standardized by ECMA and ISO. Before joining Microsoft in 1996, Anders was one of the first employees of Borland International Inc. As principal engineer, he was the original author of Turbo Pascal, a revolutionary integrated development environment, and chief architect of its successor, Delphi. Anders coauthored The C# Programming Language, published by Addison-Wesley, and has received numerous software patents. In 2001, Anders was the recipient of the prestigious Dr. Dobbs Excellence in Programming Award, and in 2007 he and his team were awarded Microsoft’s Technical Recognition Award for Outstanding Technical Achievement. Anders studied engineering at the Technical University of Denmark. Paul Hudak is a professor in the department of computer science at Yale University. He has been on the Yale faculty since 1982, and was chairman from 1999-2005.
Founders at Work: Stories of Startups' Early Days by Jessica Livingston
8-hour work day, affirmative action, AltaVista, Apple II, Brewster Kahle, business process, Byte Shop, Danny Hillis, don't be evil, fear of failure, financial independence, Firefox, full text search, game design, Googley, HyperCard, illegal immigration, Internet Archive, Jeff Bezos, Maui Hawaii, Menlo Park, nuclear winter, Paul Buchheit, Paul Graham, Peter Thiel, Richard Feynman, Richard Feynman, 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
They would look extremely sharp on the TV, but they would not flash, so you could now do a high-resolution image on a TV. The technology was in some of the Macintoshes, but not many people were hooking up Macs to TVs. 178 Founders at Work The other thing—and this is an interesting point—back in the 1980s, when I developed this technology for Apple, software patents were not things that people filed. It was mainly hardware patents. Later on, people started filing software patents. The reason is software was considered an algorithm, and an algorithm is not patentable. A Fourier transform is not patentable. It’s considered a mathematical function. This technique for stabilizing the image—the basic underlying principles of it—were things that patent attorneys said we couldn’t file patents on, so it was open for anyone to use.
Eventually, various federal and state authorities wanted to use it too, because they started to see that we were getting pretty good at this stuff. We would invite them in, and they would have to go into the room and use it and leave. They couldn’t take it with them, couldn’t print. Livingston: Did you patent this technique? Levchin: I didn’t really want to patent it because, for one, I don’t like software patents, and, two, if you patent it, you make it public. Even if you don’t know someone’s infringing, they will still be getting the benefit. Instead, we just chose to keep it a trade secret and not show it to anyone. After a while, IGOR became well known to the company, like all the other tools that we had built early on. We had patented some of it, and some of it we said, “OK, it’s open for wide use now.”
See Ruby on Rails Rakuten, 215 Ramsay, Mike, 191–203 Red Hat, 341 Reddit, 450 Reese, John, 77 Regulation FD, 435–436, 442 reliability issues, 24 Replay, 200–201, 202 Request for Proposal bid, 300 Research In Motion, 141–151 Richman, Herb, 444 Rocketmail, 25, 135 Roizen, Heidi, 307 Rosen, Ben, 84, 96 Rosenfeld, Eric, 90 Ross, Blake, 395–404 Ruby on Rails, 309, 313–314, 359 Ryan, George, 301 Ryner, Brian, 396 S Sachs, Jonathan, 89, 95, 109 Saltzer, Jerry, 80 Sarbanes-Oxley, 442 464 Index scalability, 12 Schachter, Joshua, 223–232 Schwartz Communications, 215 Scott, Mike, 46 Scull, John, 287 search button deal, 69–71 search engine, 67 search feature, 162 search technology, 63 Season Pass, 200 second-system syndrome, 338 security, 1 security company, 10 Sega video games, 174 Senate, 270 Sequoia, 300 Server Fund Drive, 119 servers, 21 Sevin Rosen, 96 sex category, 136 Seybold Conference, 292 SGI, 193 Shanny, Nick, 361 Shareholder Direct service, 442–443 shareholder lawsuits, 159 Shareholder.com, 427–446 Shear, Emmett, 449 Shellen, Jason, 122 Shugart floppy controller, 53–54 Shugart floppy disk drive, 53 Signal vs. Noise, 310, 312 Simonyi, Charles, 282 Singel, Ryan, 450 Singh, Sanjeev, 163 Six Apart, 405–418 Smalltalk, 207 Smith, Hank, 56–57 Smith, Jack, 17, 135 social networking services vs. Flickr, 260 Software Arts, 73–88, 92, software distribution, 155 software industry, 307 software package, 9 software patents, 178 software products, 315 software startups, 307 software toolkit, 319 software vs. hardware designers, 21 Sogge, Dick, 444 Sony, 179, 182–184, 199, 201 Sousan, Andre, 43 space-based technology, 147–148 Spencer, Graham, 61, 62, 71 Spolsky, Joel, 345–360 Spread Firefox site, 400 Squared Circle group, 262 Stanford, 134 Star workstation, 289 start-up like projects, 168 startup culture, 16 startup financing, 450, 451, 453 state machine, 53 Steinert, Langley, 361, 369 storage requirements, 163, 168 Strangeberry, 154, 155 student accounting system, 300 Stuff, 113, 115 subscription-based software distribution, 158 synchronization algorithm, 103 Index 465 T Ta-da List, 309 tagging, 261–262 tagline, 22 Tall, Spencer, 182 Tandem Computer, 429 targeted advertising, 22–23 Taylor, Bob, 281 technology, 158 Technomedia, 420 television networks, 202 television screens, 178 Terra Networks, 419 TextPayMe, 449 The Mythical Man-Month, 338 The Soul of a New Machine, 427 The Wall Street Journal, 270 Thiel, Peter, 1–2, 13–14 Thinking Machines, 269–271 Thinking Machines team, 265–267 THQ, 175 Tickle, 387–394 Time Warp patent, 196 time zones, 313 Tintin, 348 Tiny Troll, 90–91 TiVo, 191–204 TiVo phone home, 197–198 trade shows, 303–304 travel sites, 365–366 Travels with Samantha, 318–319 Trellix, 121 TripAdvisor, 361–376 Trott, Ben, 405 Trott, Mena, 405–418 Trustic, 233 Tufte, Edward, 321 Type Pad hosted service, 405 TypePad, 410–411 U United States, 192 University of Waterloo, 143 UNIX, 195 Unix vs.
Apple's 1984 Super Bowl advert, book scanning, Columbine, corporate governance, game design, glass ceiling, Hacker Ethic, informal economy, market design, Marshall McLuhan, Saturday Night Live, side project, Silicon Valley, slashdot, software patent, Steve Jobs, Steven Levy, X Prize
One night he sat on the edge of his bed watching coded messages travel down to his arm, instructing it how to move, grip, release. This isn’t the way it works in real life, he thought. I must be having a weird dream. He awoke in a cold sweat. There was no escape, not even in sleep. Though Carmack rarely felt–let alone cracked from–pressure, Quake was beginning to break him. He started lashing out at his employees. One day, Jay suggested they talk about getting software patents for their game technology. “If you guys ever apply for software patents,” Carmack barked, “I quit, that’s it, end of discussion.” Everything grated on him: the distractions of business, the politics of emotion, the laziness–at least in his mind–of others. “You always leave early,” Carmack said one evening as Sandy was walking out the door. Sandy was stunned; he was putting in eleven-hour days at least, but his days started at 9:00 A.M., whereas Carmack didn’t even get in the office until 4:00 in the afternoon.
Coding Freedom: The Ethics and Aesthetics of Hacking by E. Gabriella Coleman
Benjamin Mako Hill, crowdsourcing, Debian, dumpster diving, en.wikipedia.org, financial independence, ghettoisation, Hacker Ethic, informal economy, Jacob Appelbaum, Jaron Lanier, Jason Scott: textfiles.com, Jean Tirole, knowledge economy, laissez-faire capitalism, Louis Pasteur, means of production, Paul Graham, 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 scientific method, The Structural Transformation of the Public Sphere, web application, web of trust
In fact, despite the fact that harmonization is so often used to describe the creation of a single global standard of intellectual property law, the marked conflict over intellectual property law that resulted is far from harmonious. To take one prominent illustration, in 2005 the European Parliament overwhelmingly rejected a proposed software patent directive that was under consideration for a number of years. This decision came after pressure from a grassroots movement that engaged in years of demonstrations, many of them organized and attended by F/OSS developers (Karanovic 2010). The directive sought to establish and fully harmonize the criteria for software patentability, since each national patent office still follows a slightly different set of principles. The European Commission over the last few years has aggressively tried to pass patent measures that outline principles for adoption throughout the European Union—criteria that, like the US system, overwhelmingly favor private enclosure over public access.
The Second Machine Age: Work, Progress, and Prosperity in a Time of Brilliant Technologies by Erik Brynjolfsson, Andrew McAfee
2013 Report for America's Infrastructure - American Society of Civil Engineers - 19 March 2013, 3D printing, access to a mobile phone, additive manufacturing, Airbnb, Albert Einstein, Amazon Mechanical Turk, Amazon Web Services, American Society of Civil Engineers: Report Card, Any sufficiently advanced technology is indistinguishable from magic, autonomous vehicles, barriers to entry, Baxter: Rethink Robotics, British Empire, business intelligence, business process, call centre, clean water, combinatorial explosion, computer age, computer vision, congestion charging, corporate governance, crowdsourcing, David Ricardo: comparative advantage, employer provided health coverage, en.wikipedia.org, Erik Brynjolfsson, factory automation, falling living standards, Filter Bubble, first square of the chessboard / second half of the chessboard, Frank Levy and Richard Murnane: The New Division of Labor, Freestyle chess, full employment, game design, global village, happiness index / gross national happiness, illegal immigration, immigration reform, income inequality, income per capita, indoor plumbing, industrial robot, informal economy, inventory management, James Watt: steam engine, Jeff Bezos, jimmy wales, job automation, John Maynard Keynes: Economic Possibilities for our Grandchildren, John Maynard Keynes: technological unemployment, Joseph Schumpeter, Kevin Kelly, Khan Academy, knowledge worker, Kodak vs Instagram, law of one price, low skilled workers, Lyft, Mahatma Gandhi, manufacturing employment, Mark Zuckerberg, Mars Rover, means of production, Narrative Science, Nate Silver, natural language processing, Network effects, new economy, New Urbanism, Nicholas Carr, Occupy movement, oil shale / tar sands, oil shock, pattern recognition, payday loans, price stability, Productivity paradox, profit maximization, Ralph Nader, Ray Kurzweil, recommendation engine, Report Card for America’s Infrastructure, Robert Gordon, Rodney Brooks, Ronald Reagan, Second Machine Age, self-driving car, sharing economy, Silicon Valley, Simon Kuznets, six sigma, Skype, software patent, sovereign wealth fund, speech recognition, statistical model, Steve Jobs, Steven Pinker, Stuxnet, supply-chain management, TaskRabbit, technological singularity, telepresence, The Bell Curve by Richard Herrnstein and Charles Murray, The Signal and the Noise by Nate Silver, The Wealth of Nations by Adam Smith, total factor productivity, transaction costs, Tyler Cowen: Great Stagnation, Vernor Vinge, Watson beat the top human players on Jeopardy!, winner-take-all economy, Y2K
It’s pretty safe to say, in fact, that hardware, software, networks, and robots would not exist in anything like the volume, variety, and forms we know today without sustained government funding.19 This funding should be continued, and the recent dispiriting trend of reduced federal funding for basic research in America should be reversed. We should also reform the U.S. intellectual property regime, particularly when it comes to software patents and copyright duration. In any age, but especially in the second machine age, intellectual property is extremely important. It’s both a reward for innovation (if someone invents a better mousetrap, he or she gets to patent it) and an input to it (most new ideas are recombinations of existing ones). Governments therefore have to strike a delicate balance; they have to provide enough intellectual property protection to encourage innovation but not so much that they stifle it. Many of today’s informed observers conclude that software patents are providing too much protection. The same is probably true for at least some copyrights; it’s not clear what public interest is served by laws that ensure Disney’s 1928 “Steamboat Willie” (precursor to Mickey Mouse) remains under copyright, as does the song “Happy Birthday.”20 PRIZES Many innovations are of course impossible to describe in advance (that’s what makes them innovations).
Beautiful Testing: Leading Professionals Reveal How They Improve Software (Theory in Practice) by Adam Goucher, Tim Riley
Albert Einstein, barriers to entry, Black Swan, call centre, continuous integration, Debian, en.wikipedia.org, Firefox, Grace Hopper, index card, Isaac Newton, natural language processing, p-value, performance metric, revision control, six sigma, software as a service, software patent, the scientific method, Therac-25, Valgrind, web application
He lives in rural southwest Colorado, but contributes to a couple of magazines, several mailing lists, and is even a character in a book about software testing. M URALI N ANDIGAMA is a quality consultant and has more than 15 years of experience in various organizations, including TCS, Sun, Oracle, and Mozilla. Murali is a Certified Software Quality Analyst, Six Sigma lead, and senior member of IEEE. He has been awarded with multiple software patents in advanced software testing methodologies and has published in international journals and presented at many conferences. Murali holds a doctorate from the University of Hyderabad, India. B RIAN N ITZ has been a software engineer since 1988. He has spent time working on all aspects of the software life cycle, from design and development to QA and support. His accomplishments include development of a dataflow-based visual compiler, support of radiology workstations, QA, performance, and service productivity tools, and the successful deployment of over 7,000 Linux desktops at a large bank.
T IM R ILEY is the director of quality assurance at Mozilla. He has tested software for 18 years, including everything from spacecraft simulators, ground control systems, high-security operating systems, language platforms, application servers, hosted services, and open source web applications. He has managed software testing teams in companies from startups to large corporations, consisting of 3 to 120 people, in six countries. He has a software patent for a testing execution framework that matches test suites to available test systems. He enjoys being a breeder caretaker for Canine Companions for Independence, as well as live and studio sound engineering. M ARTIN S CHRÖDER studied computer science at the University of Würzburg, Germany, from which he also received his master’s degree in 2009. While studying, he started to volunteer in the community-driven Mozilla Calendar Project in 2006.
From Airline Reservations to Sonic the Hedgehog: A History of the Software Industry by Martin Campbell-Kelly
Apple II, Apple's 1984 Super Bowl advert, barriers to entry, Bill Gates: Altair 8800, business process, card file, computer age, computer vision, continuous integration, deskilling, Grace Hopper, inventory management, John von Neumann, linear programming, Menlo Park, Network effects, popular electronics, RAND corporation, Robert X Cringely, Ronald Reagan, Silicon Valley, software patent, Steve Jobs, Steve Wozniak, Steven Levy, Thomas Kuhn: the structure of scientific revolutions
Though ADR succeeded in getting a patent, this was achieved by claiming that the program was a “process” akin to a manufacturing process. It was not clear that the patent would stand up if challenged. Informatics failed to get a patent in the United States, though it was successful in Great Britain and Canada. The software patent situation was exceedingly complex, with a backlog of about 75 applications in 1968 and with five appeals in progress. In addition, there were complex public policy issues regarding the validity of software patents, insofar as patents were designed to protect tangible artifacts rather than “ideas.” Exactly what kind of an artifact software represented was an open question. Copyright law also had significant limitations for protecting software. In 1964 the US Congress passed legislation allowing a program to be copyrighted provided that it could be said to be a “literary expression” and provided that a human-readable copy was deposited in the Copyright Office.
In contrast, it’s unlikely that an average user would expend such energy on their photo collection. 19 Mac users can Google “iPhoto Library Manager” to find and buy the program. It’s unfortunate that iPhoto is designed for one-level storage. 20 Personal letters are one exception. Often, for letters from close relatives or traveling friends, “the longer, the better.” 21 PNG and GIF are nearly interchangeable formats. In the late 1990s GIF was used widely on the Internet until Unisys, a technology company, began to enforce its software patent on the GIF format. PNG, a similar format with no patent protection, then became very popular. When the Unisys patent expired in 2003, GIFs became freely available again. Today the only major difference between the formats is that a GIF file can contain an animated graphic. 22 For more details on AAC, see the Wikipedia entry for “Advanced Audio Coding.” 23 Test conducted on Microsoft Word 2004 for Mac, version 11.0. 24 This was the first time many computer users had ever encountered fonts.
Albert Einstein, barriers to entry, Bernie Madoff, collapse of Lehman Brothers, corporate governance, corporate social responsibility, credit crunch, Grace Hopper, happiness index / gross national happiness, high net worth, James Dyson, Jarndyce and Jarndyce, Jarndyce and Jarndyce, mittelstand, Network effects, North Sea oil, Northern Rock, patent troll, Plutocrats, plutocrats, Ponzi scheme, profit motive, Ralph Waldo Emerson, Silicon Valley, software patent, stealth mode startup, Steve Jobs, Steve Wozniak, The Wealth of Nations by Adam Smith, traveling salesman, tulip mania
Certainly, the juicy profits enjoyed by big pharma in the US are part of the reason that health-care costs there are so high – yet we are all beneficiaries of their discoveries and formulations. I believe in freedom for enterprise, but I also think entrepreneurs must be allowed to reap the just rewards for their efforts. Moreover, it is clear that some abuse the patent system to prevent progress. Too many patents are now issued, many of dubious merit – especially in the field of software patents. Patent trolls abound – those who file ‘paper patents’ or ‘submarine patents’ that they never intend to exploit, but merely use as tools to sue unwitting infringers. Both Research in Motion, maker of the BlackBerry, and even Microsoft have suffered from this harmful toll on endeavour. Inventors I have met are fundamentally motivated by a desire to see their creations become appreciated and recognized, rather than an urge to accumulate wealth.
These rules were very explicit in Loglan, and they were the part of the language that had involved the most effort to develop. Can the rules of a language be owned? Probably not. You can patent a machine that uses a certain mathematical formula, but not the formula itself. You can own an implementation of an algorithm, but not the algorithm. There is, however, some blur in this area within the murky world of software patents, so given the right lawyer and the right judge, who knows? There is one invented language that is essentially owned by a private company, though the terms of ownership have not been tested in court: Klingon is protected by a trademark held by Paramount Pictures. Without proper license, you cannot use the name “Klingon” to describe, say, a book of your own original Klingon poetry. But could you sell the same poems if you didn't explicitly call them “Klingon” poems?
Rapid GUI Programming With Python and Qt by Mark Summerfield
In the case of the Find and Replace dialog, we need some initial text, and we need to check that the connections work and that the ﬁnd and replace methods work. So, at the end of the findandreplacedlg.py ﬁle, we have added some extra code. This code is executed only if the ﬁle is run stand-alone, so it does not affect performance or interfere with the use of the dialog when it is used in an application. if __name__ == "__main__": import sys text = """US experience shows that, unlike traditional patents, software patents do not encourage innovation and R&D, quite the contrary. In particular they hurt small and medium-sized enterprises and generally newcomers in the market. They will just weaken the market and increase spending on patents and litigation, at the expense of technological innovation and research. Especially dangerous are attempts to abuse the patent system by preventing interoperability as a means of avoiding competition with technological ability. --- Extract quoted from Linus Torvalds and Alan Cox's letter ★ When using pyuic4 we can specify a command-line option of -x to get the dialog generated with a bit of extra code so that it can be tested stand-alone. 222 Chapter 7.
PYQT_VERSION_STR variable, 200 QT_VERSION_STR variable, 200 SIGNAL(), 131 SLOT(), 131 see also under class names QTcpServer (QtNetwork), 529, 530, 539 incomingConnection(), 530, 539 listen(), 529 QTcpSocket (QtNetwork), 522, 524, 531, 540 base class, QAbstractSocket QTextBlock (QtGui), 396 QTextBlockFormat (QtGui), 404 QTextBrowser (QtGui), 117, 381, 511, 579 base class, QTextEdit QTextCharFormat (QtGui), 386, 387, 404 QTextCursor (QtGui), 297, 384, 403–407 currentFrame(), 404 hasSelection(), 385 insertBlock(), 404 insertImage(), 404 insertTable(), 404 insertText(), 384, 404 removeSelectedText(), 297 selectedText(), 297 setPosition(), 406 QTextDocument (QtGui), 381, 383, 396, 398, 401–407, 403, 438, 439, 489 base class, QObject clear(), 383 drawContents(), 438, 489 idealWidth(), 390, 439, 489 isEmpty(), 385 isModified(), 287, 385 print_(), 403, 407 setDefaultFont(), 438, 439, 489 setHtml(), 403, 438, 439, 489 setModified(), 286, 383, 384 toHtml(), 407 QTextEdit (QtGui), 285, 310, 381, 383, 390, 392, 579 Index QTextEdit (QtGui) (cont.) base class, QAbstractScrollArea append(), 120 canPaste(), 385 currentCharFormat(), 393, 395 cursorRect(), 392, 393 cut(), 385 document(), 286, 287, 383, 384, 385, 396 ensureCursorVisible(), 392, 393 insertPlainText(), 297 mergeCurrentCharFormat(), 395 setHtml(), 488 setLineWrapMode(), 390 setPlainText(), 384 setTabChangesFocus(), 390 setTextColor(), 393 textCursor(), 297, 384, 385 toHtml(), 395 toPlainText(), 384, 395 QTextOption (QtGui), 409 QTextStream (QtCore), 250–255, 254, 258, 384 atEnd(), 252, 253, 254 readAll(), 384 readLine(), 252, 253, 254 setCodec(), 250, 252, 254, 258, 384 QTextTableFormat (QtGui), 404 QtGui module (PyQt4), 19 see also under class names QThread (QtCore), 538, 540 isRunning(), 547, 551 run(), 538, 540, 548, 553 start(), 539, 547, 553 wait(), 547, 548, 551 QTime (QtCore), 45 isNull(), 45 see also time module QTimeEdit (QtGui), 576 base class, QDateTimeEdit QTimer (QtCore), 373, 376 base class, QObject singleShot(), 115, 306 start(), 373, 376 timeout() signal, 373, 376 613 QtNetwork module (PyQt4), 521, 523 see also under class names QToolBar (QtGui), 179–180, 180 base class, QWidget addSeparator(), 178, 180 QToolTip (QtGui), 171, 200, 514 QTransform (QtGui), 356 QTranslator (QtCore), 516 QTreeView (QtGui), 415, 495, 579 base class, QAbstractItemView populating, 502 setItemsExpandable(), 420 setUniformRowHeights(), 495 QTreeWidget (QtGui), 414, 579 base class, QTreeView clear(), 420 expandItem(), 421 populating, 420 setColumnCount(), 420 setCurrentItem(), 421 setHeaderLabels(), 420 QTreeWidgetItem (QtGui), 420, 421 QtSql module (PyQt4), 445, 446 see also under class names QtSvg module (PyQt4), 363 see also under class names QT_VERSION_STR variable, 200 QtXml module (PyQt4), 235 see also under class names QUdpSocket (QtNetwork), 522 base class, QAbstractSocket queries, database; see QSqlQuery and SQL statements question() (QMessageBox), 187, 188, 361, 423, 455 quit() (QCoreApplication), 115 quitting applications; see terminating applications quoted strings; see string literals QVariant (QtCore), 183, 185, 231, 323, 392, 414, 427, 428, 429, 430, 441, 448, 451, 488, 496 toBool(), 324 toDate(), 487, 491 toDateTime(), 449 toDouble(), 481 614 Index QVariant (QtCore) (cont.) toInt(), 395, 431, 449 toLongLong(), 422 toString(), 427, 431, 441, 449, 488 QVBoxLayout (QtGui), 146, 270 base class, QBoxLayout QWidget (QtGui), 118, 119, 127, 168, 273, 305, 306, 309, 322–324, 324, 325–326, 328, 329, 330, 331, 370, 421 base classes, QObject and QPaintDevice activateWindow(), 160, 289 addAction(), 172, 178, 180, 307, 330, 365, 392, 393 addActions(), 178 close(), 175, 285, 289, 330 closeEvent(), 175, 185, 187, 282, 285, 289, 293, 309, 551 contextMenuEvent(), 307, 309, 390 dragEnterEvent(), 309, 314, 316 dragMoveEvent(), 309, 314, 315, 316 dropEvent(), 309, 315, 316 font(), 336, 342 geometry(), 357 hasFocus(), 330, 426 hasMouseTracking(), 308 height(), 330 hide(), 279, 330 keyPressEvent(), 307, 309, 334, 391, 483 keyReleaseEvent(), 307 layout(), 277 mapFromGlobal(), 357 mapToGlobal(), 309, 392, 393 maximumHeight(), 390 minimumHeight(), 390 minimumSizeHint(), 271, 335, 340, 341, 479 mouseDoubleClickEvent(), 308, 309, 417, 422, 440 mouseMoveEvent(), 309, 317 mousePressEvent(), 309, 333 mouseReleaseEvent(), 308, 309 QWidget (QtGui) (cont.) move(), 183, 330, 341 paintEvent(), 306, 309, 336, 342, 480 palette(), 337 raise_(), 160, 289, 330 rect(), 306, 330 resize(), 183 resizeEvent(), 306, 309, 341 restoreGeometry(), 183, 186, 330 saveGeometry(), 183, 186, 330 setAcceptDrops(), 312, 313, 314, 315, 316, 330 setAttribute(), 156, 284, 330, 511 setContextMenuPolicy(), 168, 330, 365 setCursor(), 330 setEnabled(), 219, 330 setFocus(), 120, 310, 330, 422 setFocusPolicy(), 180, 217, 331, 369, 478 setFont(), 330 setLayout(), 273, 279, 330 setMaximumHeight(), 390 setMinimumHeight(), 390 setMinimumSize(), 168, 340 setMinimumWidth(), 340 setMouseTracking(), 308, 334 setSizePolicy(), 330, 331, 340 setStatusTip(), 171, 180 setStyleSheet(), 323, 330 setTabOrder(), 206 setToolTip(), 171, 180, 390 setVisible(), 277, 280 setWindowFlags(), 529 setWindowIcon(), 186, 330 setWindowModified(), 192 setWindowTitle(), 146, 151, 186, 330, 370 show(), 115, 155, 280, 286, 330, 511 showMinimized(), 297 showNormal(), 297 sizeHint(), 335, 390, 479 update(), 306, 330, 332, 479, 482 Index QWidget (QtGui) (cont.) updateGeometry(), 330, 332, 479 wheelEvent(), 352 width(), 330 QWorkspace (QtGui), 290, 297 base class, QWidget activeWindow(), 296 setActiveWindow(), 292, 295 windowList(), 295 QXmlContentHandler (QtXml) characters(), 263 endElement(), 263 startElement(), 263 QXmlDefaultHandler (QtXml), 263 base class, QXmlContentHandler QXmlErrorHandler (QtXml) fatalError(), 263 QXmlInputSource (QtXml), 262 QXmlReader (QtXml) parse(), 262 setContentHandler(), 262 setErrorHandler(), 262 QXmlSimpleReader (QtXml), 262–265 base class, QXmlReader gzip module, 248 R __radd__() (+), 84 radians() (math), 371, 375 raise_() (QWidget), 160, 289, 330 raising windows, 160 randint() (random), 19, 357, 371, 375 range(), 39, 50–51, 54 see also xrange() “raw” strings, 157, 220 re module, 219, 220, 554, 556 read-only models, 427 read-only widgets, 421 readAll() QIODevice, 254 QTextStream, 384 readBool() (QDataStream), 245 readDouble() (QDataStream), 241, 245 readIntn() (QDataStream), 243, 245, 360, 435 615 readline() (codecs), 255 readLine() (QTextStream), 252, 253, 254 readUIntn() (QDataStream), 245, 528, 540 rebinding names; see binding names recently used ﬁles, 187–190 record-level validation, 140, 491 record() QSqlQuery, 450 QSqlQueryModel, 464, 465, 466, 469 rect() QPaintEvent, 480 QWidget, 306, 330 recursion, risk of inﬁnite, 100 reentrant methods, 542 references; see object references regression testing, 105 regular expressions, 157, 220, 327, 386, 387, 461, 552 “reject” button, 141, 188 reject() (QDialog), 215 rejected() signal (QDialogButtonBox), 145, 150 relationModel() (QSqlRelationalTableModel), 456 remainder (%), 53 remove() dict, 95, 532, 543 list, 32, 33 set, 38 removeItem() (QGraphicsScene), 354, 355, 359, 361, 372 removeRow() (QAbstractItemModel), 434, 466, 469 removeRows() (QAbstractItemModel), 427, 432, 434, 469 removeSelectedText() (QTextCursor), 297 render() QGraphicsScene, 354, 361 QGraphicsView, 361 QSvgRenderer, 363 replace() (str/unicode), 25, 238 616 Index repr(), 81, 83, 89, 90, 98 __repr__() (repr()), 81, 83, 90, 98 reset() QAbstractItemModel, 432, 434, 501, 502 QMatrix, 370, 377 resize() (QWidget), 183 resizeColumnsToContents() (QTableView), 232, 419, 460, 463, 490 resizeEvent() (QWidget), 306, 309, 341 resource path, root of (:/), 173 resource ﬁles, 173–174, 206, 401, 517 restore() (QPainter), 343, 346, 410, 438, 482, 489 restoreGeometry() (QWidget), 183, 186, 330 restoreState() QMainWindow, 183, 186 QSplitter, 282 restoring windows, 297 Return keypress; see Enter keypress return statement, 58, 97, 554 returnPressed() signal (QLineEdit), 440 reverse() (list), 33 rfind() (str/ unicode), 25 __rfloordiv__() (//), 84 rgbSwapped() (QImage), 197 rich text; see HTML RichTextLineEdit example class, 389–398 rindex() (str/ unicode), 25 __rmod__() (%), 84 __rmul__() (*), 84, 91 rollback() (QSqlDatabase), 449, 465, 469 RomanSpinBox example class, 326–328 rotate() QGraphicsItem, 360, 366, 371, 375, 377 QPainter, 343 rotating, graphics, 349 round(), 40, 91, 333 row() (QModelIndex), 427, 491 rowCount() (QAbstractItemModel), 426, 427, 428, 434, 454, 455, 479, 481, 503 __rsub__() (-), 84 __rtruediv__() (/), 84 rubber band, 352 run() (QThread), 538, 540, 548, 553 RuntimeError exception, 288 S save() QImage, 196 QPainter, 343, 346, 438, 481, 489 saveGeometry() (QWidget), 183, 186, 330 saveState() QMainWindow, 183, 186 QSplitter, 282 saving ﬁles, 229, 240–248, 249–256, 256–265 SAX parser, 262–265 scale() QGraphicsItem, 366 QGraphicsView, 352 QMatrix, 370 QPainter, 343 QSize, 363, 400 scaled() (QImage), 199 scaling, graphics, 349, 370, 374, 400 scaling, widgets, 329, 331 scene coordinates; see window coordinates scene() (QGraphicsItem), 366, 375 sceneBoundingRect() (QGraphicsItem), 366, 379 scenes, graphic; see QGraphicsScene Scintilla; see QScintilla add-on scope, 55 screen coordinates, 309, 357 screenPos() (QGraphicsSceneContextMenuEvent), 365 scrollbars and scrolling, 393, 476, 479 scrollToItem() (QTableWidget), 232 Index SDI (Single Document Interface), 283–290 search() (re), 219 seek() (QSqlQuery), 449, 451 select() (QSqlTableModel), 453, 456, 460, 462, 464, 469 SELECT statements, 449–451 selected text, 392 selectedItems() (QGraphicsScene), 358, 360, 361 selectedText() (QTextCursor), 297 selecting graphics items, 352 selectionModel() (QAbstractItemView), 463 self, 77, 78 sender() (QObject), 135, 289, 393, 395, 440 separators, menu, 178, 180 sequences, 22 set type, 37, 38, 93, 551 add(), 37, 38, 372, 556 clear(), 38 copy(), 38, 548, 551 discard(), 38 pop(), 372 remove(), 38 setAcceptDrops() (QWidget), 312, 313, 314, 315, 316, 330 setActiveWindow() (QWorkspace), 292, 295 setAlignment() QAbstractSpinBox, 340, 487 QLabel, 168, 340 QLineEdit, 461 setAllowedAreas() (QDockWidget), 169, 170 setAlternatingRowColors() (QAbstractItemView) (QAbstractItemView), 231, 477 setAttribute() (QWidget), 156, 284, 330, 511 setBackgroundBrush() (QGraphicsScene), 354 setBottom() (QRect/ QRectF), 365 setBrush() (QPainter), 337, 344, 345, 374, 377, 481 617 setBuddy() (QLabel), 143, 425 setCalendarPopup() (QDateTimeEdit), 487 setCentralWidget() (QMainWindow), 168, 186, 285 setCheckable() QAbstractButton, 276, 278 QAction, 393 setChecked() (QAction), 172, 177, 393 setCodec() (QTextStream), 250, 252, 254, 258, 384 setColor() (QPen), 368 setColumnCount() QTableWidget, 231, 418 QTreeWidget, 420 setColumnHidden() (QTableView), 460, 463 setColumnStretch() (QGridLayout), 146 setContent() (QDomDocument), 259 setContentHandler() (QXmlReader), 262 setContextMenuPolicy() (QWidget), 168, 330, 365 setCurrentIndex() QAbstractItemView, 426, 465, 468 QComboBox, 441, 457 QDataWidgetMapper, 454, 455 QStackedWidget, 275 setCurrentItem() QListWidget, 418 QTableWidget, 232, 419 QTreeWidget, 421 setCursor() QGraphicsItem, 366 QWidget, 330 setData(), 189, 231 QAbstractItemModel, 414, 427, 431, 434, 441, 462, 465, 487, 488 QAction, 172, 189, 392, 393 QMimeData, 316 QTableWidgetItem, 231 QTableWidgetItem, 419 setDatabaseName() (QSqlDatabase), 446, 459 setDate() (QDateTimeEdit), 487 618 Index setDateRange() (QDateTimeEdit), 452, 487 setDateTime() (QDateTime), 454 setdefault() (dict), 36, 95, 532 see also defaultdict type setDefaultFont() (QTextDocument), 438, 439, 489 setDisplayFormat() (QDateTimeEdit), 452, 487 setDragEnabled() (QAbstractItemView, 312, 313, 315, 316 setDragMode() (QGraphicsView), 352 setDropAction() (QDropEvent), 314, 315, 316 setEditable() (QComboBox), 440 setEditorData() (QAbstractItemDelegate), 436, 441, 462, 486, 487, 488 setEditTriggers() (QAbstractItemView), 231 setEnabled() QAction, 172 QGraphicsItem, 366 QWidget, 219, 330 setErrorHandler() (QXmlReader), 262 setFeatures() (QDockWidget), 170 setFilter() (QSqlTableModel), 464, 469 setFlag() (QGraphicsItem), 366 setFlags() (QGraphicsItem), 351, 356, 362, 364 setFocus() QGraphicsItem, 364, 366 QWidget, 120, 310, 330, 422 setFocusPolicy() (QWidget), 180, 217, 331, 369, 478 setFont() QGraphicsItem, 362 QPainter, 344, 408, 482 QWidget, 330 setForwardOnly() (QSqlQuery), 451 setFrameStyle() (QFrame), 170, 278 setHeaderData() (QAbstractItemModel), 434, 460, 462 setHeaderLabels() (QTreeWidget), 420 setHorizontalHeaderLabels() (QTableWidget), 231, 418 setHotSpot() (QDrag), 316 setHtml() QMimeData, 311 QTextDocument, 403, 438, 439, 489 QTextEdit, 488 setIcon() (QListWidgetItem), 316 setImage() (QClipboard), 311 setInputMask() (QLineEdit), 461 setItem() (QTableWidget), 231, 419 __setitem__() (), 93, 95 setItemDelegate() QAbstractItemView, 437, 460, 463, 490 QDataWidgetMapper, 456 setItemsExpandable() (QTreeView), 420 setLayout() (QWidget), 273, 279, 330 setLineWrapMode() (QTextEdit), 390 setMatrix() QGraphicsItem, 362, 364, 367, 377 QGraphicsView, 370 QPainter, 343 setMaximumHeight() (QWidget), 390 setMimeData() QClipboard, 311 QDrag, 316 setMinimumHeight() (QWidget), 390 setMinimumSize() (QWidget), 168, 340 setMinimumWidth() (QWidget), 340 setModel() QAbstractItemView, 425, 437, 460, 463, 477, 490 QComboBox, 456 QDataWidgetMapper, 453, 456 setModelColumn() (QComboBox), 456 setModelData() (QAbstractItemDelegate), 436, 441, 462, 486, 487, 488 setModified() (QTextDocument), 286, 383, 384 setMouseTracking() (QWidget), 308, 334 setObjectName() (QObject), 169, 183, 324 Index setPageSize() (QPrinter), 353, 398, 400 setPen() (QPainter), 337, 338, 343, 344, 345, 374, 377, 409, 410, 481 setPixmap() QClipboard, 311 QDrag, 316 QLabel, 199 setPlainText() (QTextEdit), 384 setPointSize() (QFont), 335, 336 setPos() (QGraphicsItem), 356, 362, 364, 367, 373, 375 setPosition() (QTextCursor), 406 setProperty() (QObject), 322, 324 setQuery() (QSqlQueryModel), 464 setQuitOnLastWindowClosed() (QApplication), 121 setRange() QAbstractSlider, 369 QSpinBox, 180, 340, 440 setRelation() (QSqlRelationalTableModel), 456, 460, 462 setRenderHint() QGraphicsView, 352, 369 QPainter, 306, 337, 342, 343, 361, 363 setRight() (QRect/ QRectF), 365 setRowCount() (QTableWidget), 231, 418 setRowStretch() (QGridLayout), 146 setScene() (QGraphicsView), 354, 369 setSceneRect() (QGraphicsScene), 354, 369 setSelected() QGraphicsItem, 356, 362, 364, 367 QTableWidgetItem, 232, 419 setSelectionBehavior() (QAbstractItemView), 231, 460, 463, 495 setSelectionMode() (QAbstractItemView), 231, 460, 463 setSeparator() (QAction), 172 setShortcut() (QAction), 171, 172 setSingleStep() (QSpinBox), 440 setSizeConstraint (QLayout), 277, 279 619 setSizeGripEnabled() QDialog, 154 QStatusBar, 170 setSizePolicy() (QWidget), 330, 331, 340 setSort() (QSqlTableModel), 453, 456, 460, 462 setSortingEnabled() (QTableView), 418, 419 setStatusTip() QAction, 172 QWidget, 171, 180 setStretchFactor() QBoxLayout, 146 QSplitter, 283 setStyleSheet() (QWidget), 323, 330 setSubmitPolicy() (QDataWidgetMapper), 453, 456 setSuffix() (QSpinBox), 180, 340 setTabChangesFocus() (QTextEdit), 390 setTable() (QSqlTableModel), 453, 456, 460, 462 setTabOrder() (QWidget), 206 setText() QAbstractButton, 370 QAction, 172 QClipboard, 297, 311 QLineEdit, 441, 462 setTextAlignment() QTableWidgetItem, 231, 419 QTreeWidgetItem, 421 setTextColor() (QTextEdit), 393 setToolTip() QAction, 172 QWidget, 171, 180, 390 setUniformRowHeights() (QTreeView), 495 setupUi() (generated by pyuic4), 217, 218 setValidator() (QLineEdit), 461 setValue() QAbstractSlider, 128, 369 QSpinBox, 128, 180, 340, 441 setVersion() (QDataStream), 241, 243, 245, 525, 528, 531, 533, 540 620 Index setViewport() (QPainter), 329, 342, 343, 363 setVisible() (QWidget), 277, 280 setWhatsThis() (QAction), 172 setWidth() (QPen), 368 setWindow() (QPainter), 329, 342, 343, 363 setWindowFlags() (QWidget), 529 setWindowIcon() (QWidget), 186, 330 setWindowModified() (QWidget), 192 setWindowTitle() (QWidget), 146, 151, 186, 330, 370 setZValue() (QGraphicsItem), 367 shallow copying, 34, 51, 98 shape() (QGraphicsItem), 365, 367, 374, 377 shear() QGraphicsItem, 367 QPainter, 343 Shift keypress, 365 short-circuit logic, 47 short-circuit signals, 130–131 see also signals and slots shortcut; see keyboard shortcut and QKeySequence show() (QWidget), 115, 155, 280, 286, 330, 511 showing dialogs, 160 showing images, 168 showing widgets, 277, 280 showMessage() (QStatusBar), 170, 233 showMinimized() (QWidget), 297 showNormal() (QWidget), 297 sibling() (QModelIndex), 491 SIGNAL() (QtCore), 131 signals and slots, 115, 120, 124, 127–136, 206, 215, 217, 292, 307, 333, 385, 440, 482, 539, 544 see also short-circuit signals Signals and Slots application, 128–131 signature of, function, method, signal or slot, 56, 129 simplified() (QString), 61, 422 sin() (math), 371, 375 single click; see mousePressEvent() and mouseReleaseEvent() single document interface; see SDI single-quoted strings, 21 singleShot() (QTimer), 115, 306 sip module, 288 size; see QSize size grip, 170 size hint, 271 size() QImage, 363, 400 QRect/ QRectF, 400 QSqlQuery, 450 size of layout or widget ﬁxed, 277 maximum, 271 minimum, 270, 271, 335 preferred, 271 size policies, 270–271, 335 sizeHint() QAbstractItemDelegate, 436, 439, 489 QWidget, 335, 390, 479 sleep() (time), 114, 115 slicing, 22, 30, 32 slot; see signals and slots SLOT() (QtCore), 131 __slots__ class attribute, 103, 115 software patents, disadvantages of , 222 sort() (list), 33, 53, 63, 95, 239 sorted(), 52, 53, 63, 432, 434, 551 sorting, 52, 418, 425, 432–435 spacer; see QSpacerItem spacers, in layouts, 212, 214 special methods, 81 __abs__() (abs()), 84 __add__() (+), 84, 90 __call__(), 81 __cmp__() (cmp()), 81, 82, 89, 416, 432 __contains__() (in), 93 __del__() (del statement), 78 __delitem__() (del statement), 93, 95 __eq__() (==), 81 __float__() (float()), 84, 91 __floordiv__() (//), 84 Index special methods (cont.)
Brewster Kahle, Cass Sunstein, future of journalism, George Akerlof, Innovator's Dilemma, Internet Archive, invention of the printing press, Kevin Kelly, knowledge economy, Louis Daguerre, new economy, prediction markets, prisoner's dilemma, profit motive, rent-seeking, Richard Florida, Richard Stallman, Ronald Coase, Ronald Reagan, Saturday Night Live, Silicon Valley, software patent, transaction costs
The obvious answer to these obviously rhetorical questions is no. In a free society, with a free market, supported by free enterprise and free trade, the government's role is not to support one way of doing business against others. Its role is not to pick winners and protect them against loss. If the government did this generally, then we would never have any progress. As Microsoft chairman Bill Gates wrote in 1991, in a memo criticizing software patents, "established companies have an interest in excluding future competitors." And relative to a startup, established companies also have the means. (Think RCA and FM radio.) A world in which competitors with new ideas must fight not only the market but also the government is a world in which competitors with new ideas will not succeed. It is a world of stasis and increasingly concentrated stagnation.
We-Think: Mass Innovation, Not Mass Production by Charles Leadbeater
1960s counterculture, Andrew Keen, barriers to entry, bioinformatics, c2.com, call centre, citizen journalism, clean water, cloud computing, complexity theory, congestion charging, death of newspapers, Debian, digital Maoism, double helix, Edward Lloyd's coffeehouse, frictionless, frictionless market, future of work, game design, Google Earth, Google X / Alphabet X, Hacker Ethic, Hernando de Soto, hive mind, Howard Rheingold, interchangeable parts, Isaac Newton, James Watt: steam engine, Jane Jacobs, Jaron Lanier, Jean Tirole, jimmy wales, John von Neumann, Kevin Kelly, knowledge economy, knowledge worker, lone genius, M-Pesa, Mark Zuckerberg, Marshall McLuhan, Menlo Park, microcredit, new economy, Nicholas Carr, online collectivism, planetary scale, post scarcity, Richard Stallman, Silicon Valley, slashdot, social web, software patent, Steven Levy, Stewart Brand, supply-chain management, The Death and Life of Great American Cities, the market place, The Wealth of Nations by Adam Smith, The Wisdom of Crowds, Thomas Kuhn: the structure of scientific revolutions, Whole Earth Catalog, Zipcar
By 2006, the company still had 7,500 internal researchers but also drew on 2,000 researchers among its suppliers and 7,000 virtual or extended relationships. P & G is also letting go of more of its ideas to see what other companies can do with them. All its patents will be released five years after they are lodged or three years after a product is shipped. IBM has been through a similar transformation, donating more than 500 software patents to the Open Source Foundation and funding Linux development with at least $100 million a year. Nokia, the mobile-phone company, has attracted more than 1 million developers to its online developers’ forum and announced it will not take action against open-source applications of its patents. Lego has started to work closely with software-developers creating open-source programs for its Mindstorms suite of products.
4chan, barriers to entry, Berlin Wall, big-box store, cloud computing, collaborative economy, crowdsourcing, game design, Internet Archive, invention of movable type, inventory management, iterative process, Jason Scott: textfiles.com, job automation, late fees, mental accounting, packet switching, pattern recognition, pirate software, Ronald Reagan, security theater, sharing economy, side project, Silicon Valley, software patent, Steve Jobs, zero day
Their decision to release the mp3 encoder for free on the Web had catalyzed a golden age of copyright infringement that had decimated the music industry even as it made them wealthy. But that decision had also catalyzed a political movement that now threatened their own livelihoods. No software revenues meant no mp3 licensing income. No mp3 licensing income meant the German state would be out hundreds of millions, and Brandenburg’s white-on-white Ilmenau campus would still be a cow pasture. Both Brandenburg and Grill knew that, without the incentives of software patent revenue on the horizon, they never would have spent the better part of a decade conducting those listening tests. Brandenburg would likely have stayed in academia and sought a professorship. Grill might still be playing the trumpet. Listening to “Tom’s Diner” 2,000 times in a row was work, and the mp3 team would not have done that work without the incentive of future payoff. And that was their ultimate rebuke to the Pirates: without patent protection on software, the mp3 would never have existed.
Throwing Rocks at the Google Bus: How Growth Became the Enemy of Prosperity by Douglas Rushkoff
3D printing, Airbnb, algorithmic trading, Amazon Mechanical Turk, Andrew Keen, bank run, banking crisis, barriers to entry, bitcoin, blockchain, Burning Man, business process, buy low sell high, California gold rush, Capital in the Twenty-First Century by Thomas Piketty, carbon footprint, centralized clearinghouse, citizen journalism, clean water, cloud computing, collaborative economy, collective bargaining, colonial exploitation, Community Supported Agriculture, corporate personhood, crowdsourcing, cryptocurrency, disintermediation, diversified portfolio, Elon Musk, Erik Brynjolfsson, ethereum blockchain, fiat currency, Firefox, Flash crash, full employment, future of work, gig economy, Gini coefficient, global supply chain, global village, Google bus, Howard Rheingold, IBM and the Holocaust, impulse control, income inequality, index fund, iterative process, Jaron Lanier, Jeff Bezos, jimmy wales, job automation, Joseph Schumpeter, Kickstarter, loss aversion, Lyft, Mark Zuckerberg, market bubble, market fundamentalism, Marshall McLuhan, means of production, medical bankruptcy, minimum viable product, Naomi Klein, Network effects, new economy, Norbert Wiener, Oculus Rift, passive investing, payday loans, peer-to-peer lending, Peter Thiel, post-industrial society, profit motive, quantitative easing, race to the bottom, recommendation engine, reserve currency, RFID, Richard Stallman, ride hailing / ride sharing, Ronald Reagan, Satoshi Nakamoto, Second Machine Age, shareholder value, sharing economy, Silicon Valley, Snapchat, social graph, software patent, Steve Jobs, TaskRabbit, trade route, transportation-network company, Turing test, Uber and Lyft, Uber for X, unpaid internship, Y Combinator, young professional, Zipcar
Which Will Be the First to Reach a $1 Trillion Market Cap?,” investopedia.com, July 7, 2014. 31. Wilson, “Platform Monopolies.” 32. Josh Constine, “Hail a Fellow Human, Not a Taxi with ‘Sidecar’—The New P2P Uber,” techcrunch.com, June 26, 2012. 33. Wilson, “Platform Monopolies.” 34. Betsy Corcoran, “Blackboard’s Jay Bhatt Strikes Up the Brass Band,” edsurge.com, July 23, 2014. 35. Justin Pope, “E-Learning Firm Sparks Controversy with Software Patent,” washingtonpost.com, October 15, 2006. 36. withknown.com. 37. Carlota Perez, Technological Revolutions and Financial Capital (Cheltenham, England: Edward Elgar Press, 2002). 38. Thomas Piketty, Capital in the Twenty-First Century, trans. Arthur Goldhammer (Cambridge, Mass.: Belknap Press, 2014). 39. Mario Preve, quoted in Ernst & Young and Family Business Network International, “Built to Last: Family Businesses Lead the Way to Sustainable Growth” (n.p.: Ernst & Young Global Limited, 2012), www.ey.com/Publication/vwLUAssets/EY-Built-to-last-family-businesses-lead-the-way-to-sustainable-growth/$FILE/EY-Built-to-last-family-businesses-lead-the-way-to-sustainable-growth.pdf. 40.
CTOs at Work by Scott Donaldson, Stanley Siegel, Gary Donaldson
Amazon Web Services, bioinformatics, business intelligence, business process, call centre, centre right, cloud computing, computer vision, connected car, crowdsourcing, data acquisition, distributed generation, domain-specific language, glass ceiling, pattern recognition, Pluto: dwarf planet, Richard Feynman, Richard Feynman, shareholder value, Silicon Valley, Skype, smart grid, smart meter, software patent, thinkpad, web application, zero day
It also comes down to financial feasibility, shareholder value, all of those other things, because then you consider your fiduciary responsibility, the company hat goes on. S. Donaldson: How much do you do in terms of patents? Tolnar: I'll need to split that one up between hardware and software. Inour hardware area where we have a number of patents for our transformer monitoring solution both filed and approved. With software it's a bit different in that you really can't clearly file for software patents and some countries simply do not allow them. What we've done in the software arena involves method and process patents focusing on key product areas and functionality. We make sure to file copyrights for each application and functional module then keep them updated as we iterate them. S. Donaldson: Right. Since you're an emerging company, you've done some fundraising over the years as you've gotten investors to come in.
Safe Food: The Politics of Food Safety by Marion Nestle
It used crop consultants and independent investigators as informants, and pursued more than 200 “plant piracy” cases in the courts. A spokeswoman explained, “Monsanto has invested a lot of money . . . and we will protect that investment.”15 Injustice. Questions of justice cause distrust of genetically engineered foods because of court decisions that consistently favor the patent rights of food biotechnology companies. Biotechnology patents rank second only to software patents in generating lawsuits. In a case considered critical to the continued economic viability of the industry, an Iowa seed company challenged patent protection as monopolistic and contrary to Congressional intent. The company, Farm Advantage, purchased 600 bags of Pioneer Hi-Bred corn seed from a third company for about $54,000 and resold the seeds to customers. In 1999, Pioneer Hi-Bred sued Farm Advantage for violating its exclusive patent rights.
3D printing, Airbnb, Asian financial crisis, bank run, banking crisis, barriers to entry, Basel III, battle of ideas, Berlin Wall, Big bang: deregulation of the City of London, Bretton Woods, BRICs, British Empire, business process, capital controls, Capital in the Twenty-First Century by Thomas Piketty, Carmen Reinhart, Celtic Tiger, central bank independence, centre right, cleantech, collaborative consumption, collapse of Lehman Brothers, collective bargaining, corporate governance, credit crunch, Credit Default Swap, crony capitalism, currency manipulation / currency intervention, currency peg, debt deflation, Diane Coyle, Downton Abbey, Edward Glaeser, Elon Musk, en.wikipedia.org, energy transition, eurozone crisis, fear of failure, financial deregulation, first-past-the-post, forward guidance, full employment, Gini coefficient, global supply chain, Growth in a Time of Debt, hiring and firing, hydraulic fracturing, Hyman Minsky, Hyperloop, immigration reform, income inequality, interest rate derivative, Irish property bubble, James Dyson, Jane Jacobs, job satisfaction, Joseph Schumpeter, Kenneth Rogoff, labour market flexibility, labour mobility, liquidity trap, margin call, Martin Wolf, mittelstand, moral hazard, mortgage debt, mortgage tax deduction, North Sea oil, Northern Rock, offshore financial centre, oil shale / tar sands, oil shock, open economy, price stability, private sector deleveraging, pushing on a string, quantitative easing, Richard Florida, rising living standards, risk-adjusted returns, Robert Gordon, savings glut, school vouchers, self-driving car, sharing economy, Silicon Valley, Silicon Valley startup, Skype, smart grid, smart meter, software patent, sovereign wealth fund, Steve Jobs, The Death and Life of Great American Cities, The Wealth of Nations by Adam Smith, too big to fail, total factor productivity, Tyler Cowen: Great Stagnation, working-age population, Zipcar
Jonah Lehrer argues that stemming the flood of vague patents and copyright claims would enable more cultural borrowing and adaptation. Intellectual-property laws in Europe, though not as restrictive as in US, are unduly weighted towards the interests of patent holders. One study finds that the loss of patent protection boosts subsequent citations to the focal patent by 50 per cent on average – and thus that patents block cumulative innovation.641 Governments ought to look at reducing the length of software patents – or abolishing them altogether. Prizes are often a better of encouraging innovation, as Alex Tabarrok argues in Launching The Innovation Renaissance: A New Path to Bring Smart Ideas to Market Fast.642 Governments can play a vital role in mobilising resources and energies towards a well-defined goal. As Chapter 10 argued, public funding for research into ways of tackling climate change, together with a carbon-consumption tax, could be decisive.
ZeroMQ by Pieter Hintjens
anti-pattern, carbon footprint, cloud computing, Debian, distributed revision control, domain-specific language, factory automation, fault tolerance, fear of failure, finite state, Internet of things, iterative process, premature optimization, profit motive, pull request, revision control, RFC: Request For Comment, Richard Stallman, Skype, smart transportation, software patent, Steve Jobs, Valgrind, WebSocket
Ten years later, the answer is “yes,” and there is almost a science to it. I say “almost” because we don’t yet have enough evidence of people doing this deliberately with a documented, reproducible process. It is what I’m trying to do with Social Architecture. ØMQ came after Wikidot, after the Digital Standards Organization (Digistan), and after the Foundation for a Free Information Infrastructure (aka the FFII, an NGO that fights against software patents). This all came after a lot of less successful community projects like Xitami and Libero. My main takeaway from a long career of working on projects of every conceivable format is: if you want to build truly large-scale and long-lasting software, aim to build a free software community. Psychology of Software Architecture Dirkjan Ochtman pointed me to Wikipedia’s definition of software architecture as “the set of structures needed to reason about the system, which comprise software elements, relations among them, and properties of both.”
Your Money or Your Life: 9 Steps to Transforming Your Relationship With Money and Achieving Financial Independence: Revised and Updated for the 21st Century by Vicki Robin, Joe Dominguez, Monique Tilford
asset allocation, Buckminster Fuller, buy low sell high, credit crunch, disintermediation, diversification, diversified portfolio, fiat currency, financial independence, fudge factor, full employment, Gordon Gekko, high net worth, index card, index fund, job satisfaction, Menlo Park, Parkinson's law, passive income, passive investing, profit motive, Ralph Waldo Emerson, Richard Bolles, risk tolerance, Ronald Reagan, Silicon Valley, software patent, strikebreaker, Thorstein Veblen, Vanguard fund, zero-coupon bond
Last year marked the first such dip since the agency started recording the figure in 1982.1 Wikipedia, an online open-source encyclopedia, is another example of how sharing is the new hip way to get things done—in this case sharing knowledge. Other Internet sharing tools—like Flickr and YouTube—have quickly become “just the way we do things.” The ethic of sharing is so prevalent on the Web and with the under-forty crowd that it’s harder and harder to enforce intellectual property rights and software patents and even privacy. It’s not quite holding hands and singing Kumbaya, but sharing (at least in the world of the Web) is becoming the way of the world. Finally, we’ll point out that some frugal choices are healthy choices. For example, a vegetarian diet eliminates heart-clogging animal fats while reducing costs (meat is far more expensive than vegetables or rice and beans). Riding a bicycle saves money three times—once on gas, once on gym fees and once on doctor bills.2 Consider the suggestions that follow, not as a blueprint for the single right way, but rather as a menu of options.
MacroWikinomics: Rebooting Business and the World by Don Tapscott, Anthony D. Williams
accounting loophole / creative accounting, airport security, Andrew Keen, augmented reality, Ayatollah Khomeini, barriers to entry, bioinformatics, Bretton Woods, business climate, business process, car-free, carbon footprint, citizen journalism, Clayton Christensen, clean water, Climategate, Climatic Research Unit, cloud computing, collaborative editing, collapse of Lehman Brothers, collateralized debt obligation, colonial rule, corporate governance, corporate social responsibility, crowdsourcing, death of newspapers, demographic transition, distributed generation, don't be evil, en.wikipedia.org, energy security, energy transition, Exxon Valdez, failed state, fault tolerance, financial innovation, Galaxy Zoo, game design, global village, Google Earth, Hans Rosling, hive mind, Home mortgage interest deduction, interchangeable parts, Internet of things, invention of movable type, Isaac Newton, James Watt: steam engine, Jaron Lanier, jimmy wales, Joseph Schumpeter, Julian Assange, Kevin Kelly, knowledge economy, knowledge worker, Marshall McLuhan, medical bankruptcy, megacity, mortgage tax deduction, Netflix Prize, new economy, Nicholas Carr, oil shock, online collectivism, open borders, open economy, pattern recognition, peer-to-peer lending, personalized medicine, Ray Kurzweil, RFID, ride hailing / ride sharing, Ronald Reagan, scientific mainstream, shareholder value, Silicon Valley, Skype, smart grid, smart meter, social graph, social web, software patent, Steve Jobs, text mining, the scientific method, The Wisdom of Crowds, transaction costs, transfer pricing, University of East Anglia, urban sprawl, value at risk, WikiLeaks, X Prize, young professional, Zipcar
With the help of companies like IBM, Red Hat, and Novell, the Linux community has organized a shared legal defense system and a patent commons to help protect developers from lawsuits. It’s a critical step because no company in their right mind would embed Linux in their products if they felt there was a high probability that a patent infringement suit could quickly derail their product But by pooling their software patents and making them available for free, major corporate participants in the Linux community are sending a signal to users, developers, and would-be adopters that Linux is open for business. Indeed, if they successfully lift the legal cloud over Linux, the stage could at last be set for open-source software to step it up a gear. Enthusiasts are already counting their chickens, speculating that Linux will not only dominate today’s server market, but just about everything from medical devices and consumer electronics to home appliances, automobiles, and traffic lights.
air freight, Apple II, Bill Gates: Altair 8800, Buckminster Fuller, Byte Shop, computer age, computer vision, corporate governance, El Camino Real, game design, Hacker Ethic, hacker house, Haight Ashbury, John Conway, Mark Zuckerberg, Menlo Park, non-fiction novel, Paul Graham, popular electronics, RAND corporation, reversible computing, Richard Stallman, Silicon Valley, software patent, speech recognition, Steve Jobs, Steve Wozniak, Steven Levy, Stewart Brand, Ted Nelson, Whole Earth Catalog, Y Combinator
Stallman has also been an instrumental force in the League for Software Freedom, a group reflecting his belief that proprietary software is a pox upon the digital landscape. In 1991, his efforts came to the attention of those in charge of parceling out the coveted McArthur Fellowship “genius grants.” The last time I saw him, Stallman was organizing a demonstration against the Lotus Development Corporation. His protest regarded their software patents. He believed, and still does, that information should be free. —Steven Levy August 1993 Appendix C. Afterword: 2010 “It’s funny,” says Bill Gates. “When I was young, I didn’t know any old people. When we did the microprocessor revolution, there was nobody old, nobody. They didn’t make us meet with journalists who were old people. I didn’t deal with people in their 30s. Now there’s people in their 50s and 60s.
Piracy : The Intellectual Property Wars from Gutenberg to Gates by Adrian Johns
banking crisis, Berlin Wall, British Empire, Buckminster Fuller, business intelligence, Corn Laws, demand response, distributed generation, Douglas Engelbart, Edmond Halley, Ernest Rutherford, Fellow of the Royal Society, full employment, Hacker Ethic, Howard Rheingold, informal economy, invention of the printing press, Isaac Newton, James Watt: steam engine, John Harrison: Longitude, Marshall McLuhan, Mont Pelerin Society, new economy, New Journalism, Norbert Wiener, pirate software, Republic of Letters, Richard Stallman, road to serfdom, Ronald Coase, software patent, South Sea Bubble, Steven Levy, Stewart Brand, Ted Nelson, the scientific method, traveling salesman, Whole Earth Catalog
In practice, of course, we already have a more reticulated and flexible system than that. What seem like stable doctrines and concepts in the abstract inevitably fragment into conventional norms and rules of thumb when they are put to use in different areas. The principle of “fair use,” for example, is notoriously hard to systematize across domains. Expertise is correspondingly fragmented: populations of specialists exist for software patenting, for example, who work with skills and premises professionally distinct from those devoted to gene patenting. The problem is to frame basic categories of creative commerce in terms of that fact. What is needed, in effect, is a taxonomy rather like Defoe’s, fitted for the twentyfirst century. For example, algorithms, genes, and cloudcomputing applications are as likely to be the bases of progress and prosperity for our descendants as mechanical and poetic works were in Samuel Johnson’s day.