Archive for the 'News' Category

Why software patents are a joke, literally

Wednesday, August 18th, 2010

It’s a well known fact that most individual software developers detest software patents. Maybe detest isn’t a strong enough word; how about loathe, dread, hate, despise, resent, and abhor? You get the picture. We dislike them almost as much as weekly status reports, deadlines, and conference calls.

So left on our own, most programmers won’t write patents. This was the situation in Sun’s early history, according to one of its most famous former employees, James Gosling. Sun engineers were asked to write as many patents as they could.

Ed Burnette

http://www.zdnet.com/blog/burnette/why-software-patents-are-a-joke-literally/2039

New W3C Standard Defines Way to Organize and Share XML Workflows

Monday, May 17th, 2010

W3C announced a powerful tool for managing XML-rich processes such as business processes used in enterprise environments. The specification “XProc: An XML Pipeline Language,” provides a standard framework for composing XML processes. XProc streamlines the automation, sequencing and management of complex computations involving XML by leveraging existing technologies widely adopted in the enterprise setting.

W3C published the first XML standard in 1998. Since then W3C has standardized a number of core operations on XML including validation (Schema languages), query (XQuery), transformation (XSLT), and linking (XLink). Business processes combine and build on these core operations, but there has been no standard to describe such sequences. Instead, ad-hoc solutions have been used, which are not easily shared (e.g., with others in a supply chain) and do not leverage widely deployed tools or support.

“XML is tremendously versatile,” said Norman Walsh, MarkLogic, and one of the co-editors of the specification. “Just off the top of my head, I can name standard ways to store, validate, query, transform, include, label, and link XML. What we haven’t had is any standard way to describe how to combine them to accomplish any particular task. That’s what XProc provides.”

W3C

http://www.w3.org/2010/05/xproc-pr

Yale Scientists Explain Why Computers Crash But We Don’t

Tuesday, May 11th, 2010

Nature and software engineers face similar design challenges in creating control systems. The different solutions they employ help explain why living organisms tend to malfunction less than computers, a Yale study has found.

The Yale team compared the evolution of organisms and computer operating systems by analyzing the control networks in both a bacterium Escherichia coli and the Linux operating system.

Both E coli and the Linux networks are arranged in hierarchies, but with some notable differences in how they achieve operational efficiencies. The molecular networks in the bacteria are arranged in a pyramid, with a limited number of master regulatory genes at the top that control a broad base of specialized functions, which act independently. In contrast, the Linux operating system is organized more like an inverted pyramid, with many different top-level routines controlling few generic functions at the bottom of the network.

Mark Gerstein

http://opa.yale.edu/news/article.aspx?id=7508

Truly Random Numbers

Wednesday, February 24th, 2010

A new approach to generating truly random numbers could lead to improved Internet security and better weather forecasts, according to researchers writing in the International Journal of Critical Computer-Based Systems.

Random numbers are a critical part of computer and Internet security. They allow websites and browsers to encrypt the data sent between them using a session key. Weather forecasters, climate scientists, economists, and epidemiologists also use random numbers to generate simulated data for their predictive models. Such simulations can test theories of hurricane formation, climate change, and the spread of disease epidemics, for instance.

http://www.drdobbs.com/security/223100204

Making the Most of Metrics

Wednesday, February 24th, 2010

Exposing Value with Metrics

Sometimes the toughest question to answer sounds very simple – “How are you doing?” When this question is asked of a CEO or CFO, the answer is usually a reflection of the financial state of the organization. However, when this same question is asked by the CEO to line of business leaders about initiatives and processes within the organization, it brings into play a complex set of interrelationships and dependencies.

Laura Mooney

http://www.information-management.com/newsletters/metrics_strategic_operational_performance-10017214-1.html

Configuration Management Is Key to Robust Software

Tuesday, February 23rd, 2010

Configuration management is crucial to the smooth development of a product; the time you spend setting configuration management up properly is time you will save later.

Sound configuration management is fundamental to delivering a capable product: How can you evaluate what you have if you don’t know what you have? We suspect that inadequate attention to configuration management is the reason for the quantity of changes that plagues some products during development.

Kim Pries and Jon Quigley

http://www.softwaremag.com/L.cfm?Doc=1251-12/2009

Bonjour Programming on the iPhone, Part I

Tuesday, February 23rd, 2010

