Best of
Programming

2004

Head First Design Patterns


Eric Freeman - 2004
     At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun. You want to learn about the patterns that matter--why to use them, when to use them, how to use them (and when NOT to use them). But you don't just want to see how patterns look in a book, you want to know how they look "in the wild". In their native environment. In other words, in real world applications. You also want to learn how patterns are used in the Java API, and how to exploit Java's built-in pattern support in your own code. You want to learn the real OO design principles and why everything your boss told you about inheritance might be wrong (and what to do instead). You want to learn how those principles will help the next time you're up a creek without a design pattern. Most importantly, you want to learn the "secret language" of Design Patterns so that you can hold your own with your co-worker (and impress cocktail party guests) when he casually mentions his stunningly clever use of Command, Facade, Proxy, and Factory in between sips of a martini. You'll easily counter with your deep understanding of why Singleton isn't as simple as it sounds, how the Factory is so often misunderstood, or on the real relationship between Decorator, Facade and Adapter. With Head First Design Patterns, you'll avoid the embarrassment of thinking Decorator is something from the "Trading Spaces" show. Best of all, in a way that won't put you to sleep! We think your time is too important (and too short) to spend it struggling with academic texts. If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. Using the latest research in neurobiology, cognitive science, and learning theory, Head First Design Patterns will load patterns into your brain in a way that sticks. In a way that lets you put them to work immediately. In a way that makes you better at solving software design problems, and better at speaking the language of patterns with others on your team.

Java: The Complete Reference


Herbert Schildt - 2004
    Updated for Java Platform, Standard Edition 7 (Java SE 7), this comprehensive volume covers the entire Java language, including its syntax, keywords, and fundamental programming principles. You'll also find information on key elements of the Java API library. JavaBeans, servlets, applets, and Swing are examined and real-world examples demonstrate Java in action. In addition, new Java SE 7 features such as try-with-resources, strings in switch, type inference with the diamond operator, NIO.2, and the Fork/Join Framework are discussed in detail.Coverage includes: Data types and operatorsControl statementsClasses and objectsConstructors and methodsMethod overloading and overridingInterfaces and packagesInheritanceException handlingGenericsAutoboxingEnumerationsAnnotationsThe try-with-resources statementVarargsMultithreadingThe I/O classesNetworkingThe Collections FrameworkApplets and servletsJavaBeansAWT and SwingThe Concurrent APIMuch, much more

Working Effectively with Legacy Code


Michael C. Feathers - 2004
    This book draws on material Michael created for his renowned Object Mentor seminars, techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include: Understanding the mechanics of software change, adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform, with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structureThis book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.

High Performance MySQL: Optimization, Backups, Replication & Load Balancing


Jeremy D. Zawodny - 2004
    This book is an insider's guide to these little understood topics.Author Jeremy Zawodny has managed large numbers of MySQL servers for mission-critical work at Yahoo!, maintained years of contacts with the MySQL AB team, and presents regularly at conferences. Jeremy and Derek have spent months experimenting, interviewing major users of MySQL, talking to MySQL AB, benchmarking, and writing some of their own tools in order to produce the information in this book.In "High Performance MySQL" you will learn about MySQL indexing and optimization in depth so you can make better use of these key features. You will learn practical replication, backup, and load-balancing strategies with information that goes beyond available tools to discuss their effects in real-life environments. And you'll learn the supporting techniques you need to carry out these tasks, including advanced configuration, benchmarking, and investigating logs.Topics include: A review of configuration and setup optionsStorage engines and table typesBenchmarkingIndexesQuery OptimizationApplication DesignServer PerformanceReplicationLoad-balancingBackup and RecoverySecurity

C++ Coding Standards: 101 Rules, Guidelines, and Best Practices


Herb Sutter - 2004
    This happens automatically when following agood, simple set of guidelines.*They improve development speed, because the programmer doesn't need toalways make decisions starting from first principles.*They enhance teamwork by eliminating needless debates on inconsequentialissues and by making it easy for teammates to read and maintain each other'scode.The coding standards introduced by this book are a collection of guidelines forwriting high-quality C++ code.***They are the distilled conclusions of a rich collective experience of the C++community. Until now, this body of knowledge has been available only asfolklore or spread in bits and pieces throughout books.

Joel on Software


Joel Spolsky - 2004
    For years, Joel Spolsky has done exactly this at www.joelonsoftware.com. Now, for the first time, you can own a collection of the most important essays from his site in one book, with exclusive commentary and new insights from joel.

Head First Servlets and JSP: Passing the Sun Certified Web Component Developer Exam


