Live Coding

Live Coding PDF Author: Alan F. Blackwell
Publisher: MIT Press
ISBN: 0262544814
Category : Social Science
Languages : en
Pages : 353

Get Book Here

Book Description
The first comprehensive introduction to the origins, aspirations, and evolution of live coding. Performative, improvised, on the fly: live coding is about how people interact with the world and each other via code. In the last few decades, live coding has emerged as a dynamic creative practice gaining attention across cultural and technical fields—from music and the visual arts through to computer science. Live Coding: A User’s Manual is the first comprehensive introduction to the practice, and a broader cultural commentary on the potential for live coding to open up deeper questions about contemporary cultural production and computational culture. This multi-authored book—by artists and musicians, software designers, and researchers—provides a practice-focused account of the origins, aspirations, and evolution of live coding, including expositions from a wide range of live coding practitioners. In a more conceptual register, the authors consider liveness, temporality, and knowledge in relation to live coding, alongside speculating on the practice’s future forms.

Live Coding

Live Coding PDF Author: Alan F. Blackwell
Publisher: MIT Press
ISBN: 0262544814
Category : Social Science
Languages : en
Pages : 353

Get Book Here

Book Description
The first comprehensive introduction to the origins, aspirations, and evolution of live coding. Performative, improvised, on the fly: live coding is about how people interact with the world and each other via code. In the last few decades, live coding has emerged as a dynamic creative practice gaining attention across cultural and technical fields—from music and the visual arts through to computer science. Live Coding: A User’s Manual is the first comprehensive introduction to the practice, and a broader cultural commentary on the potential for live coding to open up deeper questions about contemporary cultural production and computational culture. This multi-authored book—by artists and musicians, software designers, and researchers—provides a practice-focused account of the origins, aspirations, and evolution of live coding, including expositions from a wide range of live coding practitioners. In a more conceptual register, the authors consider liveness, temporality, and knowledge in relation to live coding, alongside speculating on the practice’s future forms.

Data-Oriented Programming

Data-Oriented Programming PDF Author: Yehonathan Sharvit
Publisher: Simon and Schuster
ISBN: 1617298573
Category : Computers
Languages : en
Pages : 422

Get Book Here

Book Description
Eliminate the unavoidable complexity of object-oriented designs. The innovative data-oriented programming paradigm makes your systems less complex by making it simpler to access and manipulate data. In Data-Oriented Programming you will learn how to: Separate code from data Represent data with generic data structures Manipulate data with general-purpose functions Manage state without mutating data Control concurrency in highly scalable systems Write data-oriented unit tests Specify the shape of your data Benefit from polymorphism without objects Debug programs without a debugger Data-Oriented Programming is a one-of-a-kind guide that introduces the data-oriented paradigm. This groundbreaking approach represents data with generic immutable data structures. It simplifies state management, eases concurrency, and does away with the common problems you’ll find in object-oriented code. The book presents powerful new ideas through conversations, code snippets, and diagrams that help you quickly grok what’s great about DOP. Best of all, the paradigm is language-agnostic—you’ll learn to write DOP code that can be implemented in JavaScript, Ruby, Python, Clojure, and also in traditional OO languages like Java or C#. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Code that combines behavior and data, as is common in object-oriented designs, can introduce almost unmanageable complexity for state management. The Data-oriented programming (DOP) paradigm simplifies state management by holding application data in immutable generic data structures and then performing calculations using non-mutating general-purpose functions. Your applications are free of state-related bugs and your code is easier to understand and maintain. About the book Data-Oriented Programming teaches you to design software using the groundbreaking data-oriented paradigm. You’ll put DOP into action to design data models for business entities and implement a library management system that manages state without data mutation. The numerous diagrams, intuitive mind maps, and a unique conversational approach all help you get your head around these exciting new ideas. Every chapter has a lightbulb moment that will change the way you think about programming. What's inside Separate code from data Represent data with generic data structures Manage state without mutating data Control concurrency in highly scalable systems Write data-oriented unit tests Specify the shape of your data About the reader For programmers who have experience with a high-level programming language like JavaScript, Java, Python, C#, Clojure, or Ruby. About the author Yehonathan Sharvit has over twenty years of experience as a software engineer. He blogs, speaks at conferences, and leads Data-Oriented Programming workshops around the world. Table of Contents PART 1 FLEXIBILITY 1 Complexity of object-oriented programming 2 Separation between code and data 3 Basic data manipulation 4 State management 5 Basic concurrency control 6 Unit tests PART 2 SCALABILITY 7 Basic data validation 8 Advanced concurrency control 9 Persistent data structures 10 Database operations 11 Web services PART 3 MAINTAINABILITY 12 Advanced data validation 13 Polymorphism 14 Advanced data manipulation 15 Debugging

