Friday, May 27, 2005

Desktop Heap Tip

Tony Schreiner's WebLog : Desktop Heap Limitations

"If you have a lot of applications open one thing you might notice is that Windows -- even XP -- will reach a point where no more windows can be opened. For me, IE hits this point after about 40-50 windows. Depending on what else you have running, you may be able to open more or less.

Usually this is not a problem, but if you find yourself running into this limit the workaround is to increase the Desktop Heap. To do this, edit the following key in the registry:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems]
Windows='%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16'

and change 3072 to a larger value such as 4096. Always use caution when editing your registry; standard disclaimers apply. ..."


I've posted about desktop heap memory problems before, but I liked the above post. Short, sweat, easy to implement and to the point.

This also prompted/reminded me to make said change...

Past Post XRef:
Windows System and Desktop HeapMemory Issues...

Steganography - (aka Hiding Stuff in Plain Sight)

binary universe - Steganography:

"Source Code and Descriptions about Hiding Messages in

  • Images and AVI-Videos
    Part 1 - Introduction
    Part 2 - Multiple Carrier Files
    Part 3 - Invisible Changes
    Part 4 - AVI Files
    Part 5 - Regions with different Data Density
    Part 6 - Indexed Bitmaps like GIF or PNG

  • .NET Assemblies
    Part 1 - How and Where to Hide Data
    Part 2 - Using Key Files and more Methods

  • MIDI Files

  • Wave Audio Files

  • Collections in General: GIF Palettes, HTML Attributes, Shopping Lists...
"

I've always found steganography an interesting concept. And while I don't need to hide stuff, the industry I'm in may require me to find the stuff... So the more I know the better.

