Showing posts with label computer science. Show all posts
Showing posts with label computer science. Show all posts

Computational Geometry: Algorithms and Applications, Second Edition Review

Computational Geometry: Algorithms and Applications, Second Edition
Average Reviews:

(More customer reviews)
Are you looking to buy Computational Geometry: Algorithms and Applications, Second Edition? Here is the right place to find the great deals. we can offer discounts of up to 90% on Computational Geometry: Algorithms and Applications, Second Edition. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Computational Geometry: Algorithms and Applications, Second Edition ReviewPro:
(1) Each chapter begins with a practical example. For example, the chapter computing intersections of lines starts with a discussion of a map-making application that goes into enough detail to see how the algorithms they present would be useful. This is a considerable step up from the common practice in algorithms literature of motivation by way of vaguely mentioning some related field (i.e. "These string matching algorithms are useful in computational biology"). This book does a much better job of motivating the material it presents, but if you're primarily interested in the abstract problem, these sections can be skipped.
(2) Each chapter is relatively self-contained. Feel free to skip ahead to subjects that interest you.
(3) Surprisingly readable. Unlike most technical material, one can read an entire chapter in a single sitting without missing much. Generally, each chapter will develop a single algorithm for a single kind of problem.
(4) It's very up to date. This second edition is less than two years old, it includes some new results in the field.
Con:
(1) Algorithms are only given in pseudocode. The emphasis is on describing algorithms and data structures clearly and completely. If you're looking for a "cookbook" with code to copy and paste into an application, perhaps O'Rourke's "Computational Geometry in C" would be a better choice.
(2) There are many important advanced results that are not discussed in the main text. An obvious example is the first chapter, which describes a well-known convex hull algorithm that takes O(n log n) time but algorithms that are faster for most inputs are mentioned only in the "Notes and Comments" at the end of the chapter. Someone interested in lots of gory details would be well-served to combine this book with Boissonnat and Yvinec's more detailed and mathematical "Algorithmic Geometry".Computational Geometry: Algorithms and Applications, Second Edition Overview

Want to learn more information about Computational Geometry: Algorithms and Applications, Second Edition?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Functional Programming Languages: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors Review

Functional Programming Languages: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors
Average Reviews:

(More customer reviews)
Are you looking to buy Functional Programming Languages: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors? Here is the right place to find the great deals. we can offer discounts of up to 90% on Functional Programming Languages: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Functional Programming Languages: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors ReviewThis book is just a bunch of articles stolen from Wikipedia.
It is especially scandalous that the author does not give any credits for the "borrowed" work.Functional Programming Languages: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors Overview

Want to learn more information about Functional Programming Languages: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

The Undocumented PC: A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas (2nd Edition) Review

The Undocumented PC: A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas (2nd Edition)
Average Reviews:

(More customer reviews)
Are you looking to buy The Undocumented PC: A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas (2nd Edition)? Here is the right place to find the great deals. we can offer discounts of up to 90% on The Undocumented PC: A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas (2nd Edition). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

The Undocumented PC: A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas (2nd Edition) ReviewThis book provides excellent information on hardware ports, CMOS, disk and video systems. It explains the differences between versions, lists known bugs and workarounds and even comes with functioning code examples. Some of the programming leaves a little to be desired, though. :) But if you're a good assembly programmer you'll understand it.
Overall it is an excellent book and a must have for anyone wanting direct hardware-level access (without the save-haven "buffer" provided through an API). This book is for real programmers only. Programmers who want to work at the machine level. It is, quite simply, the most comprehensive book I've found. A one-stop shop for information.
The only problem I found is that this book is slightly dated, originally published in 1996 or 1997. Newer features are not included.The Undocumented PC: A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas (2nd Edition) Overview

Want to learn more information about The Undocumented PC: A Programmer's Guide to I/O, CPUs, and Fixed Memory Areas (2nd Edition)?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Linux Desktop Hacks: Tips & Tools for Customizing and Optimizing your OS Review

