Thursday, March 26, 2015

COMP8035 Classes 08.2 & 08.3

Students worked in the research paper.

I met with each studebt briefly to discuss progress.

I'm expecting to see some drafts over the Easter break

Wednesday, March 25, 2015

COMP6021 Class 08.4 Interlaced Video



I explained interlaced video and how it causes problems for modern displays.

When I was finished talking students worked on the assignment.

COMP6021 Class 08.3 Bock Matching Algorithms



We looked at Block Matching Algorithms (BMAs) and how they contribute to the asymmetry of video compression.

SOFT6008 Classes 08.2 & 08.3

I met with each student to discuss how the assignment is going.

There was no Photoshop in this lab, so some students deferred working on it until tomorrow.

I hope that tomorrow we will get all of the Photoshop work out of the way

Tuesday, March 24, 2015

COMP6021 Class 08.2



We looked at video compression

SOFT6008 Class 08.1

I talked students through the marking scheme I used for the exam.

We looked at the code for the Time Game.

COMP8035 Class 08.1

I met with each student to discuss progress of the research reports.

I am expecting a first draft to be completed over the Easter break.  Students are also welcome to send shorter extracts before then for feedback.

Monday, March 23, 2015

Thursday, March 19, 2015

SOFT6002 Week 07

We looked at Metaphors (Slides W06-L2), Requirements Gathering (W08-L1) and Prototyping (W08-L2).

SOFT6008 Class 07.3

We had an in-class exam

COMP8035 Class 07.1 & 07.2

I spoke about topic sentences and paragraph structure.  I gave out a photocopy of an article from a magazine and asked students to mark the topic sentence in each paragraph, and evaluate the extent to which the rest of the paragraph relates to the topic sentence.

I am expecting to drafts of the introduction of the research paper soon.

Interesting videos about Animated GIFs







Is it GIF or JIF?



Wednesday, March 18, 2015

COMP6021 Class 07.3



We looked at how JPEG works

When I was finished, students used the time to catch up in the dithering stuff they missed

The video below may also be of use

COMP6021 Class 07.2

I gave out some sample exam questions on dithering. But they didn't mean anything because none of the students in class today were in for the last class. Students should catch up using the videos online, and we will come back to those questions if we get time.

I talked a bit about the assignment 




We looked at GIF



SOFT6008 Class 07.1 & 07.2

Students prepared for the exam tomorrow.

Monday, March 16, 2015

COMP6021 Class 07.1






We looked at dithering.


We looked at dithering in Photoshop on a 10x10 pixel image. Students The student did some experiments with dithering in Photoshop.


This video might also be useful

Friday, March 13, 2015

SOFT6002 Week 06

There was one student in class. I had a look at a draft of his assignment submission.

Thursday, March 12, 2015

SOFT6008 Class 06.4

I showed students a few more Photoshop party tricks that might be useful for the assignment.

Students continued work on the assignment. 

COMP8035 Classes 06.1 & 06.2

I met with students who have not yet committed to a research paper topic and discussed some ideas with them.

Then I met with the others.

Wednesday, March 11, 2015

SOFT6008 Euro Checksum

You this fake note have passed your checksum test?

https://twitter.com/PSNINewry/status/575401924800999424/photo/1

COMP6021 Class 06.4



We used Photoshop to convert an image to indexed colour. Students downloaded various images and experimented with different settings [but didn't use dithering].

In the next class we will look at dithering.

COMP6021 Class 06.3



We looked at lossy compression, interpolation, and indexed colour.

SOFT6008 Class 06.3

I quickly ran through how to make portions of an a image semi-transparent so that colours or patterns underneath it are visible.

Students continued working on the assignment.

I e-mailed students a sample exam for the assessment next week.

SOFT6008 Class 06.2

Students worked on the assignment.

We looked at some examples of the assignments that were submitted last semester. Lots of ideas there.

Tuesday, March 10, 2015

COMP6021 Class 06.2



We looked at the RGB, Lab, and CMYK colour systems. I also mentioned Pantone

See also Capsure





This video may be of use

SOFT6008 Class 06.1

I talked students through the specification for the assignment and described what was meant by each part.

We looked at the new HTML 5 input types, and the valid and invalid pseudo classes. We looked at how forms can validate input onSubmit.

[update spec document to follow]

Monday, March 9, 2015

COMP6021 Class 06.1 Digital Colour





We began our look at colour and how it is represented.








Thine video may be of use

Thursday, March 5, 2015

SOFT6008 Class 05.4

We looked at Cookies.

COMP8035 Classes 05.2 & 05.3

I met with students to discuss their research reports. All the students I spoke to had committed to a topic or were close to doing so. There isn't really much time to delay.

Wednesday, March 4, 2015

COMP6021 Class 05.4



We used Photoshop to experiment with different resolutions and pixel depths. I asked students to download a large image and to do some messing about of their own

COMP6021 Class 05.3



We looked at digitisation.

We considered quantisation of temperature and then temperature over time. We looked at how B&W images are digitized.


This video may also be of use

SOFT6008 Class 05.3

Students continued coding check sums for input validation. 

We will have to move on from this soon

SOFT6008 Class 05.2

I gave back the corrected exam solutions with feedback.

We looked at a solution to the question and examined some of the pitfalls and common errors. 

We decided that the exam will be held on Thursday 19 March during the 1300 class.  This will be a one-sheet exam. Student will be permitted to bring a single A4 sheet of notes to the exam. Students may not share sheets during the exam.

Students should think about what gave them trouble in Tuesdays exam and use that as a guide when filling up the one-sheet.

Tuesday, March 3, 2015

COMP6021 Class 05.2

I gave students two exam questions from past papers on LZW. Student worked on them alone, and then we worked out the answers on the board.

SOFT6008 Class 05.1

We will have an in-class exam in 2 weeks worth 40% of the module.

Today students did a sample exam.

COMP8035 Class 05.1

I met with some of the student to discuss their topics for the research paper but I didn't get to everyone. I outlined that students need to move beyond the "x is fab!" phase, and do some critical analysis.

I want student to decided on a research paper topic by the end of this we and get started on it.

I updated the schedule for the blog posts. The post expected in Week 08 is now due in Week 07

SOFT6002 Change Blindness

This site illustrates the issue of change blindness very well.

http://www.gocognitive.net/demo/change-blindness

What lessons can we draw from this?

Monday, March 2, 2015

COMP6021 Class 05.1 LZW



We looked at the Lempel-Ziv-Welch algorithm for encoding text

Thursday, February 26, 2015

SOFT6002 Week 04

We looked at Human Memory (slides: W05-L1) and Mental Models (W06-L1)

After coffee we went to the lab and examined three websites for usability issues.

SOFT6008 Class 04.4

I gave students a quick tour of Photoshop. Some basic Photoshop skills will be required for the assignment. Some students had fun with Photoshop.

We looked at the Mr. Spud Head example and I thought it wold be a good exercise for students to go make something similar. Understanding layers is key to getting that working. I forgot to point out that JPEG does not support transparency, so the images must be saved as PNG files.

COMP8035 Classes 04.1 & 04.2

I met with each student and gave feedback on the blog posts. Different students make different kinds of errors. So hopefully they can be avoided. The first of those posts isn't due until tomorrow. So there is time for corrections.

I discussed paper topics with each student.

Wednesday, February 25, 2015

COMP6021 Class 04.4 - tutorial

Students had very few questions so once we were done we left early

COMP6021 Class 04.3





We did two examples of Huffman coding with 8 symbols.

SOFT6008 Classes 04.2 & 04.3

Students continued coding checksum calculations. These will be incorporated into the assignment eventually.

Tuesday, February 24, 2015

COMP6021 Class 04.2

I planned to do exercises on generating UTF-8 and on Huffman coding. However the UTF-8 proved tricker than we expected, so we will do the Huffman in the next class.

We converted the following to UTF-8, but it took us a while to figure out how do deal with padding zeros.

Gemoji image for :cupid
1F498 
11110000:10011111:10010010:10011000 
f09f9298



Gemoji image for :couple
1F46B 
11110000:10011111:10010001:10101011 
f09f91ab




Gemoji image for :grinning
1F600
11110000:10011111:10011000:10000000 
 f09f9880


SOFT6008 Class 04.1

Apologies for the late start. My calendar led me astray and I obeyed.

We reviewed various JavaScript versions of the Luhn algorithm found online. Some we didn't like. 

From https://gist.github.com/DiegoSalazar/4075533 (modified by Colin slightly)

This code addresses the problem of strings of unknown length by starting at the end and counting down and keep track of what to do by toggling bEven. However we were initially puzzled by the (nDigit *= 2)  which is both a test and a statement.
function valid_credit_card(value) {
// The Luhn Algorithm. It's so pretty.
var nCheck = 0, nDigit = 0, bEven = false;
 
for (var n = value.length - 1; n >= 0; n--) {
var cDigit = value.charAt(n),
nDigit = parseInt(cDigit, 10);
 
if (bEven) {
if ((nDigit *= 2) > 9) nDigit -= 9;
}
 
nCheck += nDigit;
bEven = !bEven;
}
 
return (nCheck % 10) == 0;
}
This code was interesting because it used the fact that JavaScript can add an internet to a string and get a string. That's a small bit strange.  The expected test to see if the product of the *2 > 10 isn't there, because the digits will get added up anyway in the second part of the code.
  // Run through each single digit to create a new string. Even digits
  // are multiplied by two, odd digits are left alone.

  t = "";
  for (i = 0; i < r.length; i++) {
    c = parseInt(r.charAt(i), 10);
    if (i % 2 != 0)
      c *= 2;
    t = t + c;
  }

  // Finally, add up all the single digits in this string.

  n = 0;
  for (i = 0; i < t.length; i++) {
    c = parseInt(t.charAt(i), 10);
    n = n + c;
  }



This code handles odd and even length strings even though it starts at the beginning and words forward. The i % 2 == parity) test looks like our i % 2 == 0, except the desired value 0 or 1 is set beforehand, depending on whether the length is ever or odd. 

