A Generalized Grammar for Three-way XML Synchronization
This paper proposes a general synchronization grammar which can describe synchronization rule sets. For example, when handling three input files, we show that changes to elements can be described in terms of just seven possible permutations. Similarly, PCDATA and attribute changes can be described in terms of a fixed set of permutations. Using these permutations a grammar is proposed, allowing precise description of synchronization algorithms and rule sets and providing a testable framework for their implementation. The paper applies the resulting grammar to existing synchronization tools and technologies and shows how the grammar can be applied to provide solutions for specific application areas, including document workflow and translation.
La Fontaine, Robin and Nigel Whitaker. IDEAlliance (2005). Articles>Information Design>Programming>XML
Cloud Computing Versus Grid Computing
Want to know more about cloud and grid computing? Learn how you can use Infrastructure as a Service to get a full computer infrastructure using Amazon's Elastic Compute Cloud (EC2). See the similarities, differences, and issues to consider in grid and cloud computing. Explore some of the security issues and choices for Web development in the cloud, and see how you can be environmentally friendly using cloud computing.
Myerson, Judith. IBM (2009). Articles>Web Design>Programming>Collaboration
Advanced Debugging with JavaScript
When used effectively, JavaScript debuggers help find and squash errors in your JavaScript code. To become an advanced JavaScript debugger, you’ll need to know about the debuggers available to you, the typical JavaScript debugging workflow, and code requirements for effective debugging. In this article, we’ll discuss advanced debugging techniques for diagnosing and treating bugs using a sample web application.
Mills, Chris and Hallvord R. M. Steen. List Apart, A (2009). Articles>Web Design>Programming>JavaScript
Language Support for Web Service Development
We will demonstrate how enhancements to the XJ language (http://alphaworks.ibm.com/tech/xj) facilitate the development of Web Service applications.
Peshansky, Igor and Mukund Raghavachari. XML 2006 (2006). Articles>Web Design>Programming>XML
Content Management System APIs
Panellists talk about two vendor-neutral programming interfaces for content-management systems. Joel Amoussou discusses JSR 170, a vendor-neutral Java API designed to work across many different content management systems. Michael Wechner discusses Neutron, an Open Content Management User Interface based on XML.
Amoussou, Joel and Michael Wechner. XML 2006 (2006). Articles>Content Management>Programming>XML
Where Did All the Documentation Go?
Documentation is a huge cost factor in software development, and companies are looking for ways to trim costs. If you cut back on product doc and customers don't complain, there's a temptation to keep cutting. Eventually you end up with software engineers writing bits of doc because all the tech writers were laid off, but there'll be one guy who didn't get laid off who has to work like heck to wire it all up and make it continue to look like professionally written doc.
assertTrue (2009). Articles>Documentation>Programming>Technical Writing
What APIs Can Tell You About a Product
I always try to get a look at a vendor's APIs before (or in the process of) evaluating a product. And I recommend you do, too. If you are involved in a product-selection effort, get input from your developers -- have them evaluate APIs as part of the product-evaluation process. Don't wait until after the deal is inked to find out whether the product's APIs are so problematic that your rollout schedule might have to undergo serious changes.
assertTrue (2009). Articles>Content Management>Programming>Collaboration
Hone Your Regexp (Regular Expression) Pattern-Building Skills
Add to your bag of tricks several handy techniques for crafting real-world regular expressions (regexps). Building regexps is a part of the daily life of any administrator. Learning to think in terms of pattern matching, in order to construct successful regexps that return the desired criteria, is a skill that takes both time and practice.
Stutz, Michael. IBM (2006). Articles>Content Management>Programming
Coding Horror: A Modest Proposal for the Copy and Paste School of Code Reuse
If you use copy and paste while you're coding, you're probably committing a design error. Instead of copying code, move it into its own routine. Future modifications will be easier because you will need to modify the code in only one location.
Atwood, Jeff. Coding Horror (2009). Articles>Content Management>Programming
Following a software design process can offer the same kinds of benefits you gain from following a recipe when cooking: getting reliable results. For example, if I have a recipe for gingerbread, but I don’t follow the recipe, should I still expect to get gingerbread? It depends, of course, on how much I choose to deviate from the recipe.
Gagnier, Ron. UXmatters (2009). Articles>Project Management>Programming
In the world of development, the need to track bug reports and enhancement requests are a given. But they're not generally required for documentation, in the way they are for code Quite the reverse. For documentation, bug reports and enhancement requests provide little benefit, and generally impede progress. This post compares documentation and code, showing why bug reports and enhancement requests are so vital to the code base, and at the same time why those reasons simply do not apply to documentation.
Armstrong, Eric. Sun Microsystems (2008). Articles>Documentation>Programming>Technical Writing
ActionScript 2.0 to 3.0 Migration Cheat Sheet 
This cheat sheet covers both ActionScript 2.0 and ActionScript 3.0 and is organized to help those who need to switch to 3.0. The functions and classes of ActionScript 2.0 are to the left of each section, followed by their equivalents in ActionScript 3.0.
ActionScriptCheatSheet.com (2009). Resources>Web Design>Programming>Flash
This cheat sheet is logically organized into DOM methods, functions, regular expressions, etc. It’s easy to use and a great reference for all common JavaScript uses. The guide is not only excellent for JavaScript beginners (covering items as basic as the syntax for putting JavaScript into HTML) but is also suited to programmers at an advanced level (referring to more advanced JavaScript functionality).
Added Bytes (2007). Resources>Web Design>Programming>JavaScript
Regular Expressions Cheat Sheet
This PDF is not a guide to any specific language, and so would be great for developers who do not code in any specific language (or who code in more than one language).
Added Bytes (2007). Resources>Documentation>Programming>Regular Expressions
Developing web-based applications can be done using a variety of tools and languages. However, the Java™ programming language and Java servlets are the ideal choice because of a number of attractive features, namely, portability, efficiency, safety, extensibility, and flexibility. Few viable alternatives exist that can be considered equally powerful. Over the past few years, I have developed an easy-to-use, easy-to-understand framework based on Java servlets to facilitate the development of web-based applications. The framework (called Hamlets) is the result of a radical simplification effort. In this article I show you step by step how to write your first web-based application in Java using Hamlets.
Pawlitzek, Rene. IBM (2009). Articles>Web Design>Programming
Engineering Software for Accessibility 
If a majority of your users could benefit from your product being accessible, doesn’t it just make sense to build an accessible product? If you have decided to do so, you are sending a message to your customers that their needs matter. Populations in many countries are getting older. Civil rights for people with disabilities are gradually being extended to encompass digital inclusion. Governments are requiring procurement officials to purchase products that are the most accessible (mandated in the U.S. by Section 508 of the Rehabilitation Act). For technology producers, creating accessible products is just the right thing to do, and it makes good business sense.
Grieves, Jason and Masahiko Kaneko. Microsoft (2009). Books>Accessibility>Programming>User Interface
While MVC is a familiar term to those in back-end application development—using frameworks such as Struts, Ruby on Rails, and CakePHP—MVC’s origin in user interface development lends itself to structuring client-side applications. Let’s examine what MVC is, see how we can use it to rework an example project, and consider some existing MVC frameworks.
Snook, Jonathan. List Apart, A (2009). Articles>Web Design>Programming>JavaScript
How To Effectively Communicate With Developers
If you have ever worked with a developer or a development team, this article will probably strike close to home. As designers, we work with dozens of developers across the globe each year. Some of us are fortunate enough to find a gem; a developer that just gets it. A developer that you feel is on your same wavelength in terms of what needs to be accomplished with the user interface, and what it needs to happen. Most often, however, we find developers that we generally don’t see eye to eye with.
Scherf, Ryan. Smashing (2009). Articles>Collaboration>Programming>SMEs
Values in Software Design Practice
Every user experience (UX) designer who practices in a corporate setting knows the breathless whirlwind that is modern business. We designers manage relationships with developers, business managers, and customers, and still have a full-time production role researching, designing and validating features and interactions. We rarely have enough time to do everything we should, and therefore have to carefully choose where to spend our time and resources.
Schrag, John. Designing the User Experience at Autodesk (2009). Articles>User Experience>Programming
XAML stands for eXtensible Application Markup Language and was created by Microsoft. It is currently the primary mechanism for declaratively creating the user interface in a Windows Presentation Foundation (WPF) application. WPF is part of the .NET 3.0 framework. Why discuss these very technical things in a design blog post? The answer is simple: because XAML is designed for designers. It has other uses of course, but one of its main tenets is that XAML enables the separation of UI and logic (code). That is a very powerful concept! In this and future posts, I will explain how a few of us at Autodesk are using XAML in our design process as a way to enable design refinement during the Development phase.
Stein, Matt. Designing the User Experience at Autodesk (2009). Articles>User Interface>Programming>XML
Five Tips For Documenting Code
If you want to get better at documenting your own code then this is the post for you. I have 5 simple tips to follow while coding to make the process easier.
Inside RIA. InsideRIA (2009). Articles>Documentation>Programming>Flash
From Drawing Board to Working Code: Software in the Real World
Some of my designs never make it to market due to lack of funding prior to release and the company slips quietly away or gets bought and I lose contact. Other times by the time the software is released, the person who hired me has left the company and moved onto other pastures. So it's always a treat when someone calls me back to say "Would you like to come in and see the software? We're nearly done."
Sprezzatura Systems (2007). Articles>Project Management>Programming>Case Studies
Symphony or Jazz Band Metaphor for Software Development
One of the online lists I read frequently has been debating the proper metaphor for the software development environment. The building trade has been used quite often in the past. In fact, we use the term "architect" quite frequently, although ten software engineers will probably give you ten different definitions of what an architect actually should do. I think there is no single metaphor for software development roles because there is not a single software development environment.
Sprezzatura Systems (2007). Articles>Project Management>Programming
Programmer 101: Teach Yourself How to Code 
You've always wanted to learn how to build software yourself—or just whip up an occasional script—but never knew where to start. Luckily, the web is full of free resources that can turn you into a programmer in no time. If you're curious about how to become a programmer, you can get off to a running start using tons of great free web-based tutorials and resources.
Trapani, Gina. Lifehacker (2009). Articles>Education>Programming>Online
There are 11 readers currently online: 0 registered users and 11 guests. Register.

![]()
![]()


![]()
![]()
![]()