Posted: October 11th, 2008, 2:32pm CEST
Many Web designers are finding out that to add solid functionality to their sites, they need to learn to integrate design goals with server solutions. Perl is an extremely powerful and flexible way to help designers achieve their goals.
In this book, we’ve created a Web site workshop that provides all the scripts and programming you need to put Perl into action right away. Whether you are a designer, or anyone interested in adding functionality to a site using Perl, this book takes a very practical approach.
Instead of starting out by learning the language, the book is divided into chapters that focus on different applications that a Web developer might want to include on his or her site: forms, games, and more advanced techniques. These scripts are ready to go, and the reader need only follow step-by-step instructions to help install and then modify them to individual tastes.
Along with the book comes a CD, chocked full of Perl, Perl modules, and the book’s scripts.
The book works as a practical device to empower readers with the ability to add multiple levels of functionality, doing so while keeping cross-browser and platform concerns in mind. But, ideally, the workshop will serve also to inspire the reader to want to learn more about Perl so as to empower him or her to grow in skill and understanding of the role of Perl in Web design.

Posted: October 11th, 2008, 2:29pm CEST
This book came from a need to establish a way to capture knowledge that can be easily translated into a computer program. To do this I wanted to establish a methodology or framework that would assist me. This framework must be a reusable method for getting this done. However, what should this framework contain? The first thing I wanted to be able to figure out was if the domain I was analyzing was suitable for development into an expert system.
I ascertained that there had to be concrete steps one can take to determine this. In 1991, I wrote an article called “Evaluating Potential Expert System Applications.” In this article I examined information from several articles taken from the AI Magazine, where I came across the “Checklist Approach.” This approach examined key areas of a system under discussion (i.e., task, payoff, customer management, system designer, domain expert, and user). I was intrigued by this approach, and I thought it was solid enough to adopt; therefore, this became my first step within the framework.
The next step and subsequent steps within the framework centered on building an expert system and how best to do this. In an expert system, the value of the system is related directly to the quality of knowledge that is discovered and constructed in its knowledge base. Therefore, once the domain was determined, I had to understand what the knowledge of the domain was and what types of knowledge were contained in the domain. This thinking led me to discover that the knowledge of a particular domain could be vast and that I must decompose this knowledge into smaller subtasks to understand it and understand it in a way that software could be developed for a computer program to interpret it. So, the next step became to “Decompose the Knowledge.”
Whether this knowledge was tacit or explicit or wherever in the organization it came from, I knew at this point that it was all about the knowledge. I wanted to peel back the covers and really understand the aspects of the knowledge that would be discovered. These aspects included determining any interdependencies, recognizing any knowledge patterns, determining if the knowledge contained any judgmental aspects or “fuzziness,” determining if there are any conflicts between experts when discussing similar aspects of the same domain and resolving them, and finally constructing the knowledge base.
Over the next several years I started to apply these techniques in my consulting practice developing expert (knowledge-based) systems. In doing so, the framework started to evolve and some best practices came to the forefront. In 1997, this led me to write an article titled “Capturing and Managing Intellectual Capital.” In this article, building knowledge architecture and understanding the knowledge acquisition tasks were examined more closely.

Posted: October 11th, 2008, 2:25pm CEST
Pure C#, in keeping with the Pure series, focuses on issues of concern specific to writing programs using the C# language. The book is divided into three parts:
* Part 1 addresses the syntax and program construction methods available to C# programming.
* Part 2 is a code-intensive section that demonstrates specific tasks of concern to programmers.
* Part 3 presents reference topics of use to C# programmers.
About the Author
William Robison is Director for Enterprise Applications Engineering with the Enterprise Social Investment Corporation in Columbia, MD. A Microsoft Certified Systems Engineer, Mr. Robison has fourteen years of experience in information systems design and development, during which he has served in a range of management and technical roles for the Air Force and in private industry. Mr. RobisonUs career has featured a range of platforms, including desktop PCs and workstations, NT and Unix servers, and IBM mainframes. To this book he brings more than ten years of experience programming with C++, Java, and now C#. Mr. RobisonUs professional interests include distributed systems, modeling, simulation, and visualization.

