<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _create_osf_project(dlgr_id, description=None):
 """Create a project on the OSF."""


    if not description:
        description = "Experiment {} registered by Dallinger.".format(dlgr_id)

    r = requests.post(
        "{}/nodes/".format(root),
        data={
            "type": "nodes",
            "category": "project",
            "title": "Experiment dlgr-{}".format(dlgr_id[0:8]),
            "description": description,
        },
        headers={"Authorization": "Bearer {}".format(config.get("osf_access_token"))},
    )
    r.raise_for_status()
    osf_id = r.json()["data"]["id"]

    logger.info("Project registered on OSF at http://osf.io/{}".format(osf_id))

    return osf_id