Wednesday, October 7, 2015

SOFT6008 Class 04.4

I talked a little bit about the slot machine exercise and the exam next week.

We began our look at user input validation and checksums.

slides: 2015-JS04.pdf  (check notes page for most recent version)


code: Phone Number Checker


audio: SOFT6008-04-4-20151007.mp3

HTML5 Audio tag

MP3 


SOFT6008 Class 04.1 A

Students worked on the phone cost calculator. As with other lab groups it is the logic that is slowing people down and not the javascript as such.

SOFT6008 Feedback on exercise 1

Individual feedback is here:
2015-SOFT6008slot-feedback3.htm

I didn't  make note of any instances of copying. But I did have a word with some students.

For assessments worth marks I would investigate possible cheating more thoroughly.

SOFT6008 Call Cost Calculator Tips

Some students have struggled with the logic required to complete the call cost calculator exercise.

Once the first two price plans have been coded correctly the rest are easy.

The pre-pay plan is simple because each minute, text, or mb used is charged per unit.

If if mins were 8c, texts 6c, and data 2c per mb
the calculation looks something like:

total = mins * .08 + texts *.06 + mbs * .02

However where a plan comes with some free usage for a set minimum fee and this need to be accounted for.

Suppose a price plan costs €20 and comes with 50 free minutes and customers are charged 8c per extra minute.

It's tempting to say that
extramins = mins - 50

But wherever mins in less than 50, the phone company would be giving money back for unused minutes. It's only correct to say extramins = mins - 50 when mins is greater than 50. Furthermore, if mins is less than 50 then the number of extra minutes is zero.

So the code would look something like

if mins > 50 then
     extramins = mins - 50
else
     extramins = 0
end if

This is the pice of the puzzle that most students who had difficultly failed to figure out.

However the calculation of the extra minutes, texts, and data are independent of each other.

Eventually the final calculation might look something like:
totalcost = 20 + extramins * .08 + extratexts *.07 + extradata * .03

It doesn't make sense to check to see
if (mins > 50) && (texts > 100) && (data >100)

The extra minutes, extra texts, and extra data, must be calculated independently of each other.


The javascript part of the exercise didn't seem to pose any major problems for students.  Students who are weak in programming may want to revisit some of the exercises they did in first year.





SOFT6008 Class 04.1 & 04.2 W

Students worked on extending the phone cost calculator. That has taken much longer than I was expecting. I think some students are struggling with simple programming issues. The javascript portions of the problem don't seem to be giving rise to any of the difficulties.

Students who were finished with that exercise took a look at checksums and some started coding.

Monday, October 5, 2015

SOFT6008 Attendance

The attendance rate for the first three weeks of semester was 57%. This isn't good. Coming to class can have a big impact on a student's chances of passing this module.

SOFT6008 User Input Validation


Video on User Input Validation

SOFT6008 Class 04.1 B

Most students worked on the call cost calculator. I advised them to concentrate on getting the first two plans completed correctly before starting the others.

I asked students who were done to take a look at the video on User Input Validation


SOFT6007 Class 04.1

We looked at semantic tags and forms.

I mentioned that we will have an assessment soon.probably in Week 06. I will get back to students about this.

SOFT6008 Class 04.1 & 04.2 A

Students worked on extending the call cost calculator example. Many students struggled with the logic, rather than the HTML. I advised them to concentrate on getting the first two plans completed correctly before starting the others.  It's useful to focus on the extra number of minutes, extra number of texts, and extra data.

Thursday, October 1, 2015

SOFT6007 Class 03.4 W

We had a rather hurried introduction to forms and students got stuck in and coded one up. 

We we have a more leisurely look at forms in the lecture next week

SOFT6007 Class 03.2 03.3 & 03.4 N

Most students completed the table exercises including those requiring colspan and rowspan.  Students did not finish them should complete them outside of class.

We had a brief look at forms and I gave out a printout with different kinds of inputs. We will look at these more closely in the lecture next week.

I asked students to complete a form exercise. (see below)

SOFT6007 Form Exercise

Code a HTML page with a  form for a computer club

Join page containing a form

  • Parent's full name
  • Parent's Email
  • Child's name
  • Age of child (7,8,9,10,11,12,13,14,15, or 16)
  • Tick a box if they are willing to volunteer
  • Do they own a laptop computer?
  • Do they own a raspberry PI?
  • Prove they are not a computer – choose their favourite colour
  • Submit and Reset buttons

·         Use http://atlantis.cit.ie/displayvalues.php to verify that your form sends the data from the form to the server

SOFT6007 Class 03.2 & 03.3 W

I asked students to modify the timetables completed last week to account for double classes. This didn't take very long, But a few students didn't do the timetable last week and so had to first catch up.

I asked student to code the exercise we did class on Monday.

Only 6 students turned up to class this morning.

I asked students who were done to take a look at HTML forms. We will be looking at forms next.

In future we will not wait for students to catch up, Students who miss a lecture or practical session will be expected to figure out what happened and catch up in their own time,.

Wednesday, September 30, 2015

SOFT6008 Class 03.2 & 03.3 B

Most students began work on modifying the call cost calculator. 

Some it here put the finishing touches to the slot machine. 

Please submit the slot machines today. 

SOFT6008 Class 03.4 A

Students worked the slot machine exercise.

SOFT6008 Class 03.3 & 03.4 W

Some students worked on completing the slot machine. Most are done.

Others starting looking at the call cost calculator.

SOFT6008 Assignment Statement Review

Some students in the class are struggling with assignment statements and expressions

An assignment states changes the value of the variable (left of the equals sign) to the value of the expression (on the right if the equals sign)

Suppose the variable
a holds 20 and
b holds 15


Consider the following statement

a = b + 4;

This asks the computer to calculate the value of (b + 4), which is 19, and put it into the variable a.

So after this statement is executed
a holds 19 and
b holds 15

Note that using b in an expression on the right of the equals does not cause be to be altered.

Only the variable on the left of the equals is changed.



x - 20 is an expression
It will evaluate to something depending on the value of x
It does not DO anything. No variables are ever altered by an expression.

y = x - 20
This statement takes whatever is in x, subtracts 20 from it, and puts the answer into y.
x remains unchanged



Shorthand

There are shorthand assignments that can also be used and these are popular with many programmers

x += y is the same as x = x + y
x++ is the same as x = x + 1
x -- is the same as x = x - 1

However you may chose to stick to the long form in order to avoid confusion


Monday, September 28, 2015

SOFT6008 Attendance

Although I don't have a fully up-to-date class list yet, my initial analysis of attendance rates so far gives me cause for concern.

In Week 1 it was 50% and in Week 2 it was 57%.
[When the class list is finalised these figures might go up or down slightly. But not by much.]

It's really important that students come to class. In my opinion its the single most important factor in success in this module.


SOFT6008 Class 03.1 B

I asked students to add money to the slot machine. Most are well on their way.  I expect we will have time on Thursday morning to get that finished.

A set of students had solutions so similar that they would be considered to have infringed the regulations if it were an assignment . I advised them to not work together in future in order to avoid the risks.