Learn Game Programming with Ruby

Bring Your Ideas to Life with Gosu

Author: Mark Sobkowicz

Publisher: Pragmatic Bookshelf

ISBN: 1680503782

Category: Computers

Page: 206

View: 3317

Level up your programming skills while making fast-paced, arcade-style video games. Make enemy spaceships explode in balls of fire, and escape from a pit while dodging falling boulders. You'll use the fun and approachable Ruby programming language and the Gosu 2D game library, which makes making games a breeze. Gain the skills and techniques you need to bring your own video game ideas to life with moving images and thumping sounds. If you have a little experience programming in Ruby or another language, then you're ready to start making your own video games. In this book you'll learn concepts such as animation, keyboard and mouse movement, sounds and music, and physics as you build four exciting games. Your first game will test your reflexes as you try to click on a ruby that pops in and out of your screen. Learn how to draw images and text, and how to make objects move around the screen. You'll make a space-shooter where you defend your home base from a seemingly endless stream of enemies, as you discover how to use keyboard input, add music and sounds, an opening title screen, and scrolling end-credits. Next up: make a sliding number puzzle game where you'll learn to incorporate more complicated logic and user interaction into your game. Learn all about game physics as you build a game where a bold adventurer must climb out of a pit while dodging bouncing, spinning rocks. Finally, package up your games as Windows and Mac apps so you can share them with your friends. When you're done with this book, you'll have improved your programming skills, and you'll have all the tools you need to make your own arcade-style games. What You Need: You'll need a computer running Windows 7 or later, or Mac OS X 10.7 or later. All the other software you need is free, and the first chapter will get you up and running.

Learn Game Programming with Ruby

Bring Your Ideas to Life with Gosu

Author: Mark Sobkowicz

Publisher: N.A

ISBN: 9781680500738

Category:

Page: 185

View: 4874

Level up your programming skills while making fast-paced, arcade-style video games. Make enemy spaceships explode in balls of fire, and escape from a pit while dodging falling boulders. You'll use the fun and approachable Ruby programming language and the Gosu 2D game library, which makes making games a breeze. Gain the skills and techniques you need to bring your own video game ideas to life with moving images and thumping sounds. If you have a little experience programming in Ruby or another language, then you're ready to start making your own video games. In this book you'll learn concepts such as animation, keyboard and mouse movement, sounds and music, and physics as you build four exciting games. Your first game will test your reflexes as you try to click on a ruby that pops in and out of your screen. Learn how to draw images and text, and how to make objects move around the screen. You'll make a space-shooter where you defend your home base from a seemingly endless stream of enemies, as you discover how to use keyboard input, add music and sounds, an opening title screen, and scrolling end-credits. Next up: make a sliding number puzzle game where you'll learn to incorporate more complicated logic and user interaction into your game. Learn all about game physics as you build a game where a bold adventurer must climb out of a pit while dodging bouncing, spinning rocks. Finally, package up your games as Windows and Mac apps so you can share them with your friends. When you're done with this book, you'll have improved your programming skills, and you'll have all the tools you need to make your own arcade-style games. What You Need: You'll need a computer running Windows 7 or later, or Mac OS X 10.7 or later. All the other software you need is free, and the first chapter will get you up and running.

Practical Ruby Projects

Ideas for the Eclectic Programmer

Author: Christopher Cyll

Publisher: Apress

ISBN: 9781430204718

Category: Computers

Page: 328

View: 8636

Revitalized by Ruby on Rails, the Ruby language continues to grow in popularity. Books like this are necessary to fill the demand. Here is a classic of its kind; required reading for Ruby programmers who have already mastered the basics and want to learn higher level techniques. Practical Ruby Projects presents nine diverse projects that will teach new and innovative techniques in a learn-by-example fashion. They include a turn-based adventure game and a generative music creator. While there are many other Ruby titles, none of them take this unique project-based approach to teaching.

3D Game Programming for Kids

Create Interactive Worlds with JavaScript

Author: Chris Strom

Publisher: Pragmatic Bookshelf

ISBN: 1680506250

Category: Computers

Page: 374

View: 8340

