Cisco Netflow

Wow..Cisco Netflow. What a pain in the a$$. Anyways, I think I am going
to have the only .NET Netflow Capture and Parsing program in the
world. Hopefully. It really is tough to parse the packets and decode
the correctly, but I am on the right track. Ethereal helped me a bit in
that department. Ethereal has a built in netflow decoder (CFLOW) which allowed me to view the packet part by part, to they byte level and then see how the packets are set up.

Cisco Netflow



IE ToolTip Bug?

I have coded a WinForms marquee scroller program in Everything works great, but some users have noticed a bug.

When my program is running, IE stops displaying tool tips (TITLE and ALT tags). When my program is closed, they start working again.

I have debugged and went through all the code, and seemed to have found the culprit.

Private Sub tmrTicker_Elapsed(ByVal sender As System.Object, ByVal e As System.Timers.ElapsedEventArgs) Handles tmrTicker.Elapsed
lblMessage.Left = lblMessage.Left – 7
End Sub

That line of code causes the tool tips to disappear. It is also the key line of code that causes my marquee to move from right to left. I have tried making the control a label, textbox, rich text box, and they all did the same thing.

Has anyone else experienced this problem? Is it a bug?

I have tested, and Mozilla allows tool tips when it is running (the TITLE tags at lease, Mozilla doesnÂ’t display ALT tags in general). Also, Windows XP still displays them, and Outlook, etc do to. The only program that doesnÂ’t display tool tips is IE.


The API War (Battle of Microsoft)

Rebuttal on the API War article!!

This is from Joshua Trupin’s weblog. He’s the executive editor of MSDN Magazine. He answers Joel Spolsky’s now famous “Microsoft lost the API Wars” post.

MSDN Magazine has a CAMP?


MSDN Event: Visual Studio "Whidbey" 2005

We got to preview Whidbey, which is slated for release in 2005. We went over some of the cool new features. For one thing, it loads faster than VS.NET 2003. Some highlights:

1) IDE Interface: The design is little nicer, and when you move a “docked” box, it is translucent and there are some options that come up for docking, which looks nice. It also doesn’t load every toolbar by default, so that is why it loads faster. They want to streamline development for a developers own needs.

2) Form Layout: Some cool things with the form layout, like auto-rulers that line up buttons, labels, textboxes etc. This will make it easier and faster to design a good looking form.

3) “My” Object: VB.NET will introduce the My object. This is pretty much a shortcut for useful namespaces that already exist, like event log, computer information, network functions. This will be nice, because unless you know or stumble upon a namespace, you end up writing custom code to do something that could be done in one line. An example is “pinging” an computer. To do this, you usually have to have a separate assembly or class with like hundreds of lines of code. With the My object you can ping a computer in one line of code!

4) Code Snippets: Many common coding snippets are set up so you can insert them into your program and change a few minor things to get it to work, for example, reading a text file, or writing to a database.

5) Refactoring: This is the process of procedurealizing code. The example they gave was taking over someone else’s program, and you discover it is all one big function. Refactoring allows you make procedures easily and it takes care of the details for you. I don’t see using this that much, but when it does get used, it would be a HUGE timesaver.

6) Line Revision Marks: This looks cool because it shows on the sidebar colors for different states of code revision. Like things that have been saved are green, and things that have been changed are yellow, so you can see what you have changed exactly before you save it.
7) Edit and Continue: In Visual Basic 6.0, you could put in a line break, and then when the program hit that point it would pause, and you could edit some code, and start the execution again from the same spot. In VB.NET 2002, 2003, they took this feature out. Developers must have complained and they added it back in. This is a huge timesaver, especially if it takes 20 minutes to get to a certain point in the execution of a program. Currently you have to wait 20 minutes, make one change, and then re-run the program for 20 minutes to see if it worked.

Visual Studio “Whidbey”


MSDN Event : Application Code Blocks

Application Code Blocks are little “parts” of programs that Microsoft has created that you can install, and then include the assemblies in your program. The code has been tested and was created with best practices in mind.

We went over:
1) Configuration Management Block : Allows you to set up app.config files easily and encrypt and sign them. This is really cool so you can have settings in a file for your program and keep them secure, while not having tons of code to manage

2) Application Updater Block : Have you ever ran an application that popped up with a box that said there was a new version and that you could click yes to update it? This code block makes this about 100 times easier. You can include the code block, and set up a manifest on a web server, and your program will auto update!

Microsoft Application Code Blocks


The API War

I stumbled across a very, very good article by Joel Spolsky on Microsoft and the “API War”. It discusses how Microsoft is not focused on developers as much as they say they are, and they aren’t focused on the desktop, even though they say they are. Very good reading.

How Microsoft Lost the API War