A290/A590 C
and Unix Main Menu
|
|
A290/A590 Tools for Computing:
System Programming with C and Unix.

"That's one small step for [a] man, one giant leap for mankind"
July 21, 1969


- My Office: Luddy Hall 2050 (IF2050).
- Office Hours:
- Monday/Wednesday: 8:00 - 9:00am. Appointments also available.
- Office Hour Special NOTES:
- Any changes to my office hours will be posted here.
- Tuesday, January 14, 2025 FIRST DAY THIS CLASS MEETS.
- Monday, January 20, 2025: Martin Luther
King Jr. holiday. IU CLASSES DO NOT MEET.
- Luddy Hall 2050 (IF2050) Office Phone: 855-3974.
- E-mail: jwhitmer@indiana.edu.
Meeting Times:
Spring Semester 2025:
MEETINGS: Tuesdays and Thursdays:, 9:35am - 10:50am (Sections 4805, 6032)
Miles Brand Hall I W109


Important Updates for All Students
enrolled in Spring Semester 2025:
[LAST UPDATED: 3/6/25]

- Your overall Canvas averages for "Attendance" are
confirmed accurate. For "Attendance" there
were 16 possible class meetings. This includes the three days I was
ill where everyone was counted present (if you had not missed the
meeting before or multiple meetings earlier in the term). If you had
an excused absence, either with documentation, or as your one allowed
"PTO" day (see Course Guidelines), it counted neither for nor against
you. The class Attendance average was 86.67%, with 3 100s, 1 in the
90s, 1 in the 80s, 0 in the 70s, and 2 in the 60s. As previously noted
in class, if your attendance average is low, you should
not expect a high "ACTIVE Course Engagement" score
when those are posted next Monday. The Averages on Canvas are correct,
but rounded. In my records, they are stored to six decimal places for
greater accuracy. This means your "92" on Canvas could well be a 92.31
and your "87" on Canvas could well be an 86.67. Canvas rounds up or
down for Attendance, but I will not when calculating the final
averages.
PLEASE NOTE: If you have any questions about your
Attendance or your MINIU/JIT/CAT averages, you must contact me by 3pm
tomorroe, Friday, March 7, 2025. While I will not be able to reply, I
will consider your request or answer your question, if it arrives by
this deadline. After that, these averages will be final and
official.
- Your overall average for "MINI/JIT/CAT" on Canvas
confirmed accurate: Since today's CAT was our last one,
your overall average for "MINI/JIT/CAT" is now final and confirmed
accurate. Keep in mind these various overall averages carry different
"weights" in determining your final average for the course. You can
review those "weights" on the "General Course Information" page. There
were 3 MINIs (15 each), 4 JITs (3 each) and 4 CATs (10 each) for a
total of 97 possible points. The course average on these was
70.84%. ALSO NOTE: I did my best to point out on the first day that if
you missed one MINI or one CAT or a couple of class meetings, each was
worth a small enough part of your final grade it wouldn't make a
difference. HOWEVER, I also said that if you missed several MINIs
and/or several CATs and/or many classes, it would definitely have an
impact. For a few of you, this turned out to the be the case. There
was 1 average in the 90s, 1 in the 80s, 2 in the 70s, 2 in the 60s, 0
in the 50s, and 1 below 50.
- Homework PROGRAM 4 Scores and Program AVERAGE confirmed
accurate and emails on the way: Scores for Program 4 are
posted and everyone should receive an email with the details of their
Program 4 scores by the end of the day. Overall, another outstanding
set of submissions, as is expected of the Programs we work on
together. A few had very simple errors, some were challenged by the
struct for person and how to apply it in an array, others by applying
the linked list within the larger single file with function
prototypes. The overall average on Program 4 was 97.40%. 2 scored 100,
and 3 in the 90s. REMEMBER, Individual Homework ASSIGNMENT 4 is this
due Friday, 3/7/25, before midnight. PROGRAM 4 was worth
100 points, in case that is not clear on Canvas.
The course average for the Programs was 82.36%. There were 0 averages of
100, 4 averages in the 90s, 1 in the 80s, 0 in the 70s, 1 in the 60s,
and 1 below 60, due to primarily to missed work. While we have shared
most of the code in this course for the PROGRAMS, this is still an
excellent performance for the class as a whole. Good work!
I have confirmed the PROGRAMS average shown in the Canvas Gradebook
for each student matches my records.
- Individual Homework ASSIGNMENT 3 Scores posted and emails
on the way, partial solutions posted: Scores for ASSIGNMENT
3 posted and everyone should receive an email with the details of
their ASSIGNMENT 3 scores by the end of today. Overall, a very good
set of submissions for what can often be a very challenging
assignment. The average was 98.33%, meaning there was a 7% point
improvement over ASSIGNMENT 2. Great job! There were 4 100s, and 2 in
the 90s. One student did not successfully submit ASSIGNMENT 3 and was
not included in this average.
I have posted some partial solutions of different ways to complete the
"showbits" part of A3 directly below the link to the assignment on the
Homework Page. This continues to be the part some students find most
challenging. I would also note that a few of you either forgot or
overlooked the left and right logical shift operators "<<" and ">>"
and created a good deal of extra work for yourselves on some of the
functions. As long as your output was correct, there was no penalty
other than your extra work.
- Individual Homework ASSIGNMENT 4 and
ASSIGNMENT 4 SAMPLE EXECUTABLES NOW AVAILABLE: This is
an Assignment, meaning you will be figuring out how to write the code
to solve each of the described problems. You will find it in the
"Individual Homework ASSIGNMENT Descriptions" section of the Homework
Assignments page [at the bottom]. We will look at this during our
first meeting this week, i.e., Tuesday, and again Thursday, if
needed.
Individual Homework ASSIGNMENT 4 is due by 11:59:00.00PM (SHARP) on
Friday, March 7, 2025. This is the last day of the 1st 8-weeks.
I realize I am posting this before Homework PROGRAM 4 is due, which is
due tonight, Sunday, by 11:59pm. I'm doing this so you will have
access to it as soon as you wish to begin working on it. I also want
to be able to make some comments about it in class Tuesday and run the
two sample binaries. We will do the same on Thursday, so you have two
opportunities to see the binaries and ask questions.
It is up to you to create the primary menu system that allows me/us to
choose between the Cricket and Linked List functions. NOTE IN PARTICULAR the requirement that you
both USE FUNCTIONS where ever they can be applied AND PROTOTYPE EVERY
FUNCTION that you use. There has sometimes been confusion
about this for ASSIGNMENT 3 and I want to be sure it is absolutely
clear here for ASSIGNMENT 4. You should know what a function is and
how to apply one. You must apply functions anywhere they can be
applied and you must prototype all the functions. Avoiding the use of
functions and/or their proper prototyping will result in a very
substantial penalty on Individual Homework ASSIGNMENT 4. You will not
only lose all 10 points for the features of your main(), but you will
lose 10-20 for each of the two main tasks, since you will not be
using proto-typed functions to solve the main problems. Please be sure
you are clear about this before our last day of class on 3/6/25.
I have also posted separate sample executables for
the two primary functions you will be submitting
together in a single file for ASSIGNMENT 4. BE SURE
you read the instructions/comments (same as for Assignments 1 thru 3)
before you try to copy/download the executables. As before, you will
most likely have to save it to your local HD, and then use something
like WinSCP to get it to your silo account. Be aware of the permission
and name issues that can occur if you are not careful.
- Weekly Readings updated: I have updated the
Weekly Readings page for the remaining weeks for the course. Everyone
would benefit greatly by reading at least part of Hoover's Chapter 4
before next Tuesday's class on 2/18/25, and certainly by Thursday,
2/20/25.
- AI contact information and preferred appointment times now
available. You will now find the contact information and
preferred appointment times for the AIs in A290/A590 C/Unix, Nikhil
and Sreya, are on the Course website Homepage just below the section
with announcements. Please note that "preferred appointment time"
means just that. These are the times it is the most likely each of
them will be able to meet with you to answer questions that cannot be
answered electronically. I do not ask them to hold office hours, as
that is not a very effective use of their time. If you have a question
about an Individual Homework PROGRAM or ASSIGNMENT (with
restrictions), you are welcome to contact either of them to set up an
appointment either in person or virtually. Keep in mind we expect
appointments to be kept and a missed appointment without notice may
impact your options for future appointments. We will discuss this
further in class today.
- Gentle Reminder: Only "@iu.edu" email addressed
accepted. Just a gentle reminder that all direct digital
communications for this course need to be from your "@iu.edu" email
address to one of our "@iu.edu" email addresses (depending on the
situation).
Email from any other address domain as well as Canvas messages will be
filed as "Junk" or "Trash."
Please be sure you are clear about this and contact me if you have
questions.

Graduate Associate Instructors, Spring 2025:
Sri Sai Sreya Sadasivapetkar

Email: ssadasiv@iu.edu
- Office Hours/Appointments: Usually part of class meeting time. Appointments also available and strongly encouraged.
PREFERRED Appointment times:
- Thursday: - 1:00pm - 3:00pm and Friday: 10:00am - 12:00pm
Nikhil Sai Jaddu

Email: njaddu@iu.edu
- Office Hours/Appointments: No formal office hours. Preferred appointment times available and appointments strongly encouraged.
PREFERRED Appointment times:
-
Monday: 3:00pm - 5:00pm and Tuesday: 1:00pm - 3:00pm

|