For Fun and Profit

For Fun and Profit PDF Author: Christopher Tozzi
Publisher: MIT Press
ISBN: 0262551780
Category : Computers
Languages : en
Pages : 335

Get Book Here

Book Description
The free and open source software movement, from its origins in hacker culture, through the development of GNU and Linux, to its commercial use today. In the 1980s, there was a revolution with far-reaching consequences—a revolution to restore software freedom. In the early 1980s, after decades of making source code available with programs, most programmers ceased sharing code freely. A band of revolutionaries, self-described “hackers,” challenged this new norm by building operating systems with source code that could be freely shared. In For Fun and Profit, Christopher Tozzi offers an account of the free and open source software (FOSS) revolution, from its origins as an obscure, marginal effort by a small group of programmers to the widespread commercial use of open source software today. Tozzi explains FOSS's historical trajectory, shaped by eccentric personalities—including Richard Stallman and Linus Torvalds—and driven both by ideology and pragmatism, by fun and profit. Tozzi examines hacker culture and its influence on the Unix operating system, the reaction to Unix's commercialization, and the history of early Linux development. He describes the commercial boom that followed, when companies invested billions of dollars in products using FOSS operating systems; the subsequent tensions within the FOSS movement; and the battles with closed source software companies (especially Microsoft) that saw FOSS as a threat. Finally, Tozzi describes FOSS's current dominance in embedded computing, mobile devices, and the cloud, as well as its cultural and intellectual influence.

For Fun and Profit

For Fun and Profit PDF Author: Christopher Tozzi
Publisher: MIT Press
ISBN: 0262551780
Category : Computers
Languages : en
Pages : 335

Get Book Here

Book Description
The free and open source software movement, from its origins in hacker culture, through the development of GNU and Linux, to its commercial use today. In the 1980s, there was a revolution with far-reaching consequences—a revolution to restore software freedom. In the early 1980s, after decades of making source code available with programs, most programmers ceased sharing code freely. A band of revolutionaries, self-described “hackers,” challenged this new norm by building operating systems with source code that could be freely shared. In For Fun and Profit, Christopher Tozzi offers an account of the free and open source software (FOSS) revolution, from its origins as an obscure, marginal effort by a small group of programmers to the widespread commercial use of open source software today. Tozzi explains FOSS's historical trajectory, shaped by eccentric personalities—including Richard Stallman and Linus Torvalds—and driven both by ideology and pragmatism, by fun and profit. Tozzi examines hacker culture and its influence on the Unix operating system, the reaction to Unix's commercialization, and the history of early Linux development. He describes the commercial boom that followed, when companies invested billions of dollars in products using FOSS operating systems; the subsequent tensions within the FOSS movement; and the battles with closed source software companies (especially Microsoft) that saw FOSS as a threat. Finally, Tozzi describes FOSS's current dominance in embedded computing, mobile devices, and the cloud, as well as its cultural and intellectual influence.

Fun and Software

Fun and Software PDF Author: Olga Goriunova
Publisher: Bloomsbury Publishing USA
ISBN: 1501318284
Category : Social Science
Languages : en
Pages : 297

Get Book Here

Book Description
Fun and Software offers the untold story of fun as constitutive of the culture and aesthetics of computing. Fun in computing is a mode of thinking, making and experiencing. It invokes and convolutes the question of rationalism and logical reason, addresses the sensibilities and experience of computation and attests to its creative drives. By exploring topics as diverse as the pleasure and pain of the programmer, geek wit, affects of play and coding as a bodily pursuit of the unique in recursive structures, Fun and Software helps construct a different point of entry to the understanding of software as culture. Fun is a form of production that touches on the foundations of formal logic and precise notation as well as rhetoric, exhibiting connections between computing and paradox, politics and aesthetics. From the formation of the discipline of programming as an outgrowth of pure mathematics to its manifestation in contemporary and contradictory forms such as gaming, data analysis and art, fun is a powerful force that continues to shape our life with software as it becomes the key mechanism of contemporary society. Including chapters from leading scholars, programmers and artists, Fun and Software makes a major contribution to the field of software studies and opens the topic of software to some of the most pressing concerns in contemporary theory.

Domain Modeling Made Functional

Domain Modeling Made Functional PDF Author: Scott Wlaschin
Publisher: Pragmatic Bookshelf
ISBN: 1680505491
Category : Computers
Languages : en
Pages : 426

Get Book Here

Book Description
You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) combined with functional programming is the innovative combo that will get you there. In this pragmatic, down-to-earth guide, you'll see how applying the core principles of functional programming can result in software designs that model real-world requirements both elegantly and concisely - often more so than an object-oriented approach. Practical examples in the open-source F# functional language, and examples from familiar business domains, show you how to apply these techniques to build software that is business-focused, flexible, and high quality. Domain-driven design is a well-established approach to designing software that ensures that domain experts and developers work together effectively to create high-quality software. This book is the first to combine DDD with techniques from statically typed functional programming. This book is perfect for newcomers to DDD or functional programming - all the techniques you need will be introduced and explained. Model a complex domain accurately using the F# type system, creating compilable code that is also readable documentation---ensuring that the code and design never get out of sync. Encode business rules in the design so that you have "compile-time unit tests," and eliminate many potential bugs by making illegal states unrepresentable. Assemble a series of small, testable functions into a complete use case, and compose these individual scenarios into a large-scale design. Discover why the combination of functional programming and DDD leads naturally to service-oriented and hexagonal architectures. Finally, create a functional domain model that works with traditional databases, NoSQL, and event stores, and safely expose your domain via a website or API. Solve real problems by focusing on real-world requirements for your software. What You Need: The code in this book is designed to be run interactively on Windows, Mac and Linux.You will need a recent version of F# (4.0 or greater), and the appropriate .NET runtime for your platform.Full installation instructions for all platforms at fsharp.org.

