/egilh

Learning by doing

November 2004 Entries

Fighting evil with evil. BBC reports on Lycos latest attempt to fight SPAM: The Make LOVE not war screen saver (Flash needed) The idea is pretty simple: Scan SPAM for link to web sites Manually verify that the web site sells spam goods Let the screen savers send tons of request to the spam web sites Each client only generates 3-4MB of traffic but Lycos expects to generate terabytes of traffic making the spammers pay extra for high bandwidth usage. If it makes them "hurt where it counts" I guess it does some good but I still think it's better to stop SPAM before it leaves your LAN. Their approach doesn't stop spam and it doesn't even prevent it from coming to ...

I want a fast storage for my secrets that is easy to synchronize with a PC. The obvious choice would be a DataSet serialized to an XML file. It's fast on a PC but my SMS Manager slows down on the Pocket PC when the DB grows. The password manager will be used for reading in 99% of the case so I set up a simple test suite on the PPC to test the performance of the different file formats I was considering: Text array: reads a line and does a .Split() using tab as the separator. Creates a 2 dimensional array (rows/fields in row) CSV array: parses CSV file and creates a 2 dimensional array (rows/fields in row) XML dataset: uses the ReadXml() method of the DataSet ...

I always use strong passwords which means they are close to impossible to remember. I can store my 200+ passwords and other "secrets" encrypted on a my PC but I sometimes need them on my Pocket PC as well. Password Safe meets most of my requirements: It's free and comes with source code Pocket PC and PC version Copy password to clipboard without displaying it Auto paste/type in the PC version Tray icon Strong encryption All data protected (i.e. there is no clear text data in the file) by a single master password Simple and fast to use Import text or csv The latest PC version, 2.0.7, is perfect but it is not compatible with the latest Pocket PC version ...

Cool idea: authenticating large bank transfers via SMS. ASB and Bank Direct's internet banking customers will need to have their cellphone close to hand if they want to use the net to transfer more than $2500 into another account from December. ASB technology and operations group general manager Clayton Wakefield announced the banks would be the first in New Zealand to implement a "two factor authentication" system to shut out online fraudsters, unveiling details of the service on Friday. After logging on to internet banking, customers who want to remit more than $2500 into a third party account will receive an eight-digit text message to their cellphone, which ...

The new Optimize Your Pocket PC Development with the .NET Compact Framework article in the December 2004 MSDN Magazine has several usefully .NET CF tips and tricks: Tips for making programming in the .NET Compact Framework environment easier Tricks for making your Pocket PC-based apps run faster Important .NET Compact Framework classes .NET Compact Framework windowing issues Full source code available on line

"Avalon" is the code name for the presentation subsystem class libraries in WinFX. MSDN Subscribers can download the November 2004 Community Technical Preview. It runs on Windows XP as well as Windows 2k3. It requires .NET 2.0 beta which I already have on my machine for another cool beta: MSH More information on the MSDN article on Avalon November 2004 Community Technical Preview and the Avalon news groups: news:microsoft.public.windows.developer.winfx.avalon Avalon development topics. news:microsoft.public.windows.developer.winfx.sdk WinFX SDK topics. news:microsoft.public.windows.developer.winfx.announcements General WinFX developer announcements. Update: ...

Not the first trojan for Symbian phones but one of the first that is out in the wild. From the F-Secure report on the Skulls Trojan This trojan has been distributed on some Symbian shareware download sites as "Extended Theme Manager" by "Tee-222". If you see it, don't install it on your phone. It will make you're phone useless and it will prevent it from booting up. Recovery could get tricky, especially if you don't have a third-party file manager software already installed on your phone. The most obvious symptom of the trojan is that the typical programs on the phone won't work any more, and that their icons get replaced with a a picture of a skull. See below: Thanks ...

