February 18, 2003
I went through the CSV reader component code and realized that both an embedded carriage return and an embedded quote in the same string could cause problems with my new code if the carriage return appeared after the embedded quote due to the way I’d coded things. So I added some more code to get around that situation as well and then ran a test on a file which had embedded quotes, embedded carriage returns and a mixture of the two in the same string and it all seemed to work fine – seemed being the operative word :p I’m about ready to send the final binary over to the client and hope that I’m done with it …
Work has been extremely hectic for some reason or other though I can’t for the life of me think of anything concrete that I’ve been accomplishing <g> We got hit again by Sapphire at work yesterday though since some idiot in another department forgot to patch his installation of MSDE even after we’d warned them of it after the last Sapphire attack. They were supposed to call me and find out about all the necessary patches but nobody called me – I hope they patched it fully since if they haven’t, it’s going to disrupt the network again soon and if you have the .NET Framework SDK installed, the regular MSDE patch alone isn’t supposed to be enough. Oh well, guess we’ll know sooner or later :p
Tags:
Posted by Fahim at
6:57 am
|
February 16, 2003
I got back to work on the CSV reader component yesterday since the client has been having problems with embedded carriage returns in a CSV record. I had originally thought that a CSV record was a single line in the CSV file but turns out that I was wrong since in the case of embedded carriage returns, you’ll have multiple lines for the same record. However, since a column with an embedded carriage return gets enclosed in quotes, I modified my code so that if the component finds a column with an open ended quote, it reads the next line and the next line and the next line till it finds the closing quote. This should take care of embedded carriage returns but I’m not really sure what other problems this might have initiated. Plus, I don’t think I still have provided for one extreme case – what if a column has both quotes and carriage returns embedded in it? CSV usually doubles the quotes to indicate that a quote is there and I handle that fine and I do handle embedded carriage returns fine too but what if you have the opening quote for a column, then doubled quotes to indicate an actual quote in the data and then a carriage return and the closing quote for the column in the next line? I don’t think my code catches that … yet … So I have to go back to the code again today :p
I also want to get to work on Blog and fix a few bugs including the one which does not add an entry for the earliest range in the archive table of contents. I don’t know how long that bug has been there but quite a few people have been mentioning it recently and so it’s high time I did something about that. Plus, it looks as if the password encoding bug is more prevalent than I thought too. So that needs to be fixed as well. I still have done nothing with my installation of B2 to get BlogMan support for B2 finalized. There just is too much to be done …
Tags:
Posted by Fahim at
7:13 am
|
February 14, 2003
I was not at my computer the last couple of days and so no updates 🙁 Since I haven’t done much in the way of coding still no updates I’m afraid :p There are updates on the personal/philosophical front but for that you’ll have to go over to SM – and so with that shameless plug, I leave you … :p
Tags:
Posted by Fahim at
6:39 am
|
February 11, 2003
Work’s been getting extremely hectic of late and I seem to find myself with more and more things to do in the evenings – looks as if programming is going to be sort of on a low simmer for a while 🙁 I’ve been working with both Blog and BlogMan on and off and fixing little bits of code here and there – fixing bugs that are common to both. I even managed to install B2 yesterday though I still haven’t given it a whirl. I then will have to figure out how to get titles working via the BlogAPI for BlogMan using B2 – it should be fairly simple since the B2 documentation already tells you what to do :p
In the meantime, I added a new splitter to the Blog and BlogMan UI since I have moved the category display to the right of the entry text box and moved comments and preview to different tabs. Since there are probably people who don’t use categories, or hate the screen space the category display takes away from the entry box, I added a splitter which will hide the category panel when you click on it and then display the category panel when you click on it again. If you don’t understand what I mean, then you’ll find out when you see the next release 🙂 I am still not 100% happy with the new UI but it does look fairly OK …
Tags:
Posted by Fahim at
6:55 am
|
February 10, 2003
The weekend to say the least, was unproductive 🙁 I had a really bad headache which prevented me from doing any coding at all though I’d been planning to get quite a bit of work done – ah well … that’s always the way it goes :p But then again, of late I seem to have a lot of things that never get done though I talk of doing them – there is the new layout for this site which never got put up, there is the installation of B2 which I still haven’t done, there is the final release of BlogMan which is still in the works and now there is the 7.x release of Blog which is also still in the works :p There just seems to be so much to do and just not enough time to do it in – but eventually I’ll get around to doing it all … eventually :p The 7.x release of Blog is really going to need quite a bit of work since there are so many minor but irritating bugs that have crept in along the way – the latest of course (as I mentioned a few days ago) is the changing of the encoding scheme for the e-mail passwords – I’m not so worried about the new encoding scheme as making sure that the changeover goes smoothly for existing users. I think I have the method figured out but I will know for sure when I put the code into testing. I think I should be ready for beta testing on Blog 7.x in a couple of weeks but you never know … especially not with the kind of schedule I’ve got going at the moment :p
Tags:
Posted by Fahim at
7:02 am
|
February 8, 2003
Yesterday was kind of interesting but fairly hectic since I kept on getting hit from all sides with different stuff. I had the work related stuff to deal with (boring stuff – writing and producing television programs) as well as bug reports regarding Blog and the CSV reader component that I’d done – in the midst of that all, I was trying to get some work done on the new ASP/MSDE project I was working on and also trying to get a web based app for managing MSDE databases that I’d got from SourceForge. So all in all, a very muddled time was had by me :p
Actually, it turned out that the problems with the CSV reader component was a data problem – they had a CSV file where one record got split into two or more lines (don’t ask me how) and so obviously the reader component complained that there wasn’t a proper record with the correct number of columns to be read. As far as I know, a CSV record has to be on one single line and this was the proper behaviour for the component. I don’t know what the client will want though after they figure out what caused the problem in their input files. Maybe they’ll find that they have a memo field which has carriage returns or something and want me to work around that …
Carriage returns played a role in the Blog bug too :p I had a Blog user who couldn’t get Blog to remember his e-mail passwords for Server mode. We thought at first that it might be because he had a fairly long password. So I tried with a 16 character password at my end and that worked fine. So I sent him the latest build of Blog and even that didn’t seem to work. He finally sent me his Blog.ini file and I noticed that his password was going on to the next line and the only way that could happen was if the encryption scheme was generating a carriage return. So I asked him for his password and he let me know and I tried it out and sure enough, it generated a carriage return 🙁 This basically means that my current encoding scheme is no good since there is the possibility that this problem will occur again under the right conditions. So I’m going to have to change the encryption scheme for the next release. Ah well …
Tags:
Posted by Fahim at
7:34 am
|
February 7, 2003
Yesterday was an interesting day to say the least. Since my machine was being affected by Sapphire, I had put the service pack on to download before I left work the day before yesterday but when I got in yesterday and tried to install it, it was corrupted. I’d taken my notebook in to work since I still couldn’t get .NET web applications to work on it and so wanted to apply the latest updates and patches and after two hours of downloading and updating, .NET web applications still wouldn’t work. In the midst of all this, I had discovered that they had a new version of the PlusMemo component (the same component that is used as the entry field for Blog and BlogMan amongst a few other of my apps) and had downloaded that and tried it out and discovered that the word highlighting code for the Find feature no longer worked (of course, this might not have worked before this new release since Tyran reported this a while back but I still found it to be working – now I”m not so sure since I think I might have been using an older version whereas Tyran reported on a newer version – or something like that :p) Actually, it isn’t as bad as all that since I found solutions to all these problems as the day progressed :p
I downloaded a different service pack file for MSDE and not only did it patch the worm vulnerability (at least I hope so), it also upgraded my MSDE installation. The only problem there is that I’m still not sure whether I’m fully patched or not. Symantec’s Sapphire detection utility simply keeps on saying that I have a vulnerable DLL even after I had applied the service packs. So I downloaded a scan utility from Microsoft itself and that reports that I’m not vulnerable. Since I hadn’t tested the MS utility before I applied the patch, I’m not sure who to believe – so I’m sort of keeping an eye on the traffic to see whether I’m totally safe or if it’s just a false sense of security :p
As for the problem with .NET web applications not working on my notebook, I did some further digging around and found that this was caused by an incomplete install of Visual Studio .NET and had nothing to do with Windows XP SP1 or anything else for that matter. Of course, since my Visual Studio .NET installation gave no indication that anything had gone wrong, I’m left wondering how many other people might have the same problem and not know that they had it? Anyway, the solution turned out to be simple enough – there is a file named aspnet_regiis.exe inside the .NET framework installation folder that had to be run with the -i switch which simply redoes the installation of the IIS registration stuff – which had actually been the problem all along – .aspx files and others produced by .NET had no valid handlers defined in IIS and so were being treated as normal HTML files. Now everything works fine on my notebook and on top of it all, I got my machine updated to use the latest service packs and patches 🙂
The found word highlighting problem with Blog and PlusMemo proved to be a bit more troublesome since there seemed to be nothing at all about using the particular PlusMemo helper component (a component for extended highlighting of specific words) on the Web that I could find. I couldn’t even remember how I had come up with the code in the first place :p I tried several things but nothing seemed to work but in the process I did find more help and insight into using the TExtHighlighter component since I found the actual references in (surprise of surprises <g>) the PlusMemo help file. I still couldn’t get things to work and so I wrote to the people at ECM (the company who code, distribute and support PlusMemo) and asked them for their help. However, in the evening I noticed something that I hadn’t before – the PlusMemo component itself had a property that held a list of keywords to which dynamic styling (highlighting being one of those dynamic styles) would be applied. I have no idea why I had never noticed this property before (maybe it was not there in the PlusMemo component itself originally) but I changed the code to use this property instead of the extended highlighting component that I’d been using and things worked fine again 🙂 So at the end of the day I had everything working fine again … except for some new problems which cropped up due to some new stuff that I’d done but that’s a story for another day :p
Tags:
Posted by Fahim at
6:19 am
|
February 6, 2003
The company network had gone down over the holiday and we got it working again yesterday but it went down again soon after. After some checking and testing, the problem was traced back to my machine – it would suddenly start broadcasting a large amount of data and so would crash the router :p I couldn’t figure out what was wrong for a bit but then I suddenly realized that it could be Sapphire – the recent worm that had affected MS SQL servers! I have at least three different databases – Oracle 9i, mySQL and MSDE – installed on my machine and I had not realized that MSDE was vulnerable to Sapphire too (or had totally forgotten that I had MSDE installed – things get a little bit hazy after the fact and I’m not sure what is what :p). So my machine had not been patched and it suddenly had become infected – the problem with the Sapphire worm is that you can’t prevent it infecting your machine even if you have good anti-viral software since it attacks your machine directly via one of the ports used by your MS SQL installation. So I shut down MSDE and started downloading all the patches for it through the day and our network went back to being normal.
What with all the excitement of finding Sapphire, downloading patches and reading up on the worm, I didn’t much in the way of work done yesterday. But I did spend some time on trying to find a solution for my problems at home too since I can’t seem to run web applications using the .NET framework on my machine at home. If I used a dropdown .NET control for instance, all the choices would get displayed on the page as text but I will not see the actual dropdown control. I had thought that this had been due to the fact that I had installed XP SP1 and then installed IIS and Visual Studio .NET but I couldn’t find anything on that – or maybe I didn’t look hard enough. But I did find that they’d released SP2 for the .NET Framework and so I downloaded it and brought it home with me and installed it. Still no luck 🙁 I’m not sure what else I can do except to download XP SP1 again and install it but I’m not sure that I want to go through all that again. I hate problems like this!
Tags:
Posted by Fahim at
6:57 am
|
February 5, 2003
Life’s suddenly become extremely hectic – I’m doing my normal work, working on an ASP project that I’m doing as part of a sub-contract in my spare time and also providing support for the CSV reader component that I also did as part of a sub-contracting project. In the meantime, several bug reports sent in by Blog users, the release of BlogMan and another project that I promised to do for Edward go languishing since I don’t have the time to devote to them. This is basically why, I’ve not taken up extra work (unless I liked doing it and it was fun – which is the case with my freeware) in my spare time till now – I don’t think the hassles are worth it. My parents seem to believe that you should make money and continue to make money but I believe that as long as you have enough for your needs, that is enough. Yes, I know I can make more but what’s the point? I’ve seen people kill themselves day in and day out trying to make money but did it bring them any happiness? I don’t think so …
Be as it may be, I’m in the middle of another project right now. Since yesterday was a holiday (it was Sri Lanka’s Independence Day) I spent most of my time working on the new project, which was to provide a web-based frontend to an MSDE database using ASP/VBScript. Of course the catch is that the application supports multiple languages and so all the interface labels have to be fetched from the database based on the user’s language preference. I spent most of the day just getting the labels into place and setting up the UI which also includes a sub-screen with tabs, which again was fun to set up :p
In the meantime, I’ve been getting support requests from the person for whom I did the CSV reader component. Now I don’t mind providing support, especially if I made a mistake with the code and it’s my fault but when somebody asks you questions that they can answer themselves if they’d just take the trouble to look, what do you do? When I completed that job, I also wrote a demo application so that the end user would have a concrete example of how to use the component and sent the source to him but what’s the first question I get from him after using the demo? “How do I use the component in code?” It really pisses me off when people do that! Why can’t they take the time to look at the source – which is provided – instead of turning around and asking you? That was a rhetorical question, I know why they do that – so don’t bother to answer :p Ah well … after a lot of questions like that (way too many <g>) I think he might actually have found a bug in the code but I’m unable to test it because I can’t seem to run web applications using the .NET framework on my machine at home – might have something to do with the fact that I installed Visual Studio .NET after I’d installed Windows XP SP1. I’ll have to check into that sometime and figure out what the problem is – in the meantime, I’ll have to check on the CSV component at work today …
Tags:
Posted by Fahim at
6:21 am
|
February 4, 2003
I’ve been playing with some new software. Lavasoft released Ad-aware 6.0 last week and Opera 7.0 came out around the same time too. Now, I’m going to talk about both of them together since the interaction between the two apps actually brought about results that made me like one and dislike the other :p The new interface in Ad-aware seems nice – it’s slick and easy on the eye. I don’t know how much things have changed functionality-wise since I wasn’t a big Ad-aware user even before 6.0 – I simply used to run a full system scan every once in a while. (Incidentally, did I mention that Ad-aware now has three versions and the free release, which is one of the three versions, is not out yet?) The things I did notice about the new Ad-aware though was the inclusion of plug-ins, the ability to update reference files directly from Ad-aware and a feature called Ad-watch.
Now Ad-watch supposedly blocks pop-ups, attempts to take over your browser and webbased installations but the first time I noticed Ad-watch in action was when it closed my running instance of Opera 7.0 since it said that it detected a pop-up – either Ad-watch does not work with Opera or it is not fully tested. Either way, I don’t like Ad-watch though the rest of Ad-aware 6.0 seems to work fine enough. Which brings us to Opera 7.0 – now I installed Opera 7.0 since it boasted a really slim distribution (3MB or so without the Java runtimes) and because I had kept on hearing about all the good features it had – let me tell you, it’s all true 🙂 The first thing I noticed when I restarted Opera after Ad-watch closed it, was that all the pages that I was browsing when Ad-watch closed Opera were there, I then noticed that Opera even maintained the history for each page and that I could browse back or forward even though the browser had been restarted and the next thing I noticed was that even my downloads were preserved since I had a couple of downloads going at the time when Ad-watch closed Opera! I was hooked and I decided to start using Opera instead of Scope :p
Of course, if I took the time and effort, I could add the features that Opera has into Scope and some of the features that Opera has are indeed on the to-do list for Scope since a user had asked for it. I do miss some of the stuff that I had with Scope/IE since Opera does seem to have problems rendering certain types of pages – I think mostly CSS based but all in all, I love the stability in browsing that Opera provides since it seems to save the current browser state each time you open a new page – yesterday I had a power failure and my session information was safe even after the power failure! What more could you ask for?
Tags:
Posted by Fahim at
6:22 am
|
« Previous Page —
Next Page »