Effective Devops
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
Core Data in Swift
Core Data is intricate, powerful, and necessary. Discover the powerful capabilities integrated into Core Data, and how to use Core Data in your iOS and OS X projects. All examples are current for OS X El Capitan, iOS 9, and the latest release of Core Data. All the code is written in Swift, including numerous examples of how best to integrate Core Data with Apple's newest programming language.Core Data expert Marcus Zarra walks you through a fully developed application based around the Core Data APIs. You'll build on this application throughout the book, learning key Core Data elements such as NSPredicate, NSFetchRequest, thread management, and memory management.Start with the basics of Core Data and learn how to use it to develop your application. Then delve deep into the API details. Explore how to get Core Data integrated into your application properly, and work with this flexible API to create convenience methods to improve your application's maintainability. Reduce your migration difficulties, integrate your Core Data app with iCloud and Watch Kit, and use Core Data in a queue-based environment. By the end of the book, you'll have built a full-featured application, gained a complete understanding of Core Data, and learned how to integrate your application into the iPhone/iPad platform.This book is based on Core Data in Objective-C, Third Edition. It focuses on Swift and adds an additional chapter on how to integrate Core Data with an efficient network implementation, with best practices on how to load and pre-load data into your Swift application.What You Need: Mac OS X El Capitan and iOS 9 and a basic working knowledge of Swift
Think Microsoft.Net
Think Microsoft(R) .NET is not a how-to book and isn't code-laden. The reader will take away a deep understanding of what .NET is and an understanding of the .NET Framework. This knowledge will provide an orientation and give them enough information to make a sound decision on whether or not they want to use .NET in their IT department or development future.
Learning Swift 2 Programming
Get started fast with Swift 2 programming for iOS and OS X Learning Swift 2 Programming is a fast-paced, hands-on introduction to writing production-quality iOS and OS X apps with Apple's programming language. Written for developers with experience in any modern language, this book explains Swift simply and clearly, using relevant examples that solve realistic problems. Author Jacob Schatz's popular YouTube video tutorials have already helped thousands of Apple developers get started with Swift. Now, he helps you take full advantage of Swift's advanced design, remarkable performance, and streamlined development techniques. Step by step, you'll move from basic syntax through advanced features such as closures and generics--discovering helpful tips and tricks along the way. After you've mastered Swift's building blocks and learned about its key innovations, a full section of case studies walks you through building complete apps from scratch. Learn how to: Compare Swift with Objective-C, JavaScript, Python, Ruby, and C Collect data with arrays and dictionaries, and store it with variables and constants Group commonly used code into functions for easy reuse Structure your code with enums, structs, and classes Use generics to get more done with less code Write closures to share small blocks of functionality Use optionals to write more robust, crash-resistant, and cleaner code Integrate existing Objective-C code into new Swift apps Program on the bit and byte levels with advanced operators Implement efficient design patterns with protocols and delegates Create animated 2D games with SpriteKit, and apps with UIKit
How to Become an Expert Software Engineer and Get Any Job You Want
Want to know the secret to becoming an expert software engineer and getting any job you want? The answer is simple: Experience. Although, the only valuable form of experience you can add to your r矇sum矇, is the kind you can actually prove to have earned. So, how do you gain tangible experience in skills your current job can't offer you? Get back to programming for fun! What better way is there to prove a skill in coding than with code itself? Not only is writing open source software a great way to learn and acquire new skills, it's a brilliant way to gain real world experience you can legitimately claim on your r矇sum矇! In this book, I will show you the system I use to design, develop, and deliver open source software, steer you away from the mistakes I've made along the way, and help you build an impressive r矇sum矇 of projects that'll get you that job you've always wanted, and in time, will earn you the right to call yourself an expert.
WAP 2.0 Development
This book is a comprehensive tutorial that is logically organized, up-to-date, and includes coverage of the most popular wireless programming language, WML. Readers create a working application, developing examples that build from one chapter to the next. With each chapter readers are learning, practicing, and building on required skills necessary not only for wireless development, but also programming in general. By the end of the book, readers will have created a wireless database application that allows them to view, enter, and delete information. The book provides a usable reference of summaries on all discussed languages, as well as a comparison of the wireless devices and different development tools on today's market.
MFC Programming
Focusing on the Win32 interface to Windows NT, this book comes with a disk containing source code from the text and the Ibrow editor and its source code. Ibrow implements direct links from program text into the online reference manual. Having the documented source code to a finished product enables the book to provide many examples. This should be useful either as a reference or an instruction guide.
Exercises for Programmers
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.
Microsoft Visual Studio 2015 Unleashed
Microsoft Visual Studio 2015 empowers you to write next-generation applications for any modern environment: mobile, web, cloud, universal Windows 10/8.x, database, and beyond. This end-to-end deep dive will help working developers squeeze maximum productivity out of Microsoft's powerful new toolset. The authors combine authoritative and detailed information about Microsoft's latest IDE, with extensive insights and best practices drawn from decades of development experience. Developers will quickly get comfortable with Visual Studio 2015's updated interface, master its new capabilities, leverage its extensive new support for open standards, and discover multiple opportunities to leverage its .NET 4.6 platform and language improvements. By focusing entirely on Visual Studio 2015 Professional, the authors go deeper into Microsoft's core product than ever before. You'll find expert coverage of everything from debugging through deploying to Azure, IDE extension and automation through cross-platform mobile development. Throughout, this book's focus is relentlessly practical: how to apply Microsoft's tools to build better software, faster. Detailed information on how to... Master Visual Studio 2015's updated interface and key tools: Solutions, Projects, Browsers, Explorers, Editors, and Designers to improve productivity Develop robust cross-platform mobile apps for Windows, iOS, and Android using Apache Cordova templates for Visual Studio Use the new ASP.NET 5 to build modern web solutions that run on Windows, Mac, or Linux Develop Single Page Applications (SPAs) based on HTML5 and rich client-side JavaScript frameworks such as Knockout, AngularJS, Bootstrap, and more Accelerate cloud development with the Azure SDK, QuickStart templates, and Azure management portal Create mobile service solutions using ASP.NET Web API and WCF Streamline data development across multiple platforms with Entity Framework 7 Develop modern Microsoft Office business applications Perform robust, automated unit testing as you code, increasing your confidence in changes and refactoring Extend the VS 2015 IDE and Code Editor by creating custom, productivity-enhancing solutions Download all examples and source code presented in this book from informit.com/title/9780672337369 as they become available.
Mazes for Programmers
Unlock the secrets to creating random mazes! Whether you're a game developer, an algorithm connoisseur, or simply in search of a new puzzle, you're about to level up. Learn algorithms to randomly generate mazes in a variety of shapes, sizes, and dimensions. Bend them into Moebius strips, fold them into cubes, and wrap them around spheres. Stretch them into other dimensions, squeeze them into arbitrary outlines, and tile them in a dizzying variety of ways. From twelve little algorithms, you'll discover a vast reservoir of ideas and inspiration. From video games to movies, mazes are ubiquitous. Explore a dozen algorithms for generating these puzzles randomly, from Binary Tree to Eller's, each copiously illustrated and accompanied by working implementations in Ruby. You'll learn their pros and cons, and how to choose the right one for the job. You'll start by learning six maze algorithms and transition from making mazes on paper to writing programs that generate and draw them. You'll be introduced to Dijkstra's algorithm and see how it can help solve, analyze, and visualize mazes. Part 2 shows you how to constrain your mazes to different shapes and outlines, such as text, circles, hex and triangle grids, and more. You'll learn techniques for culling dead-ends, and for making your passages weave over and under each other. Part 3 looks at six more algorithms, taking it all to the next level. You'll learn how to build your mazes in multiple dimensions, and even on curved surfaces. Through it all, you'll discover yourself brimming with ideas, the best medicine for programmer's block, burn-out, and the grayest of days. By the time you're done, you'll be energized and full of maze-related possibilities! What You Need: The example code requires version 2 of the Ruby programming language. Some examples depend on the ChunkyPNG library to generate PNG images, and one chapter uses POV-Ray version 3.7 to render 3D graphics
NUnit Pocket Reference
Few .NET developers have the luxury of unlimited code testing once their application is complete, and rushing through the testing process is both problematic and stressful. The open source NUnit framework provides an excellent and efficient way to test and improve .NET code as it's written, saving hundreds of QA hours and headaches. NUnit is one of the most mature and widely-used .NET open source projects even Microsoft uses it internally. NUnit is a unit-testing framework for all .Net languages. Written entirely in C#, NUnit takes advantage of many .NET language features, such as custom attributes and other reflection related capabilities. It automates unit testing and reduces the effort required to frequently test code while developing it. NUint is invaluable for .NET developers in test-driven development under agile methodologies such as Extreme Programming (XP) as well as for developers who use for unit testing for software quality assurance. Unfortunately, some of those valuable hours saved by using NUnit can be wasted trying to master this powerful but under-documented framework Proof that good things come in small packages, the NUnit Pocket Reference is a complete reference to NUnit, filling in the blanks left by the existing documentation and online discussion. It offers developers everything they need to know to install, configure, and use NUnit; the NUnit user interface; and a reference to the NUnit framework classes in a slim but well-organized package. This handy little book even offers practical, real world NUnit examples. And with the NUnit Pocket Reference, IT managers will know to expect when they implement unit testing in their projects. It is the only book you'll need on this popular and practical new open source framework.
Ado: ActiveX Data Objects
Getting data across platforms and formats is a cornerstone of present-day applications development. ADO: ActiveX Data Objects is both an introduction and a complete reference to ADO (ActiveX Data Objects), Microsoft's universal data access solution. You'll learn how to easily access data in multiple formats--such as email messages, Access databases, Word documents, and SQL databases--even on different platforms, without spending extra time learning every last detail about each format. Author Jason Roff shows by example how to use ADO with your programming language of choice to save programming time, so you can concentrate on the content and quality of your application rather than the nitty-gritty of specific data formats. ADO: ActiveX Data Objects includes: Chapters dedicated to the Connection, Recordset, Field, and Command objects and the Properties collection A complete, detailed reference listing every ADO object, method, property, and event, in convenient alphabetical order Chapters on ADO architecture, data shaping, the ADO Event Model An appendix containing enumeration tables used by ADO objects and collections, listed alphabetically Brief introductions to RDS, ADO.NET, and SQL ADO: ActiveX Data Objects is a versatile one-stop guide to both the theory and practice of programming with ADO through Version 2.6. The thorough reference section and topic-specific chapters will help you find quick answers about the details of objects, collections, methods, and properties of ADO. And the abundance of practical code examples will give you a good grasp of how to use ADO's strong points most effectively.
Pro Sharepoint 2007 Development Techniques
A hugely practical and up-to-date work, this book is for developers looking to combine the latest advances in Windows and Microsoft development, such as .NET 2.0, ASP.NET AJAX, InfoPath, and Biztalk, with their SharePoint sites. SharePoint is a hot topic right now, and mixing the intersection of one hot tech area with other hot techs is sure to be a hit. This is the only book on the market dedicated to using other products and technologies with SharePoint. Nikander and Margriet Bruggeman are .NET professionals specializing in building web applications using the latest Microsoft technology. Their work includes software design, development, consulting and training. They've been given the prestigious Most Valuable Professional (MVP) award from Microsoft in 2003 for their work on the SharePoint Portal Server platform.
Pro Spring 2.5
The open source agile lightweight Spring (meta) Framework 2.5 is by far the leading innovative force and "lightning rod" that's driving today's Java industry. Spring has time and time again proven itself in real-world highly scalable enterprise settings such as banks and other financial institutions. These institutions, along with grid and other traditional Java vendors that supports them, are looking at Spring first, and have all but forgotten Java EE/J2EE. This book, by Spring's own Rob Harrop, lets the reader experience a real application being built from the ground up with Spring using all the multiple Web views and framework. Pro Spring 2.5 will continue on the best selling success of Pro Spring. This book is ideal for Enterprise Java, J2EE/Java EE developers looking to learn and use the Spring metaframework, the now growing, leading alternative to J2EE/Java EE
Automate the Boring Stuff With Python
If you've ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you? In Automate the Boring Stuff with Python, you'll learn how to use Python to write programs that do in minutes what would take you hours to do by hand--no prior programming experience required. Once you've mastered the basics of programming, you'll create Python programs that effortlessly perform useful and impressive feats of automation to: -Search for text in a file or across multiple files-Create, update, move, and rename files and folders-Search the Web and download online content-Update and format data in Excel spreadsheets of any size-Split, merge, watermark, and encrypt PDFs-Send reminder emails and text notifications-Fill out online forms Step-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks. Don't spend your time doing work a well-trained monkey could do. Even if you've never written a line of code, you can make your computer do the grunt work. Learn how in Automate the Boring Stuff with Python. Note: The programs in this book are written to run on Python 3.
Hadoop
Get ready to unlock the power of your data. With the fourth edition of this comprehensive guide, you璽 ll learn how to build and maintain reliable, scalable, distributed systems with Apache Hadoop. This book is ideal for programmers looking to analyze datasets of any size, and for administrators who want to set up and run Hadoop clusters. Using Hadoop 2 exclusively, author Tom White presents new chapters on YARN and several Hadoop-related projects such as Parquet, Flume, Crunch, and Spark. You璽 ll learn about recent changes to Hadoop, and explore new case studies on Hadoop璽 s role in healthcare systems and genomics data processing. Learn fundamental components such as MapReduce, HDFS, and YARN Explore MapReduce in depth, including steps for developing applications with it Set up and maintain a Hadoop cluster running HDFS and MapReduce on YARN Learn two data formats: Avro for data serialization and Parquet for nested data Use data ingestion tools such as Flume (for streaming data) and Sqoop (for bulk data transfer) Understand how high-level data processing tools like Pig, Hive, Crunch, and Spark work with Hadoop Learn the HBase distributed database and the ZooKeeper distributed configuration service
Android App Development for Dummies
The updated edition of the bestselling guide to Android app development If you have ambitions to build an Android app, this hands-on guide gives you everything you need to dig into the development process and turn your great idea into a reality! In this new edition of Android App Development For Dummies, you'll find easy-to-follow access to the latest programming techniques that take advantage of the new features of the Android operating system. Plus, two programs are provided: a simple program to get you started and an intermediate program that uses more advanced aspects of the Android platform. Android mobile devices currently account for nearly 80% of mobile phone market share worldwide, making it the best platform to reach the widest possible audience. With the help of this friendly guide, developers of all stripes will quickly find out how to install the tools they need, design a good user interface, grasp the design differences between phone and tablet applications, handle user input, avoid common pitfalls, and turn a "meh" app into one that garners applause. Create seriously cool apps for the latest Android smartphones and tablets Adapt your existing apps for use on an Android device Start working with programs and tools to create Android apps Publish your apps to the Google Play Store Whether you're a new or veteran programmer, Android App Development For Dummies will have you up and running with the ins and outs of the Android platform in no time.
The Best Interface Is No Interface
Our love affair with the digital interface is out of control. We've embraced it in the boardroom, the bedroom, and the bathroom. Screens have taken over our lives. Most people spend over eight hours a day staring at a screen, and some "technological innovators" are hoping to grab even more of your eyeball time. You have screens in your pocket, in your car, on your appliances, and maybe even on your face. Average smartphone users check their phones 150 times a day, responding to the addictive buzz of Facebook or emails or Twitter. Are you sick? There's an app for that! Need to pray? There's an app for that! Dead? Well, there's an app for that, too! And most apps are intentionally addictive distractions that end up taking our attention away from things like family, friends, sleep, and oncoming traffic. There's a better way. In this book, innovator Golden Krishna challenges our world of nagging, screen-based bondage, and shows how we can build a technologically advanced world without digital interfaces. In his insightful, raw, and often hilarious criticism, Golden reveals fascinating ways to think beyond screens using three principles that lead to more meaningful innovation. Whether you're working in technology, or just wary of a gadget-filled future, you'll be enlighted and entertained while discovering that the best interface is no interface.
PHP and MySQL Web Development: A Beginner’s Guide
Publisher's Note: Products purchased from Third Party sellers are not guaranteed by the publisher for quality, authenticity, or access to any online entitlements included with the product.Essential Skills--Made Easy!PHP and MySQL Web Development: A Beginner's Guide takes you from building static web pages to creating comprehensive database-driven web applications. The book reviews HTML, CSS, and JavaScript and then explores PHP--its structure, control statements, arrays, functions, use with forms, and file handling capabilities. Next, the book examines MySQL, including SQL, the MySQL command set, and how to use it with PHP to create a relational database and build secure, databasedriven web applications. This practical resource features complete, step-by-step examples with code that you can use as templates for your own projects.Designed for Easy LearningKey Skills & Concepts--Chapter-opening lists of specific skills covered in the chapterTry This--Hands-on exercises that show you how to apply your skillsNotes--Extra information related to the topic being coveredTips--Helpful reminders or alternate ways of doing thingsCautions--Errors and pitfalls to avoidSelf Tests--End-of-chapter quizzes to reinforce your skillsAnnotated Syntax--Example code with commentary that describes the programming techniques being illustratedReady-to-use code at www.mhprofessional.com
Art of Application Performance Testing
Because performance is paramount today, this thoroughly updated guide shows you how to test mission-critical applications for scalability and performance before you deploy them--whether it's to the cloud or a mobile device. You'll learn the complete testing process lifecycle step-by-step, along with best practices to plan, coordinate, and conduct performance tests on your applications. Set realistic performance testing goals Implement an effective application performance testing strategy Interpret performance test results Cope with different application technologies and architectures Understand the importance of End User Monitoring (EUM) Use automated performance testing tools Test traditional local applications, web applications, and web services Recognize and resolves issues often overlooked in performance tests Written by a consultant with over 15 years' experience with performance testing, The Art of Application Performance Testing thoroughly explains the pitfalls of an inadequate testing strategy and offers a robust, structured approach for ensuring that your applications perform well and scale effectively when the need arises.
Beginning Iphone Development
The team that brought you the bestselling Beginning iPhone Development, the book that taught the world to program on the iPhone, is back again, bringing this definitive guide up-to-date with Apple's latest and greatest new iOS 8 and its SDK, as well as with the latest version of Xcode (6.1).You'll have everything you need to create your very own apps for the latest iOS devices. Every single sample app in the book has been rebuilt from scratch using Xcode 6.1 and the latest 64-bit iOS 8-specific project templates, and designed to take advantage of the latest Xcode features.Assuming only a minimal working knowledge of Objective-C, and written in a friendly, easy-to-follow style, Beginning iPhone Development offers a complete soup-to-nuts course in iPhone, iPad, and iPod touch programming. The book starts with the basics, walking through the process of downloading and installing Xcode 6.1 and the iOS 8 SDK, and then guides you though the creation of your first simple application.From there, you'll learn how to integrate all the interface elements iOS users have come to know and love, such as buttons, switches, pickers, toolbars, and sliders. You'll master a variety of design patterns, from the simplest single view to complex hierarchical drill-downs. The confusing art of table building will be demystified, and you'll learn how to save your data using the iPhone file system. You'll also learn how to save and retrieve your data using a variety of persistence techniques, including Core Data and SQLite. And there's much more!
Becoming a Better Programmer
If you're passionate about programming and want to get better at it, you've come to the right source. Code Craft author Pete Goodliffe presents a collection of useful techniques and approaches to the art and craft of programming that will help boost your career and your well-being. Goodliffe presents sound advice that he's learned in 15 years of professional programming. The book's standalone chapters span the range of a software developer's life--dealing with code, learning the trade, and improving performance--with no language or industry bias. Whether you're a seasoned developer, a neophyte professional, or a hobbyist, you'll find valuable tips in five independent categories: Code-level techniques for crafting lines of code, testing, debugging, and coping with complexity Practices, approaches, and attitudes: keep it simple, collaborate well, reuse, and create malleable code Tactics for learning effectively, behaving ethically, finding challenges, and avoiding stagnation Practical ways to complete things: use the right tools, know what "done" looks like, and seek help from colleagues Habits for working well with others, and pursuing development as a social activity
Fifty Quick Ideas to Improve Your User Stories
This book will help you write better stories, spot and fix common issues, split stories so that they are smaller but still valuable, and deal with difficult stuff like crosscutting concerns, long-term effects and non-functional requirements. Above all, this book will help you achieve the promise of agile and iterative delivery: to ensure that the right stuff gets delivered through productive discussions between delivery team members and business stakeholders. Who is this book for? This is a book for anyone working in an iterative delivery environment, doing planning with user stories. The ideas in this book are useful both to people relatively new to user stories and those who have been working with them for years. People who work in software delivery, regardless of their role, will find plenty of tips for engaging stakeholders better and structuring iterative plans more effectively. Business stakeholders working with software teams will discover how to provide better information to their delivery groups, how to set better priorities and how to outrun the competition by achieving more with less software. What's inside? Unsurprisingly, the book contains exactly fifty ideas. They are grouped into five major parts: - Creating stories: This part deals with capturing information about stories before they get accepted into the delivery pipeline. You'll find ideas about what kind of information to note down on story cards and how to quickly spot potential problems. - Planning with stories: This part contains ideas that will help you manage the big-picture view, set milestones and organise long-term work. - Discussing stories: User stories are all about effective conversations, and this part contains ideas to improve discussions between delivery teams and business stakeholders. You'll find out how to discover hidden assumptions and how to facilitate effective conversations to ensure shared understanding. - Splitting stories: The ideas in this part will help you deal with large and difficult stories, offering several strategies for dividing them into smaller chunks that will help you learn fast and deliver value quickly. - Managing iterative delivery: This part contains ideas that will help you work with user stories in the short and mid term, manage capacity, prioritise and reduce scope to achieve the most with the least software. About the authors: Gojko Adzic is a strategic software delivery consultant who works with ambitious teams to improve the quality of their software products and processes. Gojko's book Specification by Example was awarded the #2 spot on the top 100 agile books for 2012 and won the Jolt Award for the best book of 2012. In 2011, he was voted by peers as the most influential agile testing professional, and his blog won the UK agile award for the best online publication in 2010. David Evans is a consultant, coach and trainer specialising in the field of Agile Quality. David helps organisations with strategic process improvement and coaches teams on effective agile practice. He is regularly in demand as a conference speaker and has had several articles published in international journals.
Git in Practice
Summary Git in Practice is a collection of 66 tested techniques that will optimize the way you and your team manage your development projects. The book begins with a brief reminder of the core version control concepts you need when using Git and moves on to the high-value features you may not have explored yet. Then, you'll dig into cookbook-style techniques like history visualization, advanced branching and rewriting history each presented in a problem-solution-discussion format. Finally you'll work out how to use Git to its full potential through configuration, team workflows, submodules and using GitHub pull requests effectively. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Git is a source control system, but it's a lot more than just that. For teams working in today's agile, continuous delivery environments, Git is a strategic advantage. Built with a decentralized structure that's perfect for a distributed team, Git manages branching, committing, complex merges, and task switching with minimal ceremony so you can concentrate on your code. About the Book Git in Practice is a collection of battle-tested techniques designed to optimize the way you and your team manage development projects. After a brief overview of Git's core features, this practical guide moves quickly to high-value topics like history visualization, advanced branching and rewriting, optimized configuration, team workflows, submodules, and how to use GitHub pull requests. Written in an easy-to-follow Problem/Solution/Discussion format with numerous diagrams and examples, it skips the theory and gets right to the nitty-gritty tasks that will transform the way you work. Written for developers familiar with version control and ready for the good stuff in Git. What's InsideTeam interaction strategies and techniquesReplacing bad habits with good practicesJuggling complex configurationsRewriting history and disaster recovery About the Author Mike McQuaid is a software engineer at GitHub. He's contributed to Qt and the Linux kernel, and he maintains the Git-based Homebrew project. Table of ContentsPART 1 INTRODUCTION TO GITLocal GitRemote GitPART 2 GIT ESSENTIALSFilesystem interactionsHistory visualizationAdvanced branchingRewriting history and disaster recoveryPART 3 ADVANCED GITPersonalizing GitVendoring dependencies as submodulesWorking with SubversionGitHub pull requestsHosting a repositoryPART 4 GIT BEST PRACTICESCreating a clean historyMerging vs. rebasingRecommended team workflows
Getting Started With Sensors
To build electronic projects that can sense the physical world, you need to build circuits based around sensors: electronic components that react to physical phenomena by sending an electrical signal. Even with only basic electronic components, you can build useful and educational sensor projects. But if you incorporate Arduino or Raspberry Pi into your project, you can build much more sophisticated projects that can react in interesting ways and even connect to the Internet. This book starts by teaching you the basic electronic circuits to read and react to a sensor. It then goes on to show how to use Arduino to develop sensor systems, and wraps up by teaching you how to build sensor projects with the Linux-powered Raspberry Pi.
Pro Unity Game Development With C#
In Pro Unity Game Development with C#, Alan Thorn, author of Learn Unity for 2D Game Development and experienced game developer, takes you through the complete C# workflow for developing a cross-platform first person shooter in Unity. C# is the most popular programming language for experienced Unity developers, helping them get the most out of what Unity offers. If you're already using C# with Unity and you want to take the next step in becoming an experienced, professional-level game developer, this is the book you need.Whether you are a student, an indie developer, or a season game dev professional, you'll find helpful C# examples of how to build intelligent enemies, create event systems and GUIs, develop save-game states, and lots more. You'll understand and apply powerful programming concepts such as singleton classes, component based design, resolution independence, delegates, and event driven programming.By the end of the book, you will have a complete first person shooter game up and running with Unity. Plus you'll be equipped with the know-how and techniques needed to deploy your own professional-grade C# games.If you already know a bit of C# and you want to improve your Unity skills, this is just the right book for you.
Becoming Functional
If you have an imperative (and probably object-oriented) programming background, this hands-on book will guide you through the alien world of functional programming. Author Joshua Backfield begins slowly by showing you how to apply the most useful implementation concepts before taking you further into functional-style concepts and practices. In each chapter, you'll learn a functional concept and then use it to refactor the fictional XXY company's imperative-style legacy code, writing and testing the functional code yourself. As you progress through the book, you'll migrate from Java 7 to Groovy and finally to Scala as the need for better functional language support gradually increases. Learn why today's finely tuned applications work better with functional code Transform imperative-style patterns into functional code, following basic steps Get up to speed with Groovy and Scala through examples Understand how first-class functions are passed and returned from other functions Convert existing methods into pure functions, and loops into recursive methods Change mutable variables into immutable variables Get hands-on experience with statements and nonstrict evaluations Use functional programming alongside object-oriented design
Migrating to Android for Ios Developers
Migrating to Android for iOS Developers gives you--as an experienced native iOS app developer--the skills to learn native Android apps development from scratch. Starting with preparing your Android integrated development environment and introducing just enough Android application framework fundamentals, you'll understand how to create a simple but meaningful HelloAndroid project immediately. This book provides the guidelines and tutorial projects to show you how to translate your existing iOS app to the Android platform. You'll use your mobile app knowledge to structure your Android apps in a similar way to how you would structure your iOS apps. To implement use cases with detailed screens, the most common mobile topics are discussed, including user interfaces, managing data, and networking with remote services. As you move through the book, you'll create Android apps with rich UI components to handle common CRUD operations locally and remotely.There are many Android goodies described in the book. Instead of relying on routine text descriptions, you'll discover the uniqueness of Android and appreciate the many features that are unique to the platform. This book also explores more powerful mobile UX patterns that are commonly used on the iOS and Android platforms.When you finish reading Migrating to Android for iOS Developers, you'll be an Android developer as well as an iOS developer. And, you will be fully convinced you can do everything in Android that you can do in iOS.
Ios Application Development for Dummies
If you've got incredible iOS ideas, get this book and bring them to life! iOS 7 represents the most significant update to Apple's mobile operating system since the first iPhone was released, and even the most seasoned app developers are looking for information on how to take advantage of the latest iOS 7 features in their app designs. That's where iOS App Development For Dummies comes in! Whether you're a programming hobbyist wanting to build an app for fun or a professional developer looking to expand into the iOS market, this book will walk you through the fundamentals of building a universal app that stands out in the iOS crowd. Walks you through joining Apple's developer program, downloading the latest SDK, and working with Apple's developer tools Explains the key differences between iPad and iPhone apps and how to use each device's features to your advantage Shows you how to design your app with the end user in mind and create a fantastic user experience Covers using nib files, views, view controllers, interface objects, gesture recognizers, and much more There's no time like now to tap into the power of iOS - start building the next big app today with help from iOS App Development For Dummies!
Managing Complexity
This title describes large-scale complex adaptive systems and their application to practical business problems to yield excellent returns on investment.
Programming Windows 8 Apps With C#
If you're a .NET developer looking to build tablet apps, this practical book takes you step-by-step through the process of developing apps for the Windows Store. You'll learn how to use Microsoft's Modern UI design language with Windows 8.1 and WinRT 8.1.1 by building a line-of-business mobile app with C# through the course of the book. To develop the app, you'll work with the same system details and design specs that apply to retail apps, such as persistence, backend service, and Windows 8 features for sharing and search. You'll learn how to develop the code, incorporate third-party open source products, and package your app for the Windows Store. Build a UI with XAML and the Model/View/View-Model pattern Understand asynchrony--and rediscover threads and parallelism Store data and system settings locally with SQLite Use app bars for commands and the settings charm for Help options Present notifications as tile updates, badges, or toast popups Help users visualize locations and tag activities to a map Enable apps to share data and run side-by-side in the UI Implement functionality for running tasks in the background
Learn Ios App Development
Learn iOS App Development is both a rapid tutorial and a useful reference. You'll quickly get up to speed with Objective-C, Cocoa Touch, and the iOS 7 SDK. It's an all-in-one getting started guide to building your first iPhone or iPad app. You'll learn best practices that ensure your code will be efficient and perform well, earning positive reviews on the iTunes App Store, and driving better search results and more revenue.The iOS 7 SDK offers powerful new features, and this book is the fastest path to mastering them--and the rest of the iOS SDK --for programmers with some experience who are new to iPhone and iPad app development. Many books introduce the iOS SDK, but few explain how to develop apps optimally and soundly. This book teaches both core Objective-C language concepts and how to exploit design patterns and logic with the iOS SDK, based on Objective-C and the Cocoa Touch framework.Why spend months or years discovering the best ways to design and code iPhone and iPad apps when this book will show you how to do things the right way from the start? Get an accelerated treatment of the core fundamentals of Objective-C. Develop your first app using Xcode's advanced interface design tools. Build your first iPhone app using the code that you're given as you walk through this book. Finally, debug and distribute your first app on Apple's iTunes App Store. Learn how to create apps for any model of iPhone, the iPod Touch, the iPad, or build universal apps that run on all of them. After reading this book, you'll be creating professional quality apps, ready to upload to the app store, making you the prestige and the money you seek!
Android Recipes
Android continues to be one of the leading mobile OS and development platforms driving today's mobile innovations and the apps ecosystem. Android appears complex, but offers a variety of organized development kits to those coming into Android with differing programming language skill sets. Android Recipes: A Problem-Solution Approach, Third Edition offers more than 100 down-to-earth code recipes, and guides you step-by-step through a wide range of useful topics using complete and real-world working code examples. It's updated to include the KitKat Android 4.4 SDK as well as earlier releases.Instead of abstract descriptions of complex concepts, in Android Recipes, you'll find live code examples. When you start a new project you can consider copying and pasting the code and configuration files from this book and then modifying them for your own customization needs. Crammed with insightful instruction and helpful examples, this third edition of Android Recipes is your guide to writing apps for one of today's hottest mobile platforms. It offers pragmatic advice that will help you get the job done quickly and well. This can save you a great deal of work over creating a project from scratch!
C Is for Children
Computer programming is a good exercise for the mind, and it's an essential skill that can serve anyone well into adulthood. In C Is for Children, author and engineer D. Michael Parrish introduces children to the C programming language.Parrish presents lessons that focus on the C keywords. C Is for Children discusses all thirty-two keywords of the C89 standard andprovides over twenty example programs, along with guidewordsand a thorough glossary. Designed for third-, fourth-, and fifth-gradestudents, this textbook is an easy-to-follow, step-by-step learning toolfor kids interested in writing their own programs. Praise for C Is for Children "D. Michael Parrish is the Dr. Seuss of the digital age." --George Matsoukas, author "In a world of slavish conformity, this book is a refreshing, innovative, and entertaining contribution to children's literature." --Alex Bellas, EdD
iPhone and iPad Apps for Absolute Beginners
This update of an Apress bestseller walks you through creating your first app, with plain English and practical examples using the latest iOS 7 software development platform and more. It cuts through the fog of jargon and misinformation that surrounds iPhone and iPad app development, and gives you simple, step-by-step instructions to get you started. Teaches iPhone and iPad apps development in language anyone can understand Provides simple, step-by-step examples that make learning easy, using iOS 7 Offers bonus videos from the author that enable you to follow along--it's like your own private classroomThe iPhone is the hottest gadget of our generation, and much of its success has been fueled by the App Store, Apple's online marketplace for iPhone apps. Over 1 billion apps were downloaded during the nine months following the launch of the App Store, ranging from the simplest games to the most complex business apps. Everyone has an idea for the next best-selling iPhone app--that's why you're reading this now! And with the popularity of the iPad, this demand will just continue to grow.
Beginning Lego Mindstorms Ev3
Beginning LEGO MINDSTORMS EV3 shows you how to create new fun and fantastic creations with the new EV3 programmable brick along with other new EV3 pieces and features. You'll learn the language of the EV3 brick, and then go on to create a variety of programmable vehicles using MINDSTORMS and Technic parts. You'll then move into creating robot parts, including robotic arms. You'll even learn how to make different types of MINDSTORMS walkers. Finally, you'll learn how to incorporate light and sound into your amazing EV3 creations. Whether you're a MINDSTORMS enthusiast wanting to know more about EV3, a robotics competitor, or just a LEGO fan who wants to learn all about what EV3 can do, Beginning LEGO MINDSTORMS EV3 will give you the knowledge you need.Note: the printed book is in black and white. The Kindle and ebook versions are in color (black and white on black and white Kindles).
Windows 8.1
Windows 8.1 continues the evolution of the most radical redesign in Microsoft's history. It combines the familiar Windows desktop with a new, touchscreen-friendly world of tiles and full-screen apps. Luckily, David Pogue is back to help you make sense of it--with humor, authority, and 500 illustrations. The important stuff you need to know: What's new in 8.1. The update to 8.1 offers new apps, a universal Search, the return of the Start menu, and several zillion other nips and tucks. New features. Storage Spaces, Windows To Go, File Histories--if Microsoft wrote it, this book covers it. Security. Protect your PC from viruses, spyware, spam, sick hard drives, and out-of-control kids. The network. HomeGroups, connecting from the road, mail, Web, music streaming among PCs--this book has your network covered. The software. Media Center, Photo Gallery, Internet Explorer, speech recognition--this one authoritative, witty guide makes it all crystal clear. It's the book that should have been in the box.
Ios 7 Programming Fundamentals
If you're getting started with iOS development, or want a firmer grasp of the basics, this practical guide provides a clear view of its fundamental building blocks--Objective-C, Xcode, and Cocoa Touch. You'll learn object-oriented concepts, understand how to use Apple's development tools, and discover how Cocoa provides the underlying functionality iOS apps need to have. Dozens of example projects are available at GitHub. Once you master the fundamentals, you'll be ready to tackle the details of iOS app development with author Matt Neuburg's companion guide Programming iOS 7. Explore the C language to learn how Objective-C works Learn how instances are created, and why they're so important Tour the lifecycle of an Xcode project, from inception to App Store Discover how to build interfaces with nibs and the nib editor Explore Cocoa's use of Objective-C linguistic features Use Cocoa's event-driven model and major design patterns Learn the role of accessors, key-value coding, and properties Understand the power of ARC-based object memory management Send messages and data between Cocoa objects
Beginning Beaglebone
Many people think of Linux as a computer operating system, running on users' desktops and powering servers. But Linux can also be found inside many consumer electronics devices. Whether they're the brains of a cell phone, cable box, or exercise bike, embedded Linux systems blur the distinction between computer and device. Many makers love microcontroller platforms such as Arduino, but as the complexity increases in their projects, they need more power for applications, such as computer vision. The BeagleBone is an embedded Linux board for makers. It's got built-in networking, many inputs and outputs, and a fast processor to handle demanding tasks. This book introduces you to both the original BeagleBone and the new BeagleBone Black and gets you started with projects that take advantage of the board's processing power and its ability to interface with the outside world.
Monetizing Data Management
What's the Return on Investment (ROI) on data management? Sound like an impossible question to answer? Not if you read this book and learn the value-added approach to managing enterprise resources and assets. This book defines the five interrelated best practices that comprise data management, and shows you how by example to successfully communicate data management ROI to senior management.The 17 cases we share will help you to identify opportunities to introduce data management into the strategic conversations that occur in the C-suite. You will gain a new perspective regarding the stewardship of your data assets and insulate your operations from the chaos, losses and risks that result from traditional approaches to technological projects. And you will learn how to protect yourself from legal challenges resulting from outsourced information technology projects gone badly due to incorrect project sequencing and focus. With the emerging acceptance and adoption of revised performance standards, your organization will be better prepared to face the coming big data deluge!The book contains four chapters: Chapter 1 gives a somewhat unique perspective to the practice of leveraging data. We describe the motivations and delineate the specific challenges preventing most organizations from making substantial progress in this area. Chapter 2 presents 11 cases where leveraging data has produced positive financial results that can be presented in language of immediate interest to C-level executives. To the degree possible, we have quantified the effect that data management has had in terms that will be meaningful to them also. Chapter 3 describes five instances taken from the authors' experiences with various governmental defense departments. The lessons in this section however can be equally applied to many non-profit and non-defense governmental organizations. Chapter 4 speaks specifically to the interaction of data management practices, in terms of both information technology projects and legal responsibilities. Reading it can help your organization avoid a number of perils, stay out of court and better vet contractors, experts and other helpers who play a role in organization information technology development. From John Bottega Foreword: Data is the new currency. Yes, an expression that is being used quite a bit of late, but it is very relevant in discussing the importance of data and the methodologies by which we manage it. And like any currency, how we manage it determines its true value. Like any currency, it can be managed wisely, or it can be managed foolishly. It can be put to good use, or it can be squandered away. The question is - what factors determine the path that we take? How do we properly manage this asset and realize its full value and potential? In Monetizing Data Management, Peter and Juanita explore the question of how to understand and place tangible value on data and data management. They explore this question through a series of examples and real-world use cases to exemplify how the true value of data can be realized. They show how bringing together business and technology, and applying a data-centric forensic approach can turn massive amounts of data into the tools needed to improve business processes, reduce costs, and better serve the customer. Data monetization is not about turning data into money. Instead, it's about taking information and turning it into opportunity. It's about the need to understand the real meaning of data in order to extract value from it. And it's about achieving this objective through a partnership with business and technology. In Monetizing Data Management, the authors demonstrate how true value can be realized from our data through improved data centric approaches.
Enterprise Architecture Made Simple
Learn how to institute and implement enterprise architecture in your organization. You can make a quick start and establish a baseline for your enterprise architecture within ten weeks, then grow and stabilize the architecture over time using the proven Ready, Set, Go Approach.Reading this book will: Give you directions on how to institute and implement enterprise architecture in your organization. You will be able to build close relationships with stakeholders and delivery teams, but you will not need to micromanage the architecture's operations. Increase your awareness that enterprise architecture is about business, not information technology. Enable you to initiate and facilitate dramatic business development. The architecture of an enterprise must be tolerant of currently unknown business initiatives. Show you how to get a holistic view of the process of implementing enterprise architecture. Make you aware that information is a key business asset and that information architecture is a key part of the enterprise architecture. Allow you to learn from our experiences. This book is based on our 30 years of work in the enterprise architecture field, colleagues in Europe, customer cases, and students. We do not pretend to cover all you need to know about enterprise architecture within these pages. Rather, we give you the information that is most important for effective and successful guidance. Sometimes, less is more. If your company is about to make a major change and you are looking for a way to reduce the changes into manageable pieces--and still retain control of how they fit together--this is your handbook. Maybe you are already acting as an enterprise architect and using a formal method, but you need practical hints. Or maybe you are about to set up an enterprise architect network or group of specialists and need input on how to organize your work. The Ready-Set-Go method for introducing enterprise architecture provides you, the enterprise architect, with an immediate understanding of the basic steps for starting, organizing, and operating the entirety of your organization's architecture. Chapter 1: Ready shows how to model and analyze your business operations, assess their current status, construct a future scenario, compare it to the current structure, analyze what you see, and show the result in a city plan. Chapter 2: Set deals with preparing for the implementation of the architecture with governance, enterprise architecture organization, staffing, etc. This is the organizing step before beginning the actual work. Chapter 3: Go establishes how to implement a city plan in practice. It deals with the practicalities of working as an enterprise architect and is called the "running" step. The common thread through all aspects of the enterprise architect's work is the architect's mastery of a number of tools, such as business models, process models, information models, and matrices. We address how to initiate the architecture process within the organization in such a way that the overarching enterprise architecture and architecture-driven approach can be applied methodically and gradually improved.
Windows Azure Hybrid Cloud
An essential resource for implementing and managing a cloud infrastructure in Azure Serving as a critical resource for anyone responsible for strategizing, architecting, implementing or managing a cloud infrastructure, this book helps you understand what is hybrid IT and how it's applicable (and inevitable) in today's world of emerging cloud. The team of authors focus on the Microsoft concept of a private/public cloud, deploying a private cloud fabric, deploying services, and building a private cloud, as well as integrating it with Microsoft's public cloud to create a cross-premises or public cloud. Looks at why hybrid IT is important to a business and what benefits a business can expect by adopting hybrid cloud Examines a cloud management platform and discusses why it is necessary Walks you through the different kinds of solutions for IT problems that may arise Places a focus on considerations for ensuring resiliency, availability, and scalability when designing hybrid solutions to prevent system failure and data loss Covers optimizing the performance of the hybrid cloud as well as using tools that help you monitor and manage the performance of the hybrid cloud Windows Azure Hybrid Cloud helps you gain a better understanding of the hybrid IT environments, why those clouds should be implemented, and how they impact business.