posts - 5, comments - 5, trackbacks - 0

My Links

Archives

  • December, 2004 (1)
  • November, 2004 (3)
  • October, 2004 (1)

Tuesday, December 07, 2004

Thunderbird 1.0 Released

I started using Thunderbird as an email client since version 0.1 (which was horrible), tried again with each new release and finally uninstalled Outlook when version 0.6 arrived.

Today version 1.0 is out, and I have some hours now working with it seeing that most of the smaller bugs are gone.

If you want an email client who goes through mail and newsgroups like a racing motorcycle, give Thunderbird a try. It's fully configurable, has extensions like Firefox , includes an RSS reader which works fine being online (I still haven't tried to work offline with it, which is one of the biggest problems which I have with RSS readers) and the UI is as configurable downloading themes (or writing them).

I haven't tried to develop anything with it, but surelly will do in the near future, Thunderbird is a program made in the way that I liked :-)

posted @ 1:49 PM | Feedback (1)

Tuesday, November 02, 2004

Firefox, IE and the legacy problems

Yesterday evening during the course of the INDA meeting we have a very interesting conversation about Internet Explorer, Firefox and the problems of programs made for one and used by the other. Even that I don't feel able to speak English and think at the same time (meaning that my participation was restricted to hear) I have some ideas about coding and tools

Just before comming to Ireland I was visiting my old customers to say good by and make arrangements to keep giving support to them. And more than that, I was looking around the city where I was working for 15 years. Something that I noticed, first with surprise and later with amazement was the number of applications being used which I made or taken part in. From DOS to W2K, there was a complete range of them, most really horrible and forgoten by me, but still working.

This fact make me think about three of the worst kinds of projects in which I take part:

  • Working in old existing applications to add new features or correct problems in them
  • Rewriting programs and trying to figure how to migrate its data
  • Developing systems to talk with existing (and probably old) systems

Talking about the problems of Firefox using pages designed for IE reminds me the problems caused by Unicode, and a common question: why use Unicode, if ASCII works fine and there is a huge number of applications tweaked around it? I had many problems with my programs making funny things because hacks around sorting and comparison algorithms to gain some performance in old computers (which was irrelevant when finally the old computers were renewed), which keep me undoing hacks for weeks until have everything checked and running fine again.

In practical terms IE has the browser market captured for years. A huge amount of websites are made using the best and worst features that IE allows to use, some of them being really bugs but still used and abused to have cool efects on pages. Now, with Firefox the bugs and features are different, and many things completelly legal under IE turned up as problems while browsing. Most, the community around Firefox encourage the use of CSS and to concentrate in content for pages (may be leaving the hacks for the CSS :-), so I think that it's less probable that somebody would take the time to make the hacks for IE work under Firefox, leaving the programmer with a big load of applications that magically started failing. It's logical to think that the previous situation was best than the actual.

But what I think too since my last rounds around La Plata is about applications surviving absurdly more than it's expected life span, and specially the problem of web applications which can go to the last point in Earth and keep haunting the original developer until death. Each technological jump make the span of programs to grow an order of magnitude, and sooner or later it's users will go for the head of the programmer.

Firefox can be a nuisance today, but I still prefer to deal with it now, and go from hacks around a de facto standard to a better engineered standard and less hacking to be solved some years in the future. I believe that finally the problem is on aplying the best engineering practices availables each time, and to remember that tweaks are usefull craftmanship but not a good way to walk for years and years, and leave them as a last resource for a crawling application (something that I forget almost each time that I take the keyboard unless somebody hits me with a hammer :-).

I think that it's the same situation with .NET. Why bother with changes in languages, libraries, environment and everything if you can do anything in Delphi or VB under Windows? And what happens with the tons of code and systems running today? Sooner or later they must be reviewed, migrated or rewriten, but I prefer to rewrite a complete system today using the .NET framework than keep patching and hacking systems that has reached its growing limit. It could be a problem, probably a big problem, but it takes another dimension if you think in the next ten or even twenty years in the future. Will you want to keep hacking a VB5 application to work under the OS of that time?

By the way, at lunch time I was looking the Borland website and noticed about the blogs, and this from Allen Bauer is just to the point :-)

posted @ 4:28 PM | Feedback (3)

Monday, November 01, 2004

Looking for memory

I am in the middle of a project around a N-Tier application and a problem in this days is about memory consumption and its practical application, the maximun number of users in a server.

I started looking with the task manager but this clearly was not enough to know what is going in the server, so after a while I finished reading the page of Brian Madden wich has some good articles about Terminal Server and its performance tunning.

Something interesting is in the use of the Performance Monitor (a tool that I used continuously while tunning MS SQL Server, but don't know why I forget later) to look at memory use during the execution of programs.

The two counters that I started using are:

Memory | Pages Input/Sec

This talk about the number of times a process need to go to the page file to retrieve something from memory.

Memory | Pages Output/Sec

This is the oposite, talk about the number of times a process must send a piece of memory to the page file to make room in memory for another things.

The article has a good explanation about the use of this and other counters, and I will surelly start using them in conjunction with NUnit to check how my systems manage load.

posted @ 11:42 AM | Feedback (0)

Adventures in C#

Ron Jeffries is one of the gurus about eXtreme Programming (XP) , a very interesting discipline for small companies or independent teams. One of it's premises is to work incrementally, from a known point to a new one, each time increasing the knowledge of tools and domain.

In 2002 he started working with C# and the .NET framework, starting from zero and aplying the approach of XP to learn a new language and working environment. He moderates a mailing list and published many articles each week (discussed also in the list) about his successfull and failed experiments, and the lessons learned. It's a good reading, specially if made incrementally :-)

Now Microsoft Press has published the book under the name "Extreme Programming Adventures in C#" (ISBN 0735619492) so the draft chapters are moved out from the website, but the list archives are available and the list in itself is active and with a consistently small signal to noise ratio.

posted @ 11:25 AM | Feedback (1)

Friday, October 29, 2004

Hello world

Just a test for Developers.ie blogs.

posted @ 12:54 AM | Feedback (0)