|
A number of great sins have been committed under the guise of making software more maintainable. And 60% of software cost is during maintainance, according to Robert Glass. So what goal could be more laudable to pursue? The only problem is that we call things maintainable which are not. Putting remote interfaces in your application is done to “make it more maintainable”, creating frameworks is done to “make it more maintainable”, using EJBs..
|
|
I’ve recently switched to Conkeror as my primary browser. It started life as a Firefox extension, but nowadays it’s a standalone app built on top of Mozilla’s xulrunner, so it uses the Gecko rendering engine. What it is, is an emacs implemented in Javascript, for the web. This means on the one hand that it acts like emacs. Most of the basic emacs keybindings are supported – you open URLs with C-x C-f, and have buffers you can switch between..
|
|
I’ve recently switched to Conkeror as my primary browser. It started life as a Firefox extension, but nowadays it’s a standalone app built on top of Mozilla’s xulrunner, so it uses the Gecko rendering engine. What it is, is an emacs implemented in Javascript, for the web. This means on the one hand that it acts like emacs. Most of the basic emacs keybindings are supported – you open URLs with C-x C-f, and have buffers you can switch between..
|
|
If you are ultra-Mac, you prefer to use an aesthetic computer that “just works” - as a result, you are usually sexy, artistic and cool. If you are ultra-PC, you prefer to use a clunky un-aesthetic computer that is difficult to use, crashes often, is a virus hell, yet is guaranteed to work with any piece of hardware with a software driver written by a 10-year-old boy in a barn in China - as a result, you are nerdy, cheap and non-cool.
|
|
If you are ultra-Mac, you prefer to use an aesthetic computer that “just works” - as a result, you are usually sexy, artistic and cool. If you are ultra-PC, you prefer to use a clunky un-aesthetic computer that is difficult to use, crashes often, is a virus hell, yet is guaranteed to work with any piece of hardware with a software driver written by a 10-year-old boy in a barn in China - as a result, you are nerdy, cheap and non-cool.
|
|
Grand Master Kim Jeong Seong of the United World Haedong Kumdo Federation visited Helsinki last weekend to hold a seminar on Korean traditional swordmanship . The weekend was a very interesting combination of various sword forms, two sword sparring and cutting and control exercises. We also held examinations for various belt levels, where I attained 1st keub (red-black). Our instructors Jose and Mika reached the 2nd dan ..
|
|
Grand Master Kim Jeong Seong of the United World Haedong Kumdo Federation visited Helsinki last weekend to hold a seminar on Korean traditional swordmanship . The weekend was a very interesting combination of various sword forms, two sword sparring and cutting and control exercises. We also held examinations for various belt levels, where I attained 1st keub (red-black). Our instructors Jose and Mika reached the 2nd dan ..
|
|
My Pinnacle Mean Streak 2.0 was stolen today from outside my flat (Pigott Street, E14). It’s a black, rigid mountain bike. The wheels are 26", WTB rims, Shimano hubs. The groupset is Deore, and it’s got mechanical disc brakes. I locked it to a lamp post with a steel D-lock whilst I went upstairs, since my bike was greasy, and needed cleaning. It was nicked in the hour between 19:30 and 20:30. The frame number is 1K26102739 . If any..
|
|
My Pinnacle Mean Streak 2.0 was stolen today from outside my flat (Pigott Street, E14). It’s a black, rigid mountain bike. The wheels are 26", WTB rims, Shimano hubs. The groupset is Deore, and it’s got mechanical disc brakes. I locked it to a lamp post with a steel D-lock whilst I went upstairs, since my bike was greasy, and needed cleaning. It was nicked in the hour between 19:30 and 20:30. The frame number is 1K26102739 . If any..
|
|
Two great comments from people about their experiences with Windows. I can really sympathize with these people! From http://blog.seattlepi.nwsource.com/microsoft/archives/132891.asp#102626 Yesterday, it started an update I didn’t even want to initiate on shut-down so I had to walk to my car & drive off with this stupid laptop running in my hand to get to work. Is MS trying to get me fired? From http://blog.seattlepi.nwsource.co..
|
|
Tal Ben-Shahar writes the following in “Happier”, his introductory book into the field of positive psychology: “The proper role of goals is to liberate us, so we can focus on the here and now.” In order to help us have a fulfilling life, our activities should both be meaningful and pleasurable. In this sense, meaning means to have a long term goal, pleasurable means to have a short term goal.
|
|
The code I write in Ruby is higher quality than the code I write in Java. Why? Because the language supports better abstractions. It lets me express a problem once, and reuse it many places. The strength of an environment comes from the quality of the libraries, and the qualities of the libraries comes from the features of the language. In this post, I will review a proposal to make Java a better language: First-Class Methods.
|
|
As I do a lot of programming using open source databases, I couldn’t help but notice that inclusion of XML in the database seems to be a hot topic. Postgres 8.1 (just released) and MySQL 5.1 (not released yet) will allow XML documents to be stored as the value of cells, and allow those documents to be manipulated and inspected. (Oracle has had this feature since 2001) I generally don’t like XML (as Robin put it: most formats are designed ..
|
|
Since I’ve got a few moments, and I’ve decided to actually write down some rants rather than deciding that I can’t be bothered to - I’m going to use some space to single the praises of Django . I’ve been using Django for a couple of years now - since around the autumn of 2005, and as such, feel that I’ve got a pretty good grasp of how the framework works. I haven’t really hacked around that much with the innards of Django (although I..
|
|
Since I’ve got a few moments, and I’ve decided to actually write down some rants rather than deciding that I can’t be bothered to - I’m going to use some space to single the praises of Django . I’ve been using Django for a couple of years now - since around the autumn of 2005, and as such, feel that I’ve got a pretty good grasp of how the framework works. I haven’t really hacked around that much with the innards of Django (although I..
|
|
In the past several months (and year), it seems that Linux is really making its way into the desktop market (up until now, it has ruled the server market). Every time I pick up a magazine at Chapters or read Google news, there is some new Linux device or technology. Here are a few that have caught my eye in the past short while: The rapid development of Compiz (formerly Beryl), which puts shame to all other desktop effects and is extrem..
|
|
In the past several months (and year), it seems that Linux is really making its way into the desktop market (up until now, it has ruled the server market). Every time I pick up a magazine at Chapters or read Google news, there is some new Linux device or technology. Here are a few that have caught my eye in the past short while: The rapid development of Compiz (formerly Beryl), which puts shame to all other desktop effects and is extrem..
|
|
It’s been a year since my project replaced IBM WebSphere Application Server with a Java SE solution embedding Jetty. Looking back on the last year, I only have one regret: That it took us so long to make the switch. The difference takes a bit of perception: Our software no longer eats away our time, killing us with a thousand pinpricks. But WebSphere is just the most blatant example of software that gives you nothing, gets in the way of a l..
|
|
30 23 28-31 * * [ "`date +%m`" != "`date +%m --date=tomorrow`" ] && /Users/rjs/bin/monthEnd.py 2>&1 >/dev/null Pretty handy for running on the last day of the month - and should work on Linux.
|
|
30 23 28-31 * * [ "`date +%m`" != "`date +%m --date=tomorrow`" ] && /Users/rjs/bin/monthEnd.py 2>&1 >/dev/null Pretty handy for running on the last day of the month - and should work on Linux.
|
|
I am probably one of the rare type of Mac owners who did neither of the following: Bought Mac OS X 10.5 (including Safari 3) Upgraded to Safari 3 by downloading it for free from Apple’s website Therefore I was still using Safari 2 on my Mac. A few nights ago, Apple’s software-update program pushed Safari 3 to my computer. Although I could have deselected that download, I assume that the sort of people who would deselect an update th..
|
|
Monitors, as with everything else, need rebooting sometimes
-
www.databasesandlife.com
-
18 years ago
-
eng
The monitor I am using at work suddenly went white. I.e. every pixel went white; not black, and not blue. A white screen of death, as it were. I was in the middle of programming an algorithm requiring some degree of thought, so I wasn’t really up for being interrupted by unreliable technology. The monitor a 22" wide-screen flat monitor. My initial suspicion obviously lay with Windows. For some reason, some instinct told me to turn the..
|
|
Well today while pondering things at lunch I was looking into the performance of SQL queries one stood out. That being the performance of getting random rows out of a database. Most people who have a basic understanding of MySQL (the database I use at home because its easy to set up, though I am looking at Posgresql) would say oh, to get random rows you do this, SELECT * FROM ` table ` ORDER BY rand() LIMIT 0 , 5 ..
|
|
If you though getting started with Rails seemed easy from my first post, you haven’t tried out Heroku yet. Heroku is a hosted solution for Rails that comes with a browser based IDE. There’s nothing to install. It is so easy that it’s almost ridiculous. To me, this is the future of application hosting. One of the remarkable things about Rails is that it lets you get up and running very quickly.
|
|
This is the fourth article in my introduction to Rails. In the previous articles, we created a web application that let us edit articles, added support for comments to our articles, and added some nice AJAX effects. But a real blog needs feeds, a decent front page and some article formatting. In this article we will add all these. The article contains no groundbreaking features, but mostly dots a few i’s and crosses a few t’s both when it c..
|
|
So, at the moment, I’m writing a presentation about the operation and the security implications of RFID. During the course of the random searches around the internet, I’ve found that there’s a lot of really, really cool work going with respect to RFID. Even more great than the output on the subject is who is studying it. Lots of really cool observations are coming out of the open source friendly community - some of the best presentations on....
|
|
So, at the moment, I’m writing a presentation about the operation and the security implications of RFID. During the course of the random searches around the internet, I’ve found that there’s a lot of really, really cool work going with respect to RFID. Even more great than the output on the subject is who is studying it. Lots of really cool observations are coming out of the open source friendly community - some of the best presentations on....
|
|
broder has been hacking on some better quicksilver integration for Hiveminder using todo.pl. I don’t use a mac, but I don’t see why linux users shouldn’t get fun toys to. So I hacked up the following two-liner that uses todo.pl and ratmenu to pop up a list of tasks, and mark one as completed: #!/bin/sh todo.pl | perl -ne 'push @a,$2,"todo.pl done $1" if /^#([\w]+) (.+)$/;' \ -e 'END{exec("ratmenu",@a)}' I dropped it into my ~/bin and bound ..
|
|
broder has been hacking on some better quicksilver integration for Hiveminder using todo.pl. I don’t use a mac, but I don’t see why linux users shouldn’t get fun toys to. So I hacked up the following two-liner that uses todo.pl and ratmenu to pop up a list of tasks, and mark one as completed: #!/bin/sh todo.pl | perl -ne 'push @a,$2,"todo.pl done $1" if /^#([\w]+) (.+)$/;' \ -e 'END{exec("ratmenu",@a)}' I dropped it into my ~/bin and bound ..
|
|
I suddenly got an email out of the blue today: Dear Sir / Madam: We have received your application, an interview will be arranged for shortlisted candidates. Thank you for your interest to join our team! Human Resources Initially I thought it was spam (although the normally good Gmail spam system hadn’t marked it as spam), then I saw the company name, and saw they were based in Macau. A quick search for that company’s name in ..
|
|
Whenever I talk about Agile Software Development with people who have a strategic point of view, a very pertinent question always comes up: What about fixed price projects? Establishing an initial relationship with a customer about creating a product is often perceived as a weakness of Agile methods. After being asked the question very many times, I’ve started giving a fairly standard response, which is basically the same as Tom Gilb gave m..
|
|
In my previous articles, I showed you how to get started using Rails, and how to create model objects that are associated with each other. In this article, we will clean up the way that information is displayed and add support for dynamic HTML, or as the cool kids are calling it these days, AJAX. A view to die for First, clean up app/views/articles/show.hml.erb. I am assuming you know enough HTML to be able to make it look reasonably blog l..
|
|
Java gotcha: `anArray.hashCode()` isn't deep, but `aList.hashCode()` is
-
www.databasesandlife.com
-
18 years ago
-
eng
Every Java object has a hashCode() and an equals(..) method. These are used to determine where to place an object within a hashing algorithm, and if two objects with the same place in the hashing algorithm actually are the same, respectively. If you want to add objects to a Set—which stores only unique objects—it uses these methods to determine whether two objects are the same and thus shouldn’t both be stored.
|