I cannot stress enough the importance of trying to write code for yourself. Googling for solutions is of limited value. Students need to learn to write code from scratch. That the the point of the programme they are enrolled on. I've been doing this while now and in my experience obsessive Googlers tend not to be successful because they don't learn the skills they need. Students are unlikely to learn much from other people's code.
If you try to write the code yourself I am happy to help you. If your objective is to steal code and put all your efforts into covering your tracks, then you are wasting your time and mine.
No one is going to pay you Google code for a living.
Wednesday, October 14, 2015
SOFT6008 Class 05.2 & 05.3 W
Students continued working on the credit card validation. Progress was slower than I had expected. I think students are struggling with going from the problem definition to the algorithm. The JavaScript code per se doesn't see to be an issue.
Monday, October 12, 2015
SOFT6007 Class 05.1
We looked at CSS. I stressed the importance of keeping the content and styling information separate and told students to never used embedded nor inline styles.
SOFT6008 Class 05.1 & 05.2 A
I asked students to write code for the Luhn checksum algorithm used for credit cards.
SOFT6008 Attendance
The attendance rate in Week 04 was 64%. That's a slight improvement on earlier weeks, but it's still low.
Friday, October 9, 2015
SOFT6008 Exam reminder
The exam will run from 1230 to 1400 in the Melbourne Exam Hall on next Wednesday 14 October.
It won't be a long exam but I booked a 2-hour slot just in case someone needs a bit of extra time.
This is a one-sheet exam. Student will be permitted to bring a single A4 sheet of notes (front-and-back).
This will be worth 20% of the final mark for the module. All students registered for the module need to attend in order to get full marks.
You should have received a sample by e-mail.
Please enter and leave quietly.
It won't be a long exam but I booked a 2-hour slot just in case someone needs a bit of extra time.
This is a one-sheet exam. Student will be permitted to bring a single A4 sheet of notes (front-and-back).
This will be worth 20% of the final mark for the module. All students registered for the module need to attend in order to get full marks.
You should have received a sample by e-mail.
Please enter and leave quietly.
Thursday, October 8, 2015
SOFT6007 Class 04.2 & 04.3 & 04.4
Students worked on coding up the form.
We had a brief introduction to CSS and students styled the timetables they completed in previously
We had a brief introduction to CSS and students styled the timetables they completed in previously
SOFT6007 Class 04.2 & 04.3 W
Students worked on coding up the form. Most are done now or nearly done.
We may move on to something new in the next class.
We may move on to something new in the next class.
Wednesday, October 7, 2015
SOFT6008 Class 04.2 & 04.3 B
I asked student to start coding up the Luhn algorithm for check sum calculations. It was slow going. But we will look at it again in the next lab.
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
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.
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.
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.
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 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
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.
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)
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
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,.
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.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
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.
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.
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.
SOFT6008 Initialising variables
Code that is in a function inside the head is executed only when the function is called.
Code that is in the head but not in a function is executed once before the page loads. So you can initialise variables this way. But you cannot modify the DOM in there because it doesn't exist yet.
Code that is in the body is executed once as the page is loaded.
So the money variable can be initialised in the body or in the head (outside the function). But it can only be displayed on the page inside the function.
SOFT6008 Class 03.1 B
I asked students to add money to the slot machine. Most have that done, but a few joined the module late or left their previous work at home.
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.
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.
SOFT6007 Class 03.1
I gave a speech about attendance.
We did a quick review of tables in HTML and then I explained colspan and rowspan.
I gave students an exercise to complete in class in groups.
We did a quick review of tables in HTML and then I explained colspan and rowspan.
I gave students an exercise to complete in class in groups.
SOFT6008 Class 03.1 & 03.2 A
I reminded students that it's important to turn up to class.
I asked student to add money to the slot machine. Most completed this, but a few are still catching up.
I asked student to add money to the slot machine. Most completed this, but a few are still catching up.
Friday, September 25, 2015
SOFT6007 Class 02.4 W
I briefly talked about HTML entities.
I explained how tables are specified in HTML and asked students to code their class timetables in HTML
Thursday, September 24, 2015
SOFT6007 Tables
This is a video about HTML tables.
For simplicity the image tags in this video don't have their alt width & height tags.
SOFT6007 Class 03.2 & 03.3 & 03.4
03.2
Students worked on getting the nested list exercise finished. This is tricky, but worthwhile.
Students who were completed and had their work checked by me went for a coffee break.
03.3
I talked about ASCII, code pages, and HTML entities.
I asked student who were finished their nested lists to take a look at the tables video.
03.4
We looked at tables. I talked students through sample page 3
I asked student to code their timetables in HTML. Not all finished that today.
Students worked on getting the nested list exercise finished. This is tricky, but worthwhile.
Students who were completed and had their work checked by me went for a coffee break.
03.3
I talked about ASCII, code pages, and HTML entities.
I asked student who were finished their nested lists to take a look at the tables video.
03.4
We looked at tables. I talked students through sample page 3
I asked student to code their timetables in HTML. Not all finished that today.
SOFT6007 Class 02.2 & 02.3
Students worked on the nested list exercise. That took a bit longer than I expected. This is a tricky exercise, but it illustrates the structure of HTML very well.
Some students missed class before and so I referred them to an online video on lists.
Some students missed class before and so I referred them to an online video on lists.
Wednesday, September 23, 2015
SOFT6008 Class 02.2 & 02.3
I asked student to add money to their slot machines.
Most made good progress, but some have fallen behind already.
Attendance was poor -- only 7 students.
Most made good progress, but some have fallen behind already.
Attendance was poor -- only 7 students.
SOFT6008 Next up ..
Next up in the labs I would like you to add money your slot machine. And have a think about the appropriate level of rewards so that the game doesn't end too quickly nor last forever.
SOFT6008 Class 02.4
I spoke a little bit about how it's important to work though the examples rather than just finding one online and considering yourself done.
We looked at number inputs and range inputs in HTM5. And how to use onchange.
Everything we discussed is encapsulated in the phone cost calculator v3.
The issue of number v. string types in JavaScript came up again and we kind of concluded that I worry about that more than I should.
We looked at number inputs and range inputs in HTM5. And how to use onchange.
Everything we discussed is encapsulated in the phone cost calculator v3.
The issue of number v. string types in JavaScript came up again and we kind of concluded that I worry about that more than I should.
SOFT6008 Extra class
OK. So that didn't work out. I was late because I couldn't find the room. And then when I did find it there was no computer there. And I was missing a cable for mine. Just one of those days.
Apologies to those of you who took the time and effort to come along.
We will make up the time later in the semester.
Apologies to those of you who took the time and effort to come along.
We will make up the time later in the semester.
SOFT6008 Class 02.3 A
I asked students to complete the slot machine and then to take a look at the call cost calculator in advance of class.
I appreciate that many of you were already done, but I keep to keep the various lab groups in sync for the moment.
I was a bit distracted today and didn't give you all the attention you deserved. Sorry about that.
I appreciate that many of you were already done, but I keep to keep the various lab groups in sync for the moment.
I was a bit distracted today and didn't give you all the attention you deserved. Sorry about that.
SOFT6008 Class 02.2 & 02.3 W
I asked students to complete the slot machine and then to take a look at the call cost calculator in advance of class.
I appreciate that many of you were already done, but I keep to keep the various lab groups in sync for the moment.
I was a bit distracted today and didn't give you all the attention you deserved. Sorry about that.
I appreciate that many of you were already done, but I keep to keep the various lab groups in sync for the moment.
I was a bit distracted today and didn't give you all the attention you deserved. Sorry about that.
Monday, September 21, 2015
SOFT6008 Extra lecture this week
Hi Guys
I have to be somewhere else on Wednesday 30 September at 1300 and so I can't make class. So we will have an extra class this Wednesday at 1200 in A123L.
We will have class as usual following this at 1300 in C214.
We will have no lecture on Wednesday 30 September. But we will have all the lab classes as usual.
I have to be somewhere else on Wednesday 30 September at 1300 and so I can't make class. So we will have an extra class this Wednesday at 1200 in A123L.
We will have class as usual following this at 1300 in C214.
We will have no lecture on Wednesday 30 September. But we will have all the lab classes as usual.
SOFT6008 Class 02.1 W
I asked students to code a slot machines using the coins and dice examples as a model. It should give prizes for three of a kind and two of a kind. We will continue with this in the labs on Wednesday. But it should be completed by noon on Wednesday.
SOFT6008 Class 02.1 B
I asked student to finish off the slot machine by giving different winner messages for three of a kind and tow of a kind.
When students were finished they look at the call cost calculator.
When students were finished they look at the call cost calculator.
SOFT6007 Class 02.1
I talked about how the origins of the Internet have an impact on how it works today.
I explained that http is just one of many protocols.
We followed the steps involved from clicking on a link to displaying a webpage.
I gave out a handout on HTML entities. But we didn't discuss it.
I explained that http is just one of many protocols.
We followed the steps involved from clicking on a link to displaying a webpage.
I gave out a handout on HTML entities. But we didn't discuss it.
Subscribe to:
Posts (Atom)