It took a while for me to find enough examples to put together a
method that will calculate the distance between two GPS points (using
C#), so I thought I'd post my end product in the hopes it will shorten
someone else's search. Credits to 'The Math Forum' for the
formula (http://mathforum.org/library/drmath/view/51879.html)
The code looks terrible in a browser, so I've attached it as a text file. DistLatLong.txt (1.54 KB)
Thanks to a recent newsletter editorial from SQLServerCentral, I ran into Password Safe, which is a small program that allows you to protect all your passwords for web sites and online accounts, keeping them handy and safe at the same time. There's no install, just a small executable to run, and it will even enter your username/password combination to complete your login for you!
I've looked at other electronic 'wallets' in the past, but this one is the best I've seen to date...simple, direct, FREE!, and good at what it does. Being ignorant of the apparent power of the Blowfish algorithm, I'm still a little nervous to put 'all my eggs in one basket', but it sure is convenient.
I'm not any of these John Bowen's...but I can go one better. I'm not the John Bowen that wrote the "I'm not ANY of these guys" page either. Somehow, this is creepier than laughing at oneself...
Congratulations to Kerri and Chris! Olivia Kristine Bowen was born Saturday (June 18) afternoon. I'll update this post (soon) with a couple pictures from the big day.
Jeremy Esland has just added a slew (yes, slew is a real word...look it up) of new features to the Rainbow core and/or documentation. They include:
- A much improved portal alias retriever: you can now host 'sub-domains' on the same Rainbow installation as 'regular' sites...so support.example.com and sales.example.com can exist happily alongside example.com, example.co.uk, and www.example.com (even when the latter three point to the same site). It seems simple, but this is a huge step forward, IMHO.
- A new smarterror handler that provides much better interface for the end user when a page doesn't load (404, 403, 500 errors, for example).
- Terrific CSS documentation to support the Zen layout framework...though it also serves as a pretty good tutorial for those with only a basic understanding of the power of CSS.
- MagicUrls: These will allow a site admin to avoid complicated URLs, simplifying targets from (for example) www.example.com/site/2271/default.aspx to www.example.com/articles. Much better for the typical human user, eh?
- Much improved behavior for search engine optimization...amond other things, this should prevent spiders from indexing error pages!
All this (and more) is in the Dev build right now...watch for it in a (hopefully near) future release!
Last week, I decided I needed the capability for the Rainbow portal to let authenticated users 'customize' a module for themselves. This way, whenever the user loads the page with that module, his custom settings are retrieved and applied as the module is rendered.
With this functionality, a developer can allow the user to customize just about anything in the module; it could retain sort order for a list, filter preferences, even the theme of the module could be customized on a per-user level.
This enhancement has been applied to the 'dev' build, so Rainbow developers are free to play with it right now. Hopefully, end users will see it in the next release!
Read more about it here.
I finally 'finished' the Recycler module for the Rainbow Portal...at least enough so that it works and I'm reasonably confident in its security and reliability. This enables Rainbow portal administrators to delete modules, with the option to later restore them to the same (or a different) page...with the module's contents still intact.
I ended up splitting the 'Recycle Bin' functionality from the module itself, so that other developers can write their own (better) Recycler modules (and uninstall mine). The Rainbow core now holds all the functionality itself and exposes methods for future Recycler modules.
It's in the 'dev' build right now...when it eventually moves to the release build, you'll know it because the new 'Use Recycle Bin' Site Setting will appear in your portal's administration page.
You can read more about it here.
I just found these online resources that are 'local' to the Roscommon and Higgins Lake area. In the spirit of neighborly promotion-by-linking, I thought I'd mention them here with the hope the GoogleBot will pick them up.
Our Governor has declared May 5th as state employee recognition day, and as a small token of appreciation, has granted those employees 'free' use of all the Michigan State Parks for the week of May 2-8.
At first blush, that's a pretty nice gesture...there are some really great State Parks in Michigan (2 within 5 miles of my home). On second glance, however, it's not that great of a deal, and is really pretty laughable.
- Consider that the average temperatures for May run between 39 and 67 degrees Farenheit...a bit chilly for most 'park' activities.
- The state parks don't even open until May 1st. Now that they're open, the first few weeks are spent cleaning up a winter's worth of yuck.
- The employee 'appreciation' doesn't waive camping or other fees...just the $6 admission to the park...where I guess you could swim in 38 degree water (or, to be fair, launch your boat and go fishing - or waterskiing :) )
- For the past two years, most state employees have been forced to give up 4 hours of pay for every 80 they work, to help cure the state's whopping debt. Can you feel the love?
OK, OK...I know it's not PC, but it's REALLY funny...
Try a search on Gizoogle.com
Just pay very close attention to the descriptions of the results...thanks to Chris Farrell for the link!
Hopefully, this will save someone else a little time...
While visiting the Windows Update web site with a Windows 98 Second Edition (SE) machine, the error “Software Update Incomplete” kept popping up. I followed the instructions in Microsoft's KB 39585, but that didn't help.
I finally found this article, which describes a similar problem with MSN Messenger..you have to re-register a set of DLL's to reset Windows Update's information:
“regsvr32 softpub.dll Wintrust.dll Initpki.dll Rsaenh.dll Mssip32.dll Cryptdlg.dll”
Here's the body text of an email I received today...it just struck me as hilarious...
Dear Sir/Madam,
we have logged your IP-address on more than 40 illegal Websites. Important: Please answer our questions! The list of questions are attached.
Yours faithfully,
M. John Stellford
++-++ Federal Bureau of Investigation -FBI- ++-++ 935 Pennsylvania Avenue, NW, Room 2130 Washington, DC 20535 ++-++ (202) 324-3000
A virus was attached, as you might expect.
On an ASP.NET page with a couple DropDownLists, this problem surfaced.
When the page is called, it tries (unsuccessfully) to select the appropriate item in the DropDown, based on data retrieved from the database. The reported error is “A dropdown list cannot have multiple items selected“, even though I'm only making one selection.
Most of the offerings I found on the Internet said that one or the other of these selection methods must be used. [YourDropDownName].Items.FindByValue([YourDataFromDataBase]).Selected = true; ListItem objItem = [YourDropDownName].Items.FindByValue([YourDataFromDataBase]); [YourDropDownName].SelectedIndex = [YourDropDownName].Items.IndexOf(objItem);
I think both of them are OK to use.
The solution is to call the ClearSelection() method of the DropDownlist immeidately before selecting the value for it. I found it here, at the very bottom of the post. I never had to do that before, but it works!
While working on a custom module for a Rainbow installation, I recently ran into a new kind of issue. I created an 'edit' page for my module, deriving it from the Rainbow.UI.AddEditItemPage class.
When viewed in the browser, this new page lacks all of the css properties...no colors or fonts to match the rest of the portal.
The solution, it turns out, is that the <head> tag on that page must be told to run at the server...i.e....
This: <head runat="server"></head> Not This: <head></head>
This allows the CSS link to be injected when the page is called.
For the first time, today I noticed that Google's Gmail was unavailable for a large part of the day. I wonder if someone launched a DOS attack or something to knock the service offline...?

|