Bryan Basham - 2004
    Isn't it time you learned the latest (J2EE 1.4) versions of Servlets & JSPs? This book will get you way up to speed on the technology you'll know it so well, in fact, that you can pass the Sun Certified Web Component Developer (SCWCD) 1.4 exam. If that's what you want to do, that is. Maybe you don't care about the exam, but need to use Servlets & JSPs in your next project. You're working on a deadline. You're over the legal limit for caffeine. You can't waste your time with a book that makes sense only AFTER you're an expert (or worse one that puts you to sleep). No problem. Head First Servlets and JSP's brain-friendly approach drives the knowledge straight into your head (without sharp instruments). You'll interact with servlets and JSPs in ways that help you learn quickly and deeply. It may not be The Da Vinci Code, but quickly see why so many reviewers call it "a page turner". Most importantly, this book will help you use what you learn. It won't get you through the exam only to have you forget everything the next day. Learn to write servlets and JSPs, what makes the Container tick (and what ticks it off), how to use the new JSP Expression Language (EL), what you should NOT write in a JSP, how to write deployment descriptors, secure applications, and even use some server-side design patterns. Can't talk about Struts at a cocktail party? That'll change. You won't just pass the exam, you will truly understand this stuff, and you'll be able to put it to work right away. This new exam is tough--much tougher than the previous version of the SCWCD. The authors of Head First Servlets and JSP know: they created it. (Not that it EVER occurred to them that if they made the exam really hard you'd have to buy a study guide to pass it.) The least they could do is give you a stimulating, fun way to pass the thing. If you're one of the thousands who used Head First EJB to pass the SCWCD exam, you know what to expect!

How Linux Works: What Every Superuser Should Know


Brian Ward - 2004
    Some books try to give you copy-and-paste instructions for how to deal with every single system issue that may arise, but How Linux Works actually shows you how the Linux system functions so that you can come up with your own solutions. After a guided tour of filesystems, the boot sequence, system management basics, and networking, author Brian Ward delves into open-ended topics such as development tools, custom kernels, and buying hardware, all from an administrator's point of view. With a mixture of background theory and real-world examples, this book shows both "how" to administer Linux, and "why" each particular technique works, so that you will know how to make Linux work for you.

Real-Time Collision Detection (The Morgan Kaufmann Series in Interactive 3d Technology)


Christer Ericson - 2004
    It provides the tools and know-how needed to implement industrial-strength collision detection for the detailed dynamic environments of applications such as 3D games, virtual reality applications, and physical simulators. Full description

C All-in-One Desk Reference for Dummies


Dan Gookin - 2004
    * Covers everything users need to get up to speed on C programming, including advanced topics to take their programming skill to the next level * Walks C programmers through the entire development cycle of a C program-designing and developing the program, writing source code, compiling the code, linking the code to create the executable programs, debugging, and deployment * Provides thorough coverage of keywords, program flow, conditional statements, constants and variables, numeric values, arrays, strings, functions, pointers, debugging, prototyping, and much more * Addresses some advanced programming topics such as graphics and game programming as well as Windows and Linux programming * Includes dozens of sample programs that readers can adapt and modify for their own uses * Written by the author of the first-ever For Dummies book-a man known for his ability to take complex material and present it in a way that makes it simple and fun

Ant Colony Optimization


Marco Dorigo - 2004
    The attempt to develop algorithms inspired by one aspect of ant behavior, the ability to find what computer scientists would call shortest paths, has become the field of ant colony optimization (ACO), the most successful and widely recognized algorithmic technique based on ant behavior. This book presents an overview of this rapidly growing field, from its theoretical inception to practical applications, including descriptions of many available ACO algorithms and their uses.The book first describes the translation of observed ant behavior into working optimization algorithms. The ant colony metaheuristic is then introduced and viewed in the general context of combinatorial optimization. This is followed by a detailed description and guide to all major ACO algorithms and a report on current theoretical findings. The book surveys ACO applications now in use, including routing, assignment, scheduling, subset, machine learning, and bioinformatics problems. AntNet, an ACO algorithm designed for the network routing problem, is described in detail. The authors conclude by summarizing the progress in the field and outlining future research directions. Each chapter ends with bibliographic material, bullet points setting out important ideas covered in the chapter, and exercises. Ant Colony Optimization will be of interest to academic and industry researchers, graduate students, and practitioners who wish to learn how to implement ACO algorithms.

Mechanics Of Flight


Warren F. Phillips - 2004
    It affords readers extensive coverage of individual topics within flight mechanics, including overviews of aerodynamics and propulsion. It also offers a full range of modern and classical techniques for applying fundamental principles to the solution of engineering problems in fight mechanics. Mechanics of Flight explores the basic principles of flight mechanics with the help of many worked examples, starting with simple problems involving steady-level flight and building to more complex ones such as the analysis of turning flight and spins. Special coverage found here-and not in most books on the subject-includes a detailed presentation of the quaternion formulation for six-degree-of-freedom flight simulation, including treatment of efficient numerical integration methods.