In looking at the above list, MP3 is a glaring omission. That's where I'd hide stuff (now having said that I'm glad I have nothing to hide ;). How many MP3's do YOU have? I have tens of thousands (and believe it or not all are legal... I really hate dragging my music CD's around). So if you want to hide something, and you have a big MP3 collection, putting them there seems like a no brainer.

And they'd have to go IN the MP3. Renaming a file as *.MP3 wouldn't work. The EDD industry commonly uses file signature analysis to match file type to type extension. But if you sprinkle the stuff to be hidden's bits throughout the MP3 it would be VERY hard to detect...

Doing a quick google, I found this; mp3stego. While not exactly what I had in mind, mp3stego works during the wav to mp3 compression process and to be really effective I'd want something that works on existing mp3's (through you could automate the decompress to wav and recompress to mp3 with mp3stego), still it's interesting that others are thinking in this same space...

Now think about this. Encrypt the stuff to be hidden first (say in a password protected zip, which is hard to crack, or PGP, etc). THEN stuff the compressed bits into another file via steganography.

sigh... Now I'm going to be stressing about how I can detect these... I love technology. ;)

Thursday, May 26, 2005

Whoppix 2.7 (aka Is My Network as Secure as I hope it is?)

Whoppix Home Page

"Whoppix is a stand alone penetration testing live cd based on Knoppix. With the latest tools and exploits, it is a must for every penetration tester and security auditor. Whoppix includes Several exploit archives, such as Securityfocus, Packetstorm, SecurityForest and Milw0rm, as well as a wide variety of updated security tools. The new custom kernel also allows for better WIFI support, for tools such as Aireplay. "

I like to think my home network is pretty secure. I have a couple firewalls (hardware and software), my wireless router as locked down as possible with 2 year old tech, all patches applied to all machines, anti-virus/spyware running on all machines, etc, etc.

Still in the back of my mind I worry ...

So I'm going to download this and check it out.

There are also some cool tutorials/demos/casts which show off Whoppix, Whoppix Demos. I'm really interested in the Cracking WEP in 10 minutes with Whoppix demo.

(via Kent J. Chen's Weblog - Whoppix - another penetration testing toolkit)

I'm a Clean Desk Person and Proud of it...

The Monster Blog: Are You a Messy-Desk Person?

"... According to a recent study by Ajilon, messy-desk people (let's call them MDP) tend to have higher salaries than non-MDP; specifically, while 66 percent of Americans making $35,000 or less per year are self-described neat freaks, only 11 percent of those earning above $75,000 claim the same. Also, the more educated tend to be messier; only 16 percent consider themselves neat, whereas the percentage for non-college graduates is 29.

...

The study also relates that your coworkers may be judging you based on your messiness; if you take three people sitting around you, for instance, one doesn’t care about your messiness, one will judge you for being messy and the last would say it depends on who you are. ..."


Interesting...

I'm not afraid to say I'm a clean workdesk person. I just can't stand clutter and ick in my work area. I have all my desk items organized (the stapler goes with here and always right here... unread mags in this stack, read ones here, etc, etc).

As you might have already guessed, I can be anal-retentive (AR) sometimes. ;)

But I look at it like this. I have to remember too much crap already and am juggling too much stuff. I keep my brain full as a matter of course. So when I need something I want to be able to easily find it and not have to play the "where did I put xyz..." or "in what pile is ..." game. I need to put my hand out and just find it.

I also see it as a matter of pride thing. It's MY workspace and keeping it neat shows I have pride in it and myself. And it's an Army thing. Keeping my stuff neat, cleaned and organized was pounded into me for a number of years and that's hard to let go...

I still believe neat and clean is better. "God, what an ugly, nasty mess ..." is not something I want anyone to say about my work area.

[Greg] "My name is Greg and I'm AR ..."


[Note to those I work with:
I'm not talking about the god awful mess in your work areas... really... truly. I'm talking about OTHER people's messy work areas... yeah... um... Well anyway that's my story and I'm sticking with it... ] :|

Wednesday, May 25, 2005

Los Angeles FM Radio Station List

Los Angeles FM Radio

"Los Angeles (and vicinity) FM Radio Dial"

A cool list of LA radio stations, frequencies, call-signs formats, and station web site links.

Extreme Ironing (LOL)

Extreme ironing - Wikipedia, the free encyclopedia

"Extreme Ironing (or EI) is an extreme sport in which people take an ironing board to a remote location and iron a few items of clothing.

Starch irons atop Rivelin Needle near Sheffield, England.Extreme ironing locations include a mountainside of a difficult climb; a forest; in a canoe; while skiing or snowboarding; on top of large bronze statues; in the middle of a street; even when free-diving, though this possibility defeats the purpose of ironing. The ironing itself has variations: either solo or in a group; ironing in existing formations or freestyle.

EI supposedly combines the excitement of an extreme sport with the satisfaction of freshly ironed clothes. Though it seems a parody or hoax, many extreme ironers take their sport quite seriously. ..."


Oh yeah. Ironing is no joke around MY house!
I hate ironing, but I can EI to help me though the task?

Grrr, I hate going outside too (it's too hard to see my laptop screen with all that evil "sun" glare... ;). Oh yeah, EI would involve "exercise" too. Damn it.

I need to VEI (Virtual Extreme Ironing)... LOL

(via Sashidhar Kokku - XP...now....XI)

Monoppix 1.0.6 Now Out...

Monoppix 1.0.6 Release

"Monoppix is a bootable Linux CD that runs .NET applications on the Mono framework. It makes it easy to see your .NET code running on Linux without installing a thing.

Release Information
This is mostly a stack upgrade release. Here's what's included in Monoppix 1.0.6:

Monodoc, mcs, Mono, libgdiplus, gtk-sharp 1.06
Xsp 1.0.8
Monodevelop 0.51
Cairo 0.2
(continued support of MySQL 4.1.7)
Included .Net in Samples book (HTML format)
Improved desktop links
Monodevelop bug fixes
Application execution directly from monodevelop is now fixed
The project type images are now properly displayed"


Downloading...

If you run this via Virtual PC, make sure you check out Jon Galloway's excellent [tip] Knoppix cheat code for Virtual PC Video post.


Past Post XRef (i.e. I really wish Blogger support categories... sigh):

Monoppix 1.0
New Home for Monoppix Training Videos
Monoppix Video Tutorials
[tip] Knoppix cheat code for Virtual PC Video
Novell Forge - monoppix Summary (0.2.2.3 Released)

Little Known, Invaluable Methods and Properties in the .NET Framework Base Class Library

Little Known, Invaluable Methods and Properties in the .NET Framework Base Class Library

"... This article provides a listing of those .NET Framework BCL methods and properties that are quite handy but not well-known. I'd like this article to be a work in progress, so if you know of any .NET Framework methods or properties you consider not in every ASP.NET developer's lexicon, but should be, let me know! Each week I plan to add additional useful methods and properties focused in a particular area. This week's tips and tricks focus on working with file paths. Read on to learn more! ..."

Path.Combine, listed as the first entry, is something I use all the time (both in VB.Net and in VB6, via FSO and BuildPath). Who needs the brain dammage of trying to correctly combine strings into a valid path (check for/trunction leading/trailing back slashes, etc, etc) when MS will do it for you?

I'll be watching this article space for future posts...

Tuesday, May 24, 2005

MSN Virtual Earth VS Google Earth

MSN Virtual Earth To Take On Google Earth

"Microsoft sends news today that founder Bill Gates has announced a MSN Virtual Earth service is to debut in the summer. The service is promised to provide:

Satellite images with 45-degree-angle views of buildings and neighborhoods

Satellite images with street map overlays

Ability to add local data layers, such as showing local businesses or restaurants
...
Last week, Google announced that its Keyhole software allowing satellite views of the Earth will be renamed Google Earth. Better images will also be available to those getting satellite views via Google Maps. ..."


Sounds like a bad monster movie, "MSN Virtual Earth VS Google Earth." While my application naming usually bytes (the names are functional if not cute...) can I say I think the "earth" names are silly?

Don't get me wrong, I dig the satellite view in Google maps and will play with MSN's when it's out too. Doesn't mean I won't have a hard time keeping a straight face when I tell my son to go to "MSN Virtual Earth" (heck I can't even when I'm just writing it... sounds like a Sim game)

Friday, May 20, 2005

Validate GUID's via RegEx

How to validate a valid GUID Value in C#


private static Regex isGuid = new Regex(@"^(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}$", RegexOptions.Compiled);


                                    internal static bool IsGuid(string candidate, out Guid output)


                                    {


                                                bool isValid = false;


                                                output=Guid.Empty;


                                                if(candidate!=null)


                                                {


                                               


                                                            if (isGuid.IsMatch(candidate))


                                                            {


                                                                        output=new Guid(candidate);


                                                                        isValid = true;


                                                            }


                                                }


                                                return isValid;


                                    }




This might be handy as use GUIDs a great deal in my API's.
(Souce leached so I can find it in the future by searching my blog... Original code posted on Scott Galloway's Blog)

TaskArrange - Arrange the Taskbar Buttons the Way YOU Want Them

Elias Fotinis TaskArrange :: Arrange the Windows taskbar buttons

"TaskArrange is a simple utility that lets you rearrange the buttons of the Windows taskbar.

Sometimes we open our programs in a specific sequence, to keep their taskbar buttons in a desired order. But what happens if a program crashes or we close it, and then we open it again? That's right - its task button ends up last in the taskbar. Windows itself does not allow us to move the task buttons around, so we are stuck with two options: either accept the new order, or close everything and reopen them in the preferred order. TaskArrange brings an end to this annoyance, by letting us do exactly what we want: reorder the task buttons. ..."


Sometimes when I'm juggling a ton of different things I have a lot of app's running. Mentally switching between them, it helps if their task bar buttons are in a logical order (as apposed to the normal app started order). There's enough on my mind without having to hunt through the buttons looking for App X.

I've been using the TaskBar Sorter for about a year and it gets the job done well but ...

Today I came across another like utility, Task Arrange, which I'm giving a try. One thing I like about it over Taskbar Sorter is that at startup the list of items are sorted as currently shown (i.e. Taskbar Sorter just lists the items in some unknown order). Having the items listed in "as currently shown" order really helps when reordering...

Both utilities are small and thumb drive'able....

(Via SHELL EXTENSION CITY)

Post Post XRef:
The Code Project - Taskbar Sorter Utility

Thursday, May 19, 2005

PhotoPlus 6 (and the Quest to become Uber Graphic Man)

Free Image & Photo Editing Software Download - PhotoPlus

"Download Now
Download and register your free image and photo editing software.

Why use PhotoPlus?
PhotoPlus 6 is the fun photo editing software that brings professional image editing to everyone with just a few clicks of the mouse. This free download enables beginners and professionals alike to produce incredible images for print, multimedia and the web.

PhotoPlus in Action
PhotoPlus 6 is incredible image editing software that enables you to create, manipulate, and enhance photographs, bitmap graphics, and web animations. All the tools you need are provided along with handy hints to enable you to achieve totally unique results. ..."


I've had to play "Application Graphics Man" recently which is a very difficult role for me... I've started using Paint.Net and like it. But I'm always looking for a graphics program that turns me into "Uber Graphic Man!"

So the search continues as I check out PhotoPlus 6...

I'm also checking out 3DPlus 2 from Free Serif Software.

(via OnlyTheBestFreeware.com - PhotoPlus)

IIS Reporter - Real Time IIS Connected User Reporting

IIS Reporter - Real Time IIS Reporting

"IIS Reporter a real-time IIS monitor for displaying current connected users and anonymous users. It is currently released as an open source code to be modified and used at your discression. Please feel free to submit suggestions and ideas for changes.

The IIS reporter program source code is currently available at sourceforge. For more information please use the links on the right. ..."


"IIS reporter was created by Jim Becher to make life easier when administrating IIS servers.

" One day I had to update 8 of our IIS servers with a hot fix. I remote connected to each machine and had to run the hot fix. Before running the hot fix I wanted a simple way to check how may people were are the current web server. Instead of going to performance monitor / then adding the current users I decided to create a little application that would show me who was connected. And IIS Reporter was born"
"


I can see where this could help. I've been in the same boat...

(via Richard Dudley - Before You Recycle That IIS Process)

Wednesday, May 18, 2005

Now This is a Wedding Gift...

The best gift is one from the heart

I'm man enough to admit that this post made me tear up a bit.

Say what you will about the House, this small action by the Honorable John J. Duncan Jr. is something his constitutes can be very proud of... That we all can be proud of.

Sometimes it's the small things that really matter.

God Bless America and keep our troops out of harm's way...

...You kicked It?

ARMOR GEDDON: 12 November: How to Detect Land Mines

"...

"I saw this get uncovered as we was dragging the track from side to side so I kicked it to see what it was."

Underneath the long length of track, under the portion pulled up by the strap, SSG Terry had unearthed a large round flat cylinder. It looked like there were a few more next to it. The thing was about the size of a plastic dog food bowl. It was light tan colored and dirty looking. Like it had been there for a long time.

"SSG Terry. That's a goddam tank mine." I said to him quietly. "You kicked it?"

..."


No one really hurt, so this story is kind of funny (in a gallows humor kind of way). Reminded me of when I was in the Army (Not that I ever had to deal with real landmines... )

It does make me proud of our troops. Our soldiers rock...

How To Pass Parameters to Threads in Windows Forms Applications and Get Results

How To Pass Parameters to Threads in Windows Forms Applications and Get Results

"Launching new threads is easy, but it's not as obvious how you can pass parameters to the threads and get the results back. In addition, accessing Windows Forms controls from multiple threads can cause problems. In this article, you'll see how to pass parameters, receive results, and access controls safely from multiple threads in a Windows Forms application. ..."

I've tried to stay away from multi-threaded app development, not really needing them and not finding a true use case where they were worth the possible problems (yeah, I got bit by the Daniel Appleman's Multi-threading bug...). It's amazing what you can do with just raising a few events and so much easier than dealing with thread sync'ing/safety, etc, etc. "We don't need no stink'n multithreading..." ;)

But that's changing with some of the apps I'm now writing. I hope I can hold off till .Net 2.0, but we'll see...

Anyway this looks like a good article on the subject that I want to review in detail.

Monday, May 16, 2005

Koders.com Officially Launched Today

Koders - Source Code Search Engine

"... I thought you might like to know that this free search tool officially launched today (5/16). What’s new is that users can currently search over 190 million lines of code from more than 28 thousand projects in hundreds of open source repositories. It also now recognizes over 30 programming languages and can identify over 20 software licenses.


What you may not have know is that Koders.com also features a unique Project Cost Calculator that presents a side-by-side analysis of leveraging existing code versus developing it from scratch. Not only does this enable easy assessment of build-versus-buy alternatives, it also provides developers with a quantifiable perspective of their contributions to the open source community. ..."


Just got this email from Scot. Looks like Koders.com has gone live. I still like their nice clean user interface... And 190 million lines of searchable code is pretty cool too... :)

Past Post XRef:
Koders - Source Code Search Engine

MSN Search Toolbar with Windows Desktop Search (RTW & Win2k3 now Supported)

Find Documents and E-mail fast using MSN Search Toolbar with Windows Desktop Search

MS's Desktop Search has been renamed (cough... nice name, "MSN Search Toolbar with Windows Desktop Search" cough...), released and now supports Win2K3.

That's cool... Installing/indexing.

Past Post XRef:
New Microsoft Toolbar/Desktop Search not supported on Win2K3?

A little More Info on Guidance Automation Toolkit (GAT) and the Composite UI Application Block (CAB)

Unleashing the power of GAT+CAB

"In the last two week there was a lot of excitement here at the MS patterns & practices offices.

The two current raising stars, most known as the Guidance Automation Toolkit (GAT) and the Composite UI Applicaion Block (CAB) are finally in the public domain ..."

Here's a post that talks a little more about GAT and CAB. Also includes links to webcasts (which I've registered for 'cause I really want to see these in action...), team bloggers, etc...

Past Post XRef:
Composite UI Application Block
Guidance Automation Toolkit (for VS 2005)

OpenTTD 0.4.0 Released

OpenTTD

"It has been a while, but finally OpenTTD 0.4.0 is out. Things took a bit longer than expected, and everyone was busy, but it is done.

Expect yet another major update. This time bigger maps, 'unlimited' amount of towns, industries, stations, etc., heavily improved and protected network-gameplay, a new, smart, pathfinder, multiple busstops, etc. Too much to say all at once.

Download 0.4.0 right now and enjoy the game!"


Post Post XRef:
OpenTTD 0.3.6 Released

Sunday, May 15, 2005

DDL Queries For MS Access

Create Table Query and More Hidden Access SQL Queries

"When I first tried to create tables automatically in Access a couple of years ago, I fell back on my SQL background and went hunting for the Create Table command. But I didn't find it in the help and resorted to using more manual methods. When I was asked this question late last year, I had another look and found that all the SQL table management commands were actually supported. These commands are as follows

Create Table
Create Index
Alter Table
Constraint
Drop table ..."


Just what I needed... I needed a way to easily, via ADO.Net, create a primary index for an Access table (so I can use the dynamic Delete/Update features of the Data Adapter).

I'm glad I can just use a SQL statement to do it... Always nice to leverage my SQL Server skills... :)

Here's another article on this subject from MSDN, Fundamental Microsoft Jet SQL for Access 2000


Saturday, May 14, 2005

System Monitor Utility (.Net 2.0)

Coding4Fun: System Monitor

"... Software exists to monitor my internal hard drives, but not the external ones. Drives on remote machines need to be monitored and alert me when their drives show signs of failure.

I would like other things monitored, too. System availability, hard drive space, and so on, need to be watched -- especially on critical systems. Utilities of all kinds exist to monitor these things, but maintenance and configuration of disparate utilities can be a hassle.
The solution
The solution is simple: A utility that can host 'monitors' and provide a means to communicate to the user in a configurable, extensible way. Any number of 'notifiers' can be associated with a 'monitor' and new 'notifiers' can be written to allow any kind of communication. ..."


There are some items in the article that I might be able to use... Though it was wirtten with .Net 2.0 so I might wait for 2.0 to RTM before taking too much time with this.

Friday, May 13, 2005

Team Foundation Server 2005 & the "New" MSDN Universal

Digital Thoughts : Team Foundation Server 2005 Will be in MSDN Universal

"Awesome news that I just read over on Robert McLaws' blog: each of the Visual Studio Team System editions (Architect, Developer and Tester) will have a limited version copy of Team Foundation Server with them. The restriction will be to limit the functionality to five users, but this does mean that small companies and small development teams can make use of the Team Foundation Server and the Team System products. It also means that existing MSDN Universal subscribers will now be getting Team Foundation Server if they take the free upgrade to one of the Team System editions ..."

Very cool!

Again it shows that MS WILL listen and make changes based on feedback. Now I WILL be playing with/using TFS. Yeah! (Yeah, I know I really need a life... um... Shut up? :)

Now all I need to make me REALLY happy (again.. um... shut up?) is that they do something pricewise for the guy/gal, like me, that wears all the role hats (Architect/Developer/QA). My primary hat is Developer, and that's what I'll be upgrading my MSDN Universal subscription to, but all too often I play Architect/QA. I REALLY want the Architect stuff in additional to the Developer. So I need Team Suite...? And that's like a billion dollars (or so).

I'm keeping my fingers crossed that MS will help me out on this too.

Building a Better Busy Box (Processing Please Wait) Ver 1.2

Building a Better Busy Box (Processing Please Wait) Ver 1.2

"We often need to provide a user message informing the user that their request is 'processing'. Like the hour-glass mouse pointer lets the Windows user know the system is busy processing their last request, I have a simple, clean, and effect solution to providing this on web pages. ..."

A cool cross browser, "Something is happening... really... truly... don't go away... your request IS processing... can't you SEE that the gears are spinning so there MUST be something happening" web control.

UML Design Tool (Free, with C# Source)

Windows Forms : Control Gallery : UML Design Tool

"UML Design Tool .
It can tell how to write a Rational Rose by yourself
It have powerful edit ability
It's very good example to learn GDI+, UI Design ,Design Pattern and so on"


This is a pretty sophisticated application for creating UML diagrams (Use Case, Static Class, Deployment, State, Component, etc).

The UI appears to be translated into English, and there are some non-English elements, but who cares about that when you have the C# source? :)

Use this for the UML or as an example of using System.Drawing/GDI+ to create user driven diagrams. It looks like there's no external references/libraries so everything you see has source available.

Not only is there diagramming, but the UI had Visual Studio like panels, Office like menus, etc.

Pretty impressive...

Thursday, May 12, 2005

Bob Powell's GDI+ FAQ

Bob Powell's GDI+ FAQ

"GDI+ is the graphics system most often associated with Windows Forms and is a more modern replacement for GDI. This frequently asked questions list contains articles and code that will help you to understand the ins and outs of GDI+.

To get the best out of the GDI+ FAQ and to ensure that you see new articles as they are published, you are invited to subscribe to the RSS feed that carries news, announcements and information about this resource. The button below has the subscription URL. ..."


I'm going to need this, GDI+ info, soon.

This FAQ also how a RSS feed which is pretty darn cool... (Long live RSS :)

Web Browser Forensics Articles

Web Browser Forensics, Part 2

"The Part 2 of the Web Browser Forensics series has been published. The Part 1 provides a case study of digital forensics, and investigates incriminating evidence using a user's web browser history. Part 2 of this web browser forensics series looks at reconstructing Mozilla Firefox' cache in order to catch an internal hacker using an administrator's account."

Some interesting info I might be able to use one day...

Guidance Automation Toolkit (for VS 2005)

Download details: Guidance Automation Toolkit

"The Guidance Automation Toolkit makes reusable code and pattern assets directly available in Visual Studio 2005. It is designed to simplify integrating reusable code into applications, allowing architects to automate development activities that developers would usually perform manually, often by following a series of instructions. By using the toolkit, architects can ensure repetitive and often error-prone activities are performed in a consistent way, streamlining and accelerating the development process."

???

I think I need to see this in action to gork it. I'm all for automation and reuse (cause I'm to lazy to want to do stuff more than once...) but what is this really?
(Dugh, I could just download it and see, but darn it I have work to do, damn bills. I think I need a Office Space moment, "... I don't like bills. I don't think I'm going to pay them any more..." ;)

I wonder if things/tools/etc like this will be covered in a session at PDC 2005? Guess we'll see...

Related download:
Guidance Automation Extensions
"The Guidance Automation Extensions for Visual Studio 2005 is a runtime component which must be installed to use the Guidance Automation Toolkit, as well as to use any guidance packages built using the Guidance Automation Toolkit."

tanjun'ka (Blog Photo Poster Windows Client in C# 2.0)

tanjun'ka

"Tanjun'ka is simplified blog photo posting. No more manually uploading photos! No more manually resizing! Just drag and drop one or more pictures into Tanjun'ka, type an entry in a WYSIWYG editor and pick post and BANG! your photos are uploaded and your entry is ready.

... Post images to your Blogger or Live Journal based blog through Flickr ..."


This is a blog client, focused on making photo posting easy, written in C# 2.0 (source not available).

Grr... Does this mean my last (it's a kind of a pain to host/post pictures for Blogger blogs) excuse is gone? sigh... :|

(via Larkware - The Daily Grind 621)

The Code Room, Episode Two

TheServerSide.NET - The Code Room, Episode Two

"The pressure cooker of The Code Room is back, this time coming from the Westfield Mall in Seattle. Four experts on Windows Embedded, Compact Framework, and ASP.NET are challenged with building a fully functioning kiosk that can be accessed from a Bluetooth phone application to search for products available in the mall and then use the phone to take a picture of the product and send it to the users MSN Spaces site. ..."

The TSS feed seems to be overloaded (i.e. the media won't play/stream), but if you give it a bit I'm sure it will be available for viewing soon.

www.thecoderoom.com has a couple more feeds, one from MSDNTV (where Episode Two is not yet available).

Wait... I just got the TSS feed to feed... watching now.

Update #1 5/12/2005 @ 7:18am PDT:
Well that was pretty cool. I wasn't sure about the "find the three experts" segment, but in the end it seemed to work out. I like this format better than #1 (i.e. the recorded Presentations/Sessions vs the "Find three Experts").

Again, the editing was very professional. Having the coders working in a mall store front was a cool twist.

I liked it...

Past Post XRef:
Filming for The Code Room
The Code Room

Wednesday, May 11, 2005

Composite UI Application Block

eugeniop's WebLog : Composite UI Application Block

"So, are you considering a Smart Client approach to address the challenges of building Line of Business solutions that interact with many backend systems? Ever wondered what would the architecture and design of a complex UI would look like? Do you need to abstract the 'plumbing' of such client applications so your business developers can focus their attention on building the business specific components rather than dealing with complex issues like threading, asynchronous requests, etc.? The CAB could be a good candidate.

..."


Pretty interesting.

I'll be watching this closely...

A usage for SQL_Variant?

SQL_Variant.. Finally a use for it...

"The 'object' type of SQL Server is hardly used and with good reason. RDBMS are meant to be 'strongly typed'.. it is the foundation of the domain/type concept

...

'But wait, I have a better idea..'

SELECT 'Sales Count' as Stat, CAST(COUNT(*) AS SQL_VARIANT) as Score
FROM sales
UNION ALL
SELECT 'Last Published', MAX(pubdate)
FROM titles"


Now isn't that an interesting thought?

I've stayed pretty far away from SQL Variants (I don't think I've ever used them... that's pretty far away). I just didn't see where they would really help me much verses the possible risks (brand new data type in SQL 2K, they're variants... etc, etc).

I have tables with VARCHAR columns where I coerce the data to/from strings, which is the place that seems SQL variants would be logical. But still.. they seem, I don't know... horky? In VB we've been turned away from variants for so long, that going back to them in SQL just doesn't feel right.

Still, maybe it's time to take another look at that data type...

Turtle Beach 'Ear Force' Headphones, X-51 and HPA (aka The Perfect BattleField 2 Headphones?)

Turtle Beach 'Ear Force' Headphones, X-51 and HPA : Gizmodo

"Turtle Beach is showing off their new 'Ear Force' line of headphones, designed for gamers and movie watchers who want 5.1 surround sound without dealing with actual speakers. The X-51 is a folding pair, while the HPA are an amplified, slightly higher-end pair. The X-51s can be had now for around $80, while the HPAs are on pre-order. Both models come with a boom mic, suitable for voice chat or just hearing yourself breathe from each of the headphones 8 speakers (center, rear, and front on one layer, with subwoofer on top. Pretty crazy)."

Oh yeah, I think I've found my BattleField 2 headphones...

Tuesday, May 10, 2005

.NET Html Agility Pack

Simon Mourier's WebLog : .NET Html Agility Pack: How to use malformed HTML just like it was well-formed XML...

"Here is an agile HTML parser that builds a read/write DOM and supports plain XPATH or XSLT. It is an assembly that allows you to parse 'out of the web' HTML files. The parser is very tolerant with 'real world' malformed HTML. The object model is very similar to what proposes System.Xml, but for HTML documents (or streams).

Sample applications:
* Page fixing or generation. You can fix a page the way you want, modify the DOM, add nodes, copy nodes, you name it.
* Web scanners. You can easily get to img/src or a/hrefs with a bunch XPATH queries.
* Web scrapers. You can easily scrap any existing web page into an RSS feed for example, with just an XSLT file serving as the binding. An example of this is provided.

There is no dependency on anything else than .Net's XPATH implementation. There is no dependency on Internet Explorer's dll or tidy or anything like that. There is also no adherence to XHTML or XML, although you can actually produce XML using the tool. ..."


This sounds pretty cool.

I've been thinking of writing a html parser to help me catalog my blog. I want to create monthly and yearly index pages which include the Post Title, the Permalink, and primary outbound link. So I'll want to spider my site (or maybe just the monthly archive page), pull out specifc tags write it all out, etc, etc...

With this library that all sounds like it should be easy... grr, Now I have to actually code it... lol ;)

FindRun Robot V1.05.12 (Find stuff by File Name)

The Portable Freeware Collection - FindRun Robot V1.05.12

"Find and Run Robot helps you rapidly find programs or documents from within the depths of the start menu (or other folders). Just start typing the first letters of the application you want to launch. As you type the best matches are shown. Then hit the number to launch the associated program."

This is an interesting app. Like a lite desktop search utility, it has a much lower footprint and is targeted at helping find things by file name.

My Start/Programs is SO full, it's not even funny. I have the folders somewhat organized, but still stuff is hard to find. And the desktop search tools are overkill just for this...

The paths it searches for files is fully customizable and the default paths are already setup for your/All Users Start, your Desktop, Recent, My Documents and Favorites.

So not only does this help file your programs, but also your bookmarks...

I've got it installed so we'll see...

Monday, May 09, 2005

How to Implement a Managed OnArrival-type SMTP Exchange Event Sink in C#/VB.Net

kbAlertz: Describes how to implement a managed OnArrival-type SMTP event sink by using Visual C# .NET and Visual Basic .NET in Visual Studio .NET 2003.

"This article contains an overview of how to write event sinks for SMTP events in managed code by using wrappers that obscure some of the details of communicating with the unmanaged server. ..."

I might be able to use this (a friend was asking me about doing something related to this...)

WinAmp MSN IM (aka Toaster) Plugin

WINAMP.COM | Plug-ins (Toaster)

"A track change notifier plugin. Displays notification popups with album / CD cover art display from either a file such as folder.jpg or from ID3 tags. It also has support for changing Now Playing titles in MSN messenger (7.0.0777 +). Can be configured to only update messenger if you don't want the popup notifications. ..."

Now that the router/NAT issue is fixed in MSN IM 7.0.0813, I've finally upgraded off the 7 beta. Now I needed a What's Playing Plugin for WinAmp....

The Toaster plugin seems to fit the bill. So far it's working great. The "MSN Only" profile is cool in that it disables all the pop-ups/notifications and just updates MSN IM (funny that given the Profile name ;).

Saturday, May 07, 2005

Advanced Search Tools v1.0.1

Justins web page

"The main objective of this project is to develop a tool or set of tools that would allow a user to easily construct advanced search queries for online resources. The primary online resource in mind for this project is the Google search engine, accessed programmatically through its freely available API.

... One aspect of this project will focus on generating keywords to help assist a user with future searches and the other main focus will be to provide a clean and efficient interface for performing advanced searches.

The increased reliance on search engines for online resources increases the need for a tool such as this to help optimize the searching capabilities of users. An efficient
utility primarily focused on searching would be enormously useful. The main purpose of this project is to discover and provide techniques to increase the effectiveness of
searching for online resources."


C# Google API wrapper...

Friday, May 06, 2005

Print Management (MMC Snap-in)

Download details: Print Management

"Print Management provides up-to-the-minute details about the status of printers and print servers on the network. You can use Print Management to install printer connections to a group of client computers simultaneously. Print Management can help you find printers that have an error condition by using filters. It can also send e-mail notifications or run scripts when a printer or print server needs attention. On printer models that provide a printer Web page, Print Management has access to more data, such as toner and paper levels, which you can manage from remote locations, if needed."

Now this sounds interesting. There have been times in the past where I (and a good friend) could have used this...

Better late than never I guess.

Using Open Source .NET Tools for Sophisticated Builds

15 Seconds : Using Open Source .NET Tools for Sophisticated Builds

"... Building an application can be more than pressing F5. Much more. With an increasing number of quality packages being released, developers for the .NET platform now have options to create a very sophisticated build process. This article describes a sample build environment and shows how a number of tools can work together to make reliable, predictable, and value added builds.

...

Setup the build environment
Build a "program" solution with Visual Studio .NET
Create first NAnt build file and build
Build a "test" project with Visual Studio .NET
Add NUnit tests to build
Validate coding standards during build with FxCop
Create API Documentation during build with NDoc
Add the solution to VSS source control
Add SCC control to the build file
Add versioning
Use CruiseControl.NET to monitor and manage the build process

..."


A cool article that talks about creating a pretty sophisticated build process using NANT, NAntContrib, NUnit, NDoc, CruiseControl.Net, FxCop and Visual Source Safe.

I wonder how close this will be to NTeam in the end?

In any case, given the silly (IMHO) Visual Studio Team System pricing, I think I'm going to take a close look at this article.

(If VSTS Server was part of the new MSDN, there'd be no question of using it... But the way it is now, I just don't see my place paying for the Server... ["VSS has been good enough so far, why should we pay for..."]... sigh)

Virtual Server Migration Toolkit (VSMT) Guidelines

John Howard : Virtual Server Migration Toolkit (VSMT) Guidelines

"If you're interested in using VSMT (Virtual Server Migration Toolkit) for migrating a physical machine into a virtual machine, there was a new KB article posted up a few days ago which gives you some general guidelines.
...
If you want to see the VSMT steps through a series of blogcasts, have a look here ... "


I've not used VSMT yet, but keep thinking about it. I have used Ghost a couple times to migrate a machine to a Virtual PC image and now that I know the tricks (local admin password resetting, HAL replacing) it's pretty easy. Using VSMT seems a little complicated, but in the end looks like a more stable and reliable approach.

Post Post XRef:
Microsoft Virtual Server 2005 Migration Toolkit Beta

Using SQL Where Clauses for Searching

Using SQL Where Clauses for Searching

"...
if len(@firstname) > 0
set @where = @where + " AND firstname LIKE '" + @firstname+ "'"

if len(@lastname) > 0
set @where = @where + " AND lastname LIKE '" + @lastname+ "'"

--uggggh

This is time consuming and doesn't allow SQL server to optimize your queries. And it just isn't fun :).

