Skip to content

Wade Perrigo dot Com

All you need to know….

Several things need to be understood before good photographs can be taken in Manual Mode.  A lot of this can be picked up by reading the manual that comes with the camera, but here’s a few quick tips to help a new member to the DSLR world.

Everything ties in together.  It requires many settings to be correct before a good picture can be taken, AUTO mode handles most of this for you – but often a BETTER picture could be taken in manual mode.  Here’s a few of the important settings.

SHUTTER SPEED.  This is quite easy to understand – How fast the shutter opens and closes.   However, several things need to be noted about this.  Shutter speed is adjusted by turning the jog dial when in manual mode.  I think of it in terms of seconds  – when it says 1/2 that is half a second.   The longer the shutter is open, the more light will be captured and the greater the chance for your subject to blur.  I find anything under 1/13 is hard to get a decent shot without a tripod.

APERTURE. Think of the aperture as a pinhole in a piece of paper.  The larger that hole – the more lights going to go through it.  Aperture is noted on the camera as f-stop.  To adjust the f-stop you press and hold the “+/-” button while turning the jog dial.  The lower the f-stop – the bigger the hole — think of it as a gauge to a wire, or an earring. Your lens will likely have different f-stop’s depending upon the lens and the focal length you are using.  The 18-55mm kit lens as example has an f-stop of 5.6 at 55mm and f-stop of 3.5 at 18mm.  Therefore if you’re taking pictures indoors in manual mode, I strongly recommend 18mm so you can make use of the larger aperture size.  If you’re taking pictures outside during the day – your f-stop will be a MUCH higher number.

ISO -  The lower the ISO, the better the picture quality.  The drawbacks to a lower ISO setting:  night photos are much darker, fast action photos will likely blur.  When taking fast action – always use a higher ISO.  When taking indoor photos (without flash) – use the lowest ISO setting you can without compromising the picture/lighting quality.  ISO is set by pressing the MENU button, navigating to the Image of a Camera, and then you will see ISO Sensitivity.

Hope this has helped some people that are new to SLR’s.  If you have any questions feel free to ask.  Just remember that trial and error is the best way to learn!  Go out, take some pictures, and ENJOY!

I don’t have a lot of time to post but thought I’d share my favorite applications with any new (or veteran) windows mobile users.  My AT&T Tilt (8925) was fairly inefficient when I got it, but found the challenge of customizing it more fun then a simple iPhone.

First, as with EVERY windows OS, ditch the browser and get:

http://m.opera.com

If you can’t browse youtube – is your mini-phone/computer actually a computer?  Probably not.  Get this:

http://m.youtube.com/app

I quickly grew tired of the stylus, pointUI is the most AMAZING freeware application I’ve found for windows mobile.  I could write an entire blog on pointUI, which I will, at a later date.

http://www.pointui.com/products/home-2/

(GET THE QVGA version if you have the Tilt!!!)
I use the LIVE SEARCH program on this page – works great for tying into GPS, finding local restaurants, gas prices, etc.

http://windowsliveformobile.com/en-us/windowsmobile/default.aspx

Downloading, installing, and configuring all these will take quite a while – so make sure you got a couple hours available.  You will find yourself constantly tweaking them out if you’re anything like me.  Make it as efficient and personal as possible and…. Enjoy!

After much research and a little trial and error, I came up with some ideal settings for photographing fireworks…

Using ISO 100 is extremely important if you don’t want grainy images, which seems contrary to what you would normally do in a low-light situation. Further, one would expect to open the aperture as wide as possible being a night shot. It’s easy to forget just how bright fireworks really are. Take a look around sometime while one is exploding – you can see everything lit up around you. A nice f stop around 16 works quite well. (give or take).

For good fireworks you need a stable platform as you’ll be having the shutter open for a long period of time. This is where the tripod and optional remote control come in – complete stability. The Nikon D60, as well as many other digital SLR’s have what is called ‘bulb’ mode. This is where the photographer can hold open the shutter for an arbitrary amount of time. When using the button on the camera – you hold it down until you want to close the shutter. When using the Remote Control – you press it once for open – press it again to close. I found for AMAZING shots 2.5 – 4 seconds is about perfect. This can capture the trail, the explosion, and the fall. Now you can see why a tripod is a necessity.

