Best of
Programming

2002

Computer Systems: A Programmer's Perspective


Randal E. Bryant - 2002
    Often, computer science and computer engineering curricula don't provide students with a concentrated and consistent introduction to the fundamental concepts that underlie all computer systems. Traditional computer organization and logic design courses cover some of this material, but they focus largely on hardware design. They provide students with little or no understanding of how important software components operate, how application programs use systems, or how system attributes affect the performance and correctness of application programs. - A more complete view of systems - Takes a broader view of systems than traditional computer organization books, covering aspects of computer design, operating systems, compilers, and networking, provides students with the understanding of how programs run on real systems. - Systems presented from a programmers perspective - Material is presented in such a way that it has clear benefit to application programmers, students learn how to use this knowledge to improve program performance and reliability. They also become more effective in program debugging, because t

Agile Software Development, Principles, Patterns, and Practices


Robert C. Martin - 2002
    The author incudes OOD, UML, Design Patterns, Agile and XP methods with a detailed description of a complete software design for reusable programs in C++ and Java. Using a practical, problem-solving approach, it shows how to develop an object-oriented application -- from the early stages of analysis, through the low-level design and into the implementation. Walks readers through the designer's thoughts -- showing the errors, blind alleys, and creative insights that occur throughout the software design process. KEY TOPICS: Covers: Statics and Dynamics; Principles of Class Design; Complexity Management; Principles of Package Design; Analysis and Design; Patterns and Paradigm Crossings. Explains the principles of OOD, one by one, and then demonstrates them with numerous examples, completely worked-through designs, and case studies. Covers traps, pitfalls, and work arounds in the application of C++ and OOD and then shows how Agile methods can be used. Discusses the methods for designing and developing big software in detail. Features a three-chapter, in-depth, single case study of a building security system. MARKET: For Software Engineers, Programmers, and Analysts who want to understand how to design object oriented software with state of the art methods.

Hacker's Delight


Henry S. Warren Jr. - 2002
    Aiming to tell the dark secrets of computer arithmetic, this title is suitable for library developers, compiler writers, and lovers of elegant hacks.

Types and Programming Languages


Benjamin C. Pierce - 2002
    The study of type systems--and of programming languages from a type-theoretic perspective--has important applications in software engineering, language design, high-performance compilers, and security.This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material.The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.

Python Cookbook


David Beazley - 2002
    Packed with practical recipes written and tested with Python 3.3, this unique cookbook is for experienced Python programmers who want to focus on modern tools and idioms.Inside, you’ll find complete recipes for more than a dozen topics, covering the core Python language as well as tasks common to a wide variety of application domains. Each recipe contains code samples you can use in your projects right away, along with a discussion about how and why the solution works.Topics include:Data Structures and AlgorithmsStrings and TextNumbers, Dates, and TimesIterators and GeneratorsFiles and I/OData Encoding and ProcessingFunctionsClasses and ObjectsMetaprogrammingModules and PackagesNetwork and Web ProgrammingConcurrencyUtility Scripting and System AdministrationTesting, Debugging, and ExceptionsC Extensions

Debugging: The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems


David J. Agans - 2002
    Written in a frank but engaging style, Debuggingprovides simple, foolproof principles guaranteed to help find any bug quickly. This book makes those shelves of application-specific debugging books (on C++, Perl, Java, etc.) obsolete. It changes the way readers think about debugging, making those pesky problems suddenly much easier to find and fix. Illustrating the rules with real-life bug-detection war stories, the book shows readers how to: * Understand the system: how perceiving the ""roadmap"" can hasten your journey * Quit thinking and look: when hands-on investigation can’t be avoided * Isolate critical factors: why changing one element at a time can be an essential tool * Keep an audit trail: how keeping a record of the debugging process can win the day

Patterns of Enterprise Application Architecture


Martin Fowler - 2002
    Multi-tiered object-oriented platforms, such as Java and .NET, have become commonplace. These new tools and technologies are capable of building powerful applications, but they are not easily implemented. Common failures in enterprise applications often occur because their developers do not understand the architectural lessons that experienced object developers have learned. Patterns of Enterprise Application Architecture is written in direct response to the stiff challenges that face enterprise application developers. The author, noted object-oriented designer Martin Fowler, noticed that despite changes in technology--from Smalltalk to CORBA to Java to .NET--the same basic design ideas can be adapted and applied to solve common problems. With the help of an expert group of contributors, Martin distills over forty recurring solutions into patterns. The result is an indispensable handbook of solutions that are applicable to any enterprise application platform. This book is actually two books in one. The first section is a short tutorial on developing enterprise applications, which you can read from start to finish to understand the scope of the book's lessons. The next section, the bulk of the book, is a detailed reference to the patterns themselves. Each pattern provides usage and implementation information, as well as detailed code examples in Java or C#. The entire book is also richly illustrated with UML diagrams to further explain the concepts. Armed with this book, you will have the knowledge necessary to make important architectural decisions about building an enterprise application and the proven patterns for use when building them. The topics covered include - Dividing an enterprise application into layers - The major approaches to organizing business logic - An in-depth treatment of mapping between objects and relational databases - Using Model-View-Controller to organize a Web presentation - Handling concurrency for data that spans multiple transactions - Designing distributed object interfaces

Think Python


Allen B. Downey - 2002
    It covers the basics of computer programming, including variables and values, functions, conditionals and control flow, program development and debugging. Later chapters cover basic algorithms and data structures.

Let Us C


Yashavant P. Kanetkar - 2002
    These two have been the most distinguishing features of all the previous 6 editions of this book. Today's C programmer has to not only master the complexities and intricacies of the language but also has to contend with its usage in environments like Windows and Linux. This book covers all these three aspects of C Programming very well. This book doesn't assume any programming background. It begins with the basics and steadily builds the pace so that the reader finds it easy to handle complicated topics towards the end. Each chapter has been designed to create a deep and lasting impression on the reader's mind. "If taught through examples, any concept becomes easy to grasp". This book follows this dictum faithfully. Yashavant has crafted well thought out programming examples for every aspect of C Programming. Some of the highlighting features of the book are: Traditional C Programming: Pointers, Complete build process, Low-level File I/O, Structures, Unions, Bit-fields, Bitwise Operators, Creating Function Libraries; C Under Linux: Signals and Signal Handling; Blocking of Signals; Event Driven Programming; Process, PIDs, Zombies; Forking of Process; GNOME Programming Using GTK Library; C Under Windows: Windows Programming Model; Windows Messaging Architecture; Mouse Programming; Hardware Interaction; and Windows Hooks.

