Archive for 2006
Connect to Yourself
With holiday deals right around the corner, you might be considering another computer purchase. No, not to replace your existing computer, but a new computer that serves a different purpose.
Maybe the new machine will handle games and media — or maybe it’ll be for office work. Either way, you will definitely want to network your computers to enable data and peripheral sharing. For example, more than one machine can share a printer and/or data files.
With Windows XP, it’s easy to connect your computers and stay organized. More on how to network your computers can be found on Microsoft’s website, here.
Backing up your data.
What’s the best way to back up your computer files? You have a few choices here: burn a CD/DVD, use a flash drive or connect another hard drive. Keep in mind that all media can fail. Even CDs can corrupt with multiple rewrites, get scratched, and be run over by the ice-cream truck. If maintained properly, all types of media are similarly reliable.
However you decide to back up your files, the most important detail is frequency. Back up daily, weekly — as often as you like, but consistently. The Windows XP Backup utility allows for archive scheduling. Read more about this utility.
CD/DVD…
This is a good choice, as the CDs themselves are relatively inexpensive and can hold a lot of information. If your drive supports it, RW (rewritable) disks should be used. The thing to watch out for here are brand names that are incompatible with your hardware. As a general rule, media “Made in Japan” is usually a safe bet. Store the CDs in place away from heat and water, and you’re in business. If you don’t have a CD or DVD burner, read on.
USB Flash Drive…
Very portable. Very reasonably priced. Very versatile. Take it everywhere, plug it in anywhere, write, rewrite, format, whatever. These drives are up to about 4GB now and not terribly expensive at all. Any machine with a USB port can use one. This is a good choice if you are excellent at keeping small items from getting lost in the shuffle. That’s the only downside that I can think of, as these drives are usually only a couple of inches long.
Hard Disk Drive…
Tons of music files? Photos? Consider this: buy a second hard drive and install it inside your computer OR connect an external hard drive. Storage capacity here beats all of the above. Speed is also on your side with the hard drive. It costs the most and isn’t terribly portable, but it’s great for a serious archive. Failure rates exist, but the chance that BOTH of your hard drives will bite the big one at the same time is very slim to none. I trust my entire music and photo collection to two hard drives. I’ll run out of space eventually and get new ones. (I already don’t expect them to last forever).
Windows Vista, Do We Need Ya?
There’s a lot of talk around Windows Vista, the next version of the Microsoft Windows operating system. As a technology professional, I’m obligated to research this application and discover its advantages and disadvantages.
I’ll be using the beta version of Windows Vista. This means that I will install a pre-release or test version of the application and can evaluate it on my own computer. Fortunately, I have a spare computer to install it on. The stability of the program remains to be seen and potentially compromising my work PC is not an option.
In the end, I expect to know if the new version is worth upgrading to. I’m sure I will on at least one of my computers, as a few features have already peaked my interest, without even seeing it yet:
- Windows Backup — improved interface for backing up and restoring data files
- Networking — simplifying home and business networks with the same utility
- New Explorers — helping to categorize my files so I can quickly navigate to documents, music, photos and other grouped file types without laboriously searching through folders.
More information about Windows Vista can be found on Microsoft’s website.
Media Madness
I’m seeing more and more people gathering up all of their digital media and putting it in one place: on a computer. Then, they hook the computer up to a gimungous LCD monitor and the games begin!
What’s the point? Well, if you’re like me, you have lots of music mp3s, lots of photos, and you like to record television shows. What’s nice is that a home theater pc (HTPC) can store all of this media in one place, allowing you to manage a large archive.
In essence, your HTPC becomes a jukebox, a movie theater, a tv recorder, and a slideshow projector. Plus, you can share all these things with other computers in your household, or portable devices, while maintaining a centralized and secure collection of your files.
Very efficient! And fun! Read more information about HTPCs here.
Homemade Security Suite
I’m recycling this information, because it’s been the most popular post to date. The following entry is taken from January 24, 2006:
There are actually quite a few names for the things that can infest your computer and render it inoperable, but we just like to call it all “spyware” and get rid of it as quickly as possible.
Since there are so many different types of malicious software, naturally there are many different tools for removing them. We like to start with what costs the least, and for home users we mean $0.00!
Your best chance for survival is to start with Windows XP SP2. From there, the items below (when used together) help to protect your machine. Many websites and downloads transfer harmful things to your computer, and even with the best tools you can still do a lot of damage by visiting questionable sites and running downloaded programs of unknown origin.
Here’s our hotlist of helpful tools:
We’ve noted that older versions of Windows are particularly vulnerable and, if you can, an upgrade to XP is the best way to start fresh with the best chance for survival.
Working Around the RegisterClientScriptBlock Problem
Microsoft ASP.Net 1.1 has a bug that will bite you when you least suspect it.
http://support.microsoft.com/default.aspx?scid=kb;en-us;817032
Basically, if your web application has more than 8 different pieces of client-side script registered using RegisterClientScriptBlock in a given web request, then the order in which they are registered gets lost. It’s fine up through and including the 8th registration, but as soon as you register the 9th, the order of all of them becomes randomized.
Anyone who has created a large complex website will surely ask, “ONLY 8?!”. Yes, just 8, easily surpassed simply by having several web controls each with their own little piece of client-side script. A clock control, a shopping-cart, some validation script, etc. and before you know it, it’s all jumbled.
Now, as long as each script is totally self-contained, you’re okay — nothing broken. But, suppose one of the scripts relies on variables defined in one of the other scripts, or some other condition that makes it necessary to register the scripts in a specific order. In that case, the sudden randomization when you hit #9 is a real problem.
The MSDN article provides a hint at how to fix the problem. However, it assumes you will have all of your client script registration happening in one place. A better alternative is one that doesn’t require you to modify a dozen different places in the code.
The solution I will describe assumes that, with your large ASP.net 1.1 application, you are using a class derived from web.ui.page. From this class, you derive all other pages in your web site (this is the best way to build a complex site, after all). We’re a little lucky that the RegisterClientScriptBlock function is overridable (YAY, some forward thinking at Microsoft). But, (Oh, No!) IsClientScriptBlockRegistered is not overridable (Boooo, these functions are a set. Why would they make one overridable and not the other?! *gasp*).
Anyway, in your base page, override RegisterClientScriptBlock and tack on all the script that gets registered into a single stringbuilder class level variable. Then, call mybase RegisterClientScriptBlock with a dummy string of meaningless HTML comment text, so that the web.ui.page classes’ IsClientScriptBlockRegistered will return the proper true value when the caller checks.
Private sbRegisteredScripts As StringBuilder = New StringBuilder(“”)
Public Overloads Overrides Sub RegisterClientScriptBlock(ByVal key As String, ByVal script As String)
Try
If IsClientScriptBlockRegistered(key) Then Return
sbRegisteredScripts.Append(script)
mybase.RegisterClientScriptBlock(key, “<!— registered “ & key & “ à” )
Catch ex As Exception
‘ standard error handling for your app
End Try
End Sub
After that override the OnPreRender function and (after checking to make sure the string isn’t empty) call RegisterClientScriptBlock, passing it the concatenated string of all the registered scripts.
Protected Overrides Sub OnPreRender(ByVal e As System.EventArgs)
Try
Dim sTemp As String = sbRegisteredScripts.ToString()
If Len(sTemp) > 0 Then
MyBase.RegisterClientScriptBlock(“some unique value”, sTemp)
End If
sbRegisteredScripts = New StringBuilder(“”)
Catch ex As Exception
‘ standard error handling for your app
Finally
MyBase.OnPreRender(e) ‘ DON’t FORGET THIS LINE
End Try
End Sub
With this solution, you don’t have to change any of the individual controls or pages that register script, and all your script will be in one neat chunk all in the proper order.
Design with purpose.
I know you’re anxious to get online, and that’s a good thing. However, planning your approach to the web needs to be well thought-out and strategic.
If your website is new to the Internet, rather than a redesign, it may make sense to go with a clean and simple template design to communicate your message.
Some reasons for using a template (initially):
- Lower cost design
- Development time reduction
- Easier maintenance for the content manager
- Many design choices
The most important thing to spend time on is refining your message. Too much time spent on colors and dancing baloney may prove counter-productive in the end. Knowing what you want to say and how you say it are critical tasks to complete ahead of any design or development work.
Once you’re comfortable with the information you would like to deliver, it can then be situated in a template design that enhances the overall site experience.
Afraid that your site will look like all the others? Don’t be. Just take a look at Template Monster. This is just one example of an online template warehouse.
Don’t forget that your site design will evolve over time and, initially, the most important task is to get your information online with a clean presentation that won’t deter your target audience from visiting.
Local Event: Internet Safety Seminar
When: May 9, 2006 @ 6pm
Where: Westchester County Center, White Plains, NY
Fee: Free; Registration required
How to Register: www.westchestergov.com/cybernet or call JoMary Vieira at 995- 2912
For more information, visit Westchestergov.com.
Seminar Summary:
- Discussion of “social networking” — what it is, examples of real profiles, how kids use it (both good and bad) and potential risks
- Discussion for parents of general Internet risks, age-appropriate ways to protect kids and how to stay on top of new technologies
- A panel discussion on how to use social networking safely
To the Internet, and beyond!
In December of 2005, we bookmarked an introductory web tutorial, brought to you by AARP. In this tutorial, the basics for browsing the Internet were explained beginning at square one: What is the Internet?
By now, we hope you’ve been practicing and are ready for the next level. Take a look at Intermediate Browsing, a follow-on also presented by AARP.
It’s important to understand all the tools your browser has for securing your Internet browsing experience. These tutorials are a great beginning or even as a refresher and are worth a skim, at least.
Don’t forget that ResQTek offers in-home, one-on-one computer tutorials as part of ResQTek Deskside Support. Maybe Mom would like to learn how to use the computer?
Center a DIV Container with CSS
Center your content horizontally and vertically!
First, put your content inside a <DIV> container.
<DIV class=”container”>
All My Content Goes Here
</DIV>
Then, establish the style properties for the container.
<STYLE>
div.container {
position: absolute; /* goes hand-in-hand with top and left parameters to position with the BODY tag */
left: 50%; /* relative to the BODY tag */
width: 600px; /* specific container width */
margin-left: -300px; /* works with left parameter to center the container horizontally */
top: 50%; /* relative to the BODY tag */
height: 380px; /* specific container height */
margin-top: -190px; /* works with top parameter to center the container vertically */
text-align: left; /* I want the DIV content to be flush left */
overflow: visible; /* in case the container is not the exact size of the content block */
}
</STYLE>
Here’s my test sample. View the source code to see how it works.
More information about CSS properties can be found in the MSDN Developer Center.