The Mathematica Guidebook for Programming


Michael Trott - 2004
    It gives users a deeper understanding of Mathematica by instructive implementations, explanations, and examples from a range of disciplines at varying levels of complexity. The three volumes -- Programming, Graphics, and Mathematics, total 3,000 pages and contain more than 15,000 Mathematica inputs, over 1,500 graphics, 4,000+ references, and more than 500 exercises.This first volume begins with the structure of Mathematica expressions, the syntax of Mathematica, its programming, graphic, numeric and symbolic capabilities. It then covers the hierarchical construction of objects out of symbolic expressions, the definition of functions, the recognition of patterns and their efficient application, program flows and program structuring, and the manipulation of lists.An indispensible resource for students, researchers and professionals in mathematics, the sciences, and engineering.

Deconstructing the Elements with 3ds Max: Create Natural Fire, Earth, Air and Water Without Plug-Ins


Pete Draper - 2004
    The unique tutorial approach of this book permits readers to learn essential techniques that every 3D artist needs to create CG environments by recreating the earth's elements of earth, air, fire and water. No extra plug-ins are required to perform the exercises. Draper studies the real world and then simulates it with 3ds Max -a unique approach that reflects classical art training.Deconstructing the Elements allows artists to recreate natural effects using Autodesk(R) 3ds Max(R). This new edition boasts all new tutorials. All editorial content is updated to be current with the current version of 3ds Max. Inspirational images cover every page as the author shares his professional insight, detailing the how and why of each effect, ensuring the reader a complete understanding of all the processes involved.The companion web site includes all of the tutorials from the previous two editions, only available to purchasers of this 3rd edition - plus all new tutorials of the current edition. It's like getting 3 books in one!

Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions


Herb Sutter - 2004
    This book follows in the tradition of the first two: It delivers new material, organized in bite-sized Items and grouped into themed sections. Readers of the first two books will find some familiar section themes, now including new material, such as exception safety, generic programming, and optimization and memory management techniques. The books overlap in structure and theme, not in content. This book continues the strong emphasis on generic programming and on using the C++ standard library effectively, including coverage of important template and generic programming techniques. Sutter's goal for this third and final book in his set is to present case studies that pull together themes from the previous books. This book also covers important points presented at the C++ Standard Committee where corrections to the Standard have been discussed and accepted.

Concepts, Techniques, and Models of Computer Programming


Peter Van Roy - 2004
    The book focuses on techniques of lasting value and explains them precisely in terms of a simple abstract machine. The book presents all major programming paradigms in a uniform framework that shows their deep relationships and how and where to use them together.After an introduction to programming concepts, the book presents both well-known and lesser-known computation models ("programming paradigms"). Each model has its own set of techniques and each is included on the basis of its usefulness in practice. The general models include declarative programming, declarative concurrency, message-passing concurrency, explicit state, object-oriented programming, shared-state concurrency, and relational programming. Specialized models include graphical user interface programming, distributed programming, and constraint programming. Each model is based on its kernel language—a simple core language that consists of a small number of programmer- significant elements. The kernel languages are introduced progressively, adding concepts one by one, thus showing the deep relationships between different models. The kernel languages are defined precisely in terms of a simple abstract machine. Because a wide variety of languages and programming paradigms can be modeled by a small set of closely related kernel languages, this approach allows programmer and student to grasp the underlying unity of programming. The book has many program fragments and exercises, all of which can be run on the Mozart Programming System, an Open Source software package that features an interactive incremental development environment.

SAS Certification Prep Guide: Advanced Programming for SAS 9


SAS Institute - 2004
    Major topics include SQL processing with SAS, the SAS macro language, advanced SAS programming techniques, optimizing SAS programs. You will also become familiar with the enhancements and new functionality that are available in SAS 9. Experienced SAS users who want to prepare for this exam will find this guide to be an invaluable, convenient, and comprehensive resource that covers all of the objectives tested on the exam. The text contains quizzes that enable you to test your understanding of material in each chapter. Additionally, solutions to all quizzes are included at the back of the book. Candidates must earn the SAS Certified Base Programmer for SAS 9 credential before taking the SAS Advanced Programming exam for SAS 9. The book includes a companion CD that will enable you to practice your new skills.

Expert One-On-One J2EE Development Without EJB