C++ Templates: The Complete Guide


David Vandevoorde - 2002
    C++ Templates: The Complete Guide provides software architects and engineers with a clear understanding of why, when, and how to use templates to build and maintain cleaner, faster, and smarter software more efficiently. C++ Templates begins with an insightful tutorial on basic concepts and language features. The remainder of the book serves as a comprehensive reference, focusing first on language details, then on a wide range of coding techniques, and finally on advanced applications for templates. Examples used throughout the book illustrate abstract concepts and demonstrate best practices. Readers learn: The exact behaviors of templates How to avoid the pitfalls associated with templates Idioms and techniques, from the basic to the previously undocumented How to reuse source code without threatening performance or safety How to increase the efficiency of C++ programs How to produce more flexible and maintainable software This practical guide shows programmers how to exploit the full power of the template features in C++.

Test-Driven Development: By Example


Kent Beck - 2002
    While some fear is healthy (often viewed as a conscience that tells programmers to be careful!), the author believes that byproducts of fear include tentative, grumpy, and uncommunicative programmers who are unable to absorb constructive criticism. When programming teams buy into TDD, they immediately see positive results. They eliminate the fear involved in their jobs, and are better equipped to tackle the difficult challenges that face them. TDD eliminates tentative traits, it teaches programmers to communicate, and it encourages team members to seek out criticism However, even the author admits that grumpiness must be worked out individually! In short, the premise behind TDD is that code should be continually tested and refactored. Kent Beck teaches programmers by example, so they can painlessly and dramatically increase the quality of their work.

C++ Programming: From Problem Analysis to Program Design


D.S. Malik - 2002
    Best-selling author D.S. Malik employs a student-focused approach, using complete programming examples to teach introductory programming concepts. This third edition has been enhanced to further demonstrate the use of OOD methodology, to introduce sorting algorithms (bubble sort and insertion sort), and to present additional material on abstract classes. In addition, the exercise sets at the end of each chapter have been expanded, and now contain several calculus and engineering-related exercises. Finally, all programs have been written, compiled, and quality-assurance tested with Microsoft Visual C++ .NET, available as an optional compiler with this text.

Texturing and Modeling: A Procedural Approach


Kenton F. Musgrave - 2002
    This edition features chapters on: real-time procedural shading; texture atlases; procedural geometric instancing; cellular texturing; anti-aliasing; cloud modeling and noise improvements.

3D Math Primer for Graphics and Game Development


Fletcher Dunn - 2002
    The Authors Discuss The Mathematical Theory In Detail And Then Provide The Geometric Interpretation Necessary To Make 3D Math Intuitive. Working C++ Classes Illustrate How To Put The Techniques Into Practice, And Exercises At The End Of Each Chapter Help Reinforce The Concepts. This Book Explains Basic Concepts Such As Vectors, Coordinate Spaces, Matrices, Transformations, Euler Angles, Homogenous Coordinates, Geometric Primitives, Intersection Tests, And Triangle Meshes. It Discusses Orientation In 3D, Including Thorough Coverage Of Quaternions And A Comparison Of The Advantages And Disadvantages Of Different Representation Techniques. The Text Describes Working C++ Classes For Mathematical And Geometric Entities And Several Different Matrix Classes, Each Tailored To Specific Geometric Tasks. Also Included Are Complete Derivations For All The Primitive Transformation Matrices.

HTTP: The Definitive Guide


David Gourley - 2002
    Understanding HTTP is essential for practically all web-based programming, design, analysis, and administration.While the basics of HTTP are elegantly simple, the protocol's advanced features are notoriously confusing, because they knit together complex technologies and terminology from many disciplines. This book clearly explains HTTP and these interrelated core technologies, in twenty-one logically organized chapters, backed up by hundreds of detailed illustrations and examples, and convenient reference appendices. HTTP: The Definitive Guide explains everything people need to use HTTP efficiently -- including the black arts and tricks of the trade -- in a concise and readable manner.In addition to explaining the basic HTTP features, syntax and guidelines, this book clarifies related, but often misunderstood topics, such as: TCP connection management, web proxy and cache architectures, web robots and robots.txt files, Basic and Digest authentication, secure HTTP transactions, entity body processing, internationalized content, and traffic redirection.Many technical professionals will benefit from this book. Internet architects and developers who need to design and develop software, IT professionals who need to understand Internet architectural components and interactions, multimedia designers who need to publish and host multimedia, performance engineers who need to optimize web performance, technical marketing professionals who need a clear picture of core web architectures and protocols, as well as untold numbers of students and hobbyists will all benefit from the knowledge packed in this volume.There are many books that explain how to use the Web, but this is the one that explains how the Web works. Written by experts with years of design and implementation experience, this book is the definitive technical bible that describes the why and the how of HTTP and web core technologies. HTTP: The Definitive Guide is an essential reference that no technically-inclined member of the Internet community should be without.

Perl Pocket Reference


Johan Vromans - 2002
    This handy, well-organized quick reference condenses stacks of Perl documentation down to the most essential at-your-fingertips facts. For ease-of-use, convenience, and price, this little reference is the first place Perl programmers look when they need an answer quickly.The "Perl Pocket Referenc" provides a complete overview of the Perl programming language, all packed into a convenient, carry-around booklet. It is updated for Perl 5.8, and covers a summary of Perl syntax rules, a complete list of operators, built-in functions, and standard library modules, all with brief descriptions. Also included are the newest Perl features, such as enhanced regular expressions, multithreading, the Perl compiler, and Unicode support.The "Perl Pocket Reference," 4th Edition, is the perfect companion to the authoritative books on Perl published by O'Reilly & Associates: "Programming Perl," "Learning Perl," and the "Perl Cookbook." This pocket reference will never make it to the bookshelf--dog-eared and well worn, it will remain within arms reach of the keyboard or tucked in a back pocket, where it will be referred to on a daily basis.

Ocp Oracle Certified Professional Java Se 11 Developer Complete Study Guide: Exam 1z0-815 and Exam 1z0-816


