iCloud for DevelopersYour app's users want their application data to be in sync as they switch from one device to another. Guided by iOS expert Cesare Rocchi, you'll start by learning how to configure an app and its resources for iCloud. Then, after a quick introduction to iCloud-supported data types, you'll work on using the simplest: key-value data.
Next, you'll find out how to get your document-based data (including media files), and even relational data working with iCloud. As you learn each new technique, you'll use it to synchronize yet another module of the book's sample app, Grocery, a simple shopping list that can be shared between two or more devices. ...
Test iOS Apps with UI AutomationAutomated user interface testing is an important part of a comprehensive testing strategy for iOS applications. By scrutinizing your app through the eyes and actions of the user, you raise confidence that features are wired up right and behave as you expect.
Through this book you'll learn how to do full-stack testing of your iOS apps in both the simulator and on the device with Apple's built-in tools. You'll write behavioral tests in UI Automation that help protect against regressions. You'll write scripts to repeat steps in Instruments to reproduce performance bugs. With a little ingenuity, you'll build a workflow that gives the feedback you need. ...
OpenGL ES 2 for AndroidThis book will teach you everything you need to know to create compelling graphics on Android. You'll learn the basics of OpenGL by building a simple game of air hockey, and along the way, you'll see how to initialize OpenGL and program the graphics pipeline using shaders. Each lesson builds upon the one before it, as you add colors, shading, 3D projections, touch interaction, and more.
Then, you'll find out how to turn your idea into a live wallpaper that can run on the home screen. You'll learn about more advanced effects involving particles, lighting models, and the depth buffer. You'll understand what to look for when debugging your program, and what to watch out for when deploying to the market. ...
The Healthy ProgrammerSmall changes to your habits can improve your health - without getting in the way of your work. The Healthy Programmer gives you a daily plan of action that's incremental and iterative just like the software development processes you're used to. Every tip, trick, and best practice is backed up by the advice of doctors, scientists, therapists, nutritionists, and numerous fitness experts.
We'll review the latest scientific research to understand how being healthy is good for your body and mind. You'll start by adding a small amount of simple activity to your day - no trips to the gym needed. You'll learn how to mitigate back pain, carpal tunnel syndrome, headaches, and many other common sources of pain. ...
Outsource It!Offshore outsourcing can reduce operating expenses, decrease time to market, and provide access to a flexible workforce or hard-to-find skills. To get the most from your outsourced project, you need to know how outsourcing works - what it can do, what it can't do, and what you can expect from it.
Outsource It! tells you how to estimate your potential savings, how to figure out what, how, and where to go - and how to find that vendor magic. You'll learn how to use metrics, reduce turnover, and perform technical due diligence. And you'll never miss a beat, because the checklists will keep you and your project on track. ...
Programming Ruby 1.9 & 2.0, 4th EditionWould you like to go from first idea to working code much, much faster? Do you currently spend more time satisfying the compiler instead of your clients or end users? Are you frustrated with demanding languages that seem to get in your way, instead of getting the work done? Are you using Rails, and want to dig deeper into the underlying Ruby language? If so, then we've got a language and book for you!
Ruby is a fully object-oriented language, much like the classic object-oriented language, Smalltalk. Like Smalltalk, it is dynamically typed (as opposed to Java or C++), but unlike Smalltalk, Ruby features the same conveniences found in modern scripting languages such as Perl and Python. ...
101 Design Ingredients to Solve Big Tech ProblemsOne page, one ingredient. 101 reasons to become more successful at solving those big technology problems. 101 Design Ingredients will help your technology team identify problems, share responsibilities, and work better together.
In this book you'll find 101 problem-solving ingredients grouped into project stages, to help you apply the right ingredient at the right time. Start at any point and page through the humorously illustrated ingredients until you find one that matches your needs best. The ingredients cover the spectrum your business needs to be successful, with tips on team-building, creating a business model, product launch, productivity, and much more. Each ingredient includes three practical suggestions to get you started right away. ...
Good MathWhy do Roman numerals persist? How do we know that some infinities are larger than others? And how can we know for certain a program will ever finish? In this fast-paced tour of modern and not-so-modern math, computer scientist Mark Chu-Carroll explores some of the greatest breakthroughs and disappointments of more than two thousand years of mathematical thought. There is joy and beauty in mathematics, and in more than two dozen essays drawn from his popular "Good Math" blog, you'll find concepts, proofs, and examples that are often surprising, counterintuitive, or just plain weird.
Mark begins his journey with the basics of numbers, with an entertaining trip through the integers and the natural, rational, irrational, and transcendental numbers. ...
tmuxIt's pretty common for a modern developer to have a database console, web server, and a text editor running at the same time. Switching between these with the mouse takes up valuable time and can break your concentration. By using tmux, you can improve your productivity and regain your focus. This book will show you how.
You'll learn how to manage multiple terminal sessions within tmux using only your keyboard. You'll see how to manage and run programs side-by-side in panes, and you'll learn how to create the perfect development environment with custom scripts so that when you're ready to work, your programs are waiting for you. ...
Raspberry Pi: A Quick-Start GuideRaspberry Pi: A Quick-Start Guide gives you everything you need to get the Raspberry Pi up and running and doing cool stuff. You'll get started by learning what additional hardware you need and how to connect it, install Debian Linux and configure it to your needs, and customize the Pi's firmware to get the most out of your hardware.
Then the fun begins. You'll connect the Pi to your home network and try surfing the web and tweeting messages. You'll learn how to get the most out of Midori, the Pi's standard browser. Then in a few simple steps you'll turn the Pi into a kiosk system that displays Twitter live search information. You'll also learn how you can control the desktops of other PCs in your house with the Pi. ...
RubyMotionDevelopers interested in native iOS app development have been restricted to the limits of Objective-C and Xcode - until RubyMotion came along. RubyMotion enables you do full iOS development using Ruby. You have access to familiar tools such as Rake and RubyGems and can compile Ruby code into native applications. RubyMotion even comes with a Ruby console useful for live coding and interactive debugging. And since RubyMotion is built on top of the Objective-C runtime, you can use all of Apple's libraries and most third-party code alongside Ruby classes. ...