A site devoted mostly to everything related to Information Technology under the sun - among other things.

Wednesday, January 30, 2008

The Universal Digital Library

The Million Project led by Carnegie-Mellon University the milestone of having digitalized 1.5 million books. The digitalization process utilizes the FineReader OCR product from ABBYY. So far, books have been digitalized from 20 languages; 360,000 in English; 50,000 in Telugu; and 40,000 in Arabic. Find it @ http://www.ulib.org/

Various Implementations of Fibonacci Numbers


Tuesday, January 29, 2008

C# as a Functional Programming Language

C# as a Functional Programming Language @ http://sneezy.cs.nott.ac.uk/fun/nov-06/FunPm.ppt

Robert Grover Photography

These pictures were taken in the Suntree area of Florida; Viera, south of Cocoa & Titusville.

Robert Grover, a dentist, captured some fabulous shots of and put together a slide show with music @ http://groverphoto.phanfare.com/slideshow.asp

Monday, January 28, 2008

Sand Storms in Dubai - UAE

They occur 3 months in a year.

These buildings are all more than 50 floors high.

Thursday, January 24, 2008

Free Anti-whaling Game

There's an anti-whaling game, Harpooned, available for free download and play (on Windows machines only) @ http://harpooned.org/

"Harpooned ... is a Cetacean Research Simulator, where you play the role of a Japanese scientist performing research on whales around Antarctica."

Sunday, January 13, 2008

Performance Engineering

Alexander Podelko's Website on Performance Engineering @ http://www.alexanderpodelko.com/

OLIVE: On-line Interactive Virtual Environment

Forterra Systems' goal is to enable users to create their own proprietary virtual worlds. Check the link below to learn more:

"The On-line Interactive Virtual Environment, OLIVE creates virtual worlds for customers in health care, the military, and the media. MTV Networks uses OLIVE to create online worlds based on its television shows; surfers can take dips in pixelated hot tubs with bikinied beauties from the Virtual Real World or customize shiny hubcaps on a flame-red hot rod in Virtual Pimp My Car. But most of OLIVE’s applications are available by invitation only, primarily for the purpose of training staff. The U.S. National Institutes of Health is creating a world that tests industrial workers’ skills at responding to emergency disasters..."

Code Quality Tools

CRAP4J is an open source tool that helps developers find Java code that is difficult to maintain; either because it is very complex, doesn't have sufficient associated tests or both. Find it @ http://www.crap4j.org/

Exception Hunter
Exception Hunter from Red Gate Software can identify exceptions in .Net code before the application is finished executing, allowing handlers to be written. Find it @ http://www.red-gate.com/products/Exception_Hunter/index.htm

Prevent SQS
Prevent SQS from Coverity is a static code-analysis tool that can detect race conditions in software written for multi-core and multi-processor systems. The tool supports both C/C++ and Java. Find it @ http://www.coverity.com/html/prod_prevent.html

Friday, January 11, 2008

How Epileptic Fits Are Like Earthquakes

Epileptic fits exhibit some of the same patterns as seismic shocks, new research suggests, raising doubt the longstanding belief that seizures occur randomly.

The research, led by neurologist Ivan Osorio of the University of Kansas, found patterns of “waiting times” between epileptic fits that are similar to earthquake occurrences, reports New Scientist. Just as earthquakes are preceded by tiny tremors imperceptible to humans, epileptic fits are preceded by neural spikes detectable only on brain scans. The analysis, which has yet to be peer reviewed, compared the brain activity in more than 16,000 epileptic seizures with seismological data from 300,000 earthquakes.

The paper above is quite readable, check it out!

Thursday, January 10, 2008


NAFEMS is a vendor neutral, not-for-profit membership association of more than 800 companies from all over the world that is dedicated to providing independent information on engineering analysis and simulation.

Members range from major corporations such as Boeing through mid-sized organizations such as JCB, to small-scale engineering consultants. Find it @ http://www.nafems.org/

WABIAN Walking Robots

Professor Takanishi’s WABIAN series of robots (short for WAseda BIpedal humANoid) are noted for its ability to walk in a very human-like way. Learn more about them @ http://www.deskeng.com/articles/aaagjr.htm and @ http://www.humanoid.waseda.ac.jp/

Note the significant contribution that Maple Software has made to this achievement.

Organizational Culture

Two books on organizational culture and why it is often impervious to technological fixes:

In "Diagnosing and Changing Organizational Culture", Kim Cameron and Robert Quinn report that as many as three-quarters of re-engineering, TQM, and strategic planning efforts fail or create problems that could kill their companies. The most frequently cited reason: neglecting the organization's culture.

People also look to leaders of internal “herds” for guidance and adoption of new ideas before enlisting themselves. In "More Than You Know: Finding Financial Wisdom in Unconventional Places", Michael Mauboussin discusses the herd mentality of complex adaptive systems, such as teams of product developers. He shows that certain conditions must be in place to engender change or have an effect on such groups, and that if any of these factors is violated, the result is inefficiency, failure of the system, increased risk, and decreased quality.

FPGA Construction

A brief and useful introduction to FPGA construction @ http://www.embedded.com/design/205203954

Neat Home Page

HEMA is a Dutch department store. The first store opened on November 4, 1926, in Amsterdam. Now there are 150 stores all over the Netherlands. HEMA also has stores in Belgium, Luxemburg, and Germany.

Take a look at HEMA's product page (see the link below). Everything is in Dutch but look for what they call the portable radio as the animation automatically begins. Just wait a couple of seconds and watch what happens. That's what creativity is all about!


Wednesday, January 9, 2008

Recommended Reading

Jeremy Sydik’s "Design Accessible Web Sites" (Pragmatic Bookshelf) explains how to build Web sites that are rich with content, while making all users feel welcome regardless of platform or constraints.

"The Myths of Innovation," by Scott Berkun (O’Reilly), discusses the history of innovation and how ideas become earth-changing technologies. He discusses the roles of collaboration and persuasion in the process.

In "Managing the Test People" (Rocky Nook), Judy McKay examines the challenges that are unique to the software quality assurance process, while presenting real-world examples for the benefit of technical managers inside and outside of QA and testing roles.

Andy Oram and Greg Wilson have edited a collection of developer experiences in "Beautiful Code: Leading Programmers Explain How They Think" (O’Reilly). The contributors go beyond formulas and reveal how they solved the most difficult and unusual problems they found when working on high-profile projects.

"Security Metrics: Replacing Fear, Uncertainty, and Doubt" (Addison-Wesley Professional) is a best practices guide prepared by the Yankee Group’s Andrew Jaquith that attempts to bring together the quantitative viewpoint of management and the pragmatic approach of security professionals.

"Computer Architecture & Organization: An Integrated Approach" (Wiley) is an introduction to computer systems and architecture from Miles Murdocca and Vincent P. Heuring that connects the programmer’s view of a system with the underlying hardware and peripherals.

Dean Leffingwell, in "Scaling Software Agility" (Addison-Wesley Professional), attempts to demonstrate how agile principles that are generally seen as suitable only for small teams can translate to larger enterprises.

"Developing Quality Metadata" (Elsevier) builds on the experience of author Cliff Wootton, formerly technical systems architect for the BBC News Interactive Group. It demonstrates how to make metadata accurate and coherent with one’s own solutions, and how to approach problems with metadata proactively and productively.

Philip Tetlow, in "The Web’s Awake" (Wiley-IEEE Press), makes the case for the view that the Web’s complexity and scope have begun to outstrip our ability to control it. The author examines the virtual anatomy of the Web and attempts to present a sociotechnical perspective, rather than a strictly mechanical one.

"User-Centered Design Stories" (Morgan Kauffman) puts one in the driver’s seat, in what authors Carol Righi and Janice James call the first casebook for UCD. The reader is presented with dozens of work situations and asked to present solutions for the problems, which cover a number of key tasks and issues.

Can you run it?

System Requirements Lab provides a free service that reports on hardware/software compatibility issues for PC gaming.

Go to www.canyourunit.com and select the game you want to test and hit the "Can You Run It" button. In less than 30 seconds a comprehensive report tells you if your PC can run it.

WS-*! vs. REST

WS-*! vs. REST

Both claim that it is "easy” to build distributed business applications using their favorite technological approach.

In fact, there is no easy way to build distributed applications; it's simply a hard problem. WS-* and REST (Representational State Transfer) each has its own strengths and weaknesses.
There are a great many services that do not need WS-*. As long as your requirements are satisfied by the security offered by HTTPS and HTTP Basic Authentication, and you don't need message reliability or transactions, just using REST is the right answer.

To look at this at a lower level, if you're using SOAP to communicate and don't have any headers, then SOAP is not adding any value over a simple XML-over-HTTP approach. Switch to REST instead.