Posted: October 11th, 2008, 2:22pm CEST
We are all familiar with airport bookstall best sellers that promise fame, fortune and success in relationships. Many of them – at least the ones I have skimmed whilst waiting for one of the world’s favourite airlines – are deeply disappointing. Not because they do not work (to be honest I have not really been able to try them out fully) but because they tend to miss out on the tricky bit in the process. For example, a book on how to become really rich will often contain such helpful nuggets as ‘make lots of money’. If you then turn to the How to Make Lots of Money book, the advice is to start a successful business. The How to Start a Successful Business book then suggests that the key is to come up with a simple idea that everyone wants. The How to Come up with Clever Ideas book typically talks about brainstorming and all manner of ‘creative ideas’.
Where they fail is that the ideas themselves are often fairly simple to generate; it’s turning them into real solutions that involves a lot of hard work.
One of the widely quoted examples of the ‘ah-ha’ principle at work concerns Kekulé von Stradonitz in 1865 who was struggling to interpret his data on the structure of benzene. Allegedly, after a particularly gruelling day in the laboratory, he fell asleep and dreamed of a group of six snakes. At some point, these dancing snakes each caught another’s tail in its mouth, in such a way that they formed a six-snake ring. When Kekulé awoke, he had stumbled on the resonating ring structure, which made sense of all his work. Now I doubt Kekulé was the first to dream of snakes (indeed I believe they are a rather well-known Freudian symbol) but he was the first one to make the link. The idea on its own meant little, but combined with serious groundwork, provided the apparently trivial spark which made sense of it all.
Clever ideas in computing abound, especially on the web. It is converting them into a sound business model which is more difficult and usually causes most would-be ‘Bill Gates’ to fall by the wayside. E-commerce is an area where bright ideas are common but sound business models are not.

Posted: October 11th, 2008, 7:59am CEST
How to Mod The Pod and fine-tune iTunes
Does your iPod go wherever you do? This book will take the two of you on your most exciting adventure–deep into iPod’s awesome potential. You already know it’s a musical prodigy, but wait 'til you teach your iPod to take notes, give you the weather and stock quotes, keep your calendar, play games with you, double as a remote control, light up the night, and read you your e-mail–out loud. Think that’s great? Take a look at Part 2!Kick back and HackA few of the 100-plus hacks, tweaks, and mods you’ll find inside
- Scrub your songs
- Install and run Linux
- Tweak Gracenote CDDB
- Hack iPod’s database
- Discover Visualizer’s secrets
- Create iPod adventure games
- Clean up your tracks
- Play music over Wi-Fi
- Find free legal tunes
- Listen to audio books
- Create gapless CDs
- Make iTunes an alarm clock
About the Author
Scott Knaster is a legendary Mac hacker with a number of books to his credit, including Macintosh Programming Secrets, which has achieved cult status among Mac programmers. He is the coauthor of Mac Toys, also published by Wiley, and the proud owner of several hacked iPods and every issue of Mad magazine.

Posted: October 11th, 2008, 7:07am CEST
This book constitutes the refereed proceedings of the International Workshop on Service-Oriented Computing: Agents, Semantics, and Engineering, SOCASE 2007, held in Honolulu, HI, USA as an associated event of AAMAS 2007, the main international conference on autonomous agents and multi-agent systems. The volume is rounded off with selected four best papers from the Service-Oriented Computing and Agent-based Engineering Workshop, SOCABE 2006, held at AAMAS 2006.
The 12 revised full papers presented were carefully reviewed and selected for inclusion in the book. The papers cover a range of topics at the intersection of service-oriented computing, semantic technology and intelligent multiagent systems, such as: service description and discovery; planning, composition and negotiation; semantic processes and service agents; as well as applications.

Posted: October 11th, 2008, 7:03am CEST
The 2003 completion of the Human Genome Project was just one step in the evolution of DNA sequencing. Now from a "who's who" of pioneers in the field comes the latest genome sequencing and assembly advances that are redefining the field. This trail-blazing work gives researchers unparalleled access to state-of-the-art DNA sequencing technologies, new algorithmic sequence assembly techniques, and emerging methods for both resequencing and genome analysis that together form the most solid foundation possible for tackling experimental and computational challenges in the genome sciences today.