Rod Johnson - 2004
    This practical, code-intensive guide provides best practices for using simpler and more effective methods and tools, including JavaServer pages, servlets, and lightweight frameworks.What does this book cover?The book begins by examining the limits of EJB technology -- what it does well and not so well. Then the authors guide you through alternatives to EJB that you can use to create higher quality applications faster and at lower cost -- both agile methods as well as new classes of tools that have evolved over the past few years.They then dive into the details, showing solutions based on the lightweight framework they pioneered on SourceForge -- one of the most innovative open source communities. They demonstrate how to leverage practical techniques and tools, including the popular open source Spring Framework and Hibernate. This book also guides you through productive solutions to core problems, such as transaction management, persistence, remoting, and Web tier design. You will examine how these alternatives affect testing, performance, and scalability, and discover how lightweight architectures can slash time and effort on many projects.What will you learn from this book?Here are some details on what you'll find in this book:How to find the simplest and most maintainable architecture for your application Effective transaction management without EJB How to solve common problems in enterprise software development using AOP and Inversion of Control Web tier design and the place of the Web tier in a well-designed J2EE application Effective data access techniques for J2EE applications with JDBC, Hibernate, and JDO How to leverage open source products to improve productivity and reduce custom coding How to design for optimal performance and scalability

Programming from the Ground Up


Jonathan Bartlett - 2004
    It takes you a step at a time through these concepts: * How the processor views memory * How the processor operates * How programs interact with the operating system * How computers represent data internally * How to do low-level and high-level optimization Most beginning-level programming books attempt to shield the reader from how their computer really works. Programming from the Ground Up starts by teaching how the computer works under the hood, so that the programmer will have a sufficient background to be successful in all areas of programming. This book is being used by Princeton University in their COS 217 "Introduction to Programming Systems" course.

The Latex Companionst: A Complete Guide and Reference for Preparing, Illustrating, and Publishing Technical Documents, Revised Boxed Set


Michel Goossens - 2004
    This book shows you how to begin using LaTeX, and also serves as a handy reference. The other books provide information on tools and techniques available for publishing technical text on the Web.

SAS Functions by Example


Ronald P. Cody - 2004
    From ABS to Zipstate, more than 180 of the most useful SAS language functions are clearly defined and illustrated with fully annotated working programs. Written as both a reference manual and an instructional guide, this book's features include functions arranged by category; coverage of 48 functions that are New for SAS 9.1; a tutorial on Perl regular expressions; extensive sample programs featuring each of the functions; tips to show you novel ways to use functions or to use several functions together to achieve the result you want; a list of programs, an alphabetic list of all the functions in the book, and a comprehensive index of functions and tasks. Beginning and seasoned SAS users will benefit from this comprehensive and useful reference guide to SAS functions! 2004

The Mathematica Guidebook for Graphics [With DVD-ROM]


Michael Trott - 2004
    It gives users a deeper understanding of Mathematica by instructive implementations, explanations, and examples from a range of disciplines at varying levels of complexity. The three volumes - Programming, Graphics, and Mathematics - each with a CD, total 3,000 pages and contain more than 15,000 Mathematica inputs, over 1,500 graphics, 4,000+ references, and more than 500 exercises. This second volume covers 2 and 3D graphics, providing a detailed treatment of creating images from graphic primitives such as points, lines, and polygons. It also shows how to graphically display functions that are given either analytically or in discrete form and a number of images from the Mathamatica graphics gallery. The use of Mathematicas graphics capabilities provides a very efficient and instructive way to learn how to deal with the structures arising in solving complicated problems.

Inversion of Control Containers and the Dependency Injection pattern


Martin Fowler - 2004
    Underlying these containers is a common pattern to how they perform the wiring, a concept they refer under the very generic name of "Inversion of Control". In this article I dig into how this pattern works, under the more specific name of "Dependency Injection", and contrast it with the Service Locator alternative. The choice between them is less important than the principle of separating configuration from use.

Murach's Mainframe COBOL


Mike Murach - 2004
    So if you want to learn how to write COBOL programs the way they're written in the best enterprise COBOL shops, this is the book for you. And when you're done learning from this book, it becomes the best reference you'll ever find for use on the job. Throughout the book, you will learn how to use COBOL on IBM mainframes because that's where 90 per cent or more of all COBOL is running. But to work on a mainframe, you need to know more than just the COBOL language. That's why this book also shows you: how to use the ISPF editor for entering programs; how to use TSO/E and JCL to compile and test programs; how to use the AMS utility to work with VSAM files; how to use CICS for developing interactive COBOL programs; how to use DB2 for developing COBOL programs that handle database data; how to maintain legacy programs. If you want to learn COBOL for other platforms, this book will get you off to a good start because COBOL is a standard language. In fact, all of the COBOL that's presented in this book will also run on any other platform that has a COBOL compiler. Remember, though, that billions of lines of mainframe COBOL are currently in use, and those programs will keep programmers busy for many years to come.

A Byte of Python


Swaroop C.H. - 2004
    An introduction to Python programming for beginners.

