EDIT: I also recommand you to use nonces to check your field before saving.
EDIT2: Nonces
Just before field, define a nonce :
wp_nonce_field( 'curiculum_meta_box_nonce', 'meta_box_nonce' );
Your saving function is not correct, use this instead :
function save_curiculum_date($postid) {
//stop if autosave
if( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
// if our nonce isn't there, or we can't verify it, stop
if( !isset( $_POST['meta_box_nonce'] ) || !wp_verify_nonce( $_POST['meta_box_nonce'], 'curiculum_meta_box_nonce' ) ) return;
// if our current user can't edit this post, stop
if( !current_user_can( 'edit_post' ) ) return;
update_post_meta($postid, "curiculum_date_from", $_POST["curiculum_date_from"]);
}
The fields function is not correct, use this instead :
$curiculum_date_from = get_post_meta(get_the_ID(),'curiculum_date_from',true);
?>
<p>
<label for="curiculum_date_from">Date:</label><br />
<input size="32" type="text" name="curiculum_date_from" id="curiculum_date_from" value="<?php echo $curiculum_date_from; ?>" />