Now check this out. Using our trusty COALESCE, we can get it all in one SELECT:
SELECT * FROM Customers
WHERE
ISNULL(firstname,'') = COALESCE(@firstname,firstname, '')
AND isnull(lastname,'') = COALESCE(@lastname,lastname, '')
AND isnull(phone,'') = COALESCE(@phone,phone, '')
AND isnull(email,'') like COALESCE(@email,email, '')
AND isnull(address,'') like COALESCE(@address,address, '')"

..."


I've seen this technique posted a couple times, but this post does a great job of explaining the idea and concepts behind it. Thereby warrants being added to my remote memory store for later reterival...

Thursday, May 05, 2005

Project Scheduling Games...

Managing Product Development

"Schedule Game #8: Pants on Fire

You're a project manager. Your project is proceeding fairly well. You've had a few bumps, but you're making progress. You come into work one day, and there's a message to meet with the Big Cheese. Big Cheese says, 'Stop working on that project. Start on this one!'

Not only does this happen once, it happens several times, either bouncing you and the project team among several projects, or back and forth between two projects. Whatever the circumstances, you're multi-project multi-tasking, and so are all the people on your project team. You know you're not making progress on anything, and the urgency of all the projects keeps going up and up and up...

This schedule game is called 'Pants on Fire.' It occurs when management is afraid to focus on one thing at a time. It has several possible causes: when the technical staff has a track record of being late, when there's no corporate strategy, or when the corporate strategy hasn't been broken down into sufficiently-detailed tactics. ..."