You know what's even better than playing games? Programming your own! Make your own online games, even if you're an absolute beginner. Let your imagination come to 3D life as you learn real-world programming skills with the JavaScript programming language - the language used everywhere on the web. This new edition is completely revised, and takes advantage of new programming features to make game programming even easier to learn. Plus, new effects make your games even cooler. When you're done, you're going to be amazed at what you can create. Jump right in! Start programming cool stuff on page 1. Keep building new and different things until the very last page. This book wants you to play. Not just play games, but play with code. Play with programming. Because the best way to learn something is to have fun with it! This second edition is updated from start to finish to make it even easier to get started programming in JavaScript. Every example has been updated to make it easier, with new example games to explore and new 3D effects that make your games even more fun! Want a red donut? You can make hundreds of them, spinning around like mad. Want to create a star field? Make a hundred or a thousand stars. Make them red, green, or blue. Explosions? Fireworks? Planets? It's up to you. And, using a code editor created especially for this book, you'll program right in your web browser. You'll see the results of your work and imagination right away - right next to the code that you just typed! Along the way, you'll pick up a ton of programming knowledge, and dive in even deeper with some more advanced chapters. Whatever you want to do, this book has your back. Best of all, you get to create awesome games and say, "I made this!" What You Need: You need the latest version of the Google Chrome Web browser, available for free from https://chrome.google.com. You also need an Internet connection to access the ICE Code Editor the first time. ICE Code Editor will be loaded onto your computer, so you won't need Internet access for later projects.

Game Programming with Python, Lua, and Ruby

Author: Tom Gutschmidt

Publisher: Course Technology

ISBN: 9781592000777

Category: Computers

Page: 437

View: 3435

Get ready to dive headfirst into the world of programming! "Game Programming with Python, Lua, and Ruby" offers an in-depth look at these three flexible languages as they relate to creating games. No matter what your skill level as a programmer, this book provides the guidance you need. Each language is covered in its own section—you'll begin with the basics of syntax and style and then move on to more advanced topics. Follow along with each language or jump right to a specific section! Similar features in Python, Lua, and Ruby—including functions, string handling, data types, commenting, and arrays and strings—are examined. Learn how each language is used in popular game engines and projects, and jumpstart your programming expertise as you develop skills you'll use again and again!

Comprehensive Ruby Programming

Author: Jordan Hudgens

Publisher: Packt Publishing Ltd

ISBN: 1787287998

Category: Computers

Page: 330

View: 5827

This book will provide you with all of the tools you need to be a professional Ruby developer. Starting with the core principles, such as syntax and best practices, and up to advanced topics like metaprogramming and big data analysis. About This Book Provides the core skills required to become a Ruby programmer Covers how to use the most popular Ruby Gem libraries Includes details on regular expressions Who This Book Is For This is a complete course written from the ground up for beginners wanting to gain a solid understanding of the Ruby language. It starts at the beginning with how to install Ruby and work with it on multiple machines, so simply have a computer that's connected to the Internet and you'll be ready. What You Will Learn Learn how to use Ruby code effectively, picking the right tool for the job and not duplicating built-in functionality Gain best software development practices, and how to identify and fix common errors Absorb core programming skills, such as variables, strings, loops, conditionals, and much more Explore object-oriented programming and learn to create modular, reusable code that you can use across projects Build 10 practical Ruby programs as you work through the book on topics such as big data analysis and solving Euler equations In Detail Ruby is a powerful, general-purpose programming language that can be applied to any task. Whether you are an experienced developer who wants to learn a new language or you are new to programming, this book is your comprehensive Ruby coding guide. Starting with the foundational principles, such as syntax, and scaling up to advanced topics such as big data analysis, this book will give you all of the tools you need to be a professional Ruby developer. A few of the key topics are: object-oriented programming, built-in Ruby methods, core programming skills, and an introduction to the Ruby on Rails and Sinatra web frameworks. You will also build 10 practical Ruby programs. Created by an experienced Ruby developer, this book has been written to ensure it focuses on the skills you will need to be a professional Ruby developer. After you have read this book, you will be ready to start building real-world Ruby projects. Style and approach This is a comprehensive course for learning the Ruby programming language that works methodically through everything that you need to know. It begins with the basics of the language and then works through some complete projects to apply your skills and ensure that you have fully absorbed them and can use them in the real world.

The Pragmatic Programmer

From Journeyman to Master

Author: Andrew Hunt,David Thomas

Publisher: Addison-Wesley Professional

ISBN: 013211917X

Category: Computers

Page: 352

View: 1900