User Interface Design for Programmers

User Interface Design for Programmers PDF Author: Avram Joel Spolsky
Publisher: Apress
ISBN: 1430208570
Category : Computers
Languages : en
Pages : 152

Get Book Here

Book Description
Most programmers' fear of user interface (UI) programming comes from their fear of doing UI design. They think that UI design is like graphic design—the mysterious process by which creative, latte-drinking, all-black-wearing people produce cool-looking, artistic pieces. Most programmers see themselves as analytic, logical thinkers instead—strong at reasoning, weak on artistic judgment, and incapable of doing UI design. In this brilliantly readable book, author Joel Spolsky proposes simple, logical rules that can be applied without any artistic talent to improve any user interface, from traditional GUI applications to websites to consumer electronics. Spolsky's primary axiom, the importance of bringing the program model in line with the user model, is both rational and simple. In a fun and entertaining way, Spolky makes user interface design easy for programmers to grasp. After reading User Interface Design for Programmers, you'll know how to design interfaces with the user in mind. You'll learn the important principles that underlie all good UI design, and you'll learn how to perform usability testing that works.

Modern Software Engineering

Modern Software Engineering PDF Author: David Farley
Publisher: Addison-Wesley Professional
ISBN: 0137314868
Category : Computers
Languages : en
Pages : 479

Get Book Here

Book Description
Improve Your Creativity, Effectiveness, and Ultimately, Your Code In Modern Software Engineering, continuous delivery pioneer David Farley helps software professionals think about their work more effectively, manage it more successfully, and genuinely improve the quality of their applications, their lives, and the lives of their colleagues. Writing for programmers, managers, and technical leads at all levels of experience, Farley illuminates durable principles at the heart of effective software development. He distills the discipline into two core exercises: learning and exploration and managing complexity. For each, he defines principles that can help you improve everything from your mindset to the quality of your code, and describes approaches proven to promote success. Farley's ideas and techniques cohere into a unified, scientific, and foundational approach to solving practical software development problems within realistic economic constraints. This general, durable, and pervasive approach to software engineering can help you solve problems you haven't encountered yet, using today's technologies and tomorrow's. It offers you deeper insight into what you do every day, helping you create better software, faster, with more pleasure and personal fulfillment. Clarify what you're trying to accomplish Choose your tools based on sensible criteria Organize work and systems to facilitate continuing incremental progress Evaluate your progress toward thriving systems, not just more "legacy code" Gain more value from experimentation and empiricism Stay in control as systems grow more complex Achieve rigor without too much rigidity Learn from history and experience Distinguish "good" new software development ideas from "bad" ones Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.

Software Studies

Software Studies PDF Author: Matthew Fuller
Publisher: MIT Press
ISBN: 0262062747
Category : Computer programs
Languages : en
Pages : 349

Get Book Here

Book Description
This collection of short expository, critical and speculative texts offers a field guide to the cultural, political, social and aesthetic impact of software. Experts from a range of disciplines each take a key topic in software and the understanding of software, such as algorithms and logical structures.

Fixing Broken Windows

Fixing Broken Windows PDF Author: George L. Kelling
Publisher: Simon and Schuster
ISBN: 0684837382
Category : Political Science
Languages : en
Pages : 340

Get Book Here

Book Description
Cites successful examples of community-based policing.

Game Programming Patterns

Game Programming Patterns PDF Author: Robert Nystrom
Publisher: Genever Benning
ISBN: 0990582914
Category : Computers
Languages : en
Pages : 353

Get Book Here

Book Description
The biggest challenge facing many game programmers is completing their game. Most game projects fizzle out, overwhelmed by the complexity of their own code. Game Programming Patterns tackles that exact problem. Based on years of experience in shipped AAA titles, this book collects proven patterns to untangle and optimize your game, organized as independent recipes so you can pick just the patterns you need. You will learn how to write a robust game loop, how to organize your entities using components, and take advantage of the CPUs cache to improve your performance. You'll dive deep into how scripting engines encode behavior, how quadtrees and other spatial partitions optimize your engine, and how other classic design patterns can be used in games.

The Fun of Programming

The Fun of Programming PDF Author: Jeremy Gibbons
Publisher: Palgrave MacMillan
ISBN: 9780333992852
Category : Computers
Languages : en
Pages : 277

Get Book Here

Book Description
In this textbook, leading researchers give tutorial expositions on the current state of the art of functional programming. The text is suitable for an undergraduate course immediately following an introduction to functional programming, and also for self-study. All new concepts are illustrated by plentiful examples, as well as exercises. A website gives access to accompanying software.

Community Building on the Web

Community Building on the Web PDF Author: Amy Jo Kim
Publisher: Peachpit Press
ISBN: 013270515X
Category : Computers
Languages : en
Pages : 594

Get Book Here

Book Description
What's the point of creating a great Web site if no one goes there-or worse, if people come but never return? How do some sites, such as America Online, EBay, and GeoCities, develop into Internet communities with loyal followings and regular repeat traffic? How can Web page designers and developers create sites that are vibrant and rewarding? Amy Jo Kim, author of Community Building on the Web and consultant to some of the most successful Internet communities, is an expert at teaching how to design sites that succeed by making new visitors feel welcome, rewarding member participation, and building a sense of their own history. She discusses important design strategies, interviews influential Web community-builders, and provides the reader with templates and questionnaires to use in building their own communities.