Bonjour is Apple’s implementation of the Zeroconf protocol, which enables the automatic discovery of computers, devices and services on an IP network. Bonjour is Apple’s implementation of the Zeroconf protocol, which enables the automatic discovery of computers, devices and services on an IP network. In this article, you will learn how to implement Bonjour on the iPhone by using the NSNetService class to publish a service. You will also use the NSNetServiceBrowser class to discover services that have been published. In the next article, you will learn how to communicate with another device that you have discovered using TCP/IP.

Wei-Meng Lee

http://www.devx.com/wireless/Article/44126

Add entities in XML

Tuesday, February 23rd, 2010

Many developers use entities in their XHTML for special characters, but in XML you can also define entities to make authoring easier, or to reference the content of external documents. Entities are also useful when you create a Document Type Definition (DTD) and want to reduce its apparent complexity to keep it readable by humans. This article will tell you all about XML entities and show you how to take advantage of them in your documents.

Chris Herborth

http://www.ibm.com/developerworks/xml/library/x-entities/

Build rich Java Web applications with Apache Wink and Ajax

Tuesday, February 23rd, 2010

This article introduces Apache Wink, which is a framework for building Representational State Transfer (REST)ful Web services. Apache Wink is an Apache Incubator project. Its goal is to provide an easier method of writing RESTful Web services by providing the ability to use Java™ annotations to define services inside classes.

Nathan A. Good

http://www.ibm.com/developerworks/web/library/wa-aj-richjava/

Computer Languages History

Friday, January 22nd, 2010

Éric Lévénez has compiled a computer languages timelime, listing the history of 50 programming languages in a chart.

Éric Lévénez

http://www.levenez.com/lang/

W3C posts draft standard for local database storage

Sunday, January 17th, 2010

The W3C (World Wide Web Consortium) has posted a draft set of APIs that Web applications could one day use to store structured content offline. The proposed standard, recently renamed as the Indexed Database API, will provide an interface that Web application developers could use to have a user’s browser store database content for offline use […].

Typically, today’s Web application, such as a browser-based e-mail client or a calendar, will draw its user data from a database that is accessible from a network. In some cases, however, the user may wish to use the application while not connected to the network. Web applications could use these APIs (application programming interfaces) to store copies of the data in the browser itself.

http://www.w3.org/TR/2010/WD-IndexedDB-20100105/

Closures for Java

Friday, December 4th, 2009

The free lunch is over. Multicore processors are not just coming—they’re here. Leveraging multiple cores requires writing scalable parallel programs, which is incredibly hard.

Tools such as fork/join frameworks based on work-stealing algorithms make the task easier, but it still takes a fair bit of expertise and tuning.

Bulk-data APIs such as parallel arrays allow computations to be expressed in terms of higher-level, SQL-like operations (e.g., filter, map, and reduce) which can be mapped automatically onto the fork-join paradigm.

Working with parallel arrays in Java, unfortunately, requires lots of boilerplate code to solve even simple problems. Closures can eliminate that boilerplate. It’s time to add them to Java.

Mark Reinhold

http://blogs.sun.com/mr/entry/closures

Introducing Bad Code Offsets

Friday, December 4th, 2009

I have never written a bad line of code.

When I tell people that, they often scoff and offer replies like “so you’re not a programmer then?” and “let me guess, you’re a coding deity or something?” Well let me say, I am a programmer and I am not Codethulu, but in the same manner that Al Gore can fly around the world in a private jet without polluting, I have negated my bad code footprint through the purchase of Bad Code Offsets.

Alex Papadimoulis

http://thedailywtf.com/Articles/Introducing-Bad-Code-Offsets.aspx

Null Object Pattern in C#

Friday, October 30th, 2009

A Null object is an object that encapsulates the absence of an object. It provides the do nothing behavior and returns the defaults. The Null object is used whenever object reference would have been null. The use of Null Object pattern simplifies the client code and makes it less error prone.

Sajad Deyargaroo

http://www.codeguru.com/csharp/.net/net_general/patterns/article.php/c16503/

More Enterprises Lean Toward Hybrid Agile Development

Friday, October 30th, 2009

Proponents of Agile and lean software development methodologies say they are becoming more popular than traditional sequential methods in corporate app-dev groups, but implementation of a pure Agile method is still a rarity in the enterprise.

“The movement to Agile is fundamentally changing the way in which organizations build software,” said says Forrester Research analyst Dave West, in a keynote address during the recent HP Virtual Conference 2009. “In situations where the requirements and the technology are far from understood — where there’s a lack of clarity — processes become more and more complicated. So a traditional approach, which requires planning, can’t possibly work.”

John K. Waters

http://adtmag.com/articles/2009/10/13/more-enterprises-lean-toward-hybrid-agile-development.aspx