Rust in Action

Rust in Action PDF Author: Tim McNamara
Publisher: Simon and Schuster
ISBN: 163835622X
Category : Computers
Languages : en
Pages : 454

Get Book Here

Book Description
"This well-written book will help you make the most of what Rust has to offer." - Ramnivas Laddad, author of AspectJ in Action Rust in Action is a hands-on guide to systems programming with Rust. Written for inquisitive programmers, it presents real-world use cases that go far beyond syntax and structure. Summary Rust in Action introduces the Rust programming language by exploring numerous systems programming concepts and techniques. You'll be learning Rust by delving into how computers work under the hood. You'll find yourself playing with persistent storage, memory, networking and even tinkering with CPU instructions. The book takes you through using Rust to extend other applications and teaches you tricks to write blindingly fast code. You'll also discover parallel and concurrent programming. Filled to the brim with real-life use cases and scenarios, you'll go beyond the Rust syntax and see what Rust has to offer in real-world use cases. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Rust is the perfect language for systems programming. It delivers the low-level power of C along with rock-solid safety features that let you code fearlessly. Ideal for applications requiring concurrency, Rust programs are compact, readable, and blazingly fast. Best of all, Rust’s famously smart compiler helps you avoid even subtle coding errors. About the book Rust in Action is a hands-on guide to systems programming with Rust. Written for inquisitive programmers, it presents real-world use cases that go far beyond syntax and structure. You’ll explore Rust implementations for file manipulation, networking, and kernel-level programming and discover awesome techniques for parallelism and concurrency. Along the way, you’ll master Rust’s unique borrow checker model for memory management without a garbage collector. What's inside Elementary to advanced Rust programming Practical examples from systems programming Command-line, graphical and networked applications About the reader For intermediate programmers. No previous experience with Rust required. About the author Tim McNamara uses Rust to build data processing pipelines and generative art. He is an expert in natural language processing and data engineering. Table of Contents 1 Introducing Rust PART 1 RUST LANGUAGE DISTINCTIVES 2 Language foundations 3 Compound data types 4 Lifetimes, ownership, and borrowing PART 2 DEMYSTIFYING SYSTEMS PROGRAMMING 5 Data in depth 6 Memory 7 Files and storage 8 Networking 9 Time and timekeeping 10 Processes, threads, and containers 11 Kernel 12 Signals, interrupts, and exceptions

Critical Code Studies

Critical Code Studies PDF Author: Mark C. Marino
Publisher: MIT Press
ISBN: 0262357437
Category : Computers
Languages : en
Pages : 289

Get Book Here

