Shareware Utilities
Freeware Utilities
Miscellaneous
|
Monday, February 22, 2010
 Google Maps Meets Swansea PD 2
I've made a few updates to the Swansea, MA Police Dispatch Log page.
- The date range for the incidents in the database is now displayed.
- The number of incidents to display on the map at one time is now adjustable. This can be adjusted based on the performance of your machine.
- The incident and date are listed in the marker list links
- The database was populated back through January 2009.
I did receive questions as to how often the database is updated. The database is updated shortly after the Swansea Police Department Dispatch Log is update on the Swansea Police Department website. Labels: Information, Misc
posted by Brad Prendergast at 9:48:00 PM
(0 comments)
Links to this post
Permalink

Thursday, February 11, 2010
 Google Maps meets Swansea PD
Anyone that knows me knows that while I am sitting at my desk clicking away on the keyboard I am also listening to the Police Scanner. I have been listening to a Police Scanner for as long as I can remember. One of the departments I have programmed into the scanner is the Swansea Police Department. The Swansea Police Department also posts their Police Dispatch Log on their website (You can view my version Swansea Police Dispatch Log here).
In preparation for a future project, the other day I decided to start dabbling with the Google Maps API. APIs allow developers to easily integrate functionality from other applications/services into their application. The Google Maps API offers a wide range of map/location features.
As I was listening to the scanner I thought it'd be a great idea to see where the Swansea Police have been dispatched over a period of time on a map. Seeing the locations on a map clearly displays the more active areas. The concept was simple, but the question was on how I was going to get all of the incidents into a database for display in a map. With the Swansea Police Department having their Dispatch Log online, the question was easily answered. The answer is...
The format of the incidents on the police log is a pretty standard format, so I wrote a program that uses RegularExpressions to parse out the Date, Time, Reason and Location of the dispatch incidents. Each incident is then stored in a SQL Database. After the page is parsed, I then determine the longitude and latitude location for each incident by GeoCoding the address using the Google Maps API. I store the status, accuracy value, longitude and latitude of the address in the database. I then created a page that reads the database (for a filtered set of incidents) and display markers on a map for each incident. Only incidents that have been successfully geocoded are displayed. If you click on a marker you can see the date, time, reason and location of the incident. You can also click on an incident link to see where it is located on the map.
View my version Swansea Police Dispatch Log here.
I have a few other enhancements I am planning on adding to the map in the future. Check it out!
I know, I know, I am often told 'I am such a geek...'
Labels: Information, Misc
posted by Brad Prendergast at 9:27:00 PM
(0 comments)
Links to this post
Permalink

Sunday, October 25, 2009
 FarmVille References Updated
 There has recently been a significant number of changes to the popular Facebook game FarmVille. Flowers have been added to the list of crops. Fertilized crops yield additional XP when harvested. Pink cows have wondered onto the farm, fresh out of the strawberry patch, and we can't forget those little turtles that seem to have gotten lost.