The other thing to consider is lens. I was stuck using the 18-55mm kit lens that came with the D60, and it works great for this. I found, however, if you want some really amazing shots a nice zoom lens would work great – maybe I will give that a try next year.

Here’s some of the photo’s from the fireworks… I hope you enjoy (click to see the entire album).

185       Custom7       233       201

I’ve been using VMWare for a couple of years now, as a desktop testlab scenario. Nothing over the top. I decided I would delve into it a bit further given the opportunity and a gleem in my eye at the new Fault Tolerance feature.

I watched a couple youtube video’s, as I often do, of someone demoing a product. It looked quite simple, and simple it is – after the initial learning curve. Installing ESX itself, easy breezy. Burn the disk, boot from disk, follow the wizard and you’re all set. vCenter and vCenter Orchestrator however, are a different story. Sure they install easy, but they must be configured.
All of this that I’m writing is documented, somewhere. It just isn’t put directly infront of you in plain text.
First, you must manually start vCenter Orchestrator service and go to localhost:8282 to access the configuration page. The configuration page looks fairly straightforward, but can be quite complex. I highly recommend RTFM on this one -
It acts like it requires a license to run the demo product, but it doesn’t. Just continue on despite its warnings. It also wants you to obtain a signed certificate (from verisign or the like) but this isn’t required. This will make it so you do not have to click accept on the certificates, as they appear to come from an untrustworthy source. If it’s much hassle to you – then you can get them signed. The last issue I came across – which this is labeled as a “cosmetic” issue – but all the plug-ins said they would start upon next server restart. After messing with this for quite some time, and even doing a complete installation from scratch on another machine – it’s obvious these are just in error. vCenter, as well as the other features, were already installed.
To access vCenter, you use your vSphere Client. This vSphere client is the only utility you will use once you’re all setup and going. You’ll create your datacenters, and then follow it up with a cluster. The cluster is where the magic takes place. This is where you can enable HA (High Availability). However, don’t make a simple mistake of dragging an ESX host into the cluster from being a standalone client in your vCenter. Add the hosts in one by one. I also recommend turning on HA after you’ve added your first host.
Now onto the straw that broke the camels back. I had a couple servers to test this feature out on, a nice new 2950 poweredge and an old 1750. One would expect that when these machines add into the cluster correctly, HA turns on just fine, that fault tolerance could be turned on. This, however, is not true. Fault Tolerance (FT) requires matching, specific, cpu instruction sets. Namely a Xeon Core 2 and above, or AMD Opterons. This is documented, but was not expected from the get-go as I had read no solid hardware requirements for that feature. At the very end, after all the work, even using the P2V with the converter – I had to put a halt on the attempt to test Fault Tolerance until I am able to get my hands on a server with another Xeon Core 2 or higher processor.
At a first glance, this product is quite enjoyable, and certainly will prove beneficial to many organizations. More development and testing prior to making a solid decision and deploying a technology as new as this one. The whole setup, including all the literature reading only took a couple days. After the experience, recreating the environment (with the correct hardware of course) could be done in a matter of a couple hours (less converting or moving virtual machines).

Difficulty: Moderate
Knowledge: Intermediate/Advanced

My partner in crime and I have been working on a website. We’re hoping it becomes the next big evolution in _______. We are sworn to secrecy until the site is released. We started this several months ago and have been toiling away at making it completely dynamic. PHP/HTML/CSS/FLASH/MySQL are the main methods of madness. This project was undertaken before I started my Databasing class or my PHP/MySQL class. We still haven’t covered much of the material I find myself using. The latest mountain we had to conquer was dynamic SQL queries based upon a form with OPTIONS. For your imagination… it had 6 comboboxes, 2 of which are required, 4 of which are optional. Here’s the dilemma.

You have your typical database connection, which I won’t get into for this as it is fairly straightforward. The html form has passed the variables using POST. So we pull those in with the php $_POST feature and assign them to a PHP script variable:

$person1 = $_POST['person1'];
$person2 = $_POST['person2'];
$person3 = $_POST['person3'];
$language1 = $_POST['lanuage1'];
$language2 = $_POST['lanuage2'];
$language3 = $_POST['lanuage3'];
$criteria = $_POST['criteria'];