Book Description
An argument that we must read code for more than what it does—we must consider what it means. Computer source code has become part of popular discourse. Code is read not only by programmers but by lawyers, artists, pundits, reporters, political activists, and literary scholars; it is used in political debate, works of art, popular entertainment, and historical accounts. In this book, Mark Marino argues that code means more than merely what it does; we must also consider what it means. We need to learn to read code critically. Marino presents a series of case studies—ranging from the Climategate scandal to a hactivist art project on the US-Mexico border—as lessons in critical code reading. Marino shows how, in the process of its circulation, the meaning of code changes beyond its functional role to include connotations and implications, opening it up to interpretation and inference—and misinterpretation and reappropriation. The Climategate controversy, for example, stemmed from a misreading of a bit of placeholder code as a “smoking gun” that supposedly proved fabrication of climate data. A poetry generator created by Nick Montfort was remixed and reimagined by other poets, and subject to literary interpretation. Each case study begins by presenting a small and self-contained passage of code—by coders as disparate as programming pioneer Grace Hopper and philosopher Friedrich Kittler—and an accessible explanation of its context and functioning. Marino then explores its extra-functional significance, demonstrating a variety of interpretive approaches.

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.

Performing Electronic Music Live

Performing Electronic Music Live PDF Author: Kirsten Hermes
Publisher: CRC Press
ISBN: 1000470261
Category : Music
Languages : en
Pages : 347

Get Book Here

Book Description
Performing Electronic Music Live lays out conceptual approaches, tools, and techniques for electronic music performance, from DJing, DAWs, MIDI controllers, traditional instruments, live sound design, hardware setups, custom software and hardware, to live visuals, venue acoustics, and live show promotion. Through case studies and contrasting tutorials by successful artists, Kirsten Hermes explores the many different ways in which you can create memorable experiences on stage. Featuring interviews with highly accomplished musicians and practitioners, readers can also expand on their knowledge with hands-on video tutorials for each chapter via the companion website, performingelectronicmusic.live. Performing Electronic Music Live is an essential, all-encompassing resource for professionals, students of music production courses, and researchers in the field of creative-focused performance technology.

The Oxford Handbook of Algorithmic Music

The Oxford Handbook of Algorithmic Music PDF Author: Alex McLean
Publisher: Oxford University Press
ISBN: 0190655712
Category : Technology & Engineering
Languages : en
Pages : 648

Get Book Here

Book Description
With the ongoing development of algorithmic composition programs and communities of practice expanding, algorithmic music faces a turning point. Joining dozens of emerging and established scholars alongside leading practitioners in the field, chapters in this Handbook both describe the state of algorithmic composition and also set the agenda for critical research on and analysis of algorithmic music. Organized into four sections, chapters explore the music's history, utility, community, politics, and potential for mass consumption. Contributors address such issues as the role of algorithms as co-performers, live coding practices, and discussions of the algorithmic culture as it currently exists and what it can potentially contribute society, education, and ecommerce. Chapters engage particularly with post-human perspectives - what new musics are now being found through algorithmic means which humans could not otherwise have made - and, in reciprocation, how algorithmic music is being assimilated back into human culture and what meanings it subsequently takes. Blending technical, artistic, cultural, and scientific viewpoints, this Handbook positions algorithmic music making as an essentially human activity.

Programming Phoenix LiveView

Programming Phoenix LiveView PDF Author: Bruce A. Tate
Publisher: Pragmatic Bookshelf
ISBN: 9781680508215
Category :
Languages : en
Pages : 370

Get Book Here

Book Description
The days of the traditional request-response web application are long gone, but you don't have to wade through oceans of JavaScript to build the interactive applications today's users crave. The innovative Phoenix LiveView library empowers you to build applications that are fast and highly interactive, without sacrificing reliability. This definitive guide to LiveView isn't a reference manual. Learn to think in LiveView. Write your code layer by layer, the way the experts do. Explore techniques with experienced teachers to get the best possible performance. Instead of settling for traditional manuals and tutorials, get insights that can only be learned from experience. Start with the Elixir language techniques that effortlessly marry your client templates and server-side handlers. Design your systems with the right layers in the right places so that your code is easier to understand, change, and support. Explore features like multi-part uploads and learn how to comprehensively test your live views. Roll into advanced techniques to tie your code to other services through the powerful publish-subscribe interface. LiveView brings the most important programming techniques from the popular Elm and JavaScript React frameworks to Elixir. You'll experience firsthand how to harness that power by working side by side with some of the first LiveView users. You will write your programs to change data on the server, and you'll see how LiveView efficiently detects those changes and reflects them on the web page. Start from scratch, use built-in generators, and craft reusable components. Your single-purpose reducers will transform server data that your renderers can turn into efficient client-side diffs. Don't settle for knowing how things work. To get the most out of LiveView, you need to know why they work that way. Co-authored by one of the most prolific authors and teachers in all of Elixir, this book is your perfect guide to one of the most important new frameworks of our generation. What You Need: Programming Phoenix LiveView uses Phoenix version 1.5, and any Elixir version compatible with it. You will also want PostgreSQL and JavaScript Node.