Jeanne Boyarsky - 2002
    No matter the changes, rest assured this Study Guide covers everything you need to prepare for and take the exam.NOTE: The OCP Java SE 11 Programmer I Exam 1Z0-815 and Programmer II Exam 1Z0-816 have been retired (as of October 1, 2020), and Oracle has released a new Developer Exam 1Z0-819 to replace the previous exams. The Upgrade Exam 1Z0-817 remains the same.This is the most comprehensive prep guide available for the OCP Oracle Certified Professional Java SE 11 Developer certification--it covers Exam 1Z0-819 and the Upgrade Exam 1Z0-817 (as well as the retired Programmer I Exam 1Z0-815 and Programmer II Exam 1Z0-816)!Java is widely-used for backend cloud applications, Software as a Service applications (SAAS), and is the principal language used to develop Android applications. This object-oriented programming language is designed to run on all platforms that support Java without the need for recompilation. Oracle Java Programmer certification is highly valued by employers throughout the technology industry.The OCP Oracle Certified Professional Java SE 11 Developer Complete Study Guide in an indispensable resource for anyone preparing for the certification exam. This fully up-to-date guide covers 100% of exam objectives for Exam 1Z0-819 and Upgrade Exam 1Z0-817 (in addition to the previous Exam 1Z0-815 and Exam 1Z0-816). In-depth chapters present clear, comprehensive coverage of the functional-programming knowledge necessary to succeed. Each chapter clarifies complex material while reinforcing your understanding of vital exam topics. Also included is access to Sybex's superior online interactive learning environment and test bank that includes self-assessment tests, chapter tests, bonus practice exam questions, electronic flashcards, and a searchable glossary of important terms. The ultimate study aid for the challenging OCP exams, this popular guide:Helps you master the changes in depth, difficultly, and new module topics of the latest OCP exams Covers all exam objectives such as Java arrays, primitive data types, string APIs, objects and classes, operators and decision constructs, and applying encapsulation Allows developers to catch up on all of the newest Java material like lambda expressions, streams, concurrency, annotations, generics, and modules Provides practical methods for building Java applications, handling exceptions, programming through interfaces, secure coding in Java SE, and more Enables you to gain the information, understanding, and practice you need to pass the OCP exams The OCP Oracle Certified Professional Java SE 11 Developer Complete Study Guide is a must-have book for certification candidates needing to pass these challenging exams, as well as junior- to senior-level developers who use Java as their primary programming language.

Database Administration: The Complete Guide to Practices and Procedures


Craig S. Mullins - 2002
    This book aims to do that.

