Lessons learned in 2005

Saturday, 31 December 2005 19:12 by Greg

There have been a number of experiences in my professional and personal life this past year that revealed a number of lessons.  When you think of these, it's pretty straightforward and obvious, even to the point of saying "well, duh!"  These are fully applicable to our work lives as well as our personal lives.

Nothing happens by accident.  No matter what, everything happens for a reason.  Consider the so-called butterfly effect where seemingly unrelated actions in one place affect another.  Clients and projects are discovered because we seek them out, and make ourselves available to be found.  Improvements to software occur as a result of experiences, particular bad experiences no one wishes to repeat.  Our relationships (work and personal) grow or die based on the amount of effort placed into them; in many cases, a lack of work on a relationship (or no communication) can mean the end.  Remember the attiage "no news is good news?"  You can't rely on that; "no news IS bad news".  Even miracles happen because of prayers behind them.

This is a pretty cool discovery, if you buy into it.  It can mean that, no matter what, you CAN make a different and shape the future, no matter what it may appear today.  It also comes with the burden and responsibility that one must make things happen (or, create situations that allow things to happen).  And that can lead to a great deal of frustration when our reality is disjoined with our desires, which leads me to my next lesson.

Manage your expectations.  When you think about it, there is a greater chance of having positive experiences than not.  When an expectation is set (X action will yield Y result) there are three possible outcomes; that expectation is met (I got the raise of an expected amount), the expectation is exceeded (I got a raise, plus sweet dual-display LCD's for my desk!).  The experience is almost always a success because what we hoped and wanted to happen did (no, I didn't get dual LCD's :( ).  What creates problems is when expectations are not met (I got a rock!).  Failing to meet an objective means a project isn't going the intended direction, which creates stress and tension (even a threat of security).  We expect our employers to treat us a certain way; when they don't it creates friction.  We expect software to behave a certain way; when it doesn't, we (as software developers) look bad, get frustrated, and may choose to not use that software.

There is this grey concept I've talked about in my seminars and with my clients, about setting "realistic expectations".  When a client expects the world and gets a rock, you bet its going to cause problems.  But maybe they really believed they were getting the world, even when their words and action led to the rock.  This is why open and honest communication is so important to managing a project, or any relationship.  When communication is "political", "controlled", or with any obstacle there increases the chances of expectations being missed by both sides.  It can take organizations a great deal of time to adapt to "over-communicating" intentions, status, and information. 

This leads me to a wonderful quote that I am unable to attribute to its author.  I found it on a slide on a PowerPoint presentation, and have it hanging over my desk.  I think it needs to be at home as well:

It is far easier to act yourself into a new way of thinking than to think yourself into a new way of acting.

May 2006 be filled with peace and joy, realistic expectations, and positive actions.

 

Tags:   ,
Categories:   Personal
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Free, legal downloadable old games and how the Internet works.

Tuesday, 20 December 2005 10:12 by Greg

This is how the Internet works:

I was reading an article from my friend Frank on the naming of Bill and Melinda Gates as Time Magazine's people of the year (along with Bono).  He went on to mention that Melinda was the project manager of Microsoft Bob, one of Microsoft's more humerous offerings.  His link lead to the all knowing Wikipedia article on Microsoft Bob, which at the bottom has a see also link to Abondonware, a intersting topic on who technically owns software (particularly games) when the authors go out of business and do not transfer the copyright to another legal entity.  The bottom of the page lists a number of games that are legal to download, but also contains a link to another site listing even more.

Therefore, the nomination of Bill and Melinda Gates as Time Magazine's people of the year is a indirect endorsement to downloading free games.

 

 

Tags:  
Categories:   Personal
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

A new *must read* for developer types

Monday, 19 December 2005 11:12 by Greg

http://www.thedailywtf.com/

What a great site!  Code listings and commentary on random/deliberate acts of genius/stupidity in the world of software development!

Tags:  
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Six quick steps to help with PC security

Tuesday, 13 December 2005 10:12 by Greg

It seems my holiday “vacation” to go see friends and family back in the Chicago suburbs is turning into one giant service call for several computers.  That’s okay, really, as its something I enjoy doing.  Just seems a little funny to me (the curse of nerd-dom).  Folks have let me know many of their problems, and a lot of the work ahead has to do with fixing issues related to spyware and viruses, and then securing the computers to prevent future problems.

Here is a reference for everyone (and myself) of some general steps to take with each PC that is connected to the Internet.  Before we get started, if you are thinking “who cares” about this, visit my favorite friendly port scanner at this link.  See how vulnerable your system is:

https://www.grc.com/x/ne.dll?bh0bkyd2

#1.  Use a password on your account.  I know, it’s a home computer, why bother?  Well, for one thing, unless you wouldn’t mind publishing everything on your computer on the Internet, USE A PASSWORD.  This is the final level of defense if someone manages to penetrate all your other security measures.  Its simple, its easy, just do it.

#2.  Use a router.  Even if there is only one computer connected to your broadband (or dial-up!) connection, use a router.  Doing so will implement something called Network Address Translation, or NAT.  A router acts as an in-between you and the Internet, so you are not directly connected. 

#3.  If using a wireless network, secure it!  Its surprisingly easy to connect to someone else’s unsecured network in the neighborhood, and if you can do that (and they don’t have passwords on their computer, or use a router), guess what you can do?  Read the documentation that came with your wireless router about implementing security.  At a minimum:

  • Encrypt the connection.  This scrambles all the traffic flying between your computer and your neighbors.  It essentially password-protects your network.
  • Use address filtering (also called MAC address filtering).  If your router supports it, it specifies what computers can connect to your network; all other computers are rejected.  You can easily obtain your MAC address (unique address for your network card) by typing ipconfig /all from a DOS prompt.
  • If your router specifies it, disable SSID broadcast.  Your SSID is your “network name”.  If its not broadcast, its that much harder to break into your network.
  • And speaking of the SSID, change it to something that a) does not identify you, and b) is not the default.  There is nothing funnier than scanning an area and seeing people’s names on their routers, or that they are using the default SSID that came with the router.  It screams “easy target”.