Oh yeah, played this one (well been played on this one)

[rant]
I call this yoyo'ing. Going back and forth on different projects or priorities/features on the same project.

We need THIS feature NOW (hours/days spent working that feature pass)...
No, we need THIS feature NOW (hours/days spent working that feature pass)...
No, we really need THAT feature (hours/days spent working that feature pass)...
etc, etc.

One way I've found to handle this, is always be clear as to the costs of these changes. Costs in man-hours and release delays. You usually don't have to say "No" if you clearly communicate the costs. Also always keep the project sponsor in the loop.
Either the requester/project sponsor backs out or understands and you continue. If they want to eat the costs, well they ARE the reason for the project...

Communicate open, honestly and often.
[/rant]

Check out some of these other "games" at Managing Product Development. What's cool is that Johanna provides suggestions on how to work around/consider/with/etc each one.

(via Bill Brelsford - Schedule Games)

Wednesday, May 04, 2005

Google Web Accelerator

Google Blog

"... This calls out loud and clear for a way to optimize time. One mundane time-waster we all contend with, for example, is waiting for web pages to load. The tantalizing promise of a web page is only seconds away. But even on broadband, the wait's too short to do something else - and just long enough to be irritating. Let's face it, those seconds add up.

As you may have noticed, we're slightly obsessed with speed around here. When you search on Google.com, your results are returned to you within fractions of a second. And now comes Google Web Accelerator. After you download it, we hope you'll enjoy that same Google-fast experience across the rest of the web. After all, seconds add up to minutes. ..."


