Domain: ibm.com
Stories and comments across the archive that link to ibm.com.
Stories · 981
-
Best Programming Practices For Web Developers
An anonymous reader writes "Web pages have become a major functional component of the daily lives of millions of people. Web developers are in a position to make that part of everyone's lives better. Why not try using traditional computer programming and best practices of software engineering?" -
Comparing Visual Studio and Eclipse
An anonymous reader writes "Getting started with Eclipse can be confusing. New concepts, such as plug-in architecture, workspace-centric project structure, and automatic build can seem counterintuitive at first. Without waxing too philosophical about IDE design, this article presents the main differences between Visual Studio and the Eclipse IDE." -
The Linux Networking Stack Exposed
An anonymous reader writes "The Linux source code is a great way to learn about the design of device drivers for a multitude of device types, including network device drivers. This article will show you the basic architecture of the Linux networking stack and dig into its interfaces for system calls, protocols, and device drivers." -
Finally We Get New Elements In HTML 5
An anonymous reader writes "Pure HTML enhancements hardly grew at all in the last eight years. Forward motion basically stopped in 1999 with HTML 4. Now the future looks bright. Recently, HTML has come back to life with HTML 5. Tons of new elements will be available for structure (article, nav, section, etc.), block semantic elements (aside, figure, dialog), and several other functions." -
Sun To Release 8-Core Niagara 2 Processor
An anonymous reader writes "Sun Microsystems is set to announce its eight-core Niagara 2 processor next week. Each core supports eight threads, so the chip handles 64 simultaneous threads, making it the centerpiece of Sun's "Throughput Computing" effort. Along with having more cores than the quads from Intel and AMD, the Niagara 2 have dual, on-chip 10G Ethernet ports with cryptographic capability. Sun doesn't get much processor press, because the chips are used only in its own CoolThreads servers, but Niagara 2 will probably be the fastest processor out there when it's released, other than perhaps the also little-known 4-GHz IBM Power 6." -
Don't Overlook Efficient C/C++ Cmd Line Processing
An anonymous reader writes "Command-line processing is historically one of the most ignored areas in software development. Just about any relatively complicated software has dozens of available command-line options. The GNU tool gperf is a "perfect" hash function that, for a given set of user-provided strings, generates C/C++ code for a hash table, a hash function, and a lookup function. This article provides a reference for a good discussion on how to use gperf for effective command-line processing in your C/C++ code." -
Anatomy of the Linux Kernel
LinucksGirl writes "The Linux kernel is the core of a large and complex operating system, and while it's huge, it is well organized in terms of subsystems and layers. In this article, the reader explores the general structure of the Linux kernel and gets to know its major subsystems and core interfaces. 'When discussing architecture of a large and complex system, you can view the system from many perspectives. One goal of an architectural decomposition is to provide a way to better understand the source, and that's what we'll do here. The Linux kernel implements a number of important architectural attributes. At a high level, and at lower levels, the kernel is layered into a number of distinct subsystems. Linux can also be considered monolithic because it lumps all of the basic services into the kernel. This differs from a microkernel architecture where the kernel provides basic services such as communication, I/O, and memory and process management, and more specific services are plugged in to the microkernel layer.'" -
How to Keep Your Code From Destroying You
An anonymous reader writes "IBM DeveloperWorks has a few quick tips on how to write maintainable code that won't leech your most valuable resource — time. These six tips on how to write maintainable code are guaranteed to save you time and frustration: one minute spent writing comments can save you an hour of anguish. Bad code gets written all the time. But it doesn't have to be that way. Its time to ask yourself if its time for you to convert to the clean code religion." -
Optimize PHP and Accelerate Apache
An anonymous reader writes "As the load on an application increases, the bottlenecks in the underlying infrastructure become more apparent in the form of slow response to user requests. This article discusses many of the server configuration items that can make or break an application's performance and focuses on steps you can take to optimize Apache and PHP." -
Performance Tuning Subversion
BlueVoodoo writes "Subversion is one of the few version control systems that can store binary files using a delta algorithm. In this article, senior developer David Bell explains why Subversion's performance suffers when handling binaries and suggests several ways to work around the problem." -
Deep Blue vs. Kasparov 10th Anniversary
qeorqe writes "For the tenth anniversary of Deep Blue's victory over the world chess champion Garry Kasparov, Wired has an interview with Deep Blue developer Murray Cambell. The discuss the power of the now-aging supercomputer (equivalent to just one Cell processor), and the nonexistent future of PC vs. Human chess contests. 'It's almost the end of the story for chess in the sense that matches between chess machines and grand masters are becoming less interesting because it's so difficult for the human grand masters to compete successfully. They're even taking relatively dramatic steps like giving handicaps to computers, making them play the game with a pawn less or playing the game with less time. We're past the stage where there's a debate about who's better -- machines or grand masters -- and we're just looking for interesting ways to make the competition fairer.'" -
IBM Says 'Couldn't Fire 150K US Workers If We Wanted To'
theodp writes "In an e-mail worthy of the Dilbert Hall of Fame, IBM execs responded to Robert X. Cringely's Project LEAN layoff rumors, reassuring employees by pointing out that they've already wiped out too many U.S. jobs to be able to lay off another 150,000. Big Blue's employment peaked around 1985, when it had about 405,000 workers who were acclimated to a long tradition of lifetime employment. IBM puts its current global workforce at 355,766, with a 'regular U.S. population' of less than 130,000." -
Custom Charts w/ Perl and GD
An anonymous reader writes "This article describes techniques you can use to create new levels of usefulness in your dynamically generated charts with Perl and GD. Cook up some automatically generated graphs for your organizational meetings or live enterprise directory data. Annotate the charts with readable text that delivers more information than the standard pie chart. Using the power of GD and Perl, you can link various data and images together to create sophisticated charts that will help bring visual interest to your applications." -
Learn How UNIX Multitasks
BlueVoodoo writes "On UNIX systems, each system and end-user task is contained within a process. Learn how to control processes and use a number of commands to peer into your system." -
PS3 Linux Performs Real Time Ray Tracing
fistfullast33l writes "A video posted on You Tube shows three PS3s networked together to perform Real Time Ray Tracing. Keep in mind that PS3 Linux runs in a hypervisor, so the RSX graphics chip is not being used at all. Even more impressive, PS3 Fanboy is reporting that Linux also limits the number of SPEs to 6 at once, so not all the horsepower on each of the PS3s is being utilized. According to the You Tube Summary, IBM Cell SDK 2.0 is being used for the IBM Interactive Ray-tracer (iRT). This apparently was done by the same team that presented a tech demo at GDC 2007 of a Linux PS3 rendering a 3 million polygon scene in real time at 1080p resolution." -
First Technical Look at the Second Life Client
An anonymous reader writes "Second Life is a virtual world, maintained through a combination of client software and hosting servers. It has the unusual quality that nearly all of the content is user-provided. It is also unusual in that Linden Labs recently announced the release of its client software as open source. This is something that is rarely, if ever, done in commercial MMO apps. This article introduces the client (or "viewer" in Linden terminology) and explores the Second Life development environment." -
How To Speed Up Linux Booting
An anonymous reader writes "A common complaint about Linux is the amount of time the operating system takes to start. Like Linux itself, there are plenty of options and lots of flexibility for boot-time optimization. From dependency-based solutions like initng to event-based solutions like upstart, there's an optimization solution that should fit your needs. Using the bootchart package, you can dig in further to understand where your system is spending its boot time to optimize even more." -
Debugging the FreeBSD Kernel Transparently
An anonymous reader writes "To debug the FreeBSD kernel core dump efficiently, it is best to set up a remote debugging session between a development machine and the target machine, and remotely debug the kernel using serial communication. This article shows you how you can debug as many kernel images as you want; it becomes transparent to users once debugging starts, and your system's performance is not affected at all." -
IBM Many Eyes After One Month
ReadWriteWeb writes "IBM's Many Eyes app, a 'shared visualization and discovery' service, has been running for a month now. In this article two of the IBM researchers behind Many Eyes, Martin Wattenberg and Fernanda B. Viégas, showcase some of the best visualizations so far. They also talk about the future of 'social data analysis' on the Web. Wattenberg and Viégas believe that Many Eyes is not just social software, but 'societal-scale software.' They say that Many Eyes represents a break from conventional visualization research. Traditionally, computer scientists concentrate on scaling in terms of data, making visualizations work for bigger and bigger databases. IBM's agenda with Many Eyes is to scale the audience, not the data." -
Open Source Network Management Beats IBM and HP
mjhuot writes "Last week SearchNetworking.com announced their Product Leadership Awards for 2007. It was a pleasant surprise to see an open source project, OpenNMS, win the Gold in their Network and IT Management Platforms category. OpenNMS beat out the established players of Hewlett-Packard's OpenView and IBM's Tivoli. This was based on a user survey of all IT solutions, not just open source; it demonstrates that open source software is indeed making inroads into the enterprise." -
Using Java 5 Features in Older JDKs
BlueVoodoo writes "Java 5 added a number of powerful language features: generics, enumerations, annotations, autoboxing, and the enhanced for loop. Even if you're stuck on JDK 1.4, you can still use generics. Use Java and theory to learn how." -
When a CGI Script is the Most Elegant Solution
An anonymous reader writes "Writing local Web applications can be quick, easy, and efficient for solving specific Intranet problems. Learn why a Web browser is sometimes a better interface than a GUI application and why experienced Web developers find themselves struggling to learn a GUI toolkit, and descover that a simple CGI script would serve their needs perfectly well, if not better." -
Ten Predictions for XML in 2007
An anonymous reader writes "2007 is shaping up to be the most exciting year since the community drove off the XML highway into the Web services swamp half a decade ago. XQuery, Atom, Atom Publishing Protocol (APP), XProc, and GRRDL are all promising new power. Some slightly older technologies like XForms and XSLT are having new life breathed into them. 2007 will be a very good year to work with XML." -
Digital Credentials Offer Enhanced Privacy
John Q Random writes "Stefan Brands's company credentica.com announced their U-Prove library and SDK implementing ID tokens — also known as digital credentials or private credentials. (Private Credentials are a cool PKI replacement and anonymous e-cash tech that allows you to prove certified attributes like age, credit rating, group membership, etc. without revealing who you are; to allow you to have a digital life without the digital dossier effect inherent in a central databases.) Following this announcement, Adam Back announced credlib, an open source implementation of Brands credentials (and the older more basic Chaum certificates). These developments relate to recent news from IBM's Zurich labs on their identity-mixer project (previously discussed on Slashdot) that is based on the less efficient Jan Camenisch and Anna Lysyanskaya credentials." -
Mash Apache Derby with New OpenOffice 2.0 feature
An anonymous reader writes "Document storage is hot, hot, hot! There has been an explosion of methodologies and tool sets — both open source and proprietary — to fulfill the demand for quickly locating and searching documents. Mash Apache Derby with a new OpenOffice 2.0 feature to create a repository that lets you store, search, and extract ODF documents in a standards-based manner." -
Reduce Your Ubuntu Linux Memory Footprint
An anonymous reader writes "The ideas in this article will help you breathe life (and some additional security) into your old Linux machines and make better use of Linux on aging hardware. In this article, learn how to accurately measure the amount of memory your Linux system uses. You also get practical advice on reducing your memory requirements using an Ubuntu system as an example. A lack of physical memory can severely hamper Linux performance. This will help you reduce your systems memory footprint and keep your old Linux system running the latest fully featured Linux applications smoothly." -
XML::Simple for Perl Developers
An anonymous reader writes "XML has become pervasive in the computing world and is buried more and more deeply into modern applications and operating systems. It's imperative for the Perl programmer to develop a good understanding of how to use it. In a surprisingly large number of cases, you only need one tool to integrate XML into a Perl application, XML::Simple. This article tells you where to get it, how to use it, and where to go next." -
IBM Releases Fastest SDK For Java 6
IndioMan writes "IBM is releasing an SDK for Java 6 and is sponsoring an Early Release Program to gather feedback from the Java community. Product binaries and documentation are available for Linux on x86 and 64-bit AMD, and AIX for PPC for 32- and 64-bit systems. In addition to supporting the Java SE 6 Platform specification, IBM's SDK also focuses on platform stability, performance, and diagnostics. It's tops on every benchmark." -
IBM Breaks Patent Record, Wants Reform
An anonymous reader writes "IBM set the record for most patents granted in a year for 2006. At the same time, IBM points out that small companies earn more patents per capita than larger enterprises and pushes for reform to address shortcomings in the process of patenting business methods: 'The prevalence of patent applications that are of low quality or poorly written have led to backlogs of historic proportions, and the granting of patents protecting ideas that are not new, are overly broad, or obvious.' And the company has been committing itself to a new patent policy: 'Key tenets of the policy are that patent quality is the responsibility of the applicant; that patent applications should be open to public examination and that patent ownership should be transparent; and that business methods without technical content should not be patentable.'" -
Installing Yellow Dog Linux on the PS3
johnnyb writes "A new series of articles is out on IBM DeveloperWorks on programming the PS3. The first article is up, discussing the installation of Yellow Dog Linux and first steps in programming the Cell BE Processor on this platform. From the article: ' It is unusual for gaming consoles to allow foreign operating systems to be installed on them. Since consoles are usually sold at a loss, they are usually locked down to prevent games from running on them without the publisher paying royalties to the console developer. Sony decided to open up the PS3 console a little bit, and allow third-party operating systems to be installed, with the caveat that they do not get accelerated graphics. Because of this, you can now install Linux on the PS3. You have to jump through a few hoops, but it definitely works.'" -
An Overview of Virtualization
IndioMan writes to point us to an overview of virtualization — its history, an analysis of the techniques used over the years, and a survey of Linux virtualization projects. From the article: "Virtualization is the new big thing, if 'new' can include something over four decades old. It has been used historically in a number of contexts, but a primary focus now is in the virtualization of servers and operating systems. Much like Linux, virtualization provides many options for performance, portability, and flexibility." -
Should JavaScript Get More Respect?
An anonymous reader points out an article in IBM's Crossing Borders series about the language features of JavaScript, surely the Rodney Dangerfield of scripting languages. But with increasing use in such technologies as Ajax, Apache Cocoon, ActionScript, and Rhino, some industry leaders are taking a fresh look at the language. From the article: "Nearly every Web developer has cursed JavaScript at one time or another. Until recently, many developers had all but written off JavaScript as a necessary evil at best or a toy at worst... But JavaScript is becoming increasingly important, and it remains the most broadly available scripting language for Web development." -
How To Adopt 10 'Good' Unix Habits
An anonymous reader writes to mention an article at the IBM site from earlier this week, which purports to offer good Unix 'habits' to learn. The ten simple suggestions may be common sense to the seasoned admin, but users with less experience may find some helpful hints here. From the article: "Quote variables with caution - Always be careful with shell expansion and variable names. It is generally a good idea to enclose variable calls in double quotation marks, unless you have a good reason not to. Similarly, if you are directly following a variable name with alphanumeric text, be sure also to enclose the variable name in square brackets ([]) to distinguish it from the surrounding text. Otherwise, the shell interprets the trailing text as part of your variable name -- and most likely returns a null value." -
Cutting Through the Ajax Hype
An anonymous reader writes "If you're thinking about building an Ajax application of your own, this article would be a good place to start. It's an introductory-level guide about when and how to implement Ajax. It provides a balanced discussion about where exactly using Ajax makes sense, and where it does not." -
Celebrate the XML Decade
IdaAshley writes "IBM Systems Journal recently published an issue dedicated to XML's 10th anniversary. Take a look at XML application techniques, and general discussion of the technical, economic and even cultural effects of XML. Learn why XML has been successful, and what it would take for XML to continue its success." -
Monitor a Linux Box With Machine Generated Music
mcappel writes "Linux and Unix admins are familiar with vmstat and top, which are visual tools displaying the health of a computer. chordStats adds a new interface to a system monitoring setup — information passed through tone, timbre, and harmony. IBM's Nathan Harrington, who wrote Knock Some Commands Into Your Laptop, created a simple Perl script to send note events to FluidSynth that forces various system events to be interpreted as a part of a harmonious interval, and looks at options for enhancing a musical system monitor." -
How To Build a Web Spider On Linux
IdaAshley writes, "Web spiders are software agents that traverse the Internet gathering, filtering, and potentially aggregating information for a user. This article shows you how to build spiders and scrapers for Linux to crawl a Web site and gather information, stock data, in this case. Using common scripting languages and their collection of Web modules, you can easily develop Web spiders." -
IBM Sues Amazon For Patent Infringement
A large number of readers wrote in about IBM suing Amazon over commerce patents. The Ars Technica coverage linked is one of the few sources that goes beyond the brief AP or Reuters stories that everyone is running. Here is IBM's press release. Some of the patents in question go back to the 80s and they do seem to pretty much wrap up the idea of online commerce, if they prove valid. IBM says many others are licensing the patents but Amazon won't give them the time of day on the subject. -
US Software Patents Hit Record High
Aditi Tuteja writes "US Patent and Trademark Office made a new record for the number of software patents awarded in a single year. The agency has issued 893 new patents yesterday. Pushing the total to 30,232 in this year. If this is the trend, more than 40,000 software patents will be issued this year, according to the Public Patent Foundation. The previous record was set in 2004. Several major technology vendors have pledged not to enforce their patents against open source projects. IBM for instance essentially donated 500 patents to open source projects last year. Earlier this year, the US Supreme Court overthrew a prior judgement that required a judge to issue an automatic injunction if he found that a patent was being infringed." -
IBM Mainframe Contest Returns
Yellowcake writes "After a successful first year IBM is back with their second iteration of the Student Mainframe Contest. Participants are exposed to a range of mainframe technologies and programming languages such as JCL, REXX, COBOL, and Java. The contest is divided into sections of increasing difficulty, building upon the first, which states "No Experience Necessary"." -
What it Means to be a Mashup
An anonymous reader writes "IBM DevWorks has provided us with an introductory article that helps define what it means to be a mashup. In addition to just defining what a mashup really is the author also delves into what they do for the community at large and where they may take us in the near future. From the article: 'Mashups are an exciting genre of interactive Web applications that draw upon content retrieved from external data sources to create entirely new and innovative services. They are a hallmark of the second generation of Web applications informally known as Web 2.0.'" -
Replacing Humans with Software Inspectors
An anonymous reader writes "What if you were able to perform a portion of your code reviews automatically? In this first article of the new series 'Automation for the People', development automation expert Paul Duvall begins with a look at automated inspectors like CheckStyle, JavaNCSS, and CPD. The piece examines how these tools enhance the development process and when you should use them." From the article: "Every time a team member commits modifications to a version control repository, the code has changed. But how did it change? Was the modified code the victim of a copy-and-paste job? Did the complexity increase? The only way to know is to run a software inspector at every check-in. Moreover, receiving feedback on each of the risks discussed thus far on a continuous basis is one sure-fire way to keep a code base's health in check automatically!" -
Discover the Anatomy of initrd
IdaAshley writes "The Linux initial RAM disk (initrd) is a temporary root file system that is mounted during system boot to support the two-state boot process. It contains various executables and drivers that permit the real root file system to be mounted, after which the initrd RAM disk is unmounted and its memory freed. In this article explore the initial RAM disk for Linux 2.6, including its creation and use in the Linux kernel. In many embedded Linux systems, the initrd is the final root file system." -
Knock Some Commands Into Your Laptop
An anonymous reader writes "For the first time, you can smack your computer and get a meaningful response! An article at IBM Devworks show you how to rap on the laptop case with your knuckles and have commands run on those knocks. Enterprising hackers have developed modules for the Linux kernel to take advantage of laptop integrated accelerometer sensors; with them the possibilities are endless." -
Developing Your First Eclipse RCP Application
An anonymous reader writes "The objective of the Eclipse Rich Client Platform (RCP) is to enable Eclipse to be used in a wide range of end-user applications that are not integrated development environments (IDEs). With the release of Eclipse V3.1, it is easy to create RCP applications. This tutorial will guide you step by step in building your very own RCP application." -
Do You Like Your Workflow or BPM Software?
Dukhat asks: "I am really interested in firsthand experiences with these kinds of products and in unbiased reviews, since Google primarily gives me marketing information and vague overviews of how BPM is good for business. I have already looked at an earlier article on work-flow patterns, which gave me a few products to look at. I am trying to compile a short list of work-flow and BPM software to evaluate, but I am having a hard time determining which products are even worth evaluating. The situation is worsened by the fact that work-flow tools are often bundled with CRM or Business Intelligence packages. I am not dead set on using a big package, but I need to know more about their real world pros and cons before I can decide whether to build it myself instead. I am looking at both BPM and work-flow software, since some BPM software can also do work-flow, but it may be more worthwhile to just use a rules engine for automated processes and use a specialized work-flow tool." Dukhat has a fairly long list of software choices that he needs to whittle down. What packages would you recommend and why? "Here are some of the goals we have that we are trying to solve with work-flow/ BPM software:- To be able to understand the path of a process without perusing in and out of a lot of functions.
- To be able to report on how long each step in each process takes.
- To be able to see exactly where in the process software errors occur and be able to skip over failed steps so that we can come back and fix them later.
- To be able to integrate with our issue tracking system, billing system, and CRM software. We definitely will have to write some webservices here.
- To be able to give process managers in different departments the ability to tweak certain processes without giving them full access to all processes.
Here is a list of packages that I have assembled so far: Please help me narrow these down. Thanks!" -
Do You Like Your Workflow or BPM Software?
Dukhat asks: "I am really interested in firsthand experiences with these kinds of products and in unbiased reviews, since Google primarily gives me marketing information and vague overviews of how BPM is good for business. I have already looked at an earlier article on work-flow patterns, which gave me a few products to look at. I am trying to compile a short list of work-flow and BPM software to evaluate, but I am having a hard time determining which products are even worth evaluating. The situation is worsened by the fact that work-flow tools are often bundled with CRM or Business Intelligence packages. I am not dead set on using a big package, but I need to know more about their real world pros and cons before I can decide whether to build it myself instead. I am looking at both BPM and work-flow software, since some BPM software can also do work-flow, but it may be more worthwhile to just use a rules engine for automated processes and use a specialized work-flow tool." Dukhat has a fairly long list of software choices that he needs to whittle down. What packages would you recommend and why? "Here are some of the goals we have that we are trying to solve with work-flow/ BPM software:- To be able to understand the path of a process without perusing in and out of a lot of functions.
- To be able to report on how long each step in each process takes.
- To be able to see exactly where in the process software errors occur and be able to skip over failed steps so that we can come back and fix them later.
- To be able to integrate with our issue tracking system, billing system, and CRM software. We definitely will have to write some webservices here.
- To be able to give process managers in different departments the ability to tweak certain processes without giving them full access to all processes.
Here is a list of packages that I have assembled so far: Please help me narrow these down. Thanks!" -
Porting to the Linux Standard Base
An anonymous reader writes "If an application conforms to the Linux Standard Base (LSB), and a flavor of Linux is LSB compliant, the application is guaranteed to run. This tutorial, written by Martin Streicher, Editor in Chief of Linux Magazine, ensures that your code runs reliably on as many Linux flavors as possible. It shows you how to port your apps to the Linux Standard Base, then takes you through the LSB test tools to verify conformance." -
DWR Makes Interportlet Messaging With AJAX Easy
An anonymous reader writes "You can use the sample code in this article as a starting point for developing your own applications; the code also shows how DWR extends the Java programming model to Web browsers. With DWR, it's almost as if JavaBeans were available in the browser. DWR simplifies your work by hiding almost all the details of Ajax and allows you to concentrate on the task at hand instead of the nuts and bolts of Ajax development." -
Web Development with TurboGears and Python
rdelon writes "TurboGears was previously mentioned here as "Python on Rails". It has since made tremendous progress and is now a popular Python web MVC framework (along with Django). IBM developerWorks just published a great article about TurboGears and a book is on the way. Unlike Rails and Django, TurboGears is made up of several pre-existing subprojects. One of the great features of TurboGears is the 'toolbox,' which allows you to configure and check various aspects of your application and database in a browser."