Perl in a Nutshell (In a Nutshell (O'Reilly))


Nathan Patwardhan - 2002
    

C# Network Programming


Richard Blum - 2002
    Combine it with the precise instruction found in C# Network Programming, and you'll find that building network applications is easier and quicker than ever. This book helps newcomers get started with a look at the basics of network programming as they relate to C#, including the language's network classes, the Winsock interface, and DNS resolution. Spend as much time here as you need, then dig into the core topics of the network layer. You'll learn to make sockets connections via TCP and connectionless connections via UDP. You'll also discover just how much help C# gives you with some of your toughest chores, such as asynchronous socket programming, multithreading, and multicasting.Network-layer techniques are just a means to an end, of course, and so this book keeps going, providing a series of detailed application-layer programming examples that show you how to work with real protocols and real network environments to build and implement a variety of applications. Use SNMP to manage network devices, SMTP to communicate with remote mail servers, and HTTP to Web-enable your applications. And use classes native to C# to query and modify Active Directory entries.Rounding it all out is plenty of advanced coverage to push your C# network programming skills to the limit. For example, you'll learn two ways to share application methods across the network: using Web services and remoting. You'll also master the security features intrinsic to C# and .NET--features that stand to benefit all of your programming projects.

Murach's OS/390 and Z/OS JCL


Raul Menendez - 2002
    If you're new to mainframes, this is must reading.Section 2: JCL essentialsLearn how to code the JCL that you'll use every day to run programs that process disk, tape, and print files.Section 3: Other JCL skillsTime-saving features that you'll use regularly, including error handling techniques, generation data groups, and SMS (the Storage Management Subsystem).Section 4: VSAM data managementSee how easy it is to code JCL for jobs that use VSAM files. Then, learn how to use the AMS utility to create and manage VSAM files.Section 5: System tools for programmersLearn how to use work-saving tools for program development. Like compilation procedures. Utilities for sorting and copying files. CLIST and REXX for procedure building. And UNIX System Services.

Data Structures for Game Programmers (Premier Press Game Development) with CD-ROM


Ron Penton - 2002
    The complex subject of data structures is made easy to understand and fun to learn. Start with an explanation of how the most popular data structures and algorithms work. Then you're on your way as you create your own! From simple arrays and bit vectors to intense binary tree graphs and hash tables, this book covers it all. It even tackles the algorithms used for sorting, searching, compression, and recursion. Plus, you will actually see each concept put into practice through interactive graphical demonstrations included on the CD!

Quaternions and Rotation Sequences: A Primer with Applications to Orbits, Aerospace, and Virtual Reality


J.B. Kuipers - 2002
    Today, they are used in applications as various as describing the geometry of spacetime, guiding the Space Shuttle, and developing computer applications in virtual reality. In this book, J. B. Kuipers introduces quaternions for scientists and engineers who have not encountered them before and shows how they can be used in a variety of practical situations.The book is primarily an exposition of the quaternion, a 4-tuple, and its primary application in a rotation operator. But Kuipers also presents the more conventional and familiar 3 x 3 (9-element) matrix rotation operator. These parallel presentations allow the reader to judge which approaches are preferable for specific applications. The volume is divided into three main parts. The opening chapters present introductory material and establish the book's terminology and notation. The next part presents the mathematical properties of quaternions, including quaternion algebra and geometry. It includes more advanced special topics in spherical trigonometry, along with an introduction to quaternion calculus and perturbation theory, required in many situations involving dynamics and kinematics. In the final section, Kuipers discusses state-of-the-art applications. He presents a six degree-of-freedom electromagnetic position and orientation transducer and concludes by discussing the computer graphics necessary for the development of applications in virtual reality.

Memory Management: Algorithms And Implementation In C/C++ (Windows Programming/Development)


Bill Blunden - 2002
    Every implementation is complemented by an in-depth presentation of theory, followed by benchmark tests, a complete listing of C/C++ source code, and a discussion of each implementation's trade-offs. With this book, you can: Find out how memory is managed at the hardware level by the processor; Discover the ways in which different operating systems take advantage of processor facilities to provide memory services via the system call interface; Understand how development libraries and run-time systems build upon the operating system services to manage memory on behalf of user applications; Learn about five complete memory management subsystems that utilise both explicit and automatic collection algorithms.

Java In Two Semesters


Quentin Charatan - 2002
    'Java in Two Semesters' takes an integrated approach to software development rather than being simply a programming text, thereby enabling students to understand the industrial implications of Java programming.

Programming Collective Intelligence: Building Smart Web 2.0 Applications


Toby Segaran - 2002
    With the sophisticated algorithms in this book, you can write smart programs to access interesting datasets from other web sites, collect data from users of your own applications, and analyze and understand the data once you've found it.Programming Collective Intelligence takes you into the world of machine learning and statistics, and explains how to draw conclusions about user experience, marketing, personal tastes, and human behavior in general -- all from information that you and others collect every day. Each algorithm is described clearly and concisely with code that can immediately be used on your web site, blog, Wiki, or specialized application. This book explains:Collaborative filtering techniques that enable online retailers to recommend products or media Methods of clustering to detect groups of similar items in a large dataset Search engine features -- crawlers, indexers, query engines, and the PageRank algorithm Optimization algorithms that search millions of possible solutions to a problem and choose the best one Bayesian filtering, used in spam filters for classifying documents based on word types and other features Using decision trees not only to make predictions, but to model the way decisions are made Predicting numerical values rather than classifications to build price models Support vector machines to match people in online dating sites Non-negative matrix factorization to find the independent features in a dataset Evolving intelligence for problem solving -- how a computer develops its skill by improving its own code the more it plays a game Each chapter includes exercises for extending the algorithms to make them more powerful. Go beyond simple database-backed applications and put the wealth of Internet data to work for you. "Bravo! I cannot think of a better way for a developer to first learn these algorithms and methods, nor can I think of a better way for me (an old AI dog) to reinvigorate my knowledge of the details."-- Dan Russell, Google "Toby's book does a great job of breaking down the complex subject matter of machine-learning algorithms into practical, easy-to-understand examples that can be directly applied to analysis of social interaction across the Web today. If I had this book two years ago, it would have saved precious time going down some fruitless paths."-- Tim Wolters, CTO, Collective Intellect

Flash Math Creativity


Manny Tan - 2002
    It's what you do in your spare time, just take little ideas and mess around with them. This is a book of inspiration, beautiful enough to leave on the coffee table, but addictive enough to keep by your computer and sneak out while no-one's looking so you can go back to that movie that you were tinkering with 'til 3 o'clock this morning. It's a fun book. It's a book of iterative experiments, generative design. Each author does four experiments. Each experiment takes up four pages. We give you the code and explain the essence, then you take away your inspiration and run with it. The purpose of the book is to learn through experimentation because you are inspired to do so, not because someone is telling you to do so.

Essential .Net Volume 1: The Common Language Runtime


Don Box - 2002
    The first book in the Microsoft .NET Development Series, this text is designed to enable developers to take advantage of the full power available to them in Microsoft .NET.

Learn to Program with C++


John Smiley - 2002
    Over 100 questions are asked and answered in each chapter. It anticipates every question the reader may have asked themselves and many others they would never think to ask.

The Perl CD Bookshelf, Version 3.0: 7 Bestselling Books on CD-ROM Includes a Bonus Book! Perl in a Nutshell, 2nd Edition


Jon Orwant - 2002
    Version 3.0 of O'Reilly's Perl CD Bookshelf gives you convenient online access to your favorite books from your CD-ROM drive. We've updated this best selling product with the electronic versions of 7 popular Perl books. Included are the second edition of Perl in a Nutshell (paperback version included), the third editions of Learning Perl and Programming Perl, the Perl Cookbook, and 3 new titles: Perl & XML, Perl & LWP, and Mastering Perl/Tk.In addition to the reference material and tutorials in Programming Perl and Learning Perl, many of the most popular and useful applications for Perl are covered in these seven books. Many XML programmers are turning to Perl as a language for XML processing because of its text-processing features and the many powerful modules designed for XML development. LWP is the most downloaded Perl distribution in all of CPAN (Comprehensive Perl Archive Network). Perl/Tk is the most mature toolkit, has a wide community of experienced users, and is easy to use for building applications.Never has it been easier to learn, or look up, what you need to know online. Formatted in HTML, The Perl CD Bookshelf, Version 3.0, can be accessed with any web browser. The books are fully searchable and cross-referenced. In addition to individual indexes for each book, there is a master index for the entire library. With the CD Bookshelf, you get a complete Perl library that you can easily carry with you anywhere you need it.

Design by Contract


Bertrand Meyer - 2002
    This book presents various areas that benefit from these ideas: testing and debugging, automatic software documentation, and software process management.

How to be a Programmer: A Short, Comprehensive, and Personal Summary


Robert L. Read - 2002
    Starting from the basic technical skills one must acquire, to managerial skills to manage a team of programmers. Emphases are put on the ethics of working as a programmer and as a member of the team. Inside this book you'll find tips on how to learn communication language among your peers, how to talk to non-engineers, and how to deal with difficult people. This book also shows us how to take a break when needed, and how to recognize when to go home, and how to communicate and negotiate with your boss, so that you won't end up working for 50 to 60 hours a week. This is a very good book, one that should be a mandatory for wannabe and professional programmers. If you happened to be a manager who supervises a hive of programmers, this book should provide you with useful insights into their minds and habits.

Svg Programming: The Graphical Web


Kurt Cagle - 2002
    Intermingling SVG instruction with insightful discussion of key topics such as coordinate systems and attributes, transformations, animation, and image generation, Cagle provides readers with a comprehensive guide to making the most of this rich graphical language. Initially, readers are presented with an overview of SVG features and concepts that offers numerous examples intended to provide a sound introduction to language implementations. Following this brief introduction, the book delves directly into the heart of SVG development, covering integral SVG attributes such as transformations, shapes, text manipulation, and the incorporation of images, gradients, patterns, and masks. The later chapters are devoted to topics that demonstrate the true power of this XML-based technology, offering valuable insight into animation, interactivity and DOM, filters, and automated graphic generation. �SVG Programming: The Graphical Web� offers professionals what they need to know to access the next evolutionary step in Web graphical presentation: to create faster, more efficient, and more usable Web applications on a level heretofore impossible. Author Bio Kurt Cagle is an author and developer specializing in XML based technologies, and has written 13 books on topics as diverse as SVG, SOAP, XSLT, XHTML, XML and Data Integration, Schemas, and XML DOM Programming in Microsoft and Java Environments. He is also president of Cagle Communications, a consulting company located in Olympia, Washington, with a web presence at http: //www.kurtcagle.net

J2EE Performance Testing with BEA WebLogic Server


Peter Zadrozny - 2002
    So, in this book we provide a load generating tool and a simple, adaptable methodology that will help you obtain detailed performance data for your own applications.We show how to performance test complete J2EE applications, and also how to explore key performance issues surrounding the most popular J2EE APIs. In this way, we elucidate the methodology, and set a general level of expectations with regard to J2EE performance. Building on this foundation, developers can continue to explore the performance issues that directly affect them and can use their own test data to make informed business decisions about the design and development of their applications. Assuming a good knowledge of the J2EE technologies, the book is aimed at: Java architects and high-end developers responsible for overall design decisions for J2EE-based applications Developers responsible for performance tuning and benchmarking System administrators responsible for the day-to-day running of the applications The performance tests in this book are carried out using BEA WebLogic Server, but are generally applicable to any J2EE application server. Written by recognised experts in their field who work with J2EE developers on a day-to-day basis, this book provides a detailed reference that can be used to design, evaluate and understand the performance of enterprise J2EE applications. The book has been developed and honed to meet the precise requirements of experienced Java architects, developers or administrators, responsible for building or maintaining such applications. Author Biography: Peter Zadrozny is the Chief Technologist for BEA Systems responsible for Europe, Middle East and Africa. Peter is constantly travelling his region, meeting with prospects and customers using BEA WebLogic Server and helping them to design solutions to their business challenges. Peter also spends a fair amount of time helping BEA customers fine tune and improve the performance of their WebLogic Server based applications. Peter is the co-author of 'Java 2 Enterprise Edition with BEA WebLogic Server' (Wrox Press, 1861002998). Phil Aston is a senior consultant with the Professional Services organisation of BEA Systems in the UK. In this capacity, Phil assists BEA customers with the detailed architecture design, proofs of concept and implementation of applications using J2EE technology. In his spare time Phil has taken the role of lead developer responsible for 'The Grinder', a Java load-testing tool.

ABAP Objects: Introduction to Programming SAP Applications


Horst Keller - 2002
    Co-authored by a member of SAP's ABAP Language Group, and approved by the entire group for technical accuracy, ABAP Objects presents definitive coverage of every aspect of development with this powerful new version of ABAP. ABAP Objects combines practical tutorials with an authoritative reference to the entire language. The authors begin with a fresh overview of the entire language, an introduction to the new ABAP Workbench for SAP Release 4.6, and the development of a complete sample application that displays database data inside a GUI control. After reviewing several essential ABAP concepts, they move on to an in-depth explanation of ABAP statements for working with data. The book contains in-depth coverage of object-oriented programming with ABAP, including inheritance, interfaces and polymorphism; and explains how "classical" concepts such as selection screens, lists and SQL programming relate to ABAP's new object-oriented approach. Coverage includes: the ABAP Type Concept, handling internal tables, programmingscreens with ABAP Objects and the Control Framework, and more.

Object-Oriented Programming with ActionScript


Branden Hall - 2002
    You will also learn the programming theory needed to take full advantage of the object-oriented nature of ActionScript. Nearly a third of the book is focused on teaching you everything there is to know about one of the most powerful new features of Flash MX:components. The topics range from understanding and using components, to constructing custom components. This book also recognizes the uniqueness of ActionScript and clarifies because the best practices when it comes to developing with it. The final third of this book teaches you the best methods for working with advanced-level ActionScript-from debugging data structures to server-side interaction.

MySQL Reference Manual


Michael Widenius - 2002
    As powerful and flexible as it is lightweight and efficient, MySQL packs a large feature set into a very small and fast engine that now runs on more than 500,000 servers. This renowned online manual that has supported MySQL administrators and database developers for years is now available in paperback format. This book is an exact reproduction of the MySQL Reference Manual from the MySQL development team's Web site, minus some non-technical appendices. This version covers MySQL 4.0.Many sophisticated topics appear in this comprehensive manual, ranging from the hitches you may run into when first installing MySQL to internals that will help you tune your queries. MySQL Reference Manual contains all the comprehensive reference material one would expect for building the product, running administrative utilities, and using various API as well as MySQL's rich version of SQL. In addition, you can turn a page and find such unexpected riches as:A thorough comparison of MySQL with SQL standards and other databases A discussion of privileges and suggested uses of privileges to enhance security Directions for replicating a database and for running several MySQL servers on a single system Directions for initializing a database from a flat file Guidelines for estimating the performance of different queries A far-reaching discussion of optimization, with reference to the implementation of MySQL Investigations of the differences between data types and the pros and cons of each type of number, string, or timestamp An extended inquiry into the effects of using delayed inserts A candid explanation of why various errors occur and how to recover from them Tips for weighted, full-text searches Detailed descriptions of the features, strengths, and weaknesses of available table formats A guide to adding new functions to MySQL No serious MySQL user should be without this book.

Mining the Web


Soumen Chakrabarti - 2002
    Building on an initial survey of infrastructural issues—including Web crawling and indexing—Chakrabarti examines low-level machine learning techniques as they relate specifically to the challenges of Web mining. He then devotes the final part of the book to applications that unite infrastructure and analysis to bring machine learning to bear on systematically acquired and stored data. Here the focus is on results: the strengths and weaknesses of these applications, along with their potential as foundations for further progress. From Chakrabarti's work—painstaking, critical, and forward-looking—readers will gain the theoretical and practical understanding they need to contribute to the Web mining effort.* A comprehensive, critical exploration of statistics-based attempts to make sense of Web Mining.* Details the special challenges associated with analyzing unstructured and semi-structured data.* Looks at how classical Information Retrieval techniques have been modified for use with Web data.* Focuses on today's dominant learning methods: clustering and classification, hyperlink analysis, and supervised and semi-supervised learning.* Analyzes current applications for resource discovery and social network analysis.* An excellent way to introduce students to especially vital applications of data mining and machine learning technology.

Microsoft Visual J# .NET (Core Reference)


John Sharp - 2002
    Presented in an easy-to-browse format, this erudite book provides the authoritative technical details you need to leverage Visual J# .NET and the richness of the Microsoft .NET Framework to build scalable, enterprise-level applications. You’ll examine the architecture of .NET, find out how to process data with Visual J# .NET, see how to create XML Web services, and discover how to build multithreaded applications that span the local area network. You’ll also look at the key topics for building applications that use Windows features and services and find out how to provide a global reach to your applications via the Internet.Topics covered include:The challenge of n-tier development The .NET platform Java and the common language runtime Graphical user interfaces Processing XML Transforming XML Microsoft ADO.NET Multithreading with .NET Basic network programming Serializing objects .NET remoting Using message queues Integrating with unmanaged components Serviced components and COM+ Writing Windows services Microsoft ASP.NET—a better ASP Building a Web service Creating a Web service client INCLUDES SAMPLE CODE ON THE WEB!Sample code available at the Companion Content link on this page

Perl for C Programmers


Steve Oualline - 2002
    This book covers Perl for C programmers.

Computer Algebra and Symbolic Computation: Elementary Algorithms


Joel S. Cohen - 2002
    The viewpoint is that mathematical expressions, represented by expression trees, are the data objects of computer algebra programs, and by using a few primitive operations that analyze and construct expressions, we can implement many elementary operations from algebra, trigonometry, calculus, and differential equations. With a minimum of prerequisites this book is accessible to and useful for students of mathematics, computer science, and other technical fields. The book contains a CD with the full, searchable text and implementations of all algorithms in the Maple, Mathematica, and MuPad programming languages.

.Net Security Programming


Donis Marshall - 2002
    Includes tech reviews and guidance from key Microsoft developers. Authoritative and useful, covering security principles and security under Windows in a Web-based environment. Offers the first thorough exploration of security nameplates under the .NET framework.

C# Programmers' Reference


Grant Palmer - 2002
    Filled with short, to-the-point examples, it is divided into two main sections. The first half of the book looks in detail at every aspect of the C# language itself, in a sequence of short chapters designed for easy reference. The second half looks at the types defined in the most commonly used class libraries and their methods and properties, with examples of their use. To keep the book as concise and usable as possible, the larger class libraries such as ADO.NET and Windows Forms are not covered.

The Project Manager's Guide to Software Engineering's Best Practices


Mark Christensen - 2002
    While the technical content of software products and the technical methods used to build them have changed over time, the fundamental issues that determine the success or failure of software projects have remain fairly constant. That is, the same fundamental management mistakes continue to be made. To cite a few examples; requirements are unclear at the beginning of projects and are not managed during the project, the product is not tested adequately, schedules are misestimated or not tracked in sufficient detail. The contents of this book, together with the underlying IEEE Standards, are dedicated to helping the reader in their work: The continuing quest to produce quality software products in a predictable manner. This book, containing all original material, is based on the proposition that the IEEE Software Engineering Standards capture many of the fundamental 'best practices' of software project management. It is written to assist the reader in applying those standards to their projects and company. To meet this goal, the authors discuss and elaborate the standards that bear on the three key management areas of: Software systems engineering, Processes for developing software products, Planning and control of software project activities. The body of the book is correspondingly organized into three parts. Software Systems Engineering, which argues that software development projects are most successful when developed using a systems level viewpoint. Process Management and Control, which describes the key activities needed to define, support, and manage a project's software development processes. Project Planning and Management completes the book, integrating the elements of cost and schedule estimation and control, risk management, and the role metrics play in performing those tasks.

Special Edition Using C#


NIIT - 2002
    As part of the Special Edition Using series, the book will be a comprehensive training guide with multiple programming examples and projects as well as a complete reference to C# and its intricacies. Because it is a book written for IT professionals and students, special emphasis is put on troubleshooting, debugging, and hands-on learning.

3D Graphics & Animation [With CDROM]


Mark Giambruno - 2002
    Learn from the experiences of working professionals as shared through insightful interviews. As a second edition, this book builds on the well-received segments of the first edition to cover the basics of 3D in general terms starting with "What is 3D?" and progressing step-by-step through modeling, texturing, lighting and animation. The book also offers coverage of such related topics as developing a story concept, storyboarding, and putting together a demo real and portfolio. It even provides interview tips New elements in this second edition include interviews from industry leaders as well as application specific tutorials for 3ds max 4, Maya 4, and LightWave 7 that are included on the CD.

Learn SQL in a Weekend


Kevin Thompson - 2002
    For this work, the author assumes that the reader has no programming experience but is familiar with technology. Learn SQL in a Weekend is structured to enable the reader to set up an SQL database at the end of the first session of the book. Readers should gain a complete understanding of important topics in SQL such as database security, embedded SQL and using triggers. THe volume covers SQL with Visual Basic/Visual Basic.NET, Office, Visual C++/Visual C++.NET, ASP/ASP.NET, and PowerBuilder.

Java: Practical Guide for Programmers


Michael Sikora - 2002
    All you need is a resource that takes your experience into account and explains Java's key principles and techniques in an intelligent, efficient way.Java: Practical Guide for Programmers is precisely that resource. Here, you won't have to wade through hundreds of pages of overly simplistic material to learn the basics of Java programming. Instead, you get highly focused instruction in the core elements of Java 1.4, accompanied by carefully chosen examples and line-by-line analyses that are right to the point. You'll be astonished at how soon you can begin productive coding in Java, and how quickly your skills will progress.

.Net Framework Solutions: In Search of the Lost Win32 API


John Paul Mueller - 2002
    But, more than likely, you've also discovered a lot of missing functionality. Indeed, a third of the functions supported by the old Win32 API are not yet supported by .NET. Although you may not at first notice the loss of Win32 API functionality in .NET, the more you program, the more you'll realize how essential it is. As a programmer, you will not want to do without these solutions. .NET Framework Solutions: In Search of the Lost Win32 API is one more thing you can't do without: a complete guide to your options for dealing with the functionality missing from .NET. As you'll learn, some functions are handily situated within Visual Basic or C#. In most cases, however, you'll need to access the old Win32 API from the .NET Framework. This is demanding work, but this book makes it easy, walking you through every step and paying special attention to the work of managing memory manually--the most error-prone part of the process. The topics covered inside are as varied as the missing functionality: direct hardware access, low-level security control, certain aspects of OS access, support for multimedia and utilities, and DirectX. You also get hard-to-find information on COM access, plus a collection of examples--dealing with DirectX and the MMC Snap-ins--that unite COM and Win32 access in especially illuminating ways. Over time, you can expect to see the .NET Framework expanded to include much of what it now lacks. But your programming tasks can't wait, and .NET Framework Solutions makes you productive--today.

The DSP Handbook: Algorithms, Applications and Design Techniques


Andrew Bateman - 2002
    This book provides the reader with the training, tools and building blocks necessary to assess and unlock the potential of DSP in their own products and services. It includes various examples, graphical visualization, and practical algorithm libraries.

The Java Tutorial for the Real World


Yakov Fain - 2002
    The main features of the Java language are covered in the first half of the book and such advanced topics as working with databases, Java Servlets, JSP, EJB, and JMS are explained in the second half. Most of the lessons from this book come with working applications and setup instructions. The first 10 lessons come with independent applications and the second half of the book leads you through development of a Stock Trading System, the final version of which is designed using Java servlets, JSP, EJB, and JMS. The book also contains technical questions and answers for Java technical job interviews.

Real-Time Rendering Tricks and Techniques in DirectX (Premier Press Game Development (Software))


Kelly Dempski - 2002
    Starting slowly for beginning programmers, this book begins by reviewing recent 3D graphics developments and with an introduction to vectors, matrices, colors, and lighting. Then, it's on to rendering graphics Learn various vertex and pixel shader techniques, discover how to use video as a texture, and get the scoop on several techniques for picking objects in a scene. Whatever your level of programming expertise, let this book serve as your guide to mastering the possibilities of real-time programming.

OOP with Microsoft Visual Basic .Net and Microsoft Visual C# .Net Step by Step


Robin A. Reynolds-Haertle - 2002
    This step-by-step guide provides readers with clear, peer-level language, while it illustrates concepts with concrete, engaging examples, and coding practice exercises. Readers learn how to create and implement objects, master fully object-oriented design, migrate to Microsoft .NET programming and more.

Processing XML with Java�: A Guide to Sax, Dom, Jdom, Jaxp, and Trax


Elliotte Rusty Harold - 2002
    This is the book that brings his skills together.-- Harold has a fantastic reputation, is a skilled writer, and has excellent publicity channels.-- A complete guide to writing Java programs that read and write XML documents.Java is the ideal language for processing XML documents. Consequently, more XML tools have been written in Java than in any other language. More open source XML tools are written in Java than in any other language. Processing XML with Java fills an immediate need for developers who are working with XML in Java. It is a comprehensive tutorial and reference to the major APIs. This book shows developers how to: save XML documents from their applications written in Java; read XML documents produced by other programs; communicate with network servers that send and receive XML data; validate documents they receive against DTDs, schemas, and business rules; and integrate XSLT into their programs.

Level of Detail for 3D Graphics


David Luebke - 2002
    "Level of Detail for 3D Graphics" brings together, for the first time, the mechanisms, principles, practices, and theory needed by every graphics developer seeking to apply LOD methods.Continuing advances in level of detail management have brought this powerful technology to the forefront of 3D graphics optimization research. This book, written by the very researchers and developers who have built LOD technology, is both a state-of-the-art chronicle of LOD advances and a practical sourcebook, which will enable graphics developers from all disciplines to apply these formidable techniques to their own work. * Is a complete, practical resource for programmers wishing to incorporate LOD technology into their own systems.* Is an important reference for professionals in game development, computer animation, information visualization, real-time graphics and simulation, data capture and preview, CAD display, and virtual worlds.* Is accessible to anyone familiar with the essentials of computer science and interactive computer graphics.* Covers the full range of LOD methods from mesh simplification to error metrics, as well as advanced issues of human perception, temporal detail, and visual fidelity measurement.* Includes an accompanying Web site rich in supplementary material including source code, tools, 3D models, public domain software, documentation, LOD updates, and more. Visit http: //LODBook.com.

Mastering Visual C#. Net


Jason Price - 2002
    You'll master C# language essentials, quickly taking advantage of the many improvements it offers over C++ and see tons of examples that show you all the ways that .NET can make your programming more efficient and your applications more powerful. You'll learn how to create stand-alone applications, as well as build Windows, web, and database applications. You'll even see how to develop web services--a technology that holds great promise for the future of distributed application.Coverage includes: Mastering the fundamentals and advanced aspects of the C# language Using Visual Studio .NET for increased coding productivity and debugging Creating distributed applications with remoting and web services Understanding object-oriented concepts Delivering data across the Internet with web services Using XML to communicate with other applications Accessing databases with ADO.NET Building Windows applications Creating web applications using ASP.NET Reading and writing data from/to files or the Internet Using advanced data structures to store and manipulate information Using multi-threading for greater application efficiency Using reflection to manipulate running code Building distributed applications with remoting and web services Securing code and authenticating users Using built-in encryption facilities Making your applications world-ready Parsing strings with regular expressions Using delegates to handle runtime events Programming defensively with exception handling

Visual C++.Net: A Primer for C++ Developers


Wrox Dev Team - 2002
    It has something of a unique character among all the .NET languages. Unlike the other Visual Studio languages, Visual C++ .NET can produce both unmanaged (native) code, and managed code that runs on the Common Language Runtime (CLR), the "virtual machine" which underlies Microsoft's new platform, the .NET Framework. This unique status makes C++ a much more powerful language than other .NET languages - not only can it bypass the CLR when maximum performance is needed, it can also interoperate far more seamlessly with existing applications. This book provides in-depth coverage of everything that's new in this latest version of Visual C++, including the new Managed Extensions which allow us to write code that runs on the CLR, the C++ attributes which simplify traditional COM programming enormously, and ATL Server, which provides an easy way to write ISAPI filters to expose web services. Instead of providing an overview of the enormous .NET class libraries, we concentrate throughout on those features that you will actually use in Visual C++ .NET, and in particular on the powerful features for interaction between managed code and existing unmanaged C++ applications.

Visual Studio.Net All-In-One Desk Reference for Dummies


Nitin Pandey - 2002
    Visual Studio .NET All-in-One Desk Reference For Dummies is a value-packed, easy-to-use reference that provides broad coverage of Visual Studio .NET tools, languages, and environment for experienced Visual Studio programmers and developers who want to get up to speed rapidly on this missioncritical Microsoft initiative.

Mastering HTML and XHTML


Eric J. Ray - 2002
    You'll learn everything you need to know about coding web pages in both HTML and XHTML, the latest, more powerful version of HTML. But it doesn't stop there. You also get practical instruction in complementary web technologies such as JavaScript, CSS, and Dynamic HTML, along with a Masters Reference that makes it easy to find the information you need. Tying it all together is the authors' expert guidance on planning, developing, and maintaining effective, accessible websites. Coverage includes:Choosing between HTML and XHTML Creating web pages Planning and developing public, personal, and intranet sites Including images in web pages Using HTML/XHTML frames effectively Converting HTML to XHTML Creating CSS style sheets Using JavaScript Including multimedia Creating Dynamic HTML or Dynamic XHTML documents Validating XHTML or HTML documents Creating coherent, easily maintainable websites Making your website searchable Accommodating users with disabilities Creating an XML DTD Extending XHTML with Namespaces

ADO and ADO.NET Programming


Mike Gunderloy - 2002
    The introduction of Microsoft Access was a major step forward, followed by the giant leaps represented by ADO and now by ADO.NET. ADO and ADO.NET Programming will help you use both APIs to write data access code that works perfectly, irrespective of the data source or front end. You'll learn to enlist ADO techniques in support of legacy systems, as well as in other scenarios where ADO is simply the better choice. And you'll master the special capabilities of ADO.NET, such as support for XML and disconnected data, that promise to make it the dominant data access API for years to come. Simple data retrieval and updating is only the beginning. Advanced topics include schema modification, data synchronization, and multidimensional aggregation. There's more to ADO and ADO.NET than universal connectivity, of course. This book offers detailed coverage of source-specific and client-specific functionality, helping you tap into features unique to SQL Server, Oracle, and Jet, on the one hand, and Visual Basic, Access, and Excel, on the other hand. You also get a practical introduction to the .NET Framework and appendices covering major object models and the SQL and MDX query languages on CD. The enclosed CD contains all the book's sample code-both ADO code written in Visual Basic 6 and ADO.NET code written in Visual Basic .NET. These examples vividly illustrate the book's techniques and allow you to test their effectiveness and sharpen your own coding skills. About the Authors Mike Gunderloy has worked with every Microsoft data access technology, from the release of Access 1.1 right through ADO.NET. He'san independent consultant and frequent author on database topics. His other Sybex books include the Access 2002 Desktop and Enterprise Developer's Handbooks (with Paul Litwin and Ken Getz), SQL Server Developer's Guide to OLAP with Analysis Services, Visual Basic Developer's Guide to ADO, and Mastering SQL Server 2000. Mike lives on a farm in eastern Washington, where he raises chickens, llamas, and peacocks when he's not wrestling with new software releases.

25 Latino Craft Projects: Celebrating Culture in Your Library


Ana-Elba Pavon - 2002
    The easy-to-organize projects in this book are arranged around important Latino holidays and are inspired by Artesenias (Latino folk art) traditions that have been passed down from generation to generation.

Applied Microsoft® .NET Framework Programming


Jeffrey Richter - 2002
    Find out all about its common language runtime and learn how to leverage its power to build, package, and deploy any kind of application or component. APPLIED MICROSOFT .NET FRAMEWORK PROGRAMMING is ideal for anyone who understands object-oriented programming concepts such as data abstraction, inheritance, and polymorphism. The book carefully explains the extensible type system of the .NET Framework, examines how the runtime manages the behavior of types, and explores how an application manipulates types. While focusing on C#, it presents concepts applicable to all programming languages that target the .NET Framework.Topics covered include:The .NET Framework architectureBuilding, packaging, deploying, and administering applications and their typesBuilding and deploying shared assembliesType fundamentalsPrimitive, reference, and value typesOperations common to all objectsType members and accessibilityConstants, fields, methods, properties, and eventsWorking with textEnumerated types and bit flagsArray typesInterfacesCustom attributesDelegatesError handling with exceptionsAutomatic memory managementAppDomains and reflectionIncludes coverage of C#

Web Development with Apache and Perl: How to Build Powerful Web Sites with Open Source Tools


Theo Peterson - 2002
    Criteria for selecting an operating system and strategies for configuring a Web server are introduced, and a discussion of Open Source databases and development tools is included. Also provided are sample designs for common types of Web sites and techniques for content development and management. Topics such as security, performance, and ways to merge scripts and HTML, all using freely available software, are highlighted.

Advanced PHP for Web Professionals


Christopher Cosentino - 2002
    Learn how to manage sessions more effectively, create better forms, develop custom error handlers, build database-independent Web applications with PEAR:: DB, parse XML files, authenticate users via database query, build cross-platform client apps with PHP-GTK, and much more!

UML Weekend Crash Course [With CDROM]


Thomas A. Pender - 2002
    UML incorporates the object-oriented community's consensus on core modeling concepts and provides a standard way for developers to communicate the details of system design and development. In addition to object-oriented modeling of applications, UML is also used for business-process modeling, data modeling, and XML modeling.Purpose of modeling: Models for software systems are as important as having a blueprint for a large building, or an outline for a book. Good models enhance communication among project teams and assure architectural soundness. The more complex the software system, the more important it is to have models that accurately describe the system and can be understood by everyone. UML helps provide this via a standard for graphical diagrams. Just like an architect can understand the notations on any blueprint, UML enables software engineers and business managers to understand the design of any software system, even if the original designers have long left the company.Organization behind it: Object Management Group (OMG) (www.omg.org). (UML Resource Page at OMG Web site is www.omg.org/uml.) The OMG produces and maintains the UML standard, an internationally recognized standard. The OMG is an open membership, not-for-profit consortium that produces and maintains computer industry specifications for interoperable enterprise applications. Its membership roster (about 800) includes just about every large company in the computer industry and hundreds of smaller ones. Most of the companies that shape enterprise and Internet computing are represented on the OMG's Board of Directors.Companies that contributed to the UML Standard: Realizing that UML would be strategic to their business, the following companies contributed their ideas to the first UML standard: Digital Equipment Corp, HP, i-Logix, IntelliCorp, IBM, ICON Computing, MCI, Microsoft, Oracle, Rational Rose, TI, and Unisys.Companies that use UML: It is safe to say that all Fortune 1000 companies are currently using UML, or are moving toward UML to model and design their applications and systems. This includes companies from all vertical industries, from Coca Cola to Warner Brothers, from CVS Pharmacy to Lockhead Martin Aerospace. You name the company - if they have an IT department, they are using UML.