Mastering Object-oriented PythonThis practical example-oriented guide will teach you advanced concepts of object-oriented programming in Python. This book will present detailed examples of almost all of the special method names that support creating classes that integrate seamlessly with Python's built-in features. It will show you how to use JSON, YAML, Pickle, CSV, XML, Shelve, and SQL to create persistent objects and transmit objects between processes. The book also covers logging, warnings, unit testing, configuration files, and how to work with the command line.
This book is broken into three major parts: Pythonic Classes via Special Methods; Persistence and Serialization; Testing, Debugging, Deploying, and Maintaining. The special methods are broken down into several focus areas: initialization, basics, attribute access, callables, contexts, containers, collections, numbers, and more advanced techniques such as decorators and mixin classes. ...
WebRTC Integrator's GuideWebRTC enables real-time communication across the Web and with the whole telecom world behind a single button on a web page. WebRTC promises to bring new reforms and innovation for IP telephony. WebRTC comes with numerous integration features, such as new standards for VoIP services, call control applications, profile and phonebook management, and much more.
This book covers all aspects of building a standalone WebRTC communication platform, making a WebRTC SIP-based Communicator, and shows you how to overcome challenges. It also describes the integration of Rich Services such as voicemail, conference calls, and file transfers, as well as call control mechanisms such as screening and routing. The book then takes you through building a WebRTC project and its integration in the access, network, and service layers of IMS. ...
Learning AngularJS AnimationsAngularJS is an extensive framework used to make full-blown websites with minimal code. Animations in AngularJS are achieved through CSS3 transitions, CSS animations, and JavaScript. AngularJS allows you to create animations with outstanding effects. There are a variety of effects that can be integrated with AngularJS and different ways to achieve the same result. Learning AngularJS Animations will help you choose a way that best fits your needs. This guide is a complete step-by-step tutorial to improving UX by using animations in AngularJS projects. The first few chapters explain the basics of CSS3 transitions and animations and all the available features such as CSS3 keyframes to be used together with AngularJS, also covering how to move beyond JavaScript animations. The book then shows you how to choose an appropriate approach for creating web apps. It provides you with an understanding of how AngularJS native directives can be animated with CSS or JavaScript and how to animate cust ...
Flask Framework CookbookFlask Framework Cookbook takes you through a number of recipes that will help you understand the power of Flask and its extensions. You will start by seeing the different ways of configurations that a Flask application can make use of. You will learn how to work with templates and learn about the ORM and view layers. You will see how to write an admin interface followed by the debugging and logging of errors. Finally, you will learn about different deployment and post-deployment techniques on platforms such as Apache, Tornado, and Heroku.
By the end of this book, you will have gained all the knowledge required to write Flask applications in the best possible way, and scale them with best practices. ...
JavaScript SecurityThis book starts off with an introduction to JavaScript security and gives you an overview of the basic functions JavaScript can perform on the Web, both on the client side and the server side. It demonstrates a couple of ways in which RESTful APIs can be laden with security flaws. You will also create a simple RESTful server using Express.js and Node.js. You will then focus on one of the most common JavaScript security attacks, cross-site scripting, and how to prevent cross-site scripting and cross-site forgery.
Last but not least, the book covers JavaScript phishing, how it works, and ways to counter it.
By the end of this book, you will be able to identify various risks of JavaScript and how to prevent them. ...
Introducing iOS 8Learn to make iOS apps even if you have absolutely no programming experience. This hands-on book takes you from idea to App Store, using real-world examples—such as driving a car or eating at a restaurant-to teach programming and app development. You'll learn concepts through clear, concise, jargon-free language.
This book focuses on Apple's new programming language, Swift. Each lesson is divided into two parts: the lecture portion explains the terms and concepts through examples, and the exercise portion helps you apply these concepts while building real-world apps, like a tip calculator. Learn how to think differently—and see the world from a whole new perspective. ...
Thoughtful Machine LearningLearn how to apply test-driven development (TDD) to machine-learning algorithms—and catch mistakes that could sink your analysis. In this practical guide, author Matthew Kirk takes you through the principles of TDD and machine learning, and shows you how to apply TDD to several machine-learning algorithms, including Naive Bayesian classifiers and Neural Networks.
Machine-learning algorithms often have tests baked in, but they can't account for human errors in coding. Rather than blindly rely on machine-learning results as many researchers have, you can mitigate the risk of errors with TDD and write clean, stable machine-learning code. If you're familiar with Ruby 2.1, you're ready to start. ...
Learning AgileAgile has revolutionized the way teams approach software development, but with dozens of agile methodologies to choose from, the decision to "go agile" can be tricky. This practical book helps you sort it out, first by grounding you in agile's underlying principles, then by describing four specific-and well-used-agile methods: Scrum, extreme programming (XP), Lean, and Kanban.
Each method focuses on a different area of development, but they all aim to change your team's mindset—from individuals who simply follow a plan to a cohesive group that makes decisions together. Whether you're considering agile for the first time, or trying it again, you'll learn how to choose a method that best fits your team and your company. ...
Practical Packet AnalysisIt's easy enough to install Wireshark and begin capturing packets off the wire - or from the air. But how do you interpret those packets once you've captured them? And how can those packets help you to better understand what's going on under the hood of your network? Practical Packet Analysis shows how to use Wireshark to capture and then analyze packets as you take an indepth look at real-world packet analysis and network troubleshooting. The way the pros do it.
Wireshark (derived from the Ethereal project), has become the world's most popular network sniffing application. But while Wireshark comes with documentation, there's not a whole lot of information to show you how to use it in real-world scenarios. ...
Blender 3D Basics, 2nd EditionThis book teaches you how to model a nautical scene, complete with boats and water, and then add materials, lighting, and animation. It demystifies the Blender interface and explains what each tool does so that you will be left with a thorough understanding of 3D. This book starts with an introduction to Blender and some background on the principles of animation, how they are applied to computer animation, and how these principles make animation better. Furthermore, the book helps you advance through various aspects of animation design such as modeling, lighting, camera work, and animation through the Blender interface with the help of several simple projects. Each project will help you practice what you have learned and do more advanced work in all areas. ...