function checkLuhn(input)
{
  var sum = 0;
  var numdigits = input.length;
  var parity = numdigits % 2;
  for(var i=0; i < numdigits; i++) {
    var digit = parseInt(input.charAt(i))
    if(i % 2 == parity) digit *= 2;
    if(digit > 9) digit -= 9;
    sum += digit;
  }
  return (sum % 10) == 0;
}


The following examples we considered to be too clever and too cryptic. I pointed out that short clever code isn't always a good thing, because the programmer that comes after might not be able to understand it.

https://gist.github.com/ShirtlessKirk/2134376

http://stackoverflow.com/questions/12310837/implementation-of-luhn-algorithm

http://rosettacode.org/wiki/Luhn_test_of_credit_card_numbers#JavaScript

SOFT6002 Interesting Video & Article


Worth a look

This article is also worth a read
http://www.theatlantic.com/product/archive/2014/08/the-hamburger-menu-debate/379145/

Monday, February 23, 2015

COMP6021 Class 04.1

[No recording of today's class. Sound too bad]

We played Hangman to illustrate the point that letters in English do not occur with the same frequencies.  We looked at how compression can be used to represent information using fewer bits.


We looked at Huffman's algorithm for devising optimal variable length codes.

To be honest, the video I made below says it better than I did in class anyway. (I hope my best work isn't behind me!)

Video on Variable Length Codes



I gave students an exercise to complete in time for the next class.

Thursday, February 19, 2015

SOFT6002 Week 03

We discussed the assignment a bit and assigned students to groups. But it's not really a group project.

We covered the Ecological Theory of Perception (slides W03-L2) and Graphical Coding (W04-L1).

You should have two sets of slides per week. If you are missing any please let me know.

SOFT6008 Class 03.4

Attendance was poor today. I'm told there are some pressing social engagements this week.

Students worked on checksum calculations. We'll be another week at least at those. Perhaps even longer.

Someone figured out the French checksum calculation. It is different from how I described. So if you are tackling that, talk to me first.