Rails 4 Test Prescriptions

Build a Healthy Codebase

Author: Noel Rappin

Publisher: Pragmatic Bookshelf

ISBN: 1680504428

Category: Computers

Page: 350

View: 6596

Does your Rails code suffer from bloat, brittleness, or inaccuracy? Cure these problems with a regular dose of test-driven development. Rails 4 Test Prescriptions is a comprehensive guide to how tests can help you design and write better Rails applications. In this completely revised edition, you'll learn why testing works and how to test effectively using Rails 4, Minitest 5, and RSpec 3, as well as popular testing libraries such as factory_girl and Cucumber. Do what the doctor ordered to make your applications feel all better. Side effects may include better code, fewer bugs, and happier developers. Your Ruby on Rails application is sick. Deadlines are looming, but every time you make the slightest change to the code, something else breaks. Nobody remembers what that tricky piece of code was supposed to do, and nobody can tell what it actually does. Plus, it has bugs. You need test-driven development, a process for improving the design, maintainability, and long-term viability of software. Containing both practical code examples and discussion of why testing works, this book starts with the most basic features delivered as part of core Ruby on Rails. Once you've integrated those features into your coding practice, you'll learn how to use popular third-party testing tools such as RSpec, Mocha, Cucumber, and factory_girl. You'll test the component parts of a Rails application, including the back-end model logic and the front-end display logic. Using Rails examples, you'll learn how to use testing to enable your code to respond better to future change. Plus, you'll see how to handle real-world testing situations. This completely revised edition contains a new tutorial, as well as new examples throughout the book. Many chapters, including the JavaScript chapter, have undergone major changes to reflect new tools and new practices. And there are brand new chapters on testing for security, and testing external services. What You Need:Ruby 2.1, Rails 4
Release

Rails Test Prescriptions

Keeping Your Application Healthy

Author: Noel Rappin

Publisher: N.A

ISBN: 9781934356647

Category: Computers

Page: 348

View: 1894

Provides information on testing procedures and tools for Rails 2 and Rails 3.
Release

Professional Ruby on Rails

Author: Noel Rappin

Publisher: John Wiley & Sons

ISBN: 0470334304

Category: Computers

Page: 457

View: 9476

Nothing less than a revolution in the way web applications are constructed,Ruby on Rails (RoR) boasts a straightforward and intuitive nature that avoids programming repetition and makes it infinitely easier to build for the web. This book captures the current best practices to show you the most efficient way to build a spectacular web application with RoR. You?ll learn everything you need to know in order to extend Rails so that you can take advantage of the many exciting and wonderful things that are being done by the diligent RoR programming community.
Release

Crafting Rails 4 Applications

Expert Practices for Everyday Rails Development

Author: Jose Valim

Publisher: Pragmatic Bookshelf

ISBN: 1680503308

Category: Computers

Page: 200

View: 9478

Get ready to see Rails as you've never seen it before. Learn how to extend the framework, change its behavior, and replace whole components to bend it to your will. Eight different test-driven tutorials will help you understand Rails' inner workings and prepare you to tackle complicated projects with solutions that are well-tested, modular, and easy to maintain. This second edition of the bestselling Crafting Rails Applications has been updated to Rails 4 and discusses new topics such as streaming, mountable engines, and thread safety. Rails is one of the most extensible frameworks out there. This pioneering book deep-dives into the Rails plugin APIs and shows you, the intermediate Rails developer, how to use them to write better web applications and make your day-to-day work with Rails more productive. Rails Core developer Jose Valim guides you through eight different tutorials, each using test-driven development to build a new Rails plugin or application that solves common problems with these APIs. You'll learn how the Rails rendering stack works and customize it to read templates from the database while you discover how to mimic Active Record behavior, such as validations, in any other object. You'll find out how Rails integrates with Rack, the different ways to stream data from your web application, and how to mix Rails engines and Sinatra applications into your Rails apps, so you can choose the most appropriate tool for the job. In addition, you'll improve your productivity by customizing generators and responders. This book will help you understand Rails' inner workings, including generators, template handlers, internationalization, routing, and responders. With the knowledge you'll gain, you'll create well-tested, modular, and robust solutions for your next project.
Release

Test Driven Development in Ruby

A Practical Introduction to TDD Using Problem and Solution Domain Analysis

Author: Bala Paranj

Publisher: Apress

ISBN: 1484226380

Category: Computers

Page: 288

View: 8756