Carpenter's Complete Guide to the SAS Macro Language


Art Carpenter - 2004
    Many topics from the first edition have been expanded.

SAS Certification Prep Guide: Base Programming


SAS Institute - 2004
    The SAS Base Programming exam is available through 12/31/06 and tests your knowledge of SAS Version 8 programming. (This certification credential is valid for 3 years.) It will be replaced by the Base Programming Certification Exam for SAS?9. Increase your credibility as a technical professional, expand your knowledge of SAS software, and increase your career options and marketability by becoming a globally recognized SAS Certified Professional. Designed for new and experienced SAS users who want to prepare for the SAS Base Programming certification exam, this comprehensive guide covers all of the objectives tested on the exam and more. Major topics include basic concepts, producing reports, creating and modifying SAS data sets, and reading various types of raw data. Each chapter includes a quiz on the chapter's contents. Answer keys are included. Includes a free CD-ROM with tutorials, practice data, and sample programs to test your SAS skills! This book prepares you for the current SAS Base Programming Exam, which is available through December 31, 2006. Certification credentials are valid for three years.

ASP.Net Cookbook


Michael A. Kittel - 2004
    ASP.NET is Microsoft's latest evolution of ASP. While ASP.NET has a lot in common with its predecessor, this new technology takes advantage of object-oriented programming to dramatically improve developer productivity and convenience. Using the .NET Framework and Microsoft's new object-oriented languages, ASP.NET brings the same rapid drag-and-drop productivity to web applications that the Visual Basic programming language brought to Windows applications. ASP.NET also introduces web services, which allow developers to expose the functionality of an application via HTTP and XML, so that clients on any platform can access it via the Internet. ASP.NET is not a simple upgrade of ASP. It s a quantum leap ahead. There are many benefits to using ASP.NET, and one major drawback: the time developers must devote to mastering this new Web application technology.The ASP.NET Cookbook provides a wealth of plug-and-play solutions to problems commonly encountered when developing ASP.NET web applications and services in the popular problem-solution-discussion Cookbook format. The coding solutions in ASP.NET Cookbook appeal to a wide range of developers, from the inexperienced to the expert. For every problem addressed in the book, there's a worked-out solution or recipe a short, focused piece of code that web developers can insert directly into their applications. Developers can save hours by using just a single one of over 100 recipes included in this invaluable cookbook.But the ASP.NET Cookbook provides far more than just a wide range of cut-and-paste code solutions. Each recipe is followed by a discussion including tips, tricks, and possible pitfalls--so developers can learn to adapt the problem-solving techniques to a myriad of similar situations. Each recipe provides an immediate solution to a pressing problem, while simultaneously allowing developers who prefer to a hands-on learning style with the experience they need to master ASP.NET. This ultimate ASP.NET code sourcebook will quickly earn the dog-eared corners and coffee rings that mark a web developer's most valued resource.

Corrective Action for the Software Industry


Denise E. Robitaille - 2004
    They know it's a requirement for compliance to standards such as ISO 9001. In some cases, the mandate is imposed by customers or regulatory agencies. Compounding this misunderstanding is that much of what has been written about the corrective action process is targeted toward manufacturing organizations, with the predictable references to tooling, production equipment, inspection of materials, storage issues, component design and the like. For software organizations, the product is intangible, and the processes may be electronically defined, derived, and controlled. Corrective action and the manner in which it is implemented needs to be explained specifically for software, both in language and supporting documentation. This practical handbook discusses the hows and whys of corrective action, with a particular focus on its application in software environments. It also illustrates how the process is integrated into the various other functions of the organization. Plus, Corrective Action for the Software Industry includes a CD-ROM with PDF forms you can use in your corrective action process.

Excel Add-In Development in C / C++: Applications in Finance


Steve Dalton - 2004
    C/C++. Excel Add-in Development in C/C++ - Applications for Finance is a how-to guide and reference book for the creation of high performance add-ins for Excel in C and C++ for users in the finance industry. Author Steve Dalton explains how to apply Excel add-ins to financial applications with many examples given throughout the book. It covers the relative strengths and weaknesses of developing add-ins for Excel in VB versus C/C++. "This book is for anyone who wants to do any application development in Excel. Even for an old hand at Excel development such as myself, a brief skim through reveals valuable nuggets of information. Delving deeper into the text, richer veins are easily found. This book is destined to become an essential reference on Excel development." Dr. Les Clewlow, Principal, Lacima Group Ltd."Programming Excel add-ins using the C API can be complex and difficult. Steve has done a masterful job of demystifying the process. After reading this book you'll be creating XLLs for all purposes with complete confidence. Highly recommended." Rob Bovey, MCSE, MCSD, Excel MVP, President, Application Professionals

PHP 5 in Easy Steps