#4.  Use anti-virus software.  Just do it, and keep it updated.  Weekly.  Mark your calendar if not using automatic updates.

#5.  Stay current with Windows Updates.  As security flaws are discovered and reported, Microsoft turns around and releases a patch.  This helps keep your computer safe and secure.  Just do it, if not automatically, at least monthly.  Mark your calendar.

#6.  Consider a software firewall (optional).  For moderate to advanced users, a software firewall represents another layer of defense from both internal and external attacks.  If you run a malicious piece of software that attempts to access the Internet, the software firewall will intercept the call and ask you if you will allow it.  Say no, its stopped in its tracks.  The downside to a software firewall, and why its not for everyone, is who is to say what is a “good call” and what is not.  Checking your e-mail, playing online games, surfing the web constitute good calls.  Beyond that, many users could get confused and simply say “yes” to everything, which doesn’t help.

Okay, now that this is out of the way, here are some links.

Detect computer vulnerability
If you want to see how vulnerable your computer is, visit my favorite friendly computer scanner.
https://www.grc.com/x/ne.dll?bh0bkyd2

Anti-virus software
I use F-Prot anti-virus software.  Its inexpensive, very effective, and non-intrusive (e.g. doesn’t make a mess of your computer configuration like other products).
http://www.f-prot.com/

Software firewall
If you decide this is something you want to do, I love Sygate Personal Firewall.  The free edition is great, the paid version is even better.  Update: Sygate has been purchased by Symantec.  Symantec does offer good products, but this is not what I am recommending.  Google for “Sygate Personal Firewall” and download from a mirror site.  Here is one.
http://www.pcworld.com/downloads/file_description/0,fid,8132,RSS,RSS,00.asp

Wireless network scanner
See all the wireless networks in your neighborhood.
http://www.netstumbler.com/downloads/

Please note these are the basics of computer security.  There is always more than can be done, and many tasks vary with the each manufacturer of equipment.  Seek professional assistance (or your own personal nerd) to help with you with any of this that you may not understand.

The threads are, unfortunatelly, real.  There are plenty of folks in the world with not much else to do but see what you can on your computer.  Could be a neighborhood kid, or a kid in another country.  Implementing basic security makes your computer (and network) "not easy", and since there are plenty of "easy" targets out there they are likely to move on.

Tags:   ,
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Three steps to improve PC performance

Tuesday, 13 December 2005 10:12 by Greg

To complement my other article on the basics of PC security, here are my favorite tweaks to help improve computer performance.

#1.  Adjust your page file.  A Windows page file is extended computer memory for tasks that are not running “at this moment”.  This allows your current program to run in your computer’s main memory (RAM) while keeping track of your other applications.  As you swap tasks (such as with ALT-TAB), your computer may decide to swap the contents of RAM with the contents of your page file.  Hence, why sometimes a page file is called a swap file.

Size of the page file matters, and what size to make a swap file is a matter of great debate.  My present swap file is 768 MB on a machine with 1.5GB of RAM.  If you are a little short on hard drive space, sizes of 512 MB or 384 MB work as well.  Less than this may cause issues on certain hardware configurations.

To make this change, right click on My Computer, select properties.  Click on the Advanced tab, Select Performance Options.  Change the Page File size to the number you decide upon.  MAKE THE MINIMUM AND MAXIMUM NUMBERS THE SAME.  While on this tab, if you have more than 768 MB of RAM, check the “Optimize Performance for” Background Services/System Cache option. 

Reboot when done.

#2.  Clean up your registry.  Use this tool to help out.
http://www.majorgeeks.com/download.php?det=2048

#3.  Defrag your hard drive.  Google how, do it, do it often (weekly – set your calendar!)

There are a whole bunch of other things that can be done, but this is a good start.

Tags:   ,
Categories:  
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

IE Dev Toolbar

Tuesday, 13 December 2005 09:12 by Greg

Just came across a post about this little gadget that should help out with any kind of web development, for example:

  • Outline table cells without modifying your page source
  • Manipulate IE browser settings for the current page only
  • Resize the browser window to standard sizes
  • Visual ruler to help with alignment
  • Validate page links (including CSS links)

And a bunch of other toys I have yet to play with.

http://www.microsoft.com/downloads/details.aspx?FamilyID=E59C3964-672D-4511-BB3E-2D5E1DB91038&displaylang=en

[Found via Sahil]

Tags:  
Categories:   Professional | Tools
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed