this is a project of apue example