Mike McGrath - 2004
    PHP allows data to be easily exchanged between a web browser and a web server - both on the Windows platform and on Unix-based platforms, such as Linux. Exciting chapters, with complete code examples, illustrate the major features of the PHP language and screenshots depict the actual output from each example script. You are also introduced to MySQL databases and shown, by example, how PHP can interact with databases to store user input, and to retrieve stored data for delivery to a web browser as components of a web page.

Web Standards Solutions: The Markup and Style Handbook


Dan Cederholm - 2004
    It is important that these implementations are the same throughout the Web, otherwise it becomes a messy proprietary place, and lacks consistency. These standards also allow content to be more compatible with multiple different viewing devices, such as screen readers for people with vision impairments, cell phones, PDFs, etc. HTML, XML, and CSS are all such technologies.This book is your essential guide to understanding the advantages you can bring to your web pages by implementing web standards and precisely how to apply them.Web standards such as XHTML and CSS are now fairly well-known technologies, and they will likely be familiar to you, the web designerindeed, they are all around you on the Web. However, within web standards still lies a challengewhile the browser's support for web standards is steadily increasing, many web developers and designers have yet to discover the real benefits of web standards and respect the need to adhere to them. The real art is in truly understanding the benefits and implementing the standards efficiently.As a simple example of its power, you can use CSS to lay out your pages instead of nesting tables. This can make file sizes smaller, allowing pages to load faster, ultimately increasing accessibility for all browsers, devices, and web users. Use XHTML elements correctly so that your markup is compact and more easily understood. Use CSS to style different elements of a web page. Lay out pages easily and effectively. Compare multiple methods of achieving the same results to make better design choices. Learn about advanced web design techniques and their important caveats.Web Standards Solutions is broken down into 16 short chapters, each covering the theory and practice of different web standards concept and showing multiple solutions to given problems for easy learning. You'll learn about multi-column layouts, using image replacement techniques to your best advantage, making the best use of tables and lists, and many more. This highly modular approach allows you to rapidly digest, understand, and utilize the essentials of web standards."

The Elements of C++ Style


Trevor Misfeldt - 2004
    Just as Strunk and White's The Elements of Style provides rules of usage for writing in the English language, this text furnishes a set of rules for writing in C++. The authors offer a collection of standards and guidelines for creating solid C++ code that will be easy to understand, enhance and maintain. The book provides conventions for formatting, naming, documentation, programming, and packaging for the latest ANSI standard of C++, and also includes discussion of advanced topics such as templates. Trevor Misfeldt is co-author of Elements of Java Style (Cambridge, 2000) and CEO of CenterSpace Software. Gregory Bumgardner is a Freelance Consultant with twenty-five years of experience in software design and implementation. He is co-author of Elements of Java Style (Cambridge, 2000). Andrew Gray is Director of Engineering for Intellichem, Inc. He was previously Software Engineering Manager and Technology Evangelist at Rogue Wave Software, where he led the development of XML infrastructure solutions.

Planar Graph Drawing


Takao Nishizeki - 2004
    Extensively illustrated and with exercises included at the end of each chapter, it is suitable for use in advanced undergraduate and graduate level courses on algorithms, graph theory, graph drawing, information visualization and computational geometry. The book will also serve as a useful reference source for researchers in the field of graph drawing and software developers in information visualization, VLSI design and CAD.

Computer Graphics and Geometric Modeling: Implementation and Algorithms [With CDROM]


Max K. Agoston - 2004
    Computer Graphics and Geometric Modelling: Implementation and Algorithms, covers the computer graphics part of the field of geometric modelling and includes all the standard computer graphics topics. The first part deals with basic concepts and algorithms and the main steps involved in displaying photorealistic images on a computer. The second part covers curves and surfaces and a number of more advanced geometric modelling topics including intersection algorithms, distance algorithms, polygonizing curves and surfaces, trimmed surfaces, implicit curves and surfaces, offset curves and surfaces, curvature, geodesics, blending etc. The third part touches on some aspects of computational geometry and a few special topics such as interval analysis and finite element methods. The volume includes two companion programs.

Petri Net Theory And The Modeling Of Systems


James Lyle Peterson - 2004
    

Excel 2003 Programming with VBA


Steven M. Hansen - 2004
    If you're an advanced Excel user looking to gain programming experience, or a skilled developer new to Excel or the Excel Object Model, this no-nonsense book teaches you how to build custom applications that can generate substantial time and cost savings for you, your employer, and your customers.Written by a professional with nearly a decade of experience producing Excel/VBA solutions, Mastering Excel 2003 Programming with VBA conveys the precise knowledge and techniques you need to be highly productive. You'll master the most critical Excel objects and development practices necessary to create a complete solution, including working with XML data, Smart Document technology, and database integration with ADO. And you can readily apply the practical advice and reusable code examples to your own projects.In his friendly style, author Steven Hansen makes the information easy to grasp and entertaining to read, and he does not shy away from challenging material.You'll learn all about: Ramping up with VBA Debugging tools and tactics that work Mastering the Excel Object Model Developing class modules Customizing Excel UserForms Integrating Excel with other applications Incorporating text files in your solution Coding solutions that leverage a database Using XML in Excel Designing user-friendly toolbars and menus Building Excel 2003 Smart Documents Deploying your solution

Hackish C++ Pranks & Tricks [With CDROM]


Michael Flenov - 2004
    Nonstandard C++ programming techniques as well as undocumented functions that will make others smile and allow users to demonstrate practical skills in programming and computer support are covered. Special attention is paid to the creation of compact programs that are useful for those interested in optimizing programs. Network programming and how to program for the Internet or an intranet, how to create a fast port scanner, and how to write pranks are discussed. In addition to pranks and network programs, hacking algorithms are described so that programmers can learn what to expect from hackers and how to create a protection system with maximum efficiency.

Mining Amazon Web Services: Building Applications with the Amazon API


John Paul Mueller - 2004
    Mining Amazon Web Services: Building Applications with the Amazon API shows you what you can do with these powerful tools, and exactly how to do it. As a buyer, you'll build applications that let you comparison-shop far more effectively, consistently saving money and finding exactly the right product. As a seller, you'll leverage Amazon Web Services in ways that help you attract more customers, make more commissioned referrals, and improve your bottom line. This book is also a great resource for independent developers who want to create and publish--even make money with--applications for others. Here's some of what you'll find covered inside:Performing complex product searches Analyzing the data obtained in your searches Connecting Amazon Web Services to a local database Building a Web Services-based shopping cart Using Amazon-supported search technologies, including XML over HTTP and SOAP Improving speed and reliability Building applications for mobile devices Building and publishing applications for others All that's required is some basic experience with any one of several programming languages, including VBA, Visual Basic 6, Visual C++ 6, Visual Basic .NET, Visual C# .NET, Java, and PHP, all of which are fully represented in the book's downloadable code.

.NET Framework Standard Library Annotated Reference, Volume 1: Base Class Library and Extended Numerics Library


Brad Abrams - 2004
    Great Book,+CD, ship immediately, Includes CD very good condition

The Assembly Programming Master Book


Vlad Pirogov - 2004
    The algorithmic knowledge and skills lost in high-level programming provides the justification demonstrated in this guide for using Assembly code. Working applications with detailed comments and descriptions of their operating principles, along with material that can be considered hackish, are included. The tools and techniques of code analysis and modification are covered, making this a useful tool for programmers eager to become better acquainted with hacker methods. Not a guide on Assembly language, this represents a symbiosis between the Assembly language and the Windows operating system.

The Art of C++


Herbert Schildt - 2004
    Explaining complex code examples, this book demonstrates the artistry of C++, and includes a chapter, on A C++ Interpreter.

Notes from the Metalevel: Introduction to Algorithmic Music Composition [With CDROM]


Heinrich Taube - 2004
    It is primarily intended for student composers interested in learning how computation can provide them with a new paradigm for musical composition. Notes from the Metalevel explains through a practical, example-based approach the essential concepts and techniques of computer-based composition, and demonstrates how these techniques can be integrated into the composer's own creative work. One of the most exciting aspects of computer-based composition is that it is an essentially empirical activity that does not require years of formal music theory training to understand. For this reason, Notes from the Metalevel will be of interest to any reader with a high-school mathematics background interested in experimenting with music composition using MIDI and audio synthesis programs. The book will also be of use to computer science and engineering students who are interested in artistic applications of object-oriented programming techniques and music software design. The Aeolian Harp, a composition for piano and computer generated tape (see chapter 23) won the Eric Siday Musical Creativity Award as the top composition submitted to the 2003 International Computer Music Conference.

An Introduction to GCC


Brian J. Gough - 2004
    Many books teach the C and C++ languages, this book teaches you how to use the compiler itself. All the common problems and error messages encountered by new users of GCC are carefully explained, with numerous easy-to-follow "Hello World" examples. Topics covered include: compiling C and C++ programs using header files and libraries, warning options, use of the preprocessor, static and dynamic linking, debugging, optimization, platform-specific options, profiling and coverage testing, paths and environment variables, and the C++ standard library and templates. Features a special foreword by Richard M. Stallman, principal developer of GCC and founder of the GNU Project. All the money raised from the sale of this book will support the development of free software and documentation.

MySQL Essential Skills


John Horn - 2004
    This book includes an introduction to a database, featuring progress checks, exercises, and Ask the Experts sections in each chapter.