Free Visual Stuido.NET Industry Partner Product DVD ships, for free, to U.S., Canada, Europe, Africa, and the Middle East Order this free DVD and receive over 65 tools, components and languages from Visual Studio Industry Partners. These full version and evaluation products can help save you time and money building applications for Microsoft Windows, mobile devices, the Web, and Web services. Via [jacobcy's WebLog]

SonyEricsson on the future of the mobile web. Some key points from the document: In 2006 we expect most phones to have a mobile Web browser that is able to render almost any Web page on the Internet. WAP is history and, from a technology point of view, the mobile Web has converged with the de facto Internet standards. The main new trends are Music (over the air download and personal radio) Imaging (Photo services and photo albums) We expect more animations and multimedia being integrated into mobile Web portals, and the combination of all Web technologies (SVG, SMIL, XHTML, CSS, and ECMAScript) is the key to a standard solution for Web applications. Push services ...

One site I work on has been ported from ASP to ASP.NET. Many clients have a bookmark to the old ASP page which does not exist anymore. Redirection is possible but it is slow over mobile networks like GSM/GPRS/UTMS. To work around the problem I have implemented an ASP page that does a http GET request to the correct ASP.NET page on the localhost and sends the result back to the user. This is the core: Public Sub getURL(ByVal sURL) '** 'Purpose: Request the url and send the output to the end user Dim oRequest Dim sUserAgent Dim sAccept oRequest = Server.CreateObject("MSXML2.ServerXMLHTTP.4.0") 'prepare the request ...

Version 1.2.1 of CopySourceAsHTML has just been released. It fixes the problem I had in an earlier post, so I can cut and past directly in .text without having to go via the source view. Using the "Embed Styles" option the source code looks just great: /// /// The main entry point for the application./// static void Main(string[] args){ System.Console.WriteLine("Cool Or What?");} Now that Vodafonelive! has released I should have time to post some more source code :-) Thanks for the tip Colin.

When: Mid 90s What: Duplicate hotkey checker for menus and dialog boxes While localizing software it's easy to make mistakes. I covered some of them in the Windows 95 post. A common issue in crowded menus and dialogs are duplicate hotkeys. Especially as the development team continues to change the menus and dialog boxes. Finding them in testing is difficult for several reasons: It is difficult to bring up all the possible dialog boxes. Some of them are only displayed with special hardware or in special conditions like 'low on disk space'. You have to pay a lot of attention. It is hard to spot duplicate hot keys in a crowded dialog box. It is even harder to spot ...

We just released the new version of vodafone live! in Italy. Some external systems, like the games download, are not up and running yet but the portal works like a charm. It looks a bit boring as a static image but is a real beauty with some the latest devices like the Samsung Z107, SonyEricsson Z1010, Nokia 6630 that support animated images. Enjoy

Finally a real command shell under Windows. The new Microsoft Shell (MSH), code named Monad, is available as a beta distributed separately from Longhorn. It runs on XP, Win2k and Win2k3 with the latest Windows patches and the .NET 2.0 beta. There are plenty of news, but the most important one is that the output of commands are objects, not text. This means that you can write get-process | where { $_.cpu -gt 10 } to filter processes that takes more than 10% cpu without having to parse the output of the processes command. It also means that the script does not break if the output format change. The output can of course be serialized to xml and csv as well as plain ...

Microsoft ACT is great for stress testing web sites. The only "problem" is that you have to install Visual Studio .NET in order to use it. I use it frequently on my dev machine but some times it is useful have it on a remote machine for stress testing directly in a pre-production environment. The steps below shows how you can copy your local ACT installation to a standalone computer. Pre-requisite: Internet Explorer 6.0 Steps by step instructions: Copy the C:\Program Files\Microsoft ACT directory from you dev PC to the same directory on the remote machine Create the Act.Reg and Register.cmd files below Execute Register.cmd Create a local user: ACTUser with the ...

It really bugs me when I find buried source code; large chunks of comments around old code that is not used anymore and will never be used again. It's just confusing. Delete the garbage and use a version control system to get the old code if you ever needed it again. LexisNexis has a great idea for “taking care“ of old code; Programmers hold funerals for old code DAYTON, Ohio - Among the tiny graves on Blocker Hill, the wind echoes with the tortured cries of computer programmers. Beneath the eight grave markers, and perhaps in a rumored unmarked grave nearby, lie reams of paper printouts of code for software that has left this mortal operating systemThe ...

The XMLSpy 2005 family was released for download earlier this week. They support the XSLT 2.0, XPath 2.0 and XQuery drafts. Other new XMLSpy 2005 features are; automated function building, Eclipse integration, relational database content editing, and visual management of complex schemas: Maybe I should convince my boss to buy it so I get an iPod: While supplies last, you’ll get a free 20GB Apple iPod with every purchase of the Altova Enterprise XML Suite plus the one or two year Altova Support and Maintenance Package (SMP) from Altova or its subsidiaries. So, for example, if you purchase a five pack of licenses for your development team, you’ll receive ...

Ingres r3 was released as open source under the CA Trusted Open Source License (CATOSL) license in August. The Linux and Windows versions of Ingres r3 are now available for download. Other platforms like 64 bit and Sun Solaris, HP/UX, IBM AIX will be available by early 2005. The Ingres million dollar challenge for the best Ingres r3 toolkits is open until February 1st 2005.

I usually use net helpmsg to get quick info on error codes: net helpmsg 5Access is denied. It works but not all the error codes are covered. It also wants the error message number in decimal whereas most programs return them as hex. The error code tool from Microsoft contains the error codes defined in the standard C include files (19871 return codes registered from 172 sources) and allows you to search by hex, decimal, name etc: USAGE: err {value} [value] [value] ... where <value> must be of one of the following forms: 1. decorated hex (0x54f) 2. implicit hex (54f) 3. ambiguous (1359) 4. exact string (=ERROR_INTERNAL_ERROR) 5. substring ...