Q:

How do I randomize an object's position?

This is some code that instantiates prefabs of two different types and places them in a random spot. The prefabs instantiate, but don't instantiate randomly. How can I fix this??? 
using UnityEngine;
using System.Collections;

public class Spawner : MonoBehaviour {
// Use this for initialization
    void Start () {
        InvokeRepeating ("SpawnAThing", 3.0f, 3.0f);
    }

// Update is called once per frame
    void Update () {

    }
    void SpawnAThing(){
        GameObject x=null;
        int z = Random.Range (0, 2);
        switch (z) {
        case 0:
            x = (GameObject)Instantiate(Resources.Load("BadCircle"));;
            break;
        case 1:
            x = (GameObject)Instantiate(Resources.Load("GoodCircle"));
            break;
        }
        x.transform.position.Set (Random.Range (-Screen.width, Screen.width), Random.Range (-Screen.height, Screen.height), 0.0f);
    }
}

A:

Your code is not working properly due to the use of transform.position.Set()
position.Set() cannot modify the position because it does not return the reference of that position. It returns a copy. 
Modify the transform directly with x.transform.position = new Vector3(x,y,z);
So all you have to do is replace  
x.transform.position.Set (Random.Range (-Screen.width, Screen.width), Random.Range (-Screen.height, Screen.height), 0.0f);

with
x.transform.position = new Vector3(Random.Range(-Screen.width, Screen.width), Random.Range(-Screen.height, Screen.height), 0.0f);

EDIT: 
You can't see it now because Screen.width and Screen.height are way too off to the screen. You have to convert view to world point with Camera.main.ViewportToWorldPoint then you can use 0 to 1 to represent the screen with .5 being the middle point.
If you don't see it, decrease 15 that is passed into the Z-axis.
  x.transform.position = Camera.main.ViewportToWorldPoint(new Vector3(Random.Range(0f, 1f), Random.Range(0f, 1f), Camera.main.nearClipPlane + 15f));