Red Hat Fedora 2 Unleashed


Bill Ball - 2004
    Incorporating an advanced approach, the information presented aims to provide you with the best and latest information about installation, configuration, system administration, server operations and security. Updated discussions of the architecture of several Linux issues, as well as material on new applications, peripherals and Web development are also included. Get the most out of the latest Red Hat Linux distribution with Red Hat Fedora 2 Unleashed.

Garageband


Mary Plummer - 2004
    GarageBand turns your Mac into an anytime, anywhere recording studio packed with hundreds of instruments and a recording engineer or two for good measure. It's the easiest way to create, perform, and record your own music whether you're an accomplished player or just wish you were a rock star. "Apple Training Series: GarageBand" will take readers through everything they need to know within the book and CD combo in GarageBand. GarageBand turns your Mac into a digital recording studio--complete with instruments, pre-recorded loops, amps, effects, and editing tools. Why, you'll even find virtual recording engineers in the mix to help you out. You'll be spinning the music of the spheres in no time.

Java?foundations


Todd Greanier - 2004
    The purpose of the Foundations series is to identify these concepts and present them in a way that gives you the strongest possible starting point, no matter what your endeavor. Java Foundations provides essential knowledge about what has arguably become the world's most important programming language. What you learn here will benefit you in the short term, as you acquire and practice your skills, and in the long term, as you use them. Topics covered include:The history of Java Java fundamentals Keywords and operators Flow control Arrays Basic and advanced concepts in object-oriented programming Exception handling Standard Java API classes The collections framework

Autonomy Oriented Computing: From Problem Solving to Complex Systems Modeling


Jiming Liu - 2004
    It can also be used as a text in graduate/undergraduate programs in a broad range of computer-related disciplines, including Robotics and Automation, Amorphous Computing, Image Processing, Programming Paradigms, Computational Biology, etc.Part One describes the basic concepts and characteristics of an AOC system and enumerates the critical design and engineering issues faced in AOC system development. Part Two gives detailed analyses of methodologies and case studies to evaluate AOC used in problem solving and complex system modeling. The final chapter outlines possibilities for future research and development.Numerous illustrative examples, experimental case studies, and exercises at the end of each chapter of Autonomy Oriented Computing help particularize and consolidate the methodologies and theories presented.

Microsoft Visual Basic .Net Programming: From Problem Analysis to Program Design


E. Reed Doke - 2004
    Utilizing a problem-solving approach, the authors present traditional topics such as Control Structures and Arrays within the context of the Visual Basic .NET platform. All chapters contain extensive end-of-chapter material, including complete Programming Examples, Exercises, and Programming Exercises.

Visual C++ Optimization with Assembly Code [With CD-ROM]


Yury Magda - 2004
    Areas of focus include optimizing high-level logical structures, creating effective mathematical algorithms, and working with strings and arrays. Code optimization is considered for the Intel platform, taking into account features of the latest models of Intel Pentium processors and how using Assembly code in C++ applications can improve application processing. The use of an assembler to optimize C++ applications is examined in two ways, by developing and compiling Assembly modules that can be linked with the main program written in C++ and using the built-in assembler. Microsoft Visual C++ .Net 2003 is explored as a programming tool, and both the MASM 6.14 and IA-32 assembler compilers, which are used to compile source modules, are considered.

Combining Pattern Classifiers: Methods and Algorithms


Ludmila I. Kuncheva - 2004
    It is one of the first books to provide unified, coherent, and expansive coverage of the topic and as such will be welcomed by those involved in the area. With case studies that bring the text alive and demonstrate 'real-world' applications it is destined to become essential reading.

Ivor Horton's Beginning ANSI C++: The Complete Language


Ivor Horton - 2004
    This is a tuto- rial guide to Standard C++. During the course of the book you'll cover all the funda- mentals of syntax, grammar, object-oriented capability, and the principal features of the standard library. You'll soon gain enough programming know-how to write your own C++ applications. Why C++? C++ is arguably the most widely used programming language in existence. It's used in professional application development because of its immense flexibility, power, and efficiency. For high-performance code across a vast range of programming contexts, C++ is unrivalled. It's also much more accessible than many people assume. With the right guidance, getting a grip on C++ is easier than you might imagine. By developing your C++ skills, you'll learn a language already used by millions, and you'll acquire a new tool in your programming toolbox that is likely to be more powerful than any of the others. The Standard for C++ In 1998, the International Standard for C++, ISO/IEC 14882, was finally approved and adopted by the American National Standards Institute (ANSI) and the International Committee for Information Technology Standards (INCITS). This was the culmination of nine years of work by a joint ANSI/ISO committee whose objective was to establish a single definition of the C++ programming language that would be accepted worldwide.