Like many software developers, system designers and other computing specialists, I often find myself facing a new project with far too many implementation options. A quarter of a century ago my options were far more limited, and perhaps as a consequence it was easy to get started. If I needed to directly manipulate the underlying hardware, I’d roll up my sleeves and churn out hundreds of lines of assembly. (OK, so each processor has a different instruction set, memory model, etc., but once you’ve mastered a few, the rest are a piece of cake.) For something high level, C is the best workhorse. Quick and dirty? BASIC. Don’t laugh. Many serious solutions were coded in BASIC, or at least in [click title to read more…]
The Java programming language continues to evolve, and at times it can be hard to keep up. I can code in dozens of languages, but the constant switching between differing syntax and paradigms often leads to confusion. I frequently find myself attempting quirky hybrids of languages, such as this morning when I attempted to initialize an ArrayList<Object> structure with a ({a,b,c}) constructor pattern. It took an embarrasing few seconds before I understood my mistake. In the end I refactored to use an “Object…” argument, since this better matched what I was doing, but how long will it be before I attempt using “…” in some other language?
Meanwhile, since more than half of my recent coding is in Java, some [click title to read more…]
Having done this many times already, here’s a quick recipe for putting Subversion (with Apache) on a fresh install of CentOS 5.5. It assumes you will put your repositories into /var/svn/repositories, the user credentials are held in /var/svn/passwords, you will have a user called testuser and an initial blank repository called myrepos. I’ll also assume your server is called svn.example.com. The procedure also opens port 80 in the iptables firewall. Edit the details to suit your own requirements:
# yum install httpd subversion mod_dav_svn # mkdir -p /var/svn/repositories # chown -R apache:apache /var/svn # chcon -R -h -t httpd_sys_content_t /var/svn # htpasswd -c /var/svn/passwords testuser * enter password for 'testuser' (twice) # vi /etc/httpd/conf.d/subversion.conf Changes: * Uncomment the <Location> config [click title to read more...]
This week could see the release of NetBeans 6.7. It got community approval last week, despite a few remaining bugs. I’ve been using the release candidates for a while and the incremental improvements are good, though code completion for features like Facelets could still do with some work.
Update: shortly after I wrote this, they announced the release of NB6.7.
As I start up one of several IDEs, I notice the following message in the splash-screen: “GPLv2 with classpath exception.” So what does that mean? Put simply, it means that you can add your own code/libraries to the code of the IDE (or whatever it was that displayed the license) without your own code inheriting the GPL. Without this licensing option, your code would automatically become licensed under the GPL, effectively free to anyone who wanted to use it. Not good if you’re trying to add some specialist extras and expecting to be paid for your effort.
With the barrier to using GPL resources in a commercial solution removed via this license, one can expect more GPL/commercial hybrid solutions to appear and [click title to read more…]