Scratch Music Projects

Scratch Music Projects PDF Author: Andrew R. Brown
Publisher: Oxford University Press
ISBN: 0199309299
Category : Music
Languages : en
Pages : 336

Get Book Here

Book Description
In this practical, project-based book, music students, educators, and coders receive the necessary tools to engage with real-world experiences in computation and creativity using the programming language Scratch. Designed to teach students the fundamental concepts of computational thinking through interactive music, sound, and media, projects vary in complexity and encourage readers to make music through playing and creating music. This book introduces readers to concepts in computational thinking and coding alongside parallel concepts in music, creative sound, and interaction. The book begins with a gentle introduction to the Scratch 3.0 programming environment through hands-on projects using a computer keyboard and mouse to make music and control sounds, creating original sounds, and performing them as an instrument. The next chapters introduce programming musical sequences, melodies, and structures, and assembling them into a virtual band that can be performed live or automated through algorithms. The final chapters explore computational thinking and music in the contexts of making games with sound effects, teaching the computer to generate music using algorithms and rules, interacting with music using live video, finishing with a chapter on musical live coding, where readers will create and manipulate computer code to perform, improvise, and create original music live.

The Nature of Code

The Nature of Code PDF Author: Daniel Shiffman
Publisher: No Starch Press
ISBN: 1718503717
Category : Computers
Languages : en
Pages : 642

Get Book Here

Book Description
All aboard The Coding Train! This beginner-friendly creative coding tutorial is designed to grow your skills in a fun, hands-on way as you build simulations of real-world phenomena with “The Coding Train” YouTube star Daniel Shiffman. What if you could re-create the awe-inspiring flocking patterns of birds or the hypnotic dance of fireflies—with code? For over a decade, The Nature of Code has empowered countless readers to do just that, bridging the gap between creative expression and programming. This innovative guide by Daniel Shiffman, creator of the beloved Coding Train, welcomes budding and seasoned programmers alike into a world where code meets playful creativity. This JavaScript-based edition of Shiffman’s groundbreaking work gently unfolds the mysteries of the natural world, turning complex topics like genetic algorithms, physics-based simulations, and neural networks into accessible and visually stunning creations. Embark on this extraordinary adventure with projects involving: A physics engine: Simulate the push and pull of gravitational attraction. Flocking birds: Choreograph the mesmerizing dance of a flock. Branching trees: Grow lifelike and organic tree structures. Neural networks: Craft intelligent systems that learn and adapt. Cellular automata: Uncover the magic of self-organizing patterns. Evolutionary algorithms: Play witness to natural selection in your code. Shiffman’s work has transformed thousands of curious minds into creators, breaking down barriers between science, art, and technology, and inviting readers to see code not just as a tool for tasks but as a canvas for boundless creativity. Whether you’re deciphering the elegant patterns of natural phenomena or crafting your own digital ecosystems, Shiffman’s guidance is sure to inform and inspire. The Nature of Code is not just about coding; it’s about looking at the natural world in a new way and letting its wonders inspire your next creation. Dive in and discover the joy of turning code into art—all while mastering coding fundamentals along the way. NOTE: All examples are written with p5.js, a JavaScript library for creative coding, and are available on the book's website.