Linux Desktop Hacks: Tips and Tools for Customizing and Optimizing your OS
Average Reviews:

(More customer reviews)
Are you looking to buy Linux Desktop Hacks: Tips & Tools for Customizing and Optimizing your OS? Here is the right place to find the great deals. we can offer discounts of up to 90% on Linux Desktop Hacks: Tips & Tools for Customizing and Optimizing your OS. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Linux Desktop Hacks: Tips & Tools for Customizing and Optimizing your OS ReviewOne of the latest Hacks titles from O'Reilly takes on the Linux desktop - Linux Desktop Hacks by Nicholas Petreley and Jono Bacon. It's good stuff, but not quite what I thought it would be...
Chapter List: Booting Linux; Console; Login Managers; Related to X; KDE Desktop; GNOME Desktop Hacks; Terminal Empowerment; Desktop Programs; Administration and Automation; Kernel; Hardware; Index
Like all Hacks titles, this book is made up of 100 tips and tricks that you can do and that are related to the subject matter of the book... in this case, the Linux desktop. I was expecting to pick up a lot of hints and tips like #55 - Reduce OpenOffice.org Startup Time, #72 - Start Desktop Applications Automatically, and #80 - Protect Yourself From Windows Applications. Those are some cool things, and they relate directly to what I usually think of when I envision the Linux desktop. But you'll also find things like #81 - Build a Custom Firewall Computer, #88 - Compile a Kernel, and #2 - Kill and Resurrect the Master Boot Record. Once again, all very good and interesting stuff, but it seems to stray somewhat from the "Linux desktop" premise (or at least what I was expecting it to be). There are also plenty of instances where you need to be up to speed with scripting skills so you can change config files or compile and install software. I realize that the Linux desktop isn't all automated installers and such, but there seemed to be a lot of times where you always ended up back at the command line console.
Perhaps not being a Linux or Unix geek yet, I'm inclined to think of "desktop" as graphical user interface when it actually can be a number of things.
So... I like the book, and if you're into running Linux as your main operating system at the desktop level, you'll get a lot out of this book. Just be forewarned that it may not contain exactly what you expected...Linux Desktop Hacks: Tips & Tools for Customizing and Optimizing your OS Overview

Want to learn more information about Linux Desktop Hacks: Tips & Tools for Customizing and Optimizing your OS?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Code Reading: The Open Source Perspective (v. 1) Review

Code Reading: The Open Source Perspective (v. 1)
Average Reviews:

(More customer reviews)
Are you looking to buy Code Reading: The Open Source Perspective (v. 1)? Here is the right place to find the great deals. we can offer discounts of up to 90% on Code Reading: The Open Source Perspective (v. 1). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Code Reading: The Open Source Perspective (v. 1) ReviewI purchased the book to help me out with the recurring task of quickly understanding the nature of unfamiliar large software projects. Kudos to Mr. Spinellis for tackling this subject, which is a large part of the everyday work of programming.
Unfortunately, I feel that this book was of very limited use to me as an experienced programmer, and suffers from a rather basic flaw (as a topic). The problem is that the art of code reading is really the intersection of a deep and/or broad understanding of programming, in conjunction with a deep and/or broad understanding of the tools and practices employed. One could well assert that this book is about *debugging* unfamiliar codebases as much as it is about *reading* them, since code comprehension is a component of code debugging. This is a rather apt analogy, since many have attempted to describe the black art of debugging just as Mr. Spinellis has attempted with reading, and with no definitive "must-have" coverage to date.
The result is that I felt the book rushed through important programming concepts that were either extremely basic (global variables, while loops, conditionals, blocks), or language-specific (C typedef, arrays, function pointers), or too deep for the book to address adequately (trees, stacks, queues, hashes, graphs). With regard to the latter, I found it odd to be reading a lot of text about basic data structures, when it seemed to me that I should be assumed to already have this knowledge if I wanted to read code that used it. And if I did NOT know about basic data structures, I should be reading a book about data structures rather than a book about code reading. Software patterns are also presented (though not by the name, I think). If I was to encounter a codebase that employed some programming concept I didn't understand fully (for example, red-black trees), then I would first go to a book on data structures -- not a book on code reading.
Following the sections on what I would consider mandatory prerequisite understanding are some brief chapters software engineering concepts (version control, build systems, project organization, packaging, system structures), which might be useful to a reader who had never worked on a large-scale project before.
After all of the coverage of what I would consider prerequisite knowledge, the penultimate chapter finally gets to the topic of tools and techniques for actually reading code. This chapter is in fact what I had hoped Mr. Spinellis would devote the book to. Unfortunately, most of the tools and techniques presented are very basic and quickly encountered by any programmer: regular expressions, the fact that many editors include browsing support, the grep utility, differencing tools, the idea that you could write your own tools, using the compiler to emit warnings and preprocessed code, that beautifiers exist, profiling and annotating printouts. And that's it, in about forty pages, followed by a chapter devoted to an example session.
On the whole, I think this book comes up short. If you have a few years of programming experience under your belt, then you've already encountered the basic tools and techniques presented. If someone resorted to this book to learn about a basic programming construct, then they could read my code, but I'd be nervous about letting them modify it, until they read more focused texts.
I'm rating this book at three stars because there are some good pieces here and the effort was laudable. In the end, though, I really don't think that anybody needs this book on their shelf.Code Reading: The Open Source Perspective (v. 1) Overview

Want to learn more information about Code Reading: The Open Source Perspective (v. 1)?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Handbook of Digital Forensics and Investigation Review

Handbook of Digital Forensics and Investigation
Average Reviews:

(More customer reviews)
Are you looking to buy Handbook of Digital Forensics and Investigation? Here is the right place to find the great deals. we can offer discounts of up to 90% on Handbook of Digital Forensics and Investigation. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Handbook of Digital Forensics and Investigation ReviewThis book has become one of my three "go to" books when it comes to digital forensics along with Brian Carrier's File System Forensic Analysis and Harlan Carvey's Windows Forensic Analysis DVD Toolkit, Second Edition.
Don't skip Rob Lee's excellent forward to this book. Lee crafts a very concise explanation of how the digital forensics field is growing and evolving.
Eoghan Casey's introduction further expands on the theme with a very thoughtful analysis of the current state of digital forensics and how the scientific method can and should be applied to our field. In this section, Casey begins to bring out one of the primary themes of the first portion of the book which is that there are different aspects to digital forensics that can be summarized in the three main disciplines of traditional forensic analysis, electronic discovery and intrusion investigation.
The first part of the book (chapters two through four) is devoted to exploring the three disciplines by devoting a chapter to each one. These individual chapters are exemplary overviews of each of the disciplines.
Chapter two is one of the finest overviews that I've seen regarding digital forensics. Casey and Curtis Rose provide set what will be a persistent theme in the book which imparting technical information in a very approachable manner, but also in a relatively short amount of space. This chapter builds and expands on Casey's invocation of the scientific method and it's role in forensic analysis via a thorough explanation of forensic analysis that is well illustrated by a sample case scenario created by the authors to help explain their methodology.
Chapter three is a fantastic overview of e-discovery and coupled with chapter two provides an effective answer to the question of what the difference is between electronic discovery and forensic analysis. Chapter three shouldn't be dismissed as an overview, however. The authors put forth quite a bit of effort in explaining some tactical level issues such as how to properly interview an evidence custodian to determine the universe of data that might be relevant to a particular matter and how to use various tools to capture data.
Chapter four provides a detailed overview of intrusion investigations using the incident response life cycle. Similar to chapter three, this chapter not only provides an expert overview of the life cycle, but also provides the reader with tactical level advice such as the use of timeline analysis to assist a responder with an incident handling scenario. Like chapter two, the authors use investigative scenarios to illustrate their points.
The second half of the book is more tactical in nature and will have great appeal to both the experience practitioner and those who are merely curious about digital forensics. As in the first half of this book, the authors and their editor Casey, take great pains to make sometimes very technical information approachable to all audiences.