What others in the trenches say about The Pragmatic Programmer... “The cool thing about this book is that it’s great for keeping the programming process fresh. The book helps you to continue to grow and clearly comes from people who have been there.” —Kent Beck, author of Extreme Programming Explained: Embrace Change “I found this book to be a great mix of solid advice and wonderful analogies!” —Martin Fowler, author of Refactoring and UML Distilled “I would buy a copy, read it twice, then tell all my colleagues to run out and grab a copy. This is a book I would never loan because I would worry about it being lost.” —Kevin Ruland, Management Science, MSG-Logistics “The wisdom and practical experience of the authors is obvious. The topics presented are relevant and useful.... By far its greatest strength for me has been the outstanding analogies—tracer bullets, broken windows, and the fabulous helicopter-based explanation of the need for orthogonality, especially in a crisis situation. I have little doubt that this book will eventually become an excellent source of useful information for journeymen programmers and expert mentors alike.” —John Lakos, author of Large-Scale C++ Software Design “This is the sort of book I will buy a dozen copies of when it comes out so I can give it to my clients.” —Eric Vought, Software Engineer “Most modern books on software development fail to cover the basics of what makes a great software developer, instead spending their time on syntax or technology where in reality the greatest leverage possible for any software team is in having talented developers who really know their craft well. An excellent book.” —Pete McBreen, Independent Consultant “Since reading this book, I have implemented many of the practical suggestions and tips it contains. Across the board, they have saved my company time and money while helping me get my job done quicker! This should be a desktop reference for everyone who works with code for a living.” —Jared Richardson, Senior Software Developer, iRenaissance, Inc. “I would like to see this issued to every new employee at my company....” —Chris Cleeland, Senior Software Engineer, Object Computing, Inc. “If I’m putting together a project, it’s the authors of this book that I want. . . . And failing that I’d settle for people who’ve read their book.” —Ward Cunningham Straight from the programming trenches, The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how to Fight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation. Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.

HTML5 Games: Novice to Ninja

Create Smash Hit Games in HTML5

Author: Earle Castledine

Publisher: SitePoint

ISBN: 1492065420

Category: Computers

Page: 462

View: 1705

This book will teach you how to create awesome video games. Games from scratch. Games that run cross-platform, in web browsers, and on phones. Games filled with dynamic sound and music. Games overflowing with impressive visual effects. Fun games. More importantly, this book will teach you how to think about making games. You'll learn to analyze and dissect games; to understand what it is that makes great games great. By the end of the journey you'll have all the knowledge and tools needed to produce engaging, polished products that people will love to play. What's inside? Learn the basics: game loops and input Draw graphics on the screen using Canvas Add amazing sound effects and music using the Web Audio API Develop several fun games: a platformer, a shoot ‘em up, a dungeon crawler, and a physics-based game Create your own JavaScript game library Jazz up your game up with "juice": screen shakes, particle effects, and more

Exercises for Programmers

57 Challenges to Develop Your Coding Skills

Author: Brian P. Hogan

Publisher: N.A

ISBN: 9781680501223

Category: Computers

Page: 110

View: 6951

When you write software, you need to be at the top of your game. Great programmers practice to keep their skills sharp. Get sharp and stay sharp with more than fifty practice exercises rooted in real-world scenarios. If you're a new programmer, these challenges will help you learn what you need to break into the field, and if you're a seasoned pro, you can use these exercises to learn that hot new language for your next gig. One of the best ways to learn a programming language is to use it to solve problems. That's what this book is all about. Instead of questions rooted in theory, this book presents problems you'll encounter in everyday software development. These problems are designed for people learning their first programming language, and they also provide a learning path for experienced developers to learn a new language quickly. Start with simple input and output programs. Do some currency conversion and figure out how many months it takes to pay off a credit card. Calculate blood alcohol content and determine if it's safe to drive. Replace words in files and filter records, and use web services to display the weather, store data, and show how many people are in space right now. At the end you'll tackle a few larger programs that will help you bring everything together. Each problem includes constraints and challenges to push you further, but it's up to you to come up with the solutions. And next year, when you want to learn a new programming language or style of programming (perhaps OOP vs. functional), you can work through this book again, using new approaches to solve familiar problems. What You Need: You need access to a computer, a programming language reference, and the programming language you want to use.

Pragmatic Thinking and Learning

Refactor Your Wetware

Author: Andy Hunt

Publisher: Pragmatic Bookshelf

ISBN: 1680504223

Category: Computers

Page: 252

View: 7603