On the other hand, while there are many services that do not need rigorous security and reliability at the message exchange level, there are also a great number that most certainly do. For example, if you're dealing with medical records, end-to-end security and reliability are absolutely essential.

In that case, you do need the WS-* protocols over HTTP; WS-* is essentially a set of standard, interoperable protocols to achieve these qualities of interaction over any underlying protocol, including HTTP. The strength and value of WS-* is that all the core parts of WS-* are now standards and are supported by ALL major and minor vendors.

If you don't use these, you need to essentially invent similar protocols over basic HTTP, which eventually would result in REST-*!

XML is not the best data communications format but XML is simply the language that everybody has accepted. Those who claim that JSON (JavaScript Object Notation) is the best language to communicate in disregard the fact that we can't use JSON out-of-the-box from a mainframe to a cell phone in a way that is already possible with XML. Moreover JSON doesn't come with the rich set of tools that XML does: XPath, XSLT, XML Schema, Relax NG, etc.

JSON is great for AJAX scenarios, but it’s not in the same league as XML as a universal data format, especially when the data is not serialized data structures but rather documents.

REST takes the approach that the media type you get back from the server is a sufficient description of what that URI is supposed to return. While that is sufficient for the dynamic environment of the Web, where the browser simply has to use the media type to display the content in a human-readable form, developers writing programs need to know beforehand (i.e., at development time) what they will get when they GET a specific URL. Without that, there can't be any tools that make it easier to process the data. REST fanatics argue that such tools represent a form of coupling and hence are bad for the loosely coupled architecture of the Web.

WSDL is by no means the best possible description language but it is supported by all major vendors. Until we get a more widely accepted replacement, if you're writing Web services, you should describe them in WSDL even if they're REST-based services. The recently standardized version of WSDL (2.0) is significantly improved from WSDL 1.1 and offers a very nice and simple way to describe both REST-based and non-REST-based services.

Both camps are guilty of promoting this fantasy that you can simply take legacy apps and make them into a WS-* or REST service. Despite WS-* fans’ claims to the contrary, there’s no way you can simply take your old classes and magically SOA-enable them. You need code that understands the proper granularity of interactions in a SOA and the underlying business processes, and then you can make them into a service.

Creating a REST-based interaction with an application is no trivial matter either. In fact, there's still quite a bit of art in creating proper REST services, and tooling support is minimal to nonexistent. For certain applications, of course, there is a natural and simple mapping (as with certain other applications for WS-*), but otherwise you need to be a REST artist.

To create a good REST-based interface, you need to understand REST (which by itself can be quite tiring), figure out how to create the proper resource structure for your artifacts, and finally figure out how to create and manage links between them. The last part is nontrivial, but that represents the “hypermedia as the engine of application state” mantra of REST, which is critical for achieving many of the scalability benefits. REST may be easy for simple cases, but it will not afford you much rest when building real systems.

With so many half-truths, obfuscations and outright lies around WS-* and REST, it’s tempting to toss them both out the window. But for today’s distributed applications, WS-* and REST are two of the most viable and useful platforms available.

Instead, enterprise architects should consider adopting a heterogeneous approach to Web services that capitalizes on the strengths of each. For simple delivery or exchange of messages, REST offers a quick, clean, dependable approach. For more sophisticated services and SOA deployments, the rich WS-* stack provides proven, standard protocols for secure, reliable and transactional services.

Steps to Legacy Modernization

Involve senior management :
The stamp of approval from the senior management gives these efforts the authority and backing they require to succeed.

Allocate a budget specifically for the task:
Companies are far more successful at updating old applications when they have a budget specifically set aside for the task. Ideally, that budget can be gathered up from the cost savings initially realized through application portfolio management.

Apply portfolio management practices:
This means eliminating useless applications, and possibly moving old software into newer, cheaper hardware; perhaps through virtualization. Legacy modernization ought to begin with this process of identifying useless software and code within a company's application portfolio.

Next steps:
Identify the applications that will soon be without shepherds in the organization. Visiting human resources and getting a list of IT job titles and the corresponding time to retirement for the person in each position can start this process These dates must be commensurate to the time frame for the project to be completed.

There are also software tools that can help in the modernization effort such as those from SoftwareMining that translates old COBOL applications to "maintainable" java code.

Alternatives to Eclipse