I can always use more speed.

Err... um... I mean... speeder web downloads... Yeah. That. :|

Downloaded and installed. We'll see if it does anything for me.

Update #1 5/5/2005 @ 6:00AM PDT:
Uninstalled.

I was having major issues with Bloglines... I don't know if it was this or Bloglines, but as soon as I uninstalled it the problems went away.

I'll installing it again in a couple days.

Guess-the-Google

Grant Robinson : Guess-the-google launcher

"...Montage-a-google is a simple web app that uses Google's image search to generate a large gridded montage of images based on keywords (search terms) entered by the user. Guess-the-google reverses this process by picking the keywords for you, the player must then guess what keyword made up the image - it's surprisingly addictive. "

Now this is a cool usage of Google.

BTW, don't blame the messenger if you find yourself hooked to this.... ;)

(via hackedbrain - Guess The Google)

Tuesday, May 03, 2005

US Military PDF Redaction "Issue"

Sound Evidence: E-Discovery Simplified: PDF redaction lapse

"... "simply put black rectangles over the text and did not delete any of the text itself from the documents. They were trying to do redaction with something not designed to do redaction.''

By simply opening the document in Adobe's free Acrobat Reader, hitting the "select text'' button, copying and then pasting all the text into any word processor, readers can see what's buried beneath.

... Ever wonder why TIFF's won't disappear? "


Dogh!

And sigh... I can still keep hoping TIFF's will go away one day (but I doubt they will in the near future... double sigh).

MS Access System Information via OleDbCommand.GetOleDbSchemaTable

Equivalent of sys* tables of SQL Server in Access

"When working with SQL Server it is easy to get access to database metadata like tables, stored procedures etc, by using the sys* tables. I was doing some work with Access and wanted to do something similar, turns out that it is quite easy to do.

Basically the OleDbCommand.GetOleDbSchemaTable() method allows you to get as much metadata you want about the DB.

Pretty obscure but a God send when you really need it :)"


Sijin's post came JUST as I needed to do this very thing. How cool is that? I dig people who take the time to post cool info-snips like this...

I was going to dig through the hidden Access system tables (like MSysObjects, etc), but I think I'll try Sijin's approach first. Seems less horky.