Printed in full color. Software development happens in your head. Not in an editor, IDE, or designtool. You're well educated on how to work with software and hardware, but what about wetware--our own brains? Learning new skills and new technology is critical to your career, and it's all in your head. In this book by Andy Hunt, you'll learn how our brains are wired, and how to take advantage of your brain's architecture. You'll learn new tricks and tipsto learn more, faster, and retain more of what you learn. You need a pragmatic approach to thinking and learning. You need to Refactor Your Wetware. Programmers have to learn constantly; not just the stereotypical new technologies, but also the problem domain of the application, the whims of the user community, the quirks of your teammates, the shifting sands of the industry, and the evolving characteristics of the project itself as it is built. We'll journey together through bits of cognitive and neuroscience, learning and behavioral theory. You'll see some surprising aspects of how our brains work, and how you can take advantage of the system to improve your own learning and thinking skills. In this book you'll learn how to: Use the Dreyfus Model of Skill Acquisition to become more expert Leverage the architecture of the brain to strengthen different thinking modes Avoid common "known bugs" in your mind Learn more deliberately and more effectively Manage knowledge more efficiently

Learn Functional Programming with Elixir

New Foundations for a New World

Author: Ulisses Almeida

Publisher: N.A

ISBN: 9781680502459

Category: Computers

Page: 200

View: 3749

Elixir's straightforward syntax and this guided tour give you a clean, simple path to learn modern functional programming techniques. No previous functional programming experience required! This book walks you through the right concepts at the right pace, as you explore immutable values and explicit data transformation, functions, modules, recursive functions, pattern matching, high-order functions, polymorphism, and failure handling, all while avoiding side effects. Don't board the Elixir train with an imperative mindset! To get the most out of functional languages, you need to think functionally. This book will get you there. Functional programming offers useful techniques for building maintainable and scalable software that solves today's difficult problems. The demand for software written in this way is increasing - you don't want to miss out. In this book, you'll not only learn Elixir and its features, you'll also learn the mindset required to program functionally. Elixir's clean syntax is excellent for exploring the critical skills of using functions and concurrency. Start with the basic techniques of the functional way: working with immutable data, transforming data in discrete steps, and avoiding side effects. Next, take a deep look at values, expressions, functions, and modules. Then extend your programming with pattern matching and flow control with case, if, cond, and functions. Use recursive functions to create iterations. Work with data types such as lists, tuples, and maps. Improve code reusability and readability with Elixir's most common high-order functions. Explore how to use lazy computation with streams, design your data, and take advantage of polymorphism with protocols. Combine functions and handle failures in a maintainable way using Elixir features and libraries. Learn techniques that matter to make code that lives harmoniously with the language. What You Need: You'll need a computer and Elixir 1.4 or newer version installed. No previous functional programming or Elixir experience is required. Some experience with any programming language is recommended.

Functional Programming Patterns in Scala and Clojure

Write Lean Programs for the JVM

Author: Michael Bevilacqua-Linn

Publisher: N.A

ISBN: 9781937785475

Category: Computers

Page: 236

View: 7918

Provides a guide to using Scala and Clojure to solve in-depth programming problems.

Land the Tech Job You Love

Author: Andy Lester

Publisher: Pragmatic Life

ISBN: 9781934356265

Category: Business & Economics

Page: 252

View: 4207

Gives you the background, the skills and the hard-won wisdom to bypass the mistakes of those who don't prepare. Conventional wisdom has it that finding a job is simple: send some resumes, go on some interviews and take the offer that sounds best. But that's only the start!

Learning the Vi Editor

Author: Linda Lamb,Arnold Robbins

Publisher: "O'Reilly Media, Inc."

ISBN: 9781565924260

Category: Computers

Page: 327

View: 9939

For many users, working in the Unix environment means using vi, a full-screen text editor available on most Unix systems. Even those who know vi often make use of only a small number of its features.Learning the vi Editor is a complete guide to text editing withvi. Topics new to the sixth edition include multiscreen editing and coverage of fourviclones: vim, elvis, nvi, and vile and their enhancements to vi, such as multi-window editing, GUI interfaces, extended regular expressions, and enhancements for programmers. A new appendix describes vi's place in the Unix and Internet cultures.Quickly learn the basics of editing, cursor movement, and global search and replacement. Then take advantage of the more subtle power of vi. Extend your editing skills by learning to use ex, a powerful line editor, from within vi. For easy reference, the sixth edition also includes a command summary at the end of each appropriate chapter.Topics covered include: Basic editing Moving around in a hurry Beyond the basics Greater power with ex Global search and replacement Customizing vi and ex Command shortcuts Introduction to the vi clones' extensions The nvi, elvis, vim, and vile editors Quick reference to vi and ex commands vi and the Internet