Andrew Binstock has reviewed various alternative IDEs to Eclipse in his columns in the Software Development Times magazine. He has reviewed IntelliJ's IDEA, Oracle's JDeveloper, and SUN's NetBeans.

The conclusion: IntelliJ's IDEA is the superior product.

Check it out!

Interesting Weblogs

Long Zheng has started something all right. It began when 19-year-old Zheng began uncovering snippets of information that Microsoft had kept under wraps about the Windows user experience during the development of Windows Vista. The blog, he says, was inspired by his professional interest in graphics and design. It now averages more than 400,000 hits per month.

Joel on Software
Joel Spolsky remains a trusted authority on software development due to his sagacious insights on the development and marketing of software.

James Kendrick may be a man on the run, but he finds the time to dish on the latest in mobile technology. This blog features news and reviews about everything mobile. Kendrick claims to have been using mobile devices “since they weighed 30 pounds.” In our estimation, he is now a much faster runner since he got rid of the Compaq Portable.

Lambda the Ultimate
Its creators call it “The Programming Languages Weblog” for the obvious reason: This blog exists to publish programming language research and to discuss bordering issues such as programmability.

Want the skinny on Microsoft’s Web 2.0 strategy? Look no further than LiveSide.net. LiveSide grew out of the Windows enthusiast community and doesn’t miss a beat about what is going on in the Redmond company.

Miguel de Icaza’s web log:
GNOME project founder and Novell executive Miguel de Icaza is not one to shy away from controversy. The open source advocate started his year by defying convention and publishing a rigorous defense of Microsoft’s Office Open XML. de Icaza has been instrumental in explaining how to make Microsoft’s Silverlight runtime work with Linux.

ScottGu's Blog
It is no accident that Scott Guthrie, general manager within Microsoft’s developer division, has cultivated a following among developers. Guthrie regularly shares helpful tips about Microsoft platforms and products and has become a respected thought leader at the Redmond company.That said, he claims that his experience has given him no “inspirational thoughts” to share other than, “It is a great way to connect with developers, help discuss good technical questions, provide road map transparency, and overall learn a lot in return from the feedback/questions it brings.”

techno.blog (“Dion”)
Dion Almaer is a respected programmer working for Google on projects that include Google Code and Google Gears. Almaer uses his personal blog to discussing his take on the latest technology—with a heavy emphasis on bleeding-edge Web programming.

On his blog, Hooman Radfar, founder of Clearspring Technologies, attempts to make sense of the fast-paced world of social applications, widgets and the distributed Web.
And last, but not least…

Z Trek: The Alan Zeichick Weblog
The “Z” in BZ Media, co-founder and SD Times editorial director Alan Zeichick has an entertaining blog and is authorized to sign year-end bonus checks. Zeichick offers “pithy observations and timely analysis” about information technology, software development, security and networking—and whatever else strikes his fancy at a given moment. You might learn something about his favorite music—or his thoughts on multi-core application design.

Microsoft Volta

The Volta technology preview is a developer toolset that enables you to build multi-tier web applications by applying familiar techniques and patterns. First, design and build your application as a .NET client application, then assign the portions of the application to run on the server and the client tiers late in the development process. The compiler creates cross-browser JavaScript for the client tier, web services for the server tier, and communication, serialization, synchronization, security, and other boilerplate code to tie the tiers together.

Learn more about it @ http://labs.live.com/volta/

Parallel Extensions for .Net

Microsoft has released a Community Technology Preview of the Parallel Extensions to .Net Framework called ParallelFX. Learn more about it @



Download is @


What's wrong with the US Mid-West?

In "Caught in the Middle: America's Heartland in the Age of Globalism," former Chicago Tribune reporter Richard C. Longworth tells heartland stories, lots of them, and compiles them in a passionate, probing and painfully honest book. There is little room for sentimentality here. Yes, the outsourcing of jobs and the export of industries has played a major role in recent years. But in Mr. Longworth's account, heartland workers are torpid, poorly trained and resistant to change. Politicians and bureaucrats are narrow-minded, territorial and selfish. Farmers are addicted to subsidies and beholden to mega-corporations.

Monday, January 7, 2008

About Me

My photo
I am a senior software developer working for General Motors Corporation.. I am interested in intelligent computing and scientific computing. I am passionate about computers as enablers for human imagination. The contents of this site are not in any way, shape, or form endorsed, approved, or otherwise authorized by HP, its subsidiaries, or its officers and shareholders.

Blog Archive