Chapter five is the section on Windows forensic analysis. Authors Ryan Pittman and David Shaver provide probably the most concise, yet effective overview of Windows forensic analysis that I've read recently especially given the fact that they have just a chapter in which to do their work. At the time the chapter was written, the authors had access to early versions of Windows 7 so the chapter spends a certain amount of time comparing and contrasting the differences between Windows XP compared to Vista\Windows 7. The authors also provide a very effective overview of traditional forensic artifacts such as $MFT artifacts and registry artifacts. While this chapter doesn't serve as a replacement for the Carrier and Carvey books, it's an examplary primer for those just starting in Windows forensic analysis and an excellent "cheat sheet" for more experienced practitioners. This is not to say that the authors are merely rehashing existing data. Far from it. Even an experienced examiner is likely to learn new information by reading their work. They, for example, put a lot of effort into explaining data destruction, file deletion and defragmentation. It's amazing how much content they managed to include in this chapter.
Chapter six continues on the theme of packing a lot of information into a short amount of space, but doing so in an approachable manner. This chapter on UNIX Forensic Analysis includes at it's beginning a very helpful explanation of the Unix and Linux worlds. Like chapter five the authors provide valuable information on the inner workings of file system forensic analysis as well as well as more application level artifacts such as Firefox browser analysis and chat analysis. A nice bonus is that this chapter also covers removable media analysis. Most work that I have seen in this area has been relative to Windows operating systems so it was good to see this content for a non-Windows operating system. The authors also spend quite a few pages on the examination of email artifacts which is also a welcome addition.
Anthony Kokocinski's Macintosh Forensic Analysis makes up Chapter seven. Given that this is a weakness in my individual skill set, I learned an incredible amount from this chapter. Kokocinski continues the overall theme of the book in that he presents his knowledge on the subject in a very approachable manner. Kokocinski also includes a detailed section on popular Mac applications such as Safari, iCal, Mail, etc.
Chapter eight is Ronald van der Knijff's amazing chapter on embedded system analysis. In a book this good, it's hard to pick a chapter that can be considered a highlight, but this chapter would be a top contender. It covers a wide area of devices from traditional technological tools such as cellphones and GPS systems to devices such as parking meters and pacemakers. The chapter provides a solid overview of the various technologies that comprise this wide range of devices, but also delves into tactical matters such as how to preserve and even repair damaged devices that might contain useful data.
Chapter nine is the excellent and extensive network investigation chapter. Like the previous chapters, this is a more tactical treatment of a subject that is introduce earlier in the book and is an excellent overview how to practically apply the themes introduced in chapter four. The chapter includes an overview of TCP/IP networking down that includes an explanation of the structure of an Ethernet frame and TCP/IP packet headers. The authors make extensive use of the Wireshark tool which makes it easy for a student of network investigations to emulate the work being done as part of their overall learning experience. The later portions of the chapter delve into the work of investigating networking technologies such as Cisco routers. The Cisco section includes an overview of how to use Cisco IOS to help facilitate a network investigation.
Chapter ten is an amazing chapter on mobile network investigations put together by Dario Forte and Andrea de Donno. As it's title suggestion, this isn't a chapter on the examination of digital communication devices such as cell phones, but how to understand and investigate the network environments in which they operate. The authors deal with such issues as determining the location of particular devices, what networking data might be available and the interception of data. As one would expect with a chapter such as this, the authors also cover legal issues with an emphasis on relevant EU legislation.
Full Disclosure: While I haven't had the privilege of meeting most of the authors of this excellent book, I'm honored to have connections with some of the authors including, but not limited to, being on a board with Rob Lee and Eoghan Casey.Handbook of Digital Forensics and Investigation Overview

Want to learn more information about Handbook of Digital Forensics and Investigation?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...