Though the MSysQueries table looks kind of cool... It's Access Queries broken into parts, one row for each column returned in a query. Hummmm

Circumventing Group Policy Settings

Mark's Blog: Circumventing Group Policy Settings

"Group policy settings are an integral part of any Windows-based IT environment. If you're a network administrator you use them to enforce corporate security and desktop management policy, and if you're a user you've almost certainly been frustrated by the limitations imposed by those policies. Regardless of which you are, you should be aware that if the users in your network belong to the local administrator's group they can get around policies any time they want.

There are two steps to circumventing a group policy setting: identifying the setting's location and preventing the setting from being applied. There are many group policy references available, but since machine group policy settings store in the HKEY_LOCAL_MACHINE branch of the Registry and per-user group policy settings store in HKEY_CURRENT_USER, if you don't know the location of the setting that's preventing you from doing something you want you can use Regmon to find it.

The number of desktop lockdown settings available to group policy administrators is enormous. They can prevent you from doing anything from changing your desktop appearance and start menu to running certain applications. Two commonly applied settings include a pre-configured screen saver program so that users don’t waste resources on frivolous screen savers, and a screen saver timeout so that systems aren’t left indefinitely accessible when a user steps away. When these settings are in effect Windows omits the screen saver tab of display properties control panel applet or doesn’t let you modify the screen saver or its timeout. I’m going to show you how to use the power of being a local administrator and Regmon to track down these settings and override them on your own system.

..."


Oh yeah... I think I can use this.

(via John Howard - Group Policy Circumvention by Local Administrators)

Monday, May 02, 2005

Microsoft licensed Mvp.Xml library: .Net Open Source Does Good...

Signs on the Sand: Microsoft licensed Mvp.Xml library


"On behalf of the Mvp.Xml project team our one and the only lawyer - XML MVP Daniel Cazzulino aka kzu has signed a license for Microsoft to use and distribute the Mvp.Xml library. That effectively means Microsoft can (and actually wants to) use and distribute XInclude.NET and the rest Mvp.Xml goodies in their products. Wow, I'm glad XML MVPs could come up with something so valuable than Microsoft decided to license it.

Mvp.Xml project is developed by Microsoft MVPs in XML technologies and XML Web Services worldwide. It is aimed at supplementing .NET framework functionality available through the System.Xml namespace and related namespaces such as System.Web.Services. Mvp.Xml library version 1.0 released at January 2005 includes Common, XInclude.NET and XPointer.NET modules.

As a matter of interest - Mvp.Xml is an open-source project hosted at SourceForge."


Wow, now THAT's cool! Man it's great to see a .Net project like this picked up by MS.

Time to join a project or dust off my projects... Oh.. yeah.. can't.. sigh. (grr... Due to working at one of the Final Four accounting firms, and thereby one of those "standard" IP contracts, what I think they own... [thinking bad thoughts right... now... HA. Own THAT!] LOL ;)

NBC's 'The Biggest Loser 2'... in Simi...

NBC's 'The Biggest Loser 2' to debut August 9, feature men versus women

"...According to the Los Angeles area's Daily Breeze newspaper, The Biggest Loser 2 began filming at a secluded Simi Valley horse ranch in March ..."