Metaprogramming Ruby 2

Program Like the Ruby Pros

Author: Paolo Perrotta

Publisher: N.A

ISBN: 9781941222126

Category: Computers

Page: 251

View: 2108

Annotation Everyone in the Ruby world seems to be talking about metaprogramming--how you can use it to remove duplication in your code and write elegant, beautiful programs. Now you can get in on the action as well. This book describes metaprogramming as an essential component of Ruby. Once you understand the principles of Ruby, including the object model, scopes, and eigenclasses, you're on your way to applying metaprogramming both in your daily work and in your fun, after-hours projects. Learning metaprogramming doesn't have to be difficult or boring. By taking you on a Monday-through-Friday workweek adventure with a pair of programmers, Paolo Perrotta helps make mastering the art of metaprogramming both straightforward and entertaining. The book is packed with: Pragmatic examples of metaprogramming in action, many of which come straight from popular libraries or frameworks, such as Rails. Programming challenges that let you experiment and play with some of the most fun, "out-there" metaprogramming concepts. Metaprogramming "spells"--34 practical recipes and idioms that you can study and apply right now, to write code that is sure to impress. Whether you're a Ruby apprentice on the path to mastering the language or a Ruby wiz in search of new tips, this book is for you.

Asterisk

The Future of Telephony

Author: Jim Van Meggelen,Leif Madsen,Jared Smith

Publisher: "O'Reilly Media, Inc."

ISBN: 0596510489

Category: Computers

Page: 574

View: 9038

Provides information on Asterisk, an open source telephony application.

FXRuby

Create Lean and Mean GUIs with Ruby

Author: Lyle Johnson

Publisher: N.A

ISBN: 9781934356074

Category: Computers

Page: 219

View: 6192

Provides information and exercises on developing graphical user interface applications in Ruby.

Head First Python

A Brain-Friendly Guide

Author: Paul Barry

Publisher: "O'Reilly Media, Inc."

ISBN: 1491919493

Category: Computers

Page: 624

View: 3949

Want to learn the Python language without slogging your way through how-to manuals? With Head First Python, you’ll quickly grasp Python’s fundamentals, working with the built-in data structures and functions. Then you’ll move on to building your very own webapp, exploring database management, exception handling, and data wrangling. If you’re intrigued by what you can do with context managers, decorators, comprehensions, and generators, it’s all here. This second edition is a complete learning experience that will help you become a bonafide Python programmer in no time. Why does this book look so different? Based on the latest research in cognitive science and learning theory, Head First Pythonuses a visually rich format to engage your mind, rather than a text-heavy approach that puts you to sleep. Why waste your time struggling with new concepts? This multi-sensory learning experience is designed for the way your brain really works.

Text Processing with Ruby

Extract Value from the Data That Surrounds You

Author: Rob Miller

Publisher: Pragmatic Bookshelf

ISBN: 1680504924

Category: Computers

Page: 272

View: 4800

Text is everywhere. Web pages, databases, the contents of files--for almost any programming task you perform, you need to process text. Cut even the most complex text-based tasks down to size and learn how to master regular expressions, scrape information from Web pages, develop reusable utilities to process text in pipelines, and more. Most information in the world is in text format, and programmers often find themselves needing to make sense of the data hiding within. It might be to convert it from one format to another, or to find out information about the text as a whole, or to extract information fromit. But how do you do this efficiently, avoiding labor-intensive, manual work? Text Processing with Ruby takes a practical approach. You'll learn how to get text into your Ruby programs from the file system and from user input. You'll process delimited files such as CSVs, and write utilities that interact with other programs in text-processing pipelines. Decipher character encoding mysteries, and avoid the pain of jumbled characters and malformed output. You'll learn to use regular expressions to match, extract, and replace patterns in text. You'll write a parser and learn how to process Web pages to pull out information from even the messiest of HTML. Before long you'll be able to tackle even the most enormous and entangled text with ease, scything through gigabytes of data and effortlessly extracting the bits that matter. What You Need: This book requires a passing familiarity with the Ruby programming language, and assumes that you already have Ruby installed on your computer.