This is relatively easy stuff, but I will explain these variables and what they do. Within the form they MUST select at least 1 person and 1 language, and choose SPEAKS or DOESN’T SPEAK (the criteria). They optionally may search more than 1 person and more than 1 language.

Here’s the basic, first part of the query:
$sqlBeginning = “SELECT * FROM PERSONS WHERE (PERSON1_ID=$person1 OR PERSON2_ID=$person1 OR PERSON3_ID=$person1 “;

Notice this is only comparing the first (REQUIRED) variable to the 3 columns within the database. (PERSON1_ID, PERSON2_ID,PERSON3_ID). Also take note that there is an opening ‘(’ without a closing ‘)’, this will be addressed later. With me so far? Good.

Now to the fun part. We have to create dynamic SQL statement IF they have selected the other options.

if ($person2 == ‘0′)
{
$person2String = “”;
}
else{
$person2String = “OR PERSON1_ID=$person2 OR PERSON2_ID=$person2 OR PERSON3_ID=$person2 “;
}

This has checked to see if $person2 is set to ‘0′ and if it is the string is blank, otherwise it compares the $person2 variable to the 3 columns as we did with $person1 above. Repeat the same process for $person3.

Now if we wanted to combine all these our SQL string could go something like this…
$sqlStatement = $sqlBeginning . $person2String . $person3String . “)”;

Notice the closing “)” on the end. SWEET. The first part is over. Take a breather.

Now, because the languages can be a “true/false” or “speaks/doesn’t speak” we need an if statement to compare that.

if ($criteria == ‘1′){
}
else{
}

Make sense? Cool. Now, we will put more coding into there, because the SQL statements will change from = to <> depending on which option they selected.

if ($criteria == ‘1′){
//This line sets the $language1String to it’s value because it is a REQUIRED item so no if/else is needed. It uses AND to compare the PERSON that has been selected to the language options specified. It checks $language1 against all 3 columns in the DB for languages (LANGUAGE1_ID,LANGUAGE2_ID,LANGUAGE3_ID). It also must make sure that language 2 and 3 are not null.
$language1String = “AND (LANGUAGE1_ID<>$language1 AND ((LANGUAGE2_ID<>$language1) OR (LANGUAGE2_ID IS NULL)) AND ((LANGUAGE3_ID<>$language1) OR (LANGUAGE3_ID IS NULL))) “;

//NOW we check to see if language 2 option has been selected, much like the persons 2 above if it set to ‘0′ we assign the string to blank
if ($language2 == ‘0′){
$language2String = “”;
}
else{

//if it isn’t ‘0′, then we add another AND to the SQL statement and perform the same steps as above, but with $language2 variable. The same step is repeated for $language3.
$language2String = “AND (LANGUAGE1_ID<>$language2 AND ((LANGUAGE2_ID<>$language2) OR (LANGUAGE2_ID IS NULL)) AND ((LANGUAGE3_ID<>$language2) OR (LANGUAGE3_ID IS NULL))) “;
}
}

The very last part of this mess. Is the ELSE, which instead of making sure the person DOESNT speak the language’s specified, it checks to make sure they DO speak that language. You can copy and paste all of the above code and simply change the <> to = for all the options. ALSO, remove the IS NULL check. This isn’t necessary for this part.

The final SQL variable would look like this:

$sqlStatement = $sqlBeginning . $person2String . $person3String . “) ” . $language1String . $language2String . $language3String;

The benefit of coding it this way is to save on unnecessary queries to the database. Why check an option if they haven’t specified it? This will create extra work for the server and slow down your website. While small databases, it isn’t a big deal, but for thousands, or hundreds of thousands of records this could save a lot of server work.

In more detail, the code performs checks to verify what the user has selected, creates the SQL SELECT statement on the fly. So these quick IF ELSE statements are one TRUE/FALSE, but if you were to query all 6 possibilities to the 6 columns, it will be searching 3×3=9 for persons and 3×3=9 (18) times to the db for a TRUE/FALSE for each record, when it may only need to run 6 queries (1×3 for persons, 1×3 for languages).

Don’t forget to run your query with:

$results = mysql_query(”$sqlStatement”);

Hope this helps someone!