[Comments about losers in Simi deleted]
[Comments about more overweight people (of which I'm one) in Simi deleted]
[Comments about the poor horses deleted]
[Comments that my comments are sour grapes cause I can't seem to lose weight deleted]

Actually it's good to seem more filming in Simi. It's a great place, great people and great views all within easy driving distance of LA.

Sunday, May 01, 2005

Paint.NET v2.1 Released

ActiveWin.com - Paint.NET v2.1 Released

"The major goals of this release were to improve performance, refine the user interface and experience, and to support some highly requested features such as PNG transparency support and JPEG save quality configuration.

To summarize, Paint.NET v2.1 is much faster, more compatible, and produces better quality images than v2.0. It is a highly recommended upgrade.


  • Many bug fixes and miscellaneous user interface tweaks.

  • Installation via Group Policy is now supported.

  • Rendering quality, usage, and performance of selections is improved.

  • Much better performance all around.

  • Magic Wand selection tool.

  • Ellipse/circle selection tool.

  • PNG transparency is now supported.

  • GIF save quality significantly improved.

  • JPEG quality selector and preview, and file size preview.

  • Upgraded PDN file format to support very large images.

  • Thumbnails are now shown for .PDN files in Windows Explorer.

  • Much higher quality rendering when zooming out.

  • Background layer is no longer "locked".

  • EXIF data is now preserved for supporting file formats.

  • Lower memory usage. History items are now saved to disk instead of completely stored in memory.

  • Better Tablet PC support. Also, Ink isn't used unless you have a Tablet PC; this has increased compatibility and performance on regular systems.

  • Ability to resize image based on a percentage.

  • Brand new image resampling routines for Image->Resize menu item (no more transparent borders).

  • No more flickering in the UI.

  • More optimizations for multiprocessor and multicore systems.

  • Startup time is greatly reduced.

"

The very cool C# Paint.Net 2.1 is out...

Past Post XRef:
Paint.NET 2.0 Released
Paint.NET v1.1 is now available!

The Forbidden Library: Banned and Challenged Books

The Forbidden Library: Banned and Challenged Books

"The books listed on my site were all challenged on some grounds by groups who wished to impose restrictions on them. Some were removed from reading lists, some were removed from school or public libraries, some were burned in bonfires. I do not claim that all of the books in my list are for the same age group, nor do I believe they are all equally suitable for academic reading lists. I merely report documented challenges to books, and in some cases poke fun at the rationale used by those who object to the works mentioned.

I put the website together because I did not find any of the specific rationale for challenging the works I list compelling in any way. In fact, many of the reasons were quite humorous. I believe that books, and children, are individuals, and none deserve to be labeled. ..."


I guess I've found my summer reading list... ;) Actually it looks like I've read many of the science fiction/horror ones... :|

Each "forbidden" book has an excerpt as to why it's on the list, as well as an amazon purchase link (which made me laugh... that'll show those evil book banner's! )

(via Randy Holloway Unfiltered - Forbidden Library)

Chrome - Object Pascal for .Net (VS [Trial], Mono [Free] and Command Line[Free])

remobjects.com

"After over a year research and development, RemObjects Software is proud to finally unveil Chrome, its long awaited Object Pascal language for the .NET and Mono Platforms. Chrome takes all that we have come to appreciate about the Pascal Language into the twenty-first century and it places it right where it belongs, inside the Visual Studio IDE. "

Sounds kind of interesting... Been a while since I've done Pascal (Delphi 1.0 & 2.0.. lol, yeah, about forever ago). While you can target .Net with Pascal via Delphi.Net, this intergration into VS seems cool.

I think I'll queue this for a future time, when I've already gotten up to speed on VS2005... ;)

Saturday, April 30, 2005

DotMSN 2.0 Released

DotMSN - .NET Messenger library - Home

"DotMSN is an open-source stand-alone class library to provide connectivity with the MSN Messenger service. The library is built in C# and can therefore be used by all languages the .NET environment supports. Because of a clean natural Object-Oriented approach the library is easy to use and implement. DotMSN is designed to be a flexible, robust and lightweight enhancement to any application. Applications of DotMSN vary from creating messaging robots to creating custom clients. If your application needs to communicate through the messenger service, DotMSN is your tool.

...

DotMSN is a stand-alone library. This means there is no interaction with the official MSN Messenger client and therefore it does not need to be installed when using DotMSN. Multiple instances of DotMSN can be executed on the same machine, or even in the same process. Thus making it easy to deploy applications on a single server. "


Download
"Here you can download DotMSN. There are two packages available to download DotMSN. Either as a full-packed download with the compiled dll (signed and unsigned), vs.net xml documentation files, API documentation, example client and full source code. The second package contains only the latest dll and it's corresponding vs.net xml documentation file for intellisense. ..."

The VERY cool dotMSN library has rev'ed to 2.0. If you are doing any MSN IM related work you owe it to yourself to check this out...

I really like how its NOT coupled to the MSN IM client. Makes it a much easier case for using on a server (how many Server Admins do you know who would let you install MSN IM on "their" servers without a battle? Yeah, I don't know any either...).

I'm going to have to look at updating my MSN IM VS Add-in to use this instead of the MSN IM COM interface...

(Via James Simmonds' Blog - dotMSN - version 2.0 released)

Friday, April 29, 2005

Irrlicht Engine - A free open source 3d engine

Irrlicht Engine - A free open source 3d engine

"The Irrlicht Engine is a cross-platform high performance realtime 3D engine written in C++. It is a powerful high level API for creating complete 3D and 2D applications like games or scientific visualizations. It comes with an excellent documentation and integrates all the state-of-the-art features for visual representation like dynamic shadows, particle systems, character animation, indoor and outdoor technology, and collision detection. All this is accessible through a well designed C++ interface, which is extremely easy to use.

...
.NET language binding which makes the engine available to all .NET languages like C#, VisualBasic, and Delphi.NET. ..."


There are a number of pretty cool tutorials too. For example,
"1.HelloWorld
Shows how to set up the Visual Studio IDE for using the Irrlicht Engine and how to write a simple HelloWorld program with it. The tutorial will show how to use the basics of the VideoDriver, the GUIEnvironment and the SceneManager."

There is also a very cool .Net specific API documentation at API.Net

EDRM - Electronic Discovery Reference Model

Socha Consulting LLC > Electronic Discovery Reference Model

"Announcing the Electronic Discovery Reference Model Project, a new initiative for the development of an electronic discovery reference model.

A key finding from the Socha-Gelbmann Electronic Discovery Surveys has been the need industry standards and guidelines. We believe that the best approach for accomplishing this is to launch a process aimed at the development of a Reference Model for Electronic Discovery. We feel that to deliver a meaningful result, this process must be driven by the leading providers of electronic discovery services and software, with substantial guidance from leading consumers.

We expect that the Reference Model will provide:

A common language for talking about electronic discovery processes;
A basis for standards and guidelines;
A basis for design and evaluation of products and services. "


Sounds interesting (to me at least, being in the field I'm in...). The EDD field desperately needs this...

(via Sound Evidence: E-Discovery Simplified - All Zubulake all the time)

Cool "Learn VB.Net in 10 Blog Posts" Site

VB101 - Dim u as New vbExpert(vb101, study, workhard)

"Introduces programming.
Utilizes Help and Internet resources.
Encourages students to learn-to-learn and become self-sufficient. "


This is a cool, kind of blog based approach to teaching VB.Net. Broken down into a number of lessons, each one appears to be very tasked and hands-on based with step by step instructions.

If you know someone who wants to learn Visual Studio and VB.Net, point them at this cool site...

(via Daryll McDade - The High School Guy - Dim u LearnVB (VB101, from a blog, easy))

Thursday, April 28, 2005

Outlook 2003: Integration API Reference

Download details: Outlook 2003: Integration API Reference

"The Microsoft Office Outlook 2003 Integration API Reference contains comprehensive documentation for different sets of APIs that allow third-party developers to extend and integrate with Microsoft Office Outlook 2003 Service Pack 1. This documentation contains reference materials for the Outlook 2003 Integration APIs, including the Account Management API, the Data Degradation Layer API, the Free/Busy API, the MAPI-MIME Conversion API, the Offline State API, the Replication API, and the Store API."

From the document:
The Outlook 2003 Integration API Reference contains comprehensive documentation for five sets of APIs that allow third-party developers to extend and integrate with Microsoft Office Outlook 2003 Service Pack 1:

The Account Management API provides access to user account information and notifications of account changes.

The Connection State API supports Outlook callbacks, notifying clients of changes in a user's connection state in Outlook—for example, from being offline to being online in Outlook.

The Free/Busy API provides free/busy status information about specific user accounts within a specific time range.

The MAPI-MIME Conversion API supports conversion between MIME objects and MAPI messages.

The Store API provides miscellaneous store functionality

... "


Packaged as a CHM, this provides overview and detailed information (with C++ code snips) on the above API's.

If you need this (and you'll probably know it if you do), this is good poop. If not, then it's not very useful...


All Three Simi Valley High Schools are Designated California Distinguished Schools

Two CVUSD schools among nine locally to earn distinguished status By Michelle Knight knight@theacorn.com

"... More high schools than ever before in the award's 20-year history were designated California Distinguished Schools, according the California Department of Education's website. Locally, that trend is evidenced by the fact that all three Simi Valley high schools were given the award.

Don Gaudioso, director of secondary education for Simi Valley Unified School District, said all three schools previously won the award, but this is the first time they've won it concurrently. ..."


GO SIMI! Rock on...

See I TOLD you Simi is a great place to raise your kids...

:)

Replacing an MSMQ queue with a SQL Server 2005 queue

Write Ahead Blog : Replacing an MSMQ queue with a SQL Server 2005 queue

"...Switching from MSMQ to SQL Server 2005 Service Broker would give them the immediate advantages of persisting messages along with the data in the database and thus provide a single backup/restore solution. And they also get the exactly once in-order semantics of the conversations, internal activation to get rid of the polling NT service, etc.

MSMQ and Service Broker being fundamentally different in their architecture, we realized that proposing a solution from a Service Broker angle seems like a huge change for someone thinking in terms of a single MSMQ queue. So here is a look at incrementally migrating a simple spooling MSMQ application to a Service Broker.

MSMQ and Service Broker being fundamentally different in their architecture, we realized that proposing a solution from a Service Broker angle seems like a huge change for someone thinking in terms of a single MSMQ queue. So here is a look at incrementally migrating a simple spooling MSMQ application to a Service Broker. ..."


This is something (using SQL Broker to replace my MSMQ Queue's) I've been thinking about since I first heard about the SQL Broker.

This post seems a close fit to my use case. Interesting...

A Couple EDD Articles...

DennisKennedy.blog: April 2005 Archives

Dennis Kennedy posted links to a couple EDD articles that I want to read in detail.

"...In Justices Skeptical of DOJ's Claims About Andersen Document Retention, Tony Mauro covers the arguments before the U.S. Supreme Court in the case involving Arthur Andersen's "reminder" of Enron's document retention policy that it is argued came too close in time to an investigation targeting the company ..."

"... The second artice, E-Discovery and Inevitable Litigation, attempts to answer some of the questions posed by the Arthur Andersen case. For the most part, the authors resist the impulse to scare people with potential horror stories and stick to providing solid advice and recommendations. ..."

Wednesday, April 27, 2005

Order free of charge - Connected Systems Business Kit

Order free of charge - Connected Systems Business Kit

"Microsoft is giving away free of charge a Connected Systems Business Kit which includes:

Presentations and videos describing connected systems for business decision makers, architects, developers, and IT professionals.

Generico, an extensive SOA-blueprints based, end-to-end sample application showing a typical enterprise implementation of SOA.

Technical training materials.

Microsoft Enterprise Development Series white papers.

Customer and analyst evidence

You can order a free copy over here"


With all the hype in SOA I wanted to check the the "end-to-end" sample included in this package... I've been trying to order this since I first heard about it but kept getting errors.

Well I gave it one last go today and now my order is on the way. :)

I don't expect much, but still it's free and if I get one good nugget of info then the time would be well worth it.

Get VS 2005 Beta 2 Free! (Still)

adamga's WebLog : Get VS 2005 Beta 2 Free!

"Get VS 2005 Beta 2 Free!
For a limited time, we are offering VS.NET 2005 Beta 2 media shipped for free, while supplies last.
Go here to order...."


You can still get VS 2K5 B2 free (shipping is free for North America only I think)... While supplies last.

As of this post there were still some available (I know 'cause I just ordered a copy for a friend here at work... and it was 100% free... My fav price ;)

Past Post Xref:
Order VS2005 Team Suite Beta2 DVD w/ Free Shipping (for a short time)

Tuesday, April 26, 2005

CodeGuru: Task Manager Extension

CodeGuru: Task Manager Extension

"This is an extension for the Windows Task Manager (NT/2000). The features are the following:


  • Show Application icons in Processes list (if available)

  • Use different color for services

  • Find a used file by any process. (Use * as file name for showing every used file)
    (The search is a full text search, so for example you can use the extension only)

  • Find a used module by any process

  • (The search is a full text search, so for example you can search for 'kernel')
  • Show Process ID in Applications tab

  • Use different color for processes if the CPU usage reaches a given limit ( 25%, 50%, 75% )

  • Query list of every files, handles, modules, windows used by a given process

  • Close a used file (you can unlock an exclusively opened file, so you can delete it)

  • Unload a used module (so you can delete it)

  • You can kill services too

  • Fast end process. Press DEL key!

..."


Sounds pretty cool...

(via The ADO Guy - Task Manager Extension)

A Lil' IIS Ditty (aka Creating Sites and Virtual Directories Using System.DirectoryServices)

David L's Blog : A Lil' IIS Ditty

"If you use MMC to configure IIS
You might find yourself in a mess
Don't struggle anymore
Config in IIS is not a chore
As you can now use this code ever more!"


LOL.

The pointed to code is the C# sample, Creating Sites and Virtual Directories Using System.DirectoryServices.

Saturday, April 23, 2005

The Portable Freeware Collection

The Portable Freeware Collection

"This site is dedicated to the collection and cataloguing of freeware that can be extracted to any directory and run independently without prior installation. These can be carried around on a memory stick / USB flash drive, or copied / migrated from PC to PC via simple copying of files. Hence the term portable freeware. ..."

A pretty cool collection... and most importantly, they have a RSS feed. ;)

Friday, April 22, 2005

SQL Server 2000 Reporting Services SP2 Download

"SQL Server 2000 Reporting Services Service Pack SP2

"...
Key Functional Enhancements

SharePoint Web parts enable you to explore and view reports located on a report server by using Microsoft Windows SharePoint Services or SharePoint Portal Server.

Reports can now be printed directly from within Internet Explorer. A Microsoft ActiveX control is provided to support a rich client-side printing experience including full page preview. ..."


Cool...

Microsoft Support / Knowledge Base RSS Feeds

RSS Feed Product Index

"To see an RSS feed that lists the most recently published KB articles, select a product from the list below. This list will update every 24 hours."

Tons of MS KB RSS feeds... Though most are empty at this point...

(via Sergey Simakov blog - Microsoft Knowledgebase is now RSS-enabled)

Thursday, April 21, 2005

Free Refactor! for VB 2005 Beta 2

Refactor

"Refactor! for Visual Basic 2005 Beta 2 is a free plug-in from Developer Express that enables Visual Basic developers to simplify and re-structure source code, making it easier to read and less costly to maintain. Refactor! supports more than 15 individual refactoring features, including operations like Reorder Parameters, Extract Method, Encapsulate Field and Create Overload."

Downloaded. If you register it you get additional features (a very short process)...

Wonder if this will still be free in the Retail version? That would be cool (being a VB guy and having VS2005 C# refactoring envy...)

(via Larkware - The Daily Grind 606)

Update #1:
Here's another good post on this from the very cool AddressOf, Refactoring to debut in VB 2005!

Order VS2005 Team Suite Beta2 DVD w/ Free Shipping (for a short time)

Julia Lerman Blog - Don't Be Iffy... - non-MSDN Subscribers can order Beta2 (and free shipping for a short time)

"Beta2 is already available to non-MSDN Universal Subscribers. You can order a DVD from Microsoft by starting at the VS2005 home page.

Also for a limited time, orders in US & Canada will get free shipping & handling on the discs."


Julia has it right... I just ordered my VS2005 Team Suite Beta 2 DVD and wasn't charged anything, including no shipping charges.

Sure I've already downloaded it off of MSDN, but still, it's nice to have it on DVD too...

Wednesday, April 20, 2005

Freeciv 2.0.0 Released

About - Freeciv

"Freeciv is a free turn-based multiplayer strategy game, in which each player becomes the leader of a civilization, fighting to obtain the ultimate goal:

To become the greatest civilization.

Players of the Civilization series by Microprose should feel at home, since one aim of Freeciv is to have modes with compatible rules.

Freeciv is maintained by an international team of coders and enthusiasts, and is easily one of the most fun and addictive network games out there!

It also means it has very extensive multilanguage support, something rare in games"


Download

A little while ago I got into OSS clone games, FreeCiv being one of them. FreeCiv is a pretty cool clone of Civilization, and since the source is freely available, you can see just what's going on...

Virtual Server Deployment Manager 1.3.0 (VSDM)

Download details: Virtual Server Deployment Manager 1.3.0 (VSDM)

"Based on the concept of templates, VSDM manages the virtual library (templates and ISO images) in a simple and productive way. A 'must have' tool for Virtual Server customers that manage large number of machines or need to frequently recreate images based on a master image (template)."

The first thing that popped into my mind when reading this was, "Wow, what a cool Dev/QA tool..."

Setup right, think how cool this could be when used in a QA environment. A developer needs a QA system, they use this tool to create a VM and off they go. It reads that they won't even need local admin right on the host server...

Only downside I see is having uber-VM proliferation. So some kind of machine reporting would be needed, scheduled machine clean-up (cause you know as well as I that most people won't clean up/delete their VM's when they are done...), etc, etc.

But that's all besides the point of this sounding like something pretty useful.

I wonder if I can grab an old/out of warranty/yet still powerful machine to really give Virtual Server and VSDM a real trial... Got to be cheaper than having a bunch of desktops laying around?

TraySource

Visual Studio Hacks - Source Control - TraySource

"Quickly switch between source control providers using this application that lives in your system tray. As you can see from the image above all you have to do is right-click on the tray icon and then select the source control provider that you would like to use. This is a great utility for people who are constantly switching between source code providers"

Very cool.

OCR (Optical character recognition) with Microsoft Office 2003

The Code Project - OCR (Optical character recognition) with Microsoft Office 2003 - C# Programming

"Coming with MS Office 2003 the MODI library offers you an easy but effective way to integrate OCR functionality into your own application"

Now that I'm about to rollout Office 2k3, this is something I'll want to look at...

Using the Microsoft Office Document Imaging 2003 Object Model

Simi Smiley on Google Sightseeing

Google Sightseeing - Blog Archive - I Love Simi

The Simi Smiley made the Google Sightseeing site... :)

X-Ref of past posts:
Google Sightseeing
Simi Smiley
A bird's-eye view [Google Maps with Satellite]

Wednesday, April 13, 2005

OMG... Vacation?

Yes, I'm taking a vacation. A COMPLETE vacation. No notebook, no internet, NOTHING! MUHAHAHAHA (Okay, I'll still have my pager and cell, but still... [and they'll probably be off, but don't tell anyone.] :)

So no posts for a couple days, until mid/late next week at least.

sigh... I'm already having withdrawals.

Damn, that's SO sad.

Using Amazon Web services to build an app that searches for books, music or movies

GotDotNet User Sample: Using Amazon Web services to build an app that searches for books, music or movies

I'll want to take a look at this when I get back onto my My BookShelf project...

Filming for The Code Room

Visual Studio For Devices : Filming for The Code Room

"I spent all day today on location as part of the filming process for an episode of The Code Room. "

Cool, since I hadn't seen anything about The Code Room recently, I thought it might be dead. Good to see it isn't.

"Caddy Shack Shot" by Tiger Woods...

Jaffe Juice: Tiger did it a.k.a. the next Nike Commercial

You did see this Caddy Shack like putt by Tiger Woods didn't you?

Man you'd think this shot was from a movie or something...

Tuesday, April 12, 2005

xNetServer - VB.NET Web Server for ASP.NET

The Code Project - xNetServer - VB.NET Web Server for ASP.NET - ASP.NET

"The original Cassini project was written and developed by Microsoft in C# to show off the capabilities of the System.Web.Hosting namespace in .NET. VB.NET developers were left in the dark as Microsoft (or anybody else) has not released a VB.NET version of the source (that I could find). Cassini is a basic Web Server delivery platform that allows developers to test their .NET applications without the need for Internet Information Server to be installed on a development machine or server.

The primary goals of this project were to convert the C# development code to VB.NET so developers can read/use the code in this language, I also wanted to add a reasonable amount of security controls into the code so the server was well protected from internal security threats or viruses/worms roaming around the network. ..."


Interested in a cool web server (no IIS needed) written in VB.Net? Then you have to check this out...


(via Larkware - The Daily Grind 599)