Learn the basics of test driven development (TDD) using Ruby. You will carry out problem domain analysis, solution domain analysis, designing test cases, and writing tests first. These fundamental concepts will give you a solid TDD foundation to build upon. Test Driven Development in Ruby is written by a developer for developers. The concepts are first explained, then a coding demo illustrates how to apply the theory in practice. At the end of each chapter an exercise is given to reinforce the material. Complete with working files and code samples, you'll be able to work alongside the author, a trainer, by following the material in this book. What You Will Learn Carry out problem domain analysis, solution domain analysis, designing test cases, and writing tests first Use assertions Discover the structure of a test and the TDD cycle Gain an understanding of minimal implementation, starter test, story test, and next test Handle refactoring using Ruby Hide implementation details Test precisely and concretely Make your code robust Who This Book Is For Experienced Ruby programmers or web developers with some prior experience with Ruby.
Release

Continuous Testing with Ruby, Rails, and JavaScript

Author: Ben Rady,Rod Coffin

Publisher: N.A

ISBN: 9781934356708

Category: Computers

Page: 139

View: 7102

Building on techniques used by Agile software development practitioners, "Continuous Testing with Ruby" shows readers how to get instant feedback about both the quality of their code and the quality of their tests.
Release

WxPython in Action

Author: Noel Rappin,Robin Dunn

Publisher: Manning Publications

ISBN: 9781932394627

Category: Computers

Page: 552

View: 8900

Because they are often large and complex, GUI programming tool kits can be hard to use. wxPython is a combination of the Python programming language and the wxWidgets toolkit, which allows programmers to create programs with a robust, highly functional graphical user interface, simply and easily. wxPython combines the power of an exceptionally complete user interface toolkit with an exceptionally flexible programming language. The result is a toolkit that is unique in the ease with which complex applications can be built and maintained. ""wxPython in Action"" is a complete guide to the wxPython toolkit, containing a tutorial for getting started, a guide to best practices, and a reference to wxPython's extensive widget set. After an easy introduction to wxPython concepts and programming practices, the book takes an in-depth tour of when and how to use the bountiful collection of widgets offered by wxPython. All features are illustrated with useful code examples and reference tables are included for handy lookup of an object's properties, methods, and events. The book enables developers to learn wxPython quickly and remains a valuable resource for futurework.
Release

Take My Money: Accepting Payments on the Web

Author: Rappin

Publisher: Pragmatic Bookshelf

ISBN: 9781680501995

Category: Computers

Page: 290

View: 4131

Getting paid using Stripe or PayPal is only the beginning of creating a fully functional e-commerce application. You also need to handle failure cases, inventory management, administration, security, reporting, and be compliant with legal issues. Manage one-time transactions and recurring subscriptions, handle inventory management, issue discounts and refunds, mitigate administration and compliance issues, and test your code to ensure your customers have a smooth, hassle-free experience.An e-commerce payment application is literally rewarding to build--you can see the return on investment as genuine money is added to your account. But it can be stressful to manage, with security and compliance concerns and administration issues. And your entire business may depend on these features working smoothly. Let Noel Rappin guide you through the setup and complications of dealing with online financial transactions. Go beyond just the interaction with the gateway service and build an application that will be robust and useful over time. Set up a Stripe and PayPal payment gateway and accept credit card payments. Use the Stripe API to improve security by validating credit card data without sending it through your own server. Design your application for maximum flexibility against the inevitable complexities of business logic, including handling discounts. Manage the multiple failure points of dealing with payment gateways and test for failure cases. Use background jobs to simplify third party interactions. Handle administrative tasks such as issuing refunds and discounts while maintaining data integrity and security. Create subscription plans and manage recurring payments, and stay on top of legal issues regarding taxes, reporting, and compliance. Pay affiliates or contributors from your application. By the end, you will know how to create a fully-functional web payment-taking machine.What You Need: The code in this book works with Ruby 2.3.1 and Rails 5, though nearly all of the code will run with earlier versions of Ruby and Rails.
Release

Practical Rails 5

Building Social Networking and News Site Using Rails and Angular.js

Author: Alan Bradburne

Publisher: aPress

ISBN: 9781484213810

Category: Computers

Page: 500

View: 2794

Practical Rails 5 teaches the fundamentals of developing a complete web application with Ruby on Rails 5 in a practical manner. Through the course of the book, the process of specifying, designing, building and testing each feature is discussed and demonstrated, giving the reader the confidence and tools to develop their own applications. While the book doesn't expect any previous Ruby or Rails experience, basic programming knowledge and understanding of web applications is assumed. You'll learn how to create an entire Ruby on Rails web application from conception to deployment, taking advantage of the latest Rails 5 features, as well as use JavaScript frameworks like Angular.js. You'll also use JSON APIs and HTML5. You will learn Rails best practices and how to approach building news features along the way. Rails continues to be one of the most popular web application development frameworks in the world and is the number one choice for Ruby and even Java developers building websites and even enterprise applications today.
Release

Starting a Tech Business

A Practical Guide for Anyone Creating Or Designing Applications Or Software

Author: Alex Cowan

Publisher: John Wiley & Sons

ISBN: 1118205553

Category: Business & Economics

Page: 258

View: 3141

"Technology-enabled businesses offer one of today's best available means to creating wealth, and the successful application of technology increasingly separates an industry's winners from its losers. Even better, while a decade ago the barriers to creating a technology-enabled business required a pole vault, they've lowered to where a determined step in the right direction is enough to get started.There are many important things prospective entrepreneurs and business enterprises need to know to avoid common pitfalls in the fast-paced world of high tech business. This book provides these practical checklists and frameworks that business owners, entrepreneurs, and professionals can apply to any web 2.0 business idea, whether they are developing software and products or beginning a technology-enabled business. The book includes valuable insights on How do you prepare yourself or your company for successful systems implementation? How do you develop a best-practice user interface for your/your company's system? What are some of the most common disconnects between engineers and business people and how can you avoid them? What are the core functional roles in a technology-enabled business and what skills sets do they require? How do you identify worthwhile partnerships and invest in them enough to make them successful? "--
Release

Effective Testing with Rspec 3: Build Ruby Apps with Confidence

Author: Marston,Dees

Publisher: Pragmatic Bookshelf

ISBN: 9781680501988

Category: Computers

Page: 275

View: 2008

Build and maintain quality software with RSpec, the popular BDD-flavored Ruby testing framework. This definitive guide from RSpec's lead developer shows you how to use RSpec to drive more maintainable designs, specify and document expected behavior, and prevent regressions during refactoring. Build a project using RSpec to design, describe, and test the behavior of your code-whether you're new to testing tools or an experienced developer.RSpec has been downloaded more than 40 million times. Find out how to use this influential Ruby testing framework to iteratively develop a project with the confidence that comes from well-tested code. "Effective Testing With RSpec 3" guides you through developing a Ruby project with RSpec, and then explores the individual components in more detail.First, learn the basics of installing and using RSpec. Then, build a real-world JSON API, using RSpec throughout the process to drive a BDD-style outside-in workflow. Apply an effective test strategy to write fast, robust tests that support evolutionary design through refactoring. The rest of the book provides the definitive guide to RSpec's components. Use RSpec:: Core's metadata to slice and dice your spec suite in flexible ways. Dig into RSpec:: Expectation's matchers, which can be composed in flexible ways to precisely specify expected outcomes and get good failure messages that help you quickly diagnose the problem. Write fast, isolated tests with RSpec:: Mocks test doubles while pushing your code toward simpler interfaces.The authors, with a combined 20 years of automated testing experience, share useful, actionable testing advice that will help you have a fun, productive testing experience.What You Need: To follow along with the book, you'll need Ruby 2.1+. The book will guide you through installing RSpec 3 and setting up a new project to use it.
Release

Metaprogramming Ruby 2

Program Like the Ruby Pros

Author: Paolo Perrotta

Publisher: N.A

ISBN: 9781941222126

Category: Computers

Page: 251

View: 9071

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

The Rails View

Creating a Beautiful and Maintainable User Experience

Author: John Athayde,Bruce Williams

Publisher: N.A

ISBN: 9781934356876

Category: Computers

Page: 245

View: 6785

Provides information on the capabilities and subsystems of Rails for the design and development of production-quality software.
Release

How to Recruit and Hire Great Software Engineers

Building a Crack Development Team

Author: Patrick McCuller

Publisher: Apress

ISBN: 1430249188

Category: Computers

Page: 256

View: 9869

Want a great software development team? Look no further. How to Recruit and Hire Great Software Engineers: Building a Crack Development Team is a field guide and instruction manual for finding and hiring excellent engineers that fit your team, drive your success, and provide you with a competitive advantage. Focusing on proven methods, the book guides you through creating and tailoring a hiring process specific to your needs. You’ll learn to establish, implement, evaluate, and fine-tune a successful hiring process from beginning to end. Some studies show that really good programmers can be as much as 5 or even 10 times more productive than the rest. How do you find these rock star developers? Patrick McCuller, an experienced engineering and hiring manager, has made answering that question part of his life's work, and the result is this book. It covers sourcing talent, preparing for interviews, developing questions and exercises that reveal talent (or the lack thereof), handling common and uncommon situations, and onboarding your new hires. How to Recruit and Hire Great Software Engineers will make your hiring much more effective, providing a long-term edge for your projects. It will: Teach you everything you need to know to find and evaluate great software developers. Explain why and how you should consider candidates as customers, which makes offers easy to negotiate and close. Give you the methods to create and engineer an optimized process for your business from job description to onboarding and the hundreds of details in between. Provide analytical tools and metrics to help you improve the quality of your hires. This book will prove invaluable to new managers. But McCuller’s deep thinking on the subject will also help veteran managers who understand the essential importance of finding just the right person to move projects forward. Put into practice, the hiring process this book prescribes will not just improve the success rate of your projects—it’ll make your work life easier and lot more fun.
Release

Effective DevOps

Building a Culture of Collaboration, Affinity, and Tooling at Scale

Author: Jennifer Davis,Ryn Daniels

Publisher: "O'Reilly Media, Inc."

ISBN: 1491926430

Category: Computers

Page: 410

View: 6578

Some companies think that adopting devops means bringing in specialists or a host of new tools. With this practical guide, you’ll learn why devops is a professional and cultural movement that calls for change from inside your organization. Authors Ryn Daniels and Jennifer Davis provide several approaches for improving collaboration within teams, creating affinity among teams, promoting efficient tool usage in your company, and scaling up what works throughout your organization’s inflection points. Devops stresses iterative efforts to break down information silos, monitor relationships, and repair misunderstandings that arise between and within teams in your organization. By applying the actionable strategies in this book, you can make sustainable changes in your environment regardless of your level within your organization. Explore the foundations of devops and learn the four pillars of effective devops Encourage collaboration to help individuals work together and build durable and long-lasting relationships Create affinity among teams while balancing differing goals or metrics Accelerate cultural direction by selecting tools and workflows that complement your organization Troubleshoot common problems and misunderstandings that can arise throughout the organizational lifecycle Learn from case studies from organizations and individuals to help inform your own devops journey
Release

Developing Models in Science Education

Author: J.K. Gilbert,C. Boulter

Publisher: Springer Science & Business Media

ISBN: 9401008760

Category: Science

Page: 387

View: 5007

Models and modelling play a central role in the nature of science, in its conduct, in the accreditation and dissemination of its outcomes, as well as forming a bridge to technology. They therefore have an important place in both the formal and informal science education provision made for people of all ages. This book is a product of five years collaborative work by eighteen researchers from four countries. It addresses four key issues: the roles of models in science and their implications for science education; the place of models in curricula for major science subjects; the ways that models can be presented to, are learned about, and can be produced by, individuals; the implications of all these for research and for science teacher education. The work draws on insights from the history and philosophy of science, cognitive psychology, sociology, linguistics, and classroom research, to establish what may be done and what is done. The book will be of interest to researchers in science education and to those taking courses of advanced study throughout the world.
Release

Software Craftsmanship

The New Imperative

Author: Pete McBreen

Publisher: Addison-Wesley Professional

ISBN: 9780201733860

Category: Computers

Page: 187

View: 5823

Annotation By recognizing that software development is not a mechanical task, you can create better applications. Today’ s software development projects are often based on the traditional software engineering model, which was created to develop large-scale defense projects. Projects that use this antiquated industrial model tend to take longer, promise more, and deliver less. As the demand for software has exploded, the software engineering establishment has attempted to adapt to the changing times with short training programs that teach the syntax of coding languages. But writing code is no longer the hard part of development; the hard part is figuring out what to write. This kind of know-how demands a skilled craftsman, not someone who knows only how to pass a certification course. "Software Craftsmanship" presents an alternative--a craft model that focuses on the people involved in commercial software development. This book illustrates that it is imperative to turn from the technology-for-its-own-sake,model to one that is grounded in delivering value to customers. The author, Pete McBreen, presents a method to nurture mastery in the programmer, develop creative collaboration in small developer teams, and enhance communications with the customer. The end result--skilled developers who can create, extend, and enhance robust applications. This book addresses the following topics, among others: Understanding customer requirements Identifying when a project may go off track Selecting software craftsmen for a particular project Designing goals for application development Managing software craftsmen "Software Craftsmanship" iswritten for programmers who want to become exceptional at their craft and for the project manager who wants to hire them. 0201733862B07242001
Release

Rails, Angular, Postgres, and Bootstrap

Powerful, Effective, Efficient, Full-Stack Web Development

Author: David Bryant Copeland

Publisher: N.A

ISBN: 9781680502206

Category: Computers

Page: 344

View: 7963

Achieve awesome user experiences and performance with simple, maintainable code! Embrace the full stack of web development, from styling with Bootstrap, building an interactive user interface with Angular 4, to storing data quickly and reliably in PostgreSQL. With this fully revised new edition, take a holistic view of full-stack development to create usable, high-performing applications with Rails 5.1. Rails is a great tool for building web applications, but it's not the best at everything. Embrace the features built into your database. Learn how to use front-end frameworks. Seize the power of the application stack through Angular 4, Bootstrap, and PostgreSQL. When used together, these powerful and easy-to-use tools will open you to a new world of possibilities. This second edition is updated to cover Angular - a completely reworked front-end framework - and dives into new Postgres 9.6 features such as UPSERT. Also new is Webpack coverage, to develop the front-end code for your Rails application. Create a usable and attractive login form using Bootstrap's styles, while ensuring the database table backing it is secure using Postgres' check constraints. See how creating an advanced Postgres index for a case-insensitive search speeds up your back end - enabling you to create a dynamic user experience using Angular 4. Create reusable components that bring Bootstrap and Angular together and effectively use materialized views for caching within Postgres. Get your front end working with Webpack, use Postgres' features from migrations, and write unit tests for all of it. All of this within Rails 5.1. You'll gain the confidence to work at every level of the application stack, bringing the right solution to every problem. What You Need: This book covers Postgres 9.5, Rails 5, and Ruby 2.3. You should have some experience with basic Rails concepts and a cursory understanding of JavaScript, CSS, and SQL, but by no means need to be an expert. You'll learn how to install Postgres on your computer or use a free version of it in the cloud.
Release

Ruby Performance Optimization

Why Ruby Is Slow, and How to Fix It

Author: Alexander Dymo

Publisher: N.A

ISBN: 9781680500691

Category: Computers

Page: 170

View: 635

You don't have to accept slow Ruby or Rails performance. In this comprehensive guide to Ruby optimization, you'll learn how to write faster Ruby code--but that's just the beginning. See exactly what makes Ruby and Rails code slow, and how to fix it. Alex Dymo will guide you through perils of memory and CPU optimization, profiling, measuring, performance testing, garbage collection, and tuning. You'll find that all those "hard" things aren't so difficult after all, and your code will run orders of magnitude faster. This is the first book ever that consolidates all the Ruby performance optimization advice in one place. It's your comprehensive guide to memory optimization, CPU optimization, garbage collector tuning, profiling, measurements, performance testing, and more. You'll go from performance rookie to expert. First, you'll learn the best practices for writing Ruby code that's easy not only on the CPU, but also on memory, and that doesn't trigger the dreaded garbage collector. You'll find out that garbage collection accounts for 80% of slowdowns, and often takes more than 50% of your program's execution time. And you'll discover the bottlenecks in Rails code and learn how selective attribute loading and preloading can mitigate the performance costs of ActiveRecord. As you advance to Ruby performance expert, you'll learn how profile your code, how to make sense out of profiler reports, and how to make optimization decisions based on them. You'll make sure slow code doesn't creep back into your Ruby application by writing performance tests, and you'll learn the right way to benchmark Ruby. And finally, you'll dive into the Ruby interpreter internals to really understand why garbage collection makes Ruby so slow, and how you can tune it up. What You Need: Some version of Ruby. The advice from this book applies to all modern Ruby versions from 1.9 to 2.2. 80% of the material will also be useful for legacy Ruby 1.8 users, and there is 1.8-specific advice as well.
Release

Agile Software Development Quality Assurance

Author: Stamelos, Ioannis G.

Publisher: IGI Global

ISBN: 1599042185

Category: Computers

Page: 266

View: 4463

"This book provides the research and instruction used to develop and implement software quickly, in small iteration cycles, and in close cooperation with the customer in an adaptive way, making it possible to react to changes set by the constant changing business environment. It presents four values explaining extreme programming (XP), the most widely adopted agile methodology"--Provided by publisher.
Release