Just as changes have been made to the game, so to have changes been made to the FarmVille Reference Tables.
The new items have been added to the list, and the display grid now uses AJAX, which eliminates the need to refresh the entire page when changing sort options (don't forget the multi-column sort). Using the reference tables you can easily see, when things are equated on the hour, that:
- Asparagus is the most profitable Vegetable yielding 7.63 coins per hour
- Sugar Cane is the most profitable 8 hour seed yielding 59 coins or 7.38 per hour
- Black Berries are the top when looking for coins and XP, yielding 6.75 and 0.50 per hour
It is time to go view and sort the chart to see how seeds and items yield for the farmer. Labels: Information, Misc
posted by Brad Prendergast at 5:47:00 PM
(0 comments)
Links to this post
Permalink

Friday, September 18, 2009
 Who's Addicted to Farming?
I have to admit it, I am.....
I am not one that is heavy into games or the whole social networking scene, but I have to say zynga did it right with their FarmVille game that is available for play on FaceBook. FarmVille allows you to grow fruits, vegetables and grains on your very own farm. You purchase and plant seeds and then after a certain period of time you harvest your crops for money. Each crop ripens at different rates of time. Don't leave your ripe crops unattended for too long or they'll wilt away (the rate at which crops wilt is equal to the time they take to ripen). You are not only limited to harvesting crops, but you can harvest trees and have your very own farm animals. Your FarmVille farm can also be decorated with items that you purchase or gifts from your neighbors.
Point blank, the game is addicting. No body knows why, or how, such a simple game can be so time-consuming. Finally everyone, from children to grown adults, can get that chance to live life in the old days. Unlike other simple games, this role-playing simulation is fun overtime instead of just one session. Once you've got a neighbor, that's where the fun begins. Not only can you compete against them in terms of experience level, you can also bring it to a cosmetic level. Whose farm looks the best? Who's the better, more experienced farmer? This is where the game begins to resemble a drug. You'll literally find yourself cutting time out of your day just to plant more crops!
I have created some reference tables for those of you that are also addicted to farming. If you would like to see any additional information on the page please let me know.
Check out the FarmVille Reference Tables page.
Labels: Information, Misc
posted by Brad Prendergast at 11:06:00 PM
(3 comments)
Links to this post
Permalink

Sunday, July 27, 2008
 Edit those XML files
Wow! It has been a while since my last post. It doesn’t feel like it has been that long. Things have been both hectic and busy (to say the least). I am going to try and make it a point to post more often (again). Over the past few months I have had the need to maintain a number of different XML files. Along with storing application settings and configurations, XML files are also great for database data transfer. XML files are simple and easy to use and they are even easier if you have the right tools. One such tool, that I use frequently is XML Notepad 2007. XML Notepad 2007 is a simple application that allows for the editing of XML documents. It has a drag and drop interface that is fairly intuitive. If you find yourself managing XML files add this free application to your tool library.
Labels: Apps, Information, Misc, Tech
posted by Brad Prendergast at 4:14:00 PM
(1 comments)
Links to this post
Permalink

Sunday, September 30, 2007
 Compact that Virtual PC
I have long been a fan of Virtualization. Ever since the early days of Virtual PC, I have been spinning off virtual machines to test and install software applications and code. It has even gotten to the point where I do very little on my host machine. I even do most of my web browsing within a Virtual PC (you can't always be certain what sites will do to your host machine). The flexibility of being able to install, test and uninstall applications without affecting the host offers many benefits. There is also a bonus with the Undo Disk option within Virtual PC. With an Undo Disk you can start up a Virtual PC and do “your thing†and then have the option of committing or deleting the session changes upon shut down. Take the benefits of virtualization and the fact that Microsoft Virtual PC 2007 is free and it is no wonder why Virtualization is now mainstream. One thing that I had noticed using Virtual PCs is the disk size of the virtual hard disks. The virtual hard disks can be of fixed or variable size. If you opt for a variable sized hard disk, the disk will grow as you use it. The installation of application, copying of files and general processing use will cause the amount of space the virtual disk uses on the host machine to grow. As files are removed, applications are uninstalled and processing decreases I noticed that the virtual hard disk size doesn't decrease. In the help file there is a section that explains how to "Compact a virtual hard disk". The steps are pretty straight forward as they explain how to use the Virtual Disk Compaction option through the Virtual Disk Wizard. I did this on a number of virtual hard disks and really wasn't impressed with the results. To be honest, I didn't notice any change in the size of the virtual hard disk after running this process. After a little confusion I noticed one important note that is in the help file, " Before compacting the disk, we recommend that you use a disk utility to zero out blank space, which should result in a smaller compacted virtual hard disk". After I thought about it, it did make a lot of sense. Now, where do I get one of these little utilities? In the Virtual Machine Additions folder (under the Microsoft Virtual PC program folder) there is a Virtual Disk Precompactor.iso file (I found the "Using Virtual Disk Precompactor" section of the help file afterwards). It didn’t take much for me to figure out that this utility probably should be used prior to compacting a Virtual Hard Disk. It was a simple enough test; after all I was only trying it within a virtual PC. If you capture this iso file from within the Virtual PC and autoplay it, this utility will "prepare the virtual hard disk for compacting". After you run this utility, close down the Virutal PC and follow the steps for compacting a virtual hard disk found in the help file (you'll need to commit the changes if you are using an Undo disk). Take a look at the size of your vhd's before and after, the difference will be shocking. I know I reclaimed many many gigabytes of space on my hard disk. Another great feature that is worth looking into is a Differencing disk…. Labels: How-To, Information, Tech
posted by Brad Prendergast at 8:53:00 AM
(3 comments)
Links to this post
Permalink

Saturday, September 29, 2007
 Is it Hammer Time?
Stop! It almost was hammer time, sledge hammer time, for my new Hammer Storage MyShare™. With all of the data that I have on my machines, the conventional back-up strategy I had didn't really cut it. I decided that I needed to find a solution that had reliability, accessibility, convenience and ease of use. I needed something that would allow me to do frequent back-ups (of just critical data) effectively and efficiently without having to do too much. After reviewing a number of strategies, I determined that a NAS (Network Attached Storage) device was my best route. Without getting into boring details, I opted for the Hammer Storage MyShare™. I hadn't read too many unfavorable reviews for the product (besides the frequent drop in connect, which the latest firmware was supposed to fix). The MyShare™ also had what I was looking for; Network Storage, USB connectivity, RJ-45 connectivity, RAID (mirror or stripe), a Print Server (perfect opportunity to replace the one I have), HTTP access, FTP access and of course user security (local and domain). After getting clearance from the finance committee I popped over to NewEgg.com and ordered myself up a MyShare™. Excitement wasn't the word for my emotion after I received the confirmation order, and for the rest of my week. After all, who doesn't want a NAS? My package was shipped UPS 3 day. I often don't find the tracking information accurate (meaning I usually get a package before it arrives) so on day 3, I constantly checked to see if Big Brown delivered my package (even though the tracking page showed it on the other side of the state; not at the local facility). Well, day 3 came to an end and my package didn't show up (frustration level rises). Day 4, well it almost came to a close before my shipment arrived. I wasn't really excited about the delay, but my NAS did arrive and as I opened the box shipping delay frustration went away. As I opened the box, I was thinking of how I was going to set this up with file shares, security and what scripts I need to change to transfer base and incremental files. The biggest thing on my mind was that I needed to upgrade the firmware. I connected the storage device and set it up. I must admit I was extremely satisfied with the ease of setup, use, and configuration of the MyShare™. The user interface is nice as well; however the one piece they should have included more information on is the security keys that it can generate and how to configure them for the device. I downloaded and applied the latest firmware update (which was a breeze to do). I received the success message and then setup the device to use the drives as a mirrored RAID, another easy thing to do. The device needed some time to sync the drives (understandable) so I decided to go do something else for a bit. Upon my return, I decided to first setup the Print Server. I connected the printer and it was immediately recognized. I then went over to one of the computers and connected to the now shared printer. Next step, print a test page – result NOTHING. I tried setting it up again and the same result. I thought it could have something to do with the computer so I jumped on another one and had the same issue. The print server wasn’t my main priority so I figured I’d fuss with it later. My next attempt was to back up some data. After all, this was the primary excuse, I mean reason that I presented for the purchase (who doesn’t want to make sure all their photos are backed up). I modified my scripts to point to the MyShare™ for the destination device and began to backup my data. I do have a lot of data, and the frustration level went through the roof when my connection kept getting dropped while copying data over to the device. I tried to copy files directly, only getting so far before WHAMO – Dropped! I tried deleting files that were copied over to the device, same result, dropped! I tried for a while and kept having the same result. I did confirm that the firmware update was applied (version was correct on the device). The MC Hammer song started playing in my head overlaid by the Peter Gabriel song. Needless to say, it was almost Sledge Hammer Time. Before, I got too crazy and had a Hammer (storage) versus (sledge) Hammer grudge match; I powered down the device and walked away. It might have been tired from its trip and needed a rest. I returned several hours later and to try this all again. I powered everything up and logged into the computer. Hrm, what should I try first, I thought. I opened up the printer and attempted to print a test page. My jaw hit the floor when I heard the printer started spitting out paper. I then proceeded to do the same file transfer actions that frustrated me to no end a few hours earlier. Too my pleasant surprise – everything worked like a charm. I transferred, deleted and moved gigabyte after gigabyte (simultaneously) and the MyShare™ kept up with me and handled it all with no problems (or dropped connections). The level of my excitement was greater than that of when I ordered the device. All that was needed was a nice cold (hard) boot. I only wish I had known that when I applied the firmware. At this point (several days and gigabytes later) I can’t say I could be any happier with the Hammer Storage MyShare™. It turned out to be a lot better than I had expected. If you are looking for a back up device or strategy, you might want to consider one of these little things.Labels: Information, Misc
posted by Brad Prendergast at 7:34:00 AM
(2 comments)
Links to this post
Permalink

Sunday, September 16, 2007
 Who is copying your web site?
In the academic world (and various other worlds as well) there are a number of tools that are used to detect plagiarism. Plagiarism comes in many forms and if you have a published web site it could be easy for some of your content to show up on another page. The vast number of web sites published makes it difficult to search them all. I came across this cool web site the other day. CopyScape is a web site that allows you to search for copies of your web site on the Internet. I have only experimented with the free CopyScape service, and it seems pretty cool. Labels: Information, Internet, Misc
posted by Brad Prendergast at 10:13:00 PM
(0 comments)
Links to this post
Permalink

Saturday, March 03, 2007
 Code Monkey
As full as my schedule is, I often look for some mindless entertainment and find myself randomly browsing YouTube or Google Videos. I prefer to browse the ‘stupid humor’ videos (who doesn’t know about Leroy Jenkins?). You know what I am talking about, those little things that make you laugh hysterically as the sane world wonders – why? Similar to why I think the shirts on ThinkGeek.com are hilarious. There are a number of videos available for a creative song by Jonathan Coulton. I think he did a great job on the song, and if you get a chance take a look at some of the videos that were put together for the song. There is even a live version. Labels: Information, Misc
posted by Brad Prendergast at 6:39:00 PM
(2 comments)
Links to this post
Permalink

Sunday, January 21, 2007
 PPCTL.DLL is damaged and could not be repaired.
Well, it was that time again for my good old Anti-Virus & Anti-Spyware software subscription to expire. Having used the same product for a while, I wanted something that had a low impact and wasn't so invasive to my system. The more and more hardware machines come with, it seems the more and more resources these Anti- programs want to take use. Having decent experience with earlier versions CA's ETrust software I decided to grab the three pack of CA Internet Security Suite. To make a long story short, I ended up having problems installing and running the Anti-Spyware piece of the Suite (a while back CA purchased PestPatrol). Only one out of the three machines I installed the software on went in without any issues. For the two that did give me some grief, fortunately it was the same problem. On these machines I received a message indicating that 'ppctl.dll is damaged and could not be repaired'. This error was displayed during installation and attempted operation of the software. I searched the 'Net' to see if I could dig anything up on this error. No such luck. I then went off on my own little investigation. By default, the ppctl.dll is installed in two locations; the C:\Program Files\CA\CA Internet Security Suite\CA Anti-Spyware and C:\Program Files\Common Files\Scanner folders. My first step was to verify the permissions that were set on these folders; to ensure that the Administrators Group and SYSTEM Account had full control over these folders. After this was verified (ie changed) I was hoping to be out of the woods-- well I wasn't. After digging a bit further I noticed there is also registry key ( HKLM\SOFTWARE\Classes\ppctl) that references the ppctl.dll. Just as I had the folders I verified the permissions on the registry key. In reviewing the permissions I noticed the Administrators Group and SYSTEM Account had Read-Only access to the key. Getting creative I decided to give both accounts Full-Control to the registry key. Once I granted full control to the Administrators Group and the SYSTEM account on the HKLM\SOFTWARE\Classes\ppctl registry key all my headaches went away.  Labels: Information, Tech
posted by Brad Prendergast at 6:17:00 PM
(18 comments)
Links to this post
Permalink

Friday, January 19, 2007
 Google Mobile SMS
Having recently picked up a new phone and turning on unlimited SMS, I have a new fascination with ' texting'. SMS has been around for a while, but I never really got into it. After using it for a while it is difficult to imagine being without IM while 'out and about'. If you need to get a quick 'ping' texting often is a bit easier and quicker than a phone conversation. Another cool SMS tool I came across is Google Mobile SMS. This is a neat little way to get weather, directions, phone numbers and other results while you are away from your computer. Labels: Information, Internet, Tech
posted by Brad Prendergast at 10:02:00 PM
(0 comments)
Links to this post
Permalink

Monday, January 01, 2007
 Running a .NET Framework application from a network location
If you're anything like me, when deploying certain applications in a corporate environment you like to run your applications from a network resource. This often allows for the easy application maintenance of updates and changes. When deploying a dotNET application it isn't always as easy as placing a shortcut on the workstation or running the application from a network drive. With the additional security found in the .NET Framework it is often necessary to configure your application to run from a network location. This MSDN article explains how. The Grant permission to the application section is the part of interest. Labels: How-To, Information, Tech
posted by Brad Prendergast at 11:47:00 AM
(1 comments)
Links to this post
Permalink

Monday, August 28, 2006
 Live Writer Test
Well, I figured I'd give it a shot. After reading about it a bit I decided to see how Windows Live Writer worked for publishing this blog. This is my first (and only so far) post and the look and feel is pretty 'simple'. Let see how it does with pictures:
That seems pretty painless, how about some code: procedure TForm1.acAboutExecute(Sender: TObject); var frmAbout: TAboutBox; begin frmAbout:= TAboutBox.Create(nil); try frmAbout.Image1.Picture.Graphic:= Application.Icon; frmAbout.ProductName.Caption:= StrAppName; frmAbout.Copyright.Caption:= Format (frmAbout.Copyright.Caption, [StrCopyright]); frmAbout.Position:= poOwnerFormCenter; frmAbout.ShowModal; finally FreeAndNil(frmAbout); end; end; Now, we'll publish this and see how it looks. Labels: Apps, Information, Tech
posted by Brad Prendergast at 8:00:00 PM
(1 comments)
Links to this post
Permalink

Monday, July 24, 2006
 A bit, byte and word
Where the title came from, I have no idea. It is amazing what you find when you go through old text files. 33222222222211111111110000000000 10987654321098765432109876543210 --------------------------------10000000000000000000000000000000 2147483648 $80000000 -1000000000000000000000000000000 1073741824 $40000000 --100000000000000000000000000000 -536870912 $20000000 ---10000000000000000000000000000 -268435456 $10000000 ----1000000000000000000000000000 -134217728 $08000000 -----100000000000000000000000000 --67108864 $04000000 ------10000000000000000000000000 --33554432 $02000000 -------1000000000000000000000000 --16777216 $01000000 --------100000000000000000000000 ---8388608 $00800000 ---------10000000000000000000000 ---4194304 $00400000 ----------1000000000000000000000 ---2097152 $00200000 -----------100000000000000000000 ---1048576 $00100000 ------------10000000000000000000 ----524288 $00080000 -------------1000000000000000000 ----262144 $00040000 --------------100000000000000000 ----131072 $00020000 ---------------10000000000000000 -----65536 $00010000 ----------------1000000000000000 -----32768 $00008000 -----------------100000000000000 -----16384 $00004000 ------------------10000000000000 ------8192 $00002000 -------------------1000000000000 ------4096 $00001000 --------------------100000000000 ------2048 $00000800 ---------------------10000000000 ------1024 $00000400 ----------------------1000000000 -------512 $00000200 -----------------------100000000 -------256 $00000100 ------------------------10000000 -------128 $00000080 -------------------------1000000 --------64 $00000040 --------------------------100000 --------32 $00000020 ---------------------------10000 --------16 $00000010 ----------------------------1000 ---------8 $00000008 -----------------------------100 ---------4 $00000004 ------------------------------10 ---------2 $00000002 -------------------------------1 ---------1 $00000001Labels: Information, Misc, Tech
posted by Brad Prendergast at 7:38:00 AM
(1 comments)
Links to this post
Permalink

Sunday, July 23, 2006
 Too much?
Don’t get me wrong, I follow and embrace technology probably more so than the next guy, however, is there a point where technology gets useless? Techno-savy is cool. Just because something can be done, does it have to be? Some stories make me wonder what the cost/benefit (and profit) ratio is of some technological implementation. Take http://news.yahoo.com/s/ap/20060723/ap_on_hi_te/laundry_of_the_future for example. It is almost a calling for the ‘Top 10 useless technological implementations’. How about a toaster that calls your cell phone when the toast is done? or a coffee pot that calls you when the coffee is done brewing? Labels: Information, Misc
posted by Brad Prendergast at 7:11:00 AM
(1 comments)
Links to this post
Permalink

Saturday, May 27, 2006
 Custom Word Fields
The use of Field information in Microsoft® Word allows for easier maintenance of your documents. Using fields, you can include references to document property information within your document. This avoids the need to update changing property information that is referenced within a document ( title, author, etc...). Using fields with templates makes format standardization a bit more exciting. Besides the standard fields, you can also reference your custom document properties. Personally, I often reference custom document revision information.  
To reference custom properties in your document you first need to set them up. In my case, I use MAJ_REV and MIN_REV, both of these are of type Number.  In your Word document move the cursor to the location where you would like to insert your custom property and press CTRL+F9. This will insert a Word field denoted by brackets (note that you cannot type these in yourself, you must press CTRL+F9 to indicate it is a field). Between the brackets type DOCPROPERTY followed by the property name you would like to reference. While the cursor is still on the field, press F9 to update it and there you go…. Labels: Apps, How-To, Information, Tech
posted by Brad Prendergast at 8:09:00 AM
(0 comments)
Links to this post
Permalink

Thursday, May 18, 2006
 Event Log (Part 1)
A few months back I made a couple of posts ( Part 1, Part 2) regarding Microsoft’s LogParser. Since that time I have been getting my fair share of use from it. Recently, I had the need to analyze the Event Logs on a number of machines. There is the EventLog Snap-In for MMC; however this really doesn’t allow you to do more than basic viewing or broad filtering of events. (One thing I will give it is that it allows for the connection to the event logs on remote machines. Admittedly, I do have a saved console with about 5 or so machines that I browse through the logs of often.) Once again this Free Gem came to my rescue. One of the input sources of LogParser is the EventLog (EVT) Input Format. With LogParser you can select EventLog data (using a SQL like syntax) from a local or remote EventLog and output it to one of LogParser’s output format. The EVT fields available for selection are EventLog, RecordNumber, TimeGenerated, TimeWritten, EventID, EventType, EventTypeName, EventCategory, EventCategoryName, SourceName, Strings, ComputerName, SID, Message and Data.With these fields a number of data extractions can be put together rather quickly. Here are a couple of basic ones (The charts are the actual charts created by LogParser): logparser -o:DATAGRID "SELECT EventTypeName, EventCategoryName, TimeGenerated, SourceName, ComputerName FROM Application"  logparser -O:CHART -chartType:Column3D -chartTitle:"Count of Events" -values:ON -legend:OFF "SELECT TOP 20 SourceName, COUNT(SourceName) AS Count_Events INTO Events.gif FROM Application GROUP BY SourceName ORDER BY SourceName"  logparser -o:DATAGRID "SELECT EventTypeName, EventCategoryName, TimeGenerated, SourceName, ComputerName FROM \\COMPUTERNAME\Security" logparser -o:DATAGRID "SELECT EventType, EventTypeName, EventCategoryName, Count(EventTypeName) AS Entries FROM Security GROUP BY EventType,EventTypeName,EventCategoryName"  logparser -o:CHART -chartType:Pie3D -chartTitle:"Event Categories" -values:ON -legend:ON "SELECT EventCategoryName, Count(EventTypeName) AS Entries INTO EVENT.GIF FROM Security GROUP BY EventCategoryName"  I have found the LogParser help file quite useful. There are plenty of examples, of which one explains how to do percentages. I have also created an app using the EventLog Class that allows me to work with logs. This was my maiden voyage with this class and hopefully I’ll post on my experience shortly. I also hope to tighten it up for a more ‘universal use’ and post it for download. Labels: Apps, Information, Tech
posted by Brad Prendergast at 7:55:00 PM
(0 comments)
Links to this post
Permalink

Wednesday, May 17, 2006
 It is the Concept that Counts
The other day I had probably one of the better conversations I’ve had in a long time. The topic of the conversation was software development. This is one topic I could talk about non-stop and it also tends to bring out the conversationalist in me. The dialog was a friendly exchange was with a software developer that works primarily with development environments different from the ones I use (The opportunity to broaden horizons and discuss another viewpoint is one that I will rarely pass up). In an effort to keep this short, the gist of the conversation focused on the concept that learning/understanding a development language (syntax) is similar to learning/understanding spoken language. This is a concept that I feel strongly about and fortunately, the other participant of the conversation felt as strongly as I do, leading to a very pleasant, yet intense conversation. Although it is possible, one does not typically memorize spoken language, rather they understand it, live it and feel it to a point where it becomes completely natural. Having an understanding of the concept of nouns, verbs and adjectives and the underlying knowledge of expression (a natural understanding of why and what to express) allows for the fluid ad hoc building of sentences and dialog. The ability to broaden one’s vocabulary also becomes easier. Memorizing what to say would result in a painfully drab and yet often out of place conversation. Everyone has a ‘native tongue’, however the understanding and feeling of the basic concept of how to express oneself in certain situations allows for the cross-over of expression in other languages. Again, understanding (almost naturally) the concept of what to say allows one to figure how to translate that into another language for communication and expression of the concept. After all, most languages are similarly related and tend to result in the communication of expression. This same concept can be easily applied to software development environments/languages. Having a baseline conceptual (logical) understanding of what one is looking to achieve and how it all works is the foundation of developing an application; achieving a desired result, that can be built upon. With the understanding of the overall concept of what needs to be done (logically), a developer can generally search out the concept and find away to express that in another development language, whether it is Delphi®, Visual Basic, C, ASP, T/SQL, P/L SQL or whatever. After all, a development language is just that, isn’t it?Well, enough of my rambling (I hope this makes enough sense to get some point across) for today I am off to play with some .NET EventLog stuff. Labels: Information, Tech
posted by Brad Prendergast at 6:38:00 AM
(0 comments)
Links to this post
Permalink

Tuesday, April 04, 2006
 Managing my Newsgroups
I’ve been participating in newsgroups for many years. Newsgroups are a great way for members of a community to share and discuss information. Part of my daily ritual includes the reading/posting new messages on groups that I monitor. I used to use the Outlook Express newsreader to manage the newsgroups that I subscribe to. One of the major issues that I had with monitoring newsgroups was that depending on where I am and what I am doing I could be checking these newsgroups from one of four separate computers. Using Outlook Express, any post that was created after the last time I had checked the newsgroups on a particular computer showed up as a new message, regardless if they were read by me on another computer. This nuisance created the need to find a newsreader that would allow me to check newsgroups from separate computers without causing read messages to show up as new if I had already read them regardless of which computer was used. After poking around I decided to give Colin Wilson’s XanaNews a shot (I currently use XanaNews and I am extremely pleased with it and I would recommend it as a newsreader). A number of things drew me to this program one of the major things is that it was written with Delphi®. XanaNews doesn’t have any ‘written’ or ‘published’ instructions for using it on a removable storage device; however after some poking I did find all of the settings are stored in the HKEY_CURRENT_USER\Software\Woozle registry key. One of the options available in the registry and XanaNews configuration is the “Messagebase Directoryâ€. The Messagebase Directory is where the XanaNews message files are stored. I had mentioned before that I use my 1 GB SanDisk to store all my portable files. After some experimentation I found that if I set up XanaNews with all of my preferred settings on a computer that I could export the HKEY_CURRENT_USER\Software\Woozle registry key and import it into another computer and have all the same settings. The only thing that needs to be adjusted is the location of the message base directory, depending on which drive the USB Flash Drive is assigned. This allows me to manage newsgroup messages (both on and offline) from many computers without duplicating efforts. In the XanaNews directory on my flash drive I have the message base directory program executable and my exported registry file (that I update as needed). The only thing on my XanaNews wish-list is the option to allow for user settings to be stored to a disk file (ini) or the registry (I know it is open source). Other than that it is an excellent feature rich program and if you haven’t tried it, give it a shot. Labels: Apps, Information, Tech
posted by Brad Prendergast at 7:01:00 AM
(4 comments)
Links to this post
Permalink

 Meaningful Information
Did you realize that tomorrow at two minutes and three seconds past one o’clock the time and date will be: 01:02:03 04/05/06? Labels: Information, Misc
posted by Brad Prendergast at 6:33:00 AM
(4 comments)
Links to this post
Permalink

Saturday, March 18, 2006
 ARP! ARP!
(Sound like a seal?)
The Address Resolution Protocol (ARP) is used by the Internet Protocol (IP), specifically to map IP network addresses to the hardware addresses. Each Network Interface Card (NIC)/adapter has a unique Media Access Control (MAC) address. The MAC address is one way a computer can be identified. It is easy enough to get the MAC address for a local machine by entering the command ipconfig /all in a console window. This command shows detailed information for each adapter installed on a computer. The MAC address of an adapter is identified as the Physical Address. Easy enough, but how do you get this information for a remote machine?  Included with Windows® is a program by the name of arp.exe. Without getting too involved, keeping it simple, and assuming a basic understanding of networking, ARP.exe (console window) is used to display and modify the IP-to-Physical address translation tables. This command has a number of parameters, in particular the –a parameter displays the current resolution table entries. Basically, when you type arp –a each machine that an adapter ‘communicated’ with is listed in this table. Both the IP address and Physical Address are listed for each.  If there is an adapter that you are capable of connecting to and you do not see it the resolution table, initiate some ‘communication’ with it and check the resolution table again ( arp – a). Generally, I PING (Packet INternet Groper) the machines/adapters I want to get the information of before I look at the table. If you haven’t done so yet take a look at AddrMon. Labels: How-To, Information, Tech
posted by Brad Prendergast at 11:20:00 AM
(0 comments)
Links to this post
Permalink

Tuesday, March 14, 2006
 Easy Does It
Well, the commercials are everywhere (my favorite is the guy that gets stuck in front of the great wall) and well who can’t resist it? I am referring to the Staples® Easy button. I have placed one of these on my desk and hit it every so often and it really does work….. I am surprised nothing like this made its way to thinkgeek.com.  Labels: Information, Misc
posted by Brad Prendergast at 6:38:00 AM
(0 comments)
Links to this post
Permalink

Sunday, February 26, 2006
 Around the network of silken thread
Blogs are becoming a more and more popular part of the ‘ World Wide Web’. I think they are a great expression and communication medium. I browse through many blogs, and some grab my interest enough for me to visit daily. During this morning’s rounds I came across this blog posting. I think Jake discusses a number of key points in his posting. Labels: Information, Misc, Tech
posted by Brad Prendergast at 9:29:00 AM
(1 comments)
Links to this post
Permalink

Saturday, February 18, 2006
 Please Pick Me!
With this weekend’s Powerball Jackpot reaching $365 Million, who isn’t tempted to purchase a ticket or two. Let’s limit that question to those that are both geographically and physically capable of purchasing a ticket. I have never been a big lottery participant. When I do venture out to get a ticket, the troublesome task of picking the ‘winning’ numbers makes me sweat. I am a logical guy, and I try to come up with some sort of ‘logical’ reasoning behind my selection, which requires a lot of work. So, needless to say I always opt for the ‘quick pick’ route. That’s right, let the computer pick the numbers for me. Having a little extra time, after reading Marco’s book (for a second time) and having spent an abundant amount of time in Visual Studio in the past few weeks, I decided to whip something up with my favorite IDE. The results: a ‘Random Number Picker’ (notice the logo). Click here for the results. This random number picker (I am not looking for any debates on the randomness of the numbers) allows you to enter the number of numbers you would like returned as well as the upper and lower bounds of the numbers returned. If you want more of a ‘most popular’ number, each number’s percentage and number of times listed is also displayed. There are a couple additions I want to make over the next day or so, like an option to allow duplicate numbers or not – (hey, some lotteries allow it) and formatting for my browser of choice - FireFox (it looks fine in IE). After that I will post the source up. If anyone else has any suggestions pass them along….. Oh, and use of the random number generator for lotteries or any other ‘thing’ does not guarantee or increase your chances of winning anything. It is intended to be just one other way for me to pick numbers…. ‘Random Number Picker’Labels: Apps, Information, Internet
posted by Brad Prendergast at 5:29:00 PM
(0 comments)
Links to this post
Permalink

Sunday, January 15, 2006
 Adieu George!
Some years ago, on a trip to the city, I stopped at a corner market for breakfast. I ordered my breakfast sandwich and provided payment to the cashier. The cashier handed back change consisting of both bills and coins. One of the bills had a strange stamp that caught my attention. The stamp referred to an interesting website address. Being of the curious type I decided to view the page while I consumed my morning fuel. The site -- Where's George?! ®. This site allows you to track where your paper money has been and where it goes. This site only tracks US currency and has a brother, Where's Willy?! ®, for Canadian bills. I haven’t come across one for the Euro (does one exist?), but I could see how that would allow for more participation and interesting travel routes. The Where's George?! ® site reminds me of something I had done back when I was in elementary school. I tool a ledger book and jotted down the numbers of the dollar bills that crossed my path in an attempt to see if I ever encountered the same bill twice. I never did come across a repeat visitor and the task became arduous to do by hand and ledger book so it was short lived. I wish I had something like this back then. What's your George score? Labels: Information, Misc
posted by Brad Prendergast at 4:05:00 PM
(1 comments)
Links to this post
Permalink

Saturday, January 07, 2006
 Some Component Updates
The Delphi® development environment and language allow for the easy creation of custom components. This allows developers to expand upon existing or create new components in the search to facilitate the creation and maintenance of software applications. Over the years, like so many other users of Delphi®, I have created a number of components and posted them to share with the Delphi® community. As I work towards converting existing applications, there was a need to recompile and install component packages. Some minor changes have been made to most of the components, with the exception of TSHFileOp. The TSHFileOp component was basically rewritten to serve my needs in an easier way. I have also created a sample application (used for testing) using the TSHFileOp, TFileEdit and TDirectoryEdit components. The source code is available for these components allowing for further customization if they come close, but fall short of individual needs. Most of them have accommodations for .Net. There may be other versions of similar components available tangled in this vast place we call the Internet. There are a number of websites available for developers to share and/or browse through custom components and/or source code. Websites such as: Torry's Delphi PagesProject JEDIDelphi Super PageCode Central Delphi CityThese sites are not listed in any order and this list does not indicate preference over sites that are not listed. There are a lot of quality sites out there. Please feel free to add to the list. Labels: Components, Delphi, Information, Tech
posted by Brad Prendergast at 5:20:00 AM
(0 comments)
Links to this post
Permalink

Tuesday, January 03, 2006
 FTP Batch
File Transfer Protcol (FTP) is a quick way to transfer files between two computers. There are many FTP software programs, both the pay and free varieties, available. Windows® also includes a command line FTP program (ftp.exe). In this GUI world many shutter at the thought of a command line application, however this one does have its advantages. For starters it is already included in the OS and doesn’t need to be installed. I attempt to not over complicate things and keep them clean and uncluttered. IMHO, the main advantage is the ability to process a text file that contains FTP commands. The parameter option to specify the text file to process is -s (to see the other parameter options at the command prompt type FTP -?). This feature is advantageous because you can set up FTP batch files that perform various transfer actions without the need to click a number of buttons or type a number of commands. Login information can be included in the text file allowing access to those FTP locations that require user authentication. I have a number of batch files that I frequently use to transfer data. I have also set some up with the Windows® task scheduler for unattended processing. A batch file could look something like this: ftp -s:somefile.txt
In the somefile.txt file: open 192.168.100.1 username password
cd images lcd images send *.gif
The text file commands are passed a line at a time for processing. As displayed in the above example a username and password can also be passed, as those are typically the first two prompts after an FTP server connection is opened. The text file can contain any of the valid FTP commands (type ? at the ftp> prompt for a list of valid commands). I tend to be brief in my postings but hopefully you can see the value in the ability to do this. If you have any additional input I’d love to hear it. Labels: Apps, Code, How-To, Information, Misc, Tech
posted by Brad Prendergast at 6:32:00 PM
(1 comments)
Links to this post
Permalink

Friday, December 09, 2005
 Where’s my briefcase? (Part 2)
In Part 1 I discussed how you can use a ‘ Briefcase’ to synchronize files with a storage device. If you are running Windows® XP Professional you have another option for synchronizing your files. This feature is appropriately named ‘Offline Files’. Offline files are primarily geared towards network file synchronization with you local storage. This is ideal for laptop users who travel and need to work as if they were in the office. I have used both Briefcase and Offline Files extensively and overall, I prefer the briefcase method. One huge benefit of offline files is that this can be set for automatic synchronization. Sort of ‘set it and forget it’ type thingamajig. One additional thing to note about offline files is that this can be managed via Group Policy so a network administrator may disallow their use or preset the options. I had intended on writing the steps for enabling offline files but I found a nice link that perfectly describes the process; making it a whole lot easier for me. Click HERE for the steps. Labels: Apps, Information, Tech
posted by Brad Prendergast at 10:12:00 PM
(0 comments)
Links to this post
Permalink

Tuesday, December 06, 2005
 Where’s my briefcase? (Part I)
In this hectic world of ours one may find themselves frequently traveling from place to place. With computers an integral part of every day life, how do you work with your files while you’re away from your main workstation? Do you simply copy and replace them when you return? What if you need to do this often? What if there are many files edited, added and/or deleted? Fortunately there are two quick ways to accomplish this sort of thing built right into Microsoft® Windows®. You have a choice of a Briefcase or using Offline files. Both of these options allow you to synchronize your files with copies on another storage device. You can edit either version and synchronize them bringing the contents in sync. This is also a nice method of a sort of quasi-backup of your beloved files. The USB flash drives are perfect for offline storage. They are compact and capable of holding large amounts of data. I personally use Briefcase with my 1GB SanDisk Cruzer mini. The creation of a Briefcase is fairly simple. Open up Windows® Explorer and browse to the location where you would like to store you briefcase (this is where your synchronized copy will be kept, not the original location).  After browsing to the desired location select File --> New --> Briefcase from the menu items. A new briefcase object will appear on your device. Rename the newly created briefcase to something meaningful or appropriate. .  Next find the files/folders that you would like to keep synchronized. Select those objects and copy them. Browse to your newly create briefcase and copy these files/folders inside. Tada! This is pretty much all that is necessary to set up your files for synchronization. Once you have a briefcase set up you can take your storage device with you and work on your files while you are away. When you return to your main workstation you simply need to synchronize your files. To synchronize your files open up your briefcase and select Briefcase --> Update All from the main menu. A dialog will appear showing you the changes that are about to take place. You can keep the results as is, or change the direction of synchronization or even skip synchronization changes. At first glance, to some, this may seem complicated. However, once you start using briefcases (yes, you can have multiple on one device for different locations, I use many. I even have one to synchronize my bookmarks on all the different computers that I use.) you’ll quickly become comfortable with them. They’re a great way to ensure you can access your files while you are away from you main workstation. It is also a nice way to keep a backup of those must have files. Labels: Apps, Information, Tech
posted by Brad Prendergast at 8:21:00 AM
(0 comments)
Links to this post
Permalink

Saturday, November 26, 2005
 Ode to Backup
Backing up your files is probably one of the most important things you could do. There is nothing worse than the feeling of loosing everything once your computer is on the fritz (I have received dozens of frantic phone calls asking how to, or if I can restore files). There are many commercial, shareware and freeware backup programs that are capable of accomplishing appropriate backups. XCOPY has been included in the Microsoft® OS family since the DOS days. This little command prompt program copies file and folder information based upon the selection of a number of parameter options. This utility is lightweight and consists of a simple executable file. This is actually what I use for incremental backups of my personal system. Open a command prompt and type xcopy /?. This displays a list of the xcopy.exe parameter options and their meaning. From the command prompt you can easily type in your xcopy command with the necessary parameters and you’ll be on your way. Personally I have a small batch file called backup.bat. This eliminates a lot of typing and the need to remember the options. This batch file is simple but extremely effective in giving me copies of the files I need. It consists of one line: xcopy *.* c:\wutemp /S /C /I /M /F /R /H /K /Y /EXCLUDE:exclude.txt
My backup.bat file is located in the root of my profile directory, for this example we’ll say C:\Documents and Settings\BP. If you follow the parameters you’ll notice that I copy all the changed (archive bit set) files to C:\wutemp. This batch file will process the current folder and with the appropriate parameter set ( /S) all subfolders as well. Once the backup batch is complete I them manually copy the files to DVD. If you are running a ‘full’ backup you would remove the /M parameter option. I am fairly structured and organized when it comes to my files. I try to get everything that I need somewhere within the tree of my profile directory. Most applications these days store personal information in the Application Data of your profile directory or allow you to specify a ‘storage’ location. A lot of applications also store temporary or unimportant (unimportant in the sense of need to restore files in the event of a need to recover files) files in your profile directory as well. This is where the /EXCLUDE parameter comes into play. After all, it is really wasteful both time and space wise to back up all those temporary files. My exclude.txt file looks something like this: \DOCUME~1\BP\Templates \DOCUME~1\BP\Start Menu \DOCUME~1\BP\Recent \DOCUME~1\BP\SENDTO \DOCUME~1\BP\PrintHood \DOCUME~1\BP\NetHood \DOCUME~1\BP\Windows \DOCUME~1\BP\Cookies \DOCUME~1\BP\MY DOCUMENTS\MY MUSIC \DOCUME~1\BP\LOCAL SETTINGS\TEMPORARY INTERNET FILES \DOCUME~1\BP\LOCAL SETTINGS\TEMP \DOCUME~1\BP\LOCAL SETTINGS\HISTORY
This is just an example on how I use XCOPY to back up my important files on my personal computer. In my opinion this is fast, lightweight and effective when it comes to storing those must have files. I hope this gives you some ideas on how you could possibly implement a simple backup solution. Labels: Apps, How-To, Information, Misc, Tech
posted by Brad Prendergast at 5:53:00 AM
(0 comments)
Links to this post
Permalink

Saturday, November 19, 2005
 Free Gems Do Exist (Part 2)
As time progresses I am becoming far more comfortable and impressed with Microsoft’s Log Parser. For one thing, I am awed at how it processes so fast. I processed 404 logs (over 4.6GB) in seconds, not minutes or hours as I had first thought. The command line syntax is also quite powerful. This tool allows you to precisely and quickly analyze data without a lot of overhead. I had mentioned in the first post that another bonus is the COM interface. All the power of this command-line tool can be wrapped in a nice GUI interface, which is exactly what I had done. After reading about the interfaces in the accompanying help file I imported the Type Library for Log Parser into Delphi® (I have Delphi® 5 and Delphi® 2005 installed on my development machine and I worked with Log Parser in both versions) and installed the new components. One thing to note is that the TLogQueryClass is the only class that seemed to work properly after importing the library. Each of the Input and Output format components kept on reporting invalid log formats when I passed them to the TLogQueryClass method. I tried numerous ways to get them working. This was/is more of a nuisance more than anything else. The help file clearly lists (I have also included them in this source) the classes which can easily be created as variants. To get started with a simple example of how to use the Log Parser interfaces I started a new application and placed a TFileEdit, TStaticText, TListBox and three (3) TButtons on the TForm. Rather than go into a verbose explanation I figured I’d just post some sample code and let the code explain what is going on. Here is a wonderful byproduct of living in the 21st century; there is no guarantee or warranty, expressed or implied, concerning the applicability of code and techniques included in this example. This example code is supplied AS IS. If you wish to use this code or technique, it is your responsibility to test and certify the code in your project. Button1 (caption:= ‘Output’) shows how to use an InputContextClass and OutputContextClass. Button2 (caption:= ‘LogParser Version’) shows how to retrieve the version information from TLogQueryClass. Button3 (caption:= ’Record’) shows how to retrieve the information into a RecordSetClass from an InputContextClass and iterate through each of the records. In this example I add each entry to a list box. uses ComObj;
{ Input Formats: ADS : MSUtil.LogQuery.ADSInputFormat BIN : MSUtil.LogQuery.IISBINInputFormat CSV : MSUtil.LogQuery.CSVInputFormat ETW : MSUtil.LogQuery.ETWInputFormat EVT : MSUtil.LogQuery.EventLogInputFormat FS : MSUtil.LogQuery.FileSystemInputFormat HTTPERR : MSUtil.LogQuery.HttpErrorInputFormat IIS : MSUtil.LogQuery.IISIISInputFormat IISODBC : MSUtil.LogQuery.IISODBCInputFormat IISW3C : MSUtil.LogQuery.IISW3CInputFormat NCSA : MSUtil.LogQuery.IISNCSAInputFormat NETMON : MSUtil.LogQuery.NetMonInputFormat REG : MSUtil.LogQuery.RegistryInputFormat TEXTLINE : MSUtil.LogQuery.TextLineInputFormat TEXTWORD : MSUtil.LogQuery.TextWordInputFormat TSV : MSUtil.LogQuery.TSVInputFormat URLSCAN : MSUtil.LogQuery.URLScanLogInputFormat W3C : MSUtil.LogQuery.W3CInputFormat XML : MSUtil.LogQuery.XMLInputFormat
Output Formats: CHART : MSUtil.LogQuery.ChartOutputFormat CSV : MSUtil.LogQuery.CSVOutputFormat DATAGRID : MSUtil.LogQuery.DataGridOutputFormat IIS : MSUtil.LogQuery.IISOutputFormat NAT : MSUtil.LogQuery.NativeOutputFormat SQL : MSUtil.LogQuery.SQLOutputFormat SYSLOG : MSUtil.LogQuery.SYSLOGOutputFormat TPL : MSUtil.LogQuery.TemplateOutputFormat TSV : MSUtil.LogQuery.TSVOutputFormat W3C : MSUtil.LogQuery.W3COutputFormat XML : MSUtil.LogQuery.XMLOutputFormat }
procedure TForm1.Button1Click(Sender: TObject); var szQuery: WideString; pObjectInput, pObjectOutput: variant;
begin szQuery:= Format('SELECT c-ip FROM %s GROUP BY c-ip',[FileEdit1.Text]);
pObjectInput:= CreateOleObject('MSUtil.LogQuery.W3CInputFormat'); pObjectOutput:= CreateOleObject('MSUtil.LogQuery.DataGridOutPutFormat');
LogQueryClass1.ExecuteBatch(szQuery,pObjectInput,pObjectOutput);
pObjectInput:= Unassigned; pObjectOutput:= Unassigned; end;
procedure TForm1.Button2Click(Sender: TObject); begin StaticText1.Caption:= Format('LogParser Version %d.%d',[LogQueryClass1.versionMaj,LogQueryClass1.versionMin]); end;
procedure TForm1.Button3Click(Sender: TObject); var szQuery: WideString; pObjectInput, LogRecordSet, oRecord: variant;
begin szQuery:= Format('SELECT c-ip FROM %s GROUP BY c-ip',[FileEdit1.Text]);
pObjectInput:= CreateOleObject('MSUtil.LogQuery.W3CInputFormat');
LogRecordSet:= LogQueryClass1.Execute(szQuery,pObjectInput);
while not LogRecordSet.atEnd do begin oRecord:= LogRecordSet.GetRecord; ListBox1.Items.Add(oRecord.GetValue(0)); { ListBox1.Items.Add(oRecord.ToNativeString(',')); } { The ToNativeString method retrieves the entire record with each value separated by the specified delimiter. }
LogRecordSet.MoveNext; end;
pObjectInput:= Unassigned; oRecord:= Unassigned; LogRecordSet:= Unassigned; end;
If anyone else does anything with this interface I welcome the posting of examples. This is it for now, time to go off and expand upon the BPACLer application. Labels: Apps, Code, Delphi, Information, Tech, WIN32
posted by Brad Prendergast at 8:17:00 AM
(1 comments)
Links to this post
Permalink

Thursday, November 17, 2005
 Free Gems Do Exist (Part 1)
This is another post that I write with much enthusiasm and excitement. Recently, I was in search of a versatile log analyzer. In the past, I have used AWSTATS for analysis if IIS logs. In this instance, my needs involved the analysis of ISA log files. AWSTATS is an excellent open-source Web and E-Mail log analyzer (that I highly recommend, and often do), but it just didn’t give me what I was looking for when it came to ISA logs. My journey through the Internet, via Google, in search of an ISA log analyzer ensued. I read through many feature lists and articles, viewed a number of screenshots, for various programs that were capable of processing ISA logs. Then it happened. I stumbled across one of the most flexible, free forming analyzers I had come across. This program also has the feature of being absolutely FREE. The program I am talking about is Microsoft’s Log Parser. Yes, Microsoft does have those hidden GEMS that are free. At first glance, this command-line utility does appear overwhelming and complicated. Once I dug into its functionality and discovered its wide range of use, the only overwhelming feeling I had was excitement. This command-line utility can extract information from many common log ‘file’ types. Log Parser also includes a variety of output options (NAT, DATAGRID and CHART are my favorite). The data that is outputted is determined through a SQL like syntax, which is very powerful and FAST. I was able to process inquiries across large (individual) log files, in a directory, in a matter of seconds ( 600K records in multiple files took under 5 seconds to process). This program handles such a range of log ‘file’ types that I find myself using it constantly throughout the day. A couple basic examples of Log Parser’s use are:   Log Parser is also accessible via COM interface. Once I came across this information in the help file my excitement level raised to a new high. The power of this command-line utility can be easily ‘wrapped’ in a GUI interface. I am a Delphi fanatic, as many know, and love to incorporate it into everything. After reading up on the Log Parser classes I quickly imported the Type Library and threw together a sample application. Unfortunately, this is long enough as it is and the sample Delphi code will have to wait for Part 2 of this posting… In the meantime I highly recommend downloading Microsoft’s Log Parser and becoming familiar with it. Once you do I am sure you will use it often. Labels: Apps, Information, Tech
posted by Brad Prendergast at 8:29:00 PM
(0 comments)
Links to this post
Permalink

Monday, November 14, 2005
 What’s in a word?
Language is truly a fascinating form of communication. The way individual words have meaning and that those same words can be put together to form sentences is ingenious. Have you ever thought about the origin of language? Who came up with the different words and their meanings? A few years ago I started browsing through the dictionary for additional words to add to my vocabulary. The English language is comprised of an abundance of words, some of my favorites include: malodorous, pusillanimous, recreant, fustigate, nescience and panjandrum. (There are many more, however, that would force this to display well beyond physical limits.) Through my journeys I was elated when I had come across the Merriam-Webster Online Dictionary. Not only does this site contain a searchable dictionary and Thesaurus, but it also includes a Word of the Day. What better way is there to increase your vocabulary? The Merriam-Webster Word of the Day is available online and you can also subscribe to the Word of the Day list and have the word delivered to your e-mail daily. The listing includes the word, its definition and a sample use of the word. I have entries in my Word of the Day email folder that date back to 2003. I am one that actually tries to use the word of the day in my normal course of action. I look forward to seeing what word appears each morning. I highly recommend subscribing to the Merriam-Webster Word of the Day. It is a great way to pick up some of the neat words within the English language. Labels: Information, Misc, Tech
posted by Brad Prendergast at 7:39:00 PM
(0 comments)
Links to this post
Permalink

Friday, November 11, 2005
 Delphiâ„¢ Components and Freeware Updates
I often reflect back on a business trip I had made to Mexico. I was ‘ fortunate’ enough to not be in a so called ‘tourist area’, but the actual inner-sanctum of the country. One evening on the way to a local dining delight I asked our host if we could drive around and see authentic scenery and culture. By US standards, most people had nothing. There were cinder block houses with open window and doorways. I even thought I saw a few cardboard box expansions. One thing that I did notice was a sense of family and content. Most seemed happy with just that and their few material possessions. Most of the residents I had come across were very relaxed and happy to enjoy their family and health. There was a definite lack of pressure and 'rat' race to constantly get ahead (and obtain more). The older one gets, the faster the perception of time moves along. Seasons come and go in the blink of an eye, without most evening noticing. Which is culturally correct the appreciation of what you have or the constant pursuit and wanting of more?
-=-=-=- Today’s updates include two Delphi™ Components and one of the Freeware utilities listed on this website. TDBDateTimePicker has been updated to correct an issue that would cause the value to not be updated when you scrolled through a recordset. The correct value was stored; it was just the value not being displayed unless you were in a state of dsEdit. TDBSpinEdit has also been updated. This update includes a change to the display (not stored) value on a new record. Also corrected was an issue that forced the need to click the up or down button twice to move the value. This is because the first would put the State to dsEdit and the second changed the value. This is all done on once click now. BPACLer is the Freeware utility that has been updated. A number of minor enhancements and adjustments were made. The most notable enhancement is the ability to print the ACL information. A Check Version option has also been added to the Help menu. This allows you to check if you have the most current version of the software without the need to constantly check this website. This version checking does not send any information. It simply queries (GET) a web document containing product version information and compares it to your version. It is basically the equivalent of browsing and reading a web page. I am pleased with the feedback I have received regarding this utility. If you have any comments or suggestions regarding this, or anything listed on this website please let me know. Labels: Apps, Components, Information, Tech
posted by Brad Prendergast at 12:48:00 PM
(0 comments)
Links to this post
Permalink

Saturday, November 05, 2005
 Shareware: APrintDirect version 5.1.2.7 available
 An update to the popular shareware application APrintDirect is now available for download. APrintDirect is a feature rich 32-bit utility that allows you to easily print or save a customizable listing of the files contained in any folder ( directory) on your computer. A number of enhancements and internal adjustments have been included in this latest release (see the history section of the help file). Notable enhancements include: The addition of a parameter option was intended to allow for APrintDirect to be used as a SendTo option from Windows® Explorer (for information on setting up a SendTo shortcut visit My Send To). APrintDirect now makes it easier to ensure that you’re using the current version through a Check Version option from the Help Menu. A sortable file Owner column has been added to the list of available output columns. Total file, size and folder count option has been added back to the listing. Existing users should take advantage of the latest APrintDirect enhancements by upgrading to the latest version. If you have not yet tried APrintDirect download it today and try a fully functional version free for 30 days. As always if you have any questions, comments or suggestions about APrintDirect please let me know. User feedback is vital to the continued development of quality software. Labels: Apps, Information, Tech
posted by Brad Prendergast at 9:57:00 PM
(0 comments)
Links to this post
Permalink

|
|