Posted: October 11th, 2008, 6:58am CEST
C Traps and Pitfalls teaches how the peculiarities of the C language make it easy for the intended behavior of a program and the actual behavior of a program to differ. The book's experienced author, Koenig, follows up with examples and helpful advice on many of these "pitfalls." Each chapter includes exercises for contemplation with accompanying discussions at the end of the book.
Tools that are comfortable after experience are often more difficult to learn at first than those that feel right immediately. Student pilots start out overcontrolling, turning first flights into roller-coaster rides, until they learn how light a touch flying really requires. Training wheels on a bicycle make it easier for a novice to ride, but get in the way after that.
So it is also with programming languages. Every programming language has aspects that are most likely to cause trouble for people not yet thoroughly familiar with them. These aspects vary from one language to another, but are surprisingly constant from one programmer to another. Thus the idea of collecting them.
My first effort to collect such problems was in 1977, when I gave a talk called PL/I Traps and Pitfalls at the SHARE (IBM mainframe users' group) meeting in Washington, DC. That was shortly after I moved from Columbia University, where people used PL/I heavily, to AT&T Bell Laboratories, where people use C heavily. The decade that followed gave me ample experience in how C programmers (including me) can get themselves into trouble if they're not certain of what they're doing.
I started collecting C problems in 1985 and published the collection as an internal paper at the end of that year. The response astonished me: more than 2,000 people requested copies of the paper from the Bell Labs library. That convinced me to expand the paper into this book.
What This Book Is
C Traps And Pitfalls aims to encourage defensive programming by showing how other people, even experienced professionals, have gotten themselves into trouble. These mistakes are generally easy to avoid once seen and understood, so the emphasis is on specific examples rather than generalities.
This book belongs on your shelf if you are using C at all seriously, even if you are an expert: many of the professional C programmers who saw early drafts said things like "that bug bit me just last week!" If you are teaching a course that uses C, it belongs at the top of your supplementary reading list. What This Book Is Not
This book is not a criticism of C. Programmers can get themselves into trouble in any language. I have tried here to distill a decade of C experience into a compact form in the hope that you, the reader, will be able to avoid some of the stupid mistakes I've made and seen others make.
This book is not a cookbook. Errors cannot be avoided by recipe. If they could, we could eliminate automobile accidents by plastering the countryside with "Drive Carefully" signs! People learn most effectively through experience--their own or someone else's. Merely understanding how a particular kind of mistake is possible is a big step on the way to avoiding it in the future.
This book is not intended to teach you how to program in C (see Kernighan and Ritchie: The C Programming Language, Second Edition, Prentice-Hall 1988), nor is it a reference manual (see Harbison and Steele: C: A Reference Manual, Second Edition, Prentice-Hall, 1987). It does not mention algorithms or data structures (see Van Wyk: Data Structures And C Programs, Addison-Wesley 1988), and only briefly discusses portability (see Horton: How To Write Portable Programs In C., Prentice-Hall 1989) and operating system interfaces (see Kernighan and Pike: The Unix Programming Environment, Prentice-Hall 1984). The problems mentioned are real, although often shortened (for a collection of composed C problems see Feuer: The C Puzzle Book, Prentice-Hall 1982). It is neither a dictionary nor an encyclopedia; I have kept it short to encourage you to read it all. Your Name in Lights
I'm sure I've missed some pitfalls. If you find one I've missed, please contact me via Addison-Wesley. I may well include your discovery, with an acknowledgement, in a future edition. A Word about ANSI C
As I write this, the ANSI C standard is not yet final. It is technically incorrect to refer to "ANSI C" until the ANSI committee finishes its work. In practice, though, the ANSI standard is far enough along that nothing I say about ANSI C is likely to change. C compilers are already available that implement many of the significant improvements contemplated by the ANSI committee.
Don't worry if your C implementation does not support the ANSI function syntax mentioned here: it is easy enough to understand the parts of the examples where it matters, and you can fall into the traps described there regardless of what version of C you use. Acknowledgements
A collection like this could not possibly have been made in isolation. People who have pointed out particular pitfalls include Steve Bellovin, Mark Brader, Luca Cardelli, Larry Cipriani, Guy Harris and Steve Johnson, Phil Karn, Dave Kristol, George W. Leach, Doug McIlroy, Barbara Moo, Rob Pike, Jim Reeds, Dennis Ritchie, Janet Sirkis, Richard Stevens, Bjarne Stroustrup, Ephraim Vishnaic, and one contributor who wishes to remain anonymous. For brevity, I've mentioned only the first person to report any particular problem to me. Of course, I doubt any of the people I've mentioned actually invented the programming errors they pointed out to me, and if they did I doubt they'd admit it! I know I've made many of them myself too, some several times.
Useful editorial suggestions came from Steve Bellovin, Jim Coplien, Marc Donner, Jon Forrest, Brian Kernighan, Doug McIlroy, Barbara Moo, Rob Murray, Bob Richton, Dennis Ritchie, Jonathan Shapiro, and several anonymous reviewers. Lee McMahon and Ed Sitar pointed out what would otherwise have ben embarrassing typographical errors in early drafts of the manuscript. Dave Prosser clarified many fine points of ANSI C for me. Brian Kernighan supplied invaluable typesetting tools and assistance.
It has been a delight to work with the people at Addison-Wesley, including Jim DeWolf, Mary Dyer, Lorraine Ferrier, Katherine Harutunian, Marshall Henrichs, Debbie Lafferty, Keith Wollman, and Helen Wythe. I'm sure they've gained from the aid of others whom I haven't met.
I am particularly grateful to the enlightened managers at AT&T Bell Laboratories who made it possible for me to write this book at all, including Steve Chappell, Bob Factor, Wayne Hunt, Rob Murray, Will Smith, Dan Stanzione, and Eric Sumner.
The title of this book was suggested by Robert Sheckley's science-fiction anthology The People Trap and Other Pitfalls, Snares, Devices and Delusions (as well as Two Sniggles and a Contrivance), published by Dell Books in 1968. 0201179288P04062001
About the Author
Andrew Koenig is a member of the Large-Scale Programming Research Department at AT&T's Shannon Laboratory, and the Project Editor of the C++ standards committee. A programmer for more than 30 years, 15 of them in C++, he has published more than 150 articles about C++, and speaks on the topic worldwide.

Posted: October 11th, 2008, 6:37am CEST
In the past 30 years, growth in the area of data communications has been phenomenal, to say the least. During the Vietnam War, one of my duty stations was on an island in the China Sea. I was part of a signal intelligence group, intercepting and decoding wartime communications traffic. We did our best to decode and analyze the information we intercepted, but many times the help of a high-end (at that time) mainframe computer system was required. Did we have a communication network in place to upload the data to the mainframe, let the mainframe do the processing, and then download the data back to us? Not a chance. We had to take the large magnetic tapes and give them to pilots on an SR-71 Blackbird, who flew the tapes to the United States for processing on a mainframe computer system. Once the results were obtained, we would receive a telephone call informing us of any critical information that had been found. It is hard to believe now that 30 years ago that was the way things were done.

Posted: October 11th, 2008, 6:27am CEST
Software presents both an opportunity and a threat. Software runs our lives. The list of applications in which software is a critical component is endless: elevators, airlines, telecommunications, medical devices, education, and countless others. Data from the Software Engineering Institute indicates that approximately 60% of software development organizations that have had formal assessments designed to determine how their software is developed are at the lowest level of capability. These assessments are based on the Capability Maturity Model—a framework for achieving process improvement. This lowest level is characterized as ad hoc and chaotic, having virtually nothing in the way of organized project management or software engineering practices. Over 600 organizations worldwide have gone through such assessments. These are organizations that have either embarked on improvement efforts of their software development process or made a commitment to do so. If we add in all the organizations that have not had assessments performed, or have no plans to implement process improvement, we estimate that the number of organizations at the lowest level is probably well in excess of 80%.

Posted: October 11th, 2008, 5:43am CEST
“The theoretical literature on learning and growth can be difficult to master and even more challenging to integrate into e-learning, but Michael has made this easy for all of us. He explains this thinking in clear and accessible language, amplifies the theories with research results, and describes popular approaches by applying these theories to learning and growth. Taking the illustrations even further into the field of e-learning design, he offers useful scenarios and practical examples of how these theories can be employed in online learning programs, providing readers with concrete ideas to leverage them in their own work.” --Nick van Dam, global chief learning officer for Deloitte and founder and chairman, e-Learning For Kids Foundation (www.e-learningforkids.org)
“Here, through research and examples, Allen delivers vivid ways to realize the promise of e-learning.”--Allison Rossett, professor of educational technology, San Diego State University
“While its target audience is instructional designers, this book should also be required reading for all training managers seeking guidelines on implementing world-class training. Allen provides bridges the gap from theory to practice on both training and educational programs. His guidance is as applicable to classroom-based as it is to e-learning based training.”--Patty Crowell, director, Global Education Services, LSI Logic Corporation
“Our sales/service performance has greatly improved due to the ideas and processes in Michael Allen's books. They not only solidified our e-learning practices, but enhanced our blended learning skills as well.”--Dave Hooker, vice president, Training and Program Development Institutional Sector, Ecolab Inc.
Praise for Michael Allen's e-Learning Library
This is the second volume of six in Michael Allen's e-Learning Library—a comprehensive collection of proven techniques for creating e-learning applications that achieve targeted behavioral outcomes through meaningful, memorable, and motivational learning experiences. This book examines common instructional design practices with a critical eye and recommends substituting success rather than tradition as a guide. Drawing from theory, research, and experience in learning and behavioral change, the author provides a framework for addressing a broader range of learner needs and achieving superior performance outcomes.
About the Author
Michael W. Allen pioneered multimedia learning technologies, interactive instructional paradigms, and rapid-prototyping processes, bringing each forward into leading corporate enterprises. He is the chairman and CEO of Allen Interactions Inc. that builds universally acclaimed custom e-learning, provides strategic learning consulting, and trains e-learning professionals in collaboration with ASTD. With a Ph.D. in educational psychology from The Ohio State University, he is an adjunct associate professor at the University of Minnesota Medical School, a popular conference speaker, and a prolific writer.

Posted: October 11th, 2008, 5:29am CEST
The science of digital imaging can be divided into two separate branches: the techniques that explain how to use and create digital images, and the technical knowledge that is necessary to design cameras, computers, and software. The expert witness should be a skilled practitioner in the techniques and have enough understanding of the technical knowledge to answer hard questions that might be asked in court. Understanding Forensic Digital Imaging is the first book to address both types of knowledge, offering a comprehensive and thorough approach to the subject of digital imaging, providing the reader with necessary information about the techniques and a solid understanding of the technology.
Providing information on the basics of photography, while also covering the complex concepts particular to forensic science, Understanding Forensic Digital Imaging is a one-stop resource for the forensic expert. With its unparalleled coverage of digital imaging - including a chapter on establishing quality requirements that is more comprehensive than any other source currently available - this book is an essential read for any forensic expert who is required to work with digital images and testify in court.
Key Features:
* Covers topics that are of vital importance to the practicing professional
* Serves as an up-to-date reference in the rapidly evolving world of digital imaging
* Uses clear and concise language so that any reader can understand the technology and science behind digital imaging
* Offers a chapter on "Establishing Quality Requirements," which offers more comprehensive coverage than is currently available in any other source
About the Author
Karen Stein-Ferguson is president of Digital Data Forensics, LLC in Clearwater, Florida. She is a native of Indiana where she graduated from Purdue University with a BS in mathematics and earned her MBA with honors from Indiana University. After graduation, Ms. Stein-Ferguson worked in industry as a systems analyst, business engineer, partner in a software development firm, and other executive management roles. She spent 20 years managing technology departments for several Indiana businesses and Indiana state government agencies. After 15 challenging years in technology, Ms. Stein-Ferguson earned her law degree from Indiana University School of Law in Indianapolis and was admitted to the Indiana Bar in 1994. She accomplished this milestone while working fulltime as the Chief Information Officer at Indianapolis' largest law firm. In 2004 Ms. Stein-Ferguson added computer forensics to her skill set and is a certified computer examiner through International Society of Forensic Computer Examiners (ISFCE). Computer forensics compliments all her experiences and background perfectly.
Ms. Stein-Ferguson is licensed to practice law in the state of Indiana. She is a member of the Indiana State Bar Association, the St. Petersburg Bar Association, the Clearwater Bar Association, International Society of Forensic Computer Examiners, and the American Academy of Forensic Sciences. She is a board member of the Indiana Forensic Science Initiative and Vice-Chair of the General Practice Section of the Indiana State Bar Association. Additionally, Ms. Stein-Ferguson is active in several business organizations and does speaking engagements on computer forensics and legal technology issues in business and the practice of law.
Dr. Jeffrey Huang recently joined Raytheon Company IIS/RIS in supporting the Department of Homeland Security US-VISIT program.
Before Dr. Huang joined Raytheon, he was an assistant professor of Computer Science at Purdue School of Science with joint appointment at the Indiana University School of Informatics, Bioinformatics Program at Indiana University Purdue University Indianapolis.
Dr. Huang's research areas include computer vision, pattern recognition, and machine learning on the applications of biometrics, video surveillance, and bioinformatics. During Huang's academic appointment, he received several research grants as a PI or co-PI from National Institute of Justice (NIJ) and National Institute of Health (NIH). His funded projects are related to facial biometrics, video surveillance, and forensic applications. For past 8 years, Dr. Huang taught various computer science courses in the university, including graduate level courses of Data Mining, Biometric Computing, and Bioinformatics. He received Indiana University Trustee Teaching Award in 2003 and was elected as the favorite professor of Computer Science in 2005. Dr. Huang published more than 40 articles in biometric research field. He is a member of IEEE, ACM, and Biometrics Consortium.
