General Development Archive

RPM 5: a Fork in the Linux Packaging

The newest version of the popular RPM package manager is now out with improved performance and functionality. But there's a bit of a catch with RPM version 5.0. Linux vendor Red Hat officially considers RPM 5.0 a project fork. "RPM5 is a fork of RPM, and is not related to RPM.org," Daniel Riek, Product Manager Red Hat Enterprise Linux told InternetNews.com. "Neither Red Hat or Fedora are involved in RPM5, and have no current plans to use it. Red Hat remains committed to the main RPM.org releases and development."

Keystroke Dynamics From Custom Perl Algorithms

Measure the total time of entry and verify the time between keystrokes to help authenticate a user regardless of the data being entered. Learn how to apply the open source tools xev and Perl in keystroke dynamics to measure the more-subtle characteristics of human-computer interaction. This article uses example code to demonstrate keystroke dynamics for enhancing the security of your applications in authentication and continuous data entry contexts.

Valgrind 3.3.0 Released

Valgrind is a tool that helps you find memory management problems in Linux programs. From the 3.3.0 log: Helgrind works again with improved race detection and better error messages. Massif generates better output. Cachegrind has been extended to do branch-misprediction profiling. Both conditional and indirect branches are profiled. Scalability has been improved for very large programs, particularly those with a million or more malloc'd blocks in use at once. These improvements mostly affect Memcheck, which is also up to 10% faster for all programs, with x86 Linux seeing the largest improvement. The documentation has been reorganized. Experimental tools have been added, and more.

Perl 5.10 Released

"Today the Perl Foundation announces the release of Perl 5.10, the first major upgrade to the wildly popular dynamic programming language in over five years. This latest version builds on the successful 5.8.x series by adding powerful new language features and improving the Perl interpreter itself. The Perl development team, called the the Perl Porters, have taken features and inspiration from the ambitious Perl 6 project, as well as from chiefly academic languages and blended them with Perl's pragmatic view to practicality and usefulness."

Symbian & Protothreads

Symbian's introductory training covers Active Objects. Active Objects are a Symbian specific method of providing co-operative multitasking. During the introduction to Active Objects we are all told about how inefficient and bloated multi threaded applications can be. Each thread requires heap and stack space, it requires kernel resources to provide for the context switching, and time slicing. All of this is an overhead on a device with limited resources. Instead Symbian provide Active Objects. We can have many Active Objects within a single process all waiting on different events. This means that we do not need as many threads, and hence we consume less resources. More here.

Red Hat’s Open Source IDE

Six months ago, Linux vendor Red Hat acquired the closed source Exadel Studio Pro IDE and pledged to turn it into a fully open source Red Hat product. On Monday, Red Hat officially released JBoss Developer Studio, based on the Exadel product as a 100 percent open source IDE. The new Eclipse based IDE offering from Red Hat's JBoss division will provide a development environment that will work on both Windows and Linux for Java middleware solutions from JBoss.

Ruby on Rails 2.0 Released

Ruby on Rails 2.0 has been released. "Rails 2.0 is finally finished after about a year in the making. This is a fantastic release that’s absolutely stuffed with great new features, loads of fixes, and an incredible amount of polish. We’ve even taken a fair bit of cruft out to make the whole package more coherent and lean." On Zenbits, they give tips on how to install 2.0.

NetBeans 6.0 Released

NetBeans 6.0 has been released. The 6.0 release includes significant enhancements and new features, including a completely rewritten editor infrastructure, support for additional languages, new productivity features, and a simplified installation process that allows you to easily install and configure the IDE to meet your exact needs.

Kaleidoscope: Implementing a Language with LLVM

The LLVM Compiler System is being used for all sorts of interesting things these days. It basically provides an extremely modular and easy to use set of open source (BSD-licensed) compiler libraries that can be used to build various applications from. Despite this, many people don't really understand it, and are scared away by the breadth of the project or by compilers in general. The Kaleidoscope tutorial starts out from scratch and slowly builds up a simple language to show how LLVM can help out with this. We end up with a JIT compiler for a fairly interesting little language with less than 700 lines of code. Of course, this is just the tip of the iceberg, once you start with LLVM, there are all sorts of things you can do.

Experimental ‘Functional’ Language Emerges from Microsoft Research

Are the C programming language and its object-oriented offspring - C++, C#, Objective-C - still well-suited to the requirements of multithreaded, network-oriented computing environments today? That's the question on the minds of engineers at Microsoft Research, whose latest programming language is today being officially moved off the back burner. The F# language has received the company's official blessing.

Learn F-Script in 20 Minutes

F-Script is an open-source scripting and interactive environment for Cocoa, the Mac OS X object system. It lets you easily play with the rich set of object-oriented frameworks provided by Apple and the Cocoa community. This new article, Learn F-Script in 20 Minutes, will teach you the basics of F-Script and show you how to use it to experiment with the advanced graphics capabilities of the Mac OS X Core Image framework. If you aren't using F-Script yet, this is your chance to learn how it can improve your productivity as well as those of the users of your own applications.

What Every Programmer Should Know About Memory, Part 1

"Ulrich Drepper recently approached us asking if we would be interested in publishing a lengthy document he had written on how memory and software interact. Memory usage is often the determining factor in how software performs, but good information on how to avoid memory bottlenecks is hard to find. This article is the first in a serie of articles (the original has over 100 pages) that will get published on LWN weekly. Once the entire series is out, Ulrich will be releasing the full text."

LLVM Compiler 2.1 Released

The LLVM Project recently released a new version of their compiler, optimizer and code generators. LLVM includes a drop-in GCC-compatible C/C++ and ObjC compiler, mature optimization technology (including cross file/whole program optimization), and a highly optimizing code generator. For people who enjoy hacking on compilers and runtimes, LLVM provides libraries for implementing custom optimizers and code generators including JIT compiler support. This release is the first to provide beta GCC 4.2 compatibility as well as the new "clang" C/ObjC front-end, which provides capabilities to build source-to-source translators and many other tools.