Algorithms in a Nutshell, 2nd EditionCreating robust software requires the use of efficient algorithms, but programmers seldom think about them until a problem occurs. This updated edition of Algorithms in a Nutshell describes a large number of existing algorithms for solving a variety of problems, and helps you select and implement the right algorithm for your needs - with just enough math to let you understand and analyze algorithm performance.
With its focus on application, rather than theory, this book provides efficient code solutions in several programming languages that you can easily adapt to a specific project. Each major algorithm is presented in the style of a design pattern that includes information to help you understand why and when the algorithm is appropriate. ...
Java I/O, NIO and NIO.2Java I/O, NIO, and NIO.2 is a power-packed book that accelerates your mastery of Java's various I/O APIs. In this book, you'll learn about classic I/O APIs (File, RandomAccessFile, the stream classes and related types, and the reader/writer classes). Next, you'll learn about NIO's buffer, channel, selector, regular expression, charset, and formatter APIs. Finally, you'll discover NIO.2's offerings in terms of an improved file system interface, asynchronous I/O, and the completion of socket channel functionality.
After reading and using thi book, you'll gain the accelerated knowledge and skill level to really build applications with efficient data access, especially for today's cloud computing streaming data needs. ...
Designing BSD RootkitsThough rootkits have a fairly negative image, they can be used for both good and evil. Designing BSD Rootkits arms you with the knowledge you need to write offensive rootkits, to defend against malicious ones, and to explore the FreeBSD kernel and operating system in the process.
Organized as a tutorial, Designing BSD Rootkits will teach you the fundamentals of programming and developing rootkits under the FreeBSD operating system. Author Joseph Kong's goal is to make you smarter, not to teach you how to write exploits or launch attacks. You'll learn how to maintain root access long after gaining access to a computer and how to hack FreeBSD.
Kongs liberal use of examples assumes no prior kernel-hacking experience but doesn't water down the information. All code is thoroughly described and analyzed, and each chapter contains at least one real-world application. ...
Statistics Done WrongScientific progress depends on good research, and good research needs good statistics. But statistical analysis is tricky to get right, even for the best and brightest of us. You'd be surprised how many scientists are doing it wrong.
Statistics Done Wrong is a pithy, essential guide to statistical blunders in modern science that will show you how to keep your research blunder-free. You'll examine embarrassing errors and omissions in recent research, learn about the misconceptions and scientific politics that allow these mistakes to happen, and begin your quest to reform the way you and your peers do statistics. ...
Python PlaygroundPython is a powerful programming language that's easy to learn and fun to play with. But once you've gotten a handle on the basics, what do you do next?
Python Playground is a collection of imaginative programming projects that will inspire you to use Python to make art and music, build simulations of real-world phenomena, and interact with hardware like the Arduino and Raspberry Pi. You'll learn to use common Python tools and libraries like numpy, matplotlib, and pygame to do things like.
Programming shouldn't be a chore. Have some solid, geeky fun with Python Playground. ...
Software Product Quality ControlQuality is not a fixed or universal property of software; it depends on the context and goals of its stakeholders. Hence, when you want to develop a high-quality software system, the first step must be a clear and precise specification of quality. Yet even if you get it right and complete, you can be sure that it will become invalid over time. So the only solution is continuous quality control: the steady and explicit evaluation of a product's properties with respect to its updated quality goals.
This book guides you in setting up and running continuous quality control in your environment. Starting with a general introduction on the notion of quality, it elaborates what the differences between process and product quality are and provides definitions for quality-related terms often used without the required level of precision. ...
Java Programming 24-Hour Trainer, 2nd EditionJava Programming 24-Hour Trainer, 2nd Edition is your complete beginner's guide to the Java programming language, with easy-to-follow lessons and supplemental exercises that help you get up and running quickly. Step-by-step instruction walks you through the basics of object-oriented programming, syntax, interfaces, and more, before building upon your skills to develop games, web apps, networks, and automations. This second edition has been updated to align with Java SE 8 and Java EE 7, and includes new information on GUI basics, lambda expressions, streaming API, WebSockets, and Gradle. Even if you have no programming experience at all, the more than six hours of Java programming screencasts will demonstrate major concepts and procedures in a way that facilitates learning and promotes a better understanding of the development process.
This is your quick and painless guide to mastering Java, whether you're starting from scratch or just looking to expand your skill set. ...
C# 24-Hour Trainer, 2nd EditionC# 24-Hour Trainer, 2nd Edition is your quick and easy guide to programming in C#, even if you have no programming experience at all. Updated to align with the latest C# standard, this book is your comprehensive beginner's guide, with each lesson supplemented by a video, for over ten hours of video training. Each chapter focuses on a specific concept or technique, with detailed, easy-to-follow explanation followed by a hands-on exercise. The goals of each exercise are outlined in advance to help you understand what you're working toward, and step-by-step instructions walk you through the operation from start to finish. Complex areas are clarified with specifically highlighted pointers that head off confusion, and additional exercises are provided so you can practice your new skills. Full instructor ancillaries are included to make this guide classroom ready, and the author's own website offers ongoing support.
C# has become one of the most popular programming languages in the world, ...
Swift iOS 24-Hour TraineriOS Swift 24-Hour Trainer combines book and video lessons in Apple's Swift programming language to prepare you to build iPhone and iPad apps - and distribute them through the Appstore. First, this approachable text covers the fundamentals of Swift by introducing you to iOS development in this language, and presenting best practices for setting up a development environment and using variables, statements, expressions, operators, functions, and closures. Next, you explore common tasks, such as alert views, table views, and collection views. You then deepen your knowledge of Swift by considering network programming and local data storage. Finally, this engaging resource dives into slightly more advanced concepts, such as tab bars, web views, the accelerometer, camera, photo library, Google maps, and core location.
Swift was designed by Apple to incorporate modern scripting features while offering simpler, cleaner syntax than Objective-C to maintain a minimal and easy to read style. Thi ...
Beginning Visual Basic 2015Beginning Visual Basic 2015 is the ideal guide for new programmers, especially those learning their first language. This new edition has been updated to align with Visual Studio 2015, and also refocused to concentrate on key beginner topics. Precise, step-by-step instructions walk you through important tasks, and clear explanations targeted to beginners will have you writing your first Visual Basic application quickly. You'll start from the absolute beginning, assuming no prior programming experience, and then gradually build your skills to write Visual Basic applications for Windows and the Web. Coverage includes objects, class libraries, graphics, databases, and much more, with explicit instructions on using ASP.NET, SQL Server, ADO.NET, and XML.
Visual Studio is the usual environment for Visual Basic programming, and the latest upgrade has made Visual Basic more feature compatible with C# to allow programmers to move fluidly between the two languages. Don't know C#? Don't worry! ...