Duncan Maidens

Hi. I am one of the team at Raspberry Pi with responsibility for content across A level and GCSE materials for Computer Science.
My main area of specialisation is computer networking and security
Location Shropshire UK
Activity
-
Duncan Maidens replied to merry amanuel
Your answers look good, but Q3 were were looking for the answer in denary (decimal) - base 10.
-
Great to hear your enthusiasm for CS come through. With such a wealth of experience across other subjects, you may be ideally placed to see where CS can support other subjects as it does in the real world. Imagine a generalised function to conjugate verbs in french, or writing a program to factorise a quadratic equation.
-
Duncan Maidens replied to Craig Brewer
Welcome Craig - I am sure I have seen you on some of the other courses I have facilitated. Great to see you making such good use of the NCCE resources. I hope you have seen Isaac GCSE and the Teach Computing curricula, as well as taking advantage of the F2F courses via your local hub ?
-
Duncan Maidens made a comment
How are you finding the course so far ? Is this what you were expecting ?
Why are you interested in this course ? Are you looking to broaden your own knowledge or do you need to learn it for your job or to inspire others? -
Duncan Maidens made a comment
That was a trip down memory lane. I am sure, like me, you have many memories of early video games, but have probably not thought about the image resolution.
Do you think we will just keep going, getting higher and higher resolutions ?
-
Duncan Maidens made a comment
I still find it amazing to think that when I send a picture from my phone, the picture is turned into 1 and 0s and these digital signals are represented by variations in electromagnetic (radio) waves which transfer the picture to my wireless access point(WAP). Here the same 1 and 0s are represented by electrical voltages within the WAP. These 1 and 0s are...
-
Duncan Maidens made a comment
Hi, I am Duncan and one of the facilitators at the Raspberry Pi foundation. I'll be here during September (the course's facilitated period) to answer any questions. - remember you will get much more out of this course if you post questions or observations, share experiences and contribute to discussions.
-
Duncan Maidens made a comment
There is a new run of this course that is being facilitated for Sept
-
Duncan Maidens made a comment
Welcome to this course, I am Duncan and along with Martin will be facilitating this course.
I will be around to answer questions and offer feedback during April.
I hope you enjoy the course.
-
Duncan Maidens replied to David Pearce
It is subtle. When using the +, with strings you are concatenating the items and thus they must all be of the string type and you need the spaces as one string is butted up to the next. The result of the contatonation is passed to the print function as a single item.
When using comas, you are passing a list of arguments to the print statement. They can be… -
Duncan Maidens replied to Bruce Goode
Spot on. Choosing a variable name for the ‘item’ that you pull out of the list, that makes sense is a good skill.
for name in ["Bob","Fred","Anul"]: for colour in ["red","green","blue"]: planets =["Mercury","Venus","Earth","Mars","Juipter","Saturn","Uranus","Neptune"] for planet in planets:
-
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
You just need the first ~~~ on its own line
-
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to Chad Dandurand
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to carmen rodriguez
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to David Akintola
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to David Akintola
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to Tonya Harrington
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
@GeorgiosLaios You can soon see how code can get really big and difficult to follow. As you will learn if you get more into coding we break down code into smaller more manageable blocks called procedures or functions.
-
Duncan Maidens replied to Anna Kotowska
another way of testing multiple options is to use a list of them and then check if your input is in the list
if p in ('hi','hello','Hi','Hello','Bonjour'): print(('Hello')
-
Duncan Maidens replied to Henry S.
@DavidPearce Hi David - I don’t understand your comment above ‘Not sure why you are not getting this’ ? Your explanation above is spot on. You can’t compare strings and ints.
-
Duncan Maidens replied to Jelan Aruno J
Minor point but I would call your functions ‘print_square’, ‘print_subtraction’ .. . etc as the function actually does the printing as well as the calculation.
-
Duncan Maidens replied to Sofia Clavijo
The ** operator is ‘to the power’ in python. (Two multiplication signs)
-
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to Chad Dandurand
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to Den Murphy
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to David Akintola
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to Chad Dandurand
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to Courtney Reid
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to David Akintola
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Try using ~~~ on the line above your text and ~~~ on the line below your text when you post code
-
Duncan Maidens replied to Lisa Watson
The code always runs from top to bottom, that is sequencing, but the indented text is included or excluded based on the non-indented ‘if’ line above.
-
There is a link to learning about markdown above, but basically for code bocks start the code with a line of 3 tilda characters ~~~
Then end the block in the same way. -
Duncan Maidens made a comment
If you want to write code in the chat you will get frustrated by the indentation problems.
but it can be done with special characters
-
Yes. Programs are very precise and ‘hi’ is not the same as ‘ hi’
-
Duncan Maidens replied to Anna Kotowska
Brilliant. You are spot on. It is called the ASCII code of the letter and it works just as you said.
-
Duncan Maidens replied to Georgios Laios
@GeorgiosLaios or we can truncate or round the figure.
-
Duncan Maidens replied to Stuart Frew
We can resolve the precision of floating-point numbers within the code and can either just chop off after so many places (truncate) or round up or down the figure)
-
Duncan Maidens replied to carmen rodriguez
Exactly.. Because it is treating the values as text, rather than their numeric value.
-
Duncan Maidens replied to Anna Kotowska
To be more accurate I would say the line
result = inptut1 + input2
takes the two variables ‘input1’ and ‘input2’ and , because they are text variables the ‘+’ sign joins (concatenates) the text strings together to make a new longer text string. This new text string is assigned to a new variable called ‘result’ -
Duncan Maidens replied to Stuart Frew
This would try and create a variable called print and assign the text string to it. However, because print is reserved word, it won’t work
-
Duncan Maidens replied to Angela Owen
Well done. You have got ahead as this is explained in the next step.
-
Goot point - A syntax error location is not always spot on.
-
Duncan Maidens replied to Stuart Frew
Yes the underscore is just to help readability. You could also use MyName, but would not use my-name (a minus sign) or my name (with just a space)
-
Duncan Maidens replied to Tavleen Kaur 9th B
It may be a permissions issue on your device. Ask your IT administrator to help.
-
Duncan Maidens made a comment
Hi all. I am one of the facilitators on this course and will be around to answer any questions you may have in the chat.
-
Duncan Maidens replied to Kevin Darke
I like this cross-curricula idea.
-
Love it. !
-
Duncan Maidens replied to Rachel Ward
Glad you are enjoying the course. I still find it amazing how much of our world is now digitised and exists in binary stored somewhere, whizzing through the air or heading down wires.
-
Duncan Maidens replied to Mia Gardner
Check your answer to 2. It looks like #3F to me
-
Duncan Maidens replied to Kevin Darke
Hi. Did you use a text editor such as notepad ? I won't work in any sort of word processing system such as 'Word' , because of the formatting codes and metadata.
-
Duncan Maidens made a comment
If you convert a letter to ASCII, add 1 to the value and convert back to the corresponding letter, you have encrypted the data with a Ceaser cypher :-)
-
Duncan Maidens replied to Jo Jo
There are also only 10 types of people in the world. Those who understand the joke above and those who don't :-)
-
Duncan Maidens replied to Rachel Ward
Would you know if there was a few seconds of delay between the actual event happening and you seeing it on your computer?
-
Duncan Maidens made a comment
Hi I am Duncan and one of the facilitators at the Raspberry Pi foundation. Ill be here during the course's facilitated period (Dec) to answer any questions)
-
Duncan Maidens made a comment
Is anyone on an ADSL connection a long way from the local box, such as a small village ?
-
Absolutely. Most routers will have multiple paths to other routers (That is what builds a meshed network). It is only at the edge (such as a company or home) where we only pay for one ISP so only have one connection. Big corporations may not want to rely on a single connection and thus subscribe to multiple ISP's (or more commonly have a second line to the...
-
When you are at home with your smart device (e.g iphone), you may have two choices on how to connect to the Internet. You can either connect over your 3/4/5 G network via your phone's data contract or you can connect to your home/office wireless and connect via your ISP.
Which do you choose and why ? Are their different costs or levels of service ? -
Fragments that do not arrive can be requested to be resent.
-
If all of the packets can go different ways through the network, where is the single point they all end up, where they can be put back together. ?
-
Duncan Maidens made a comment
In the early days of the internet, it was not clear how widely it would be used and some of the initial companies were allocated some of the class A networks (8 bits for the network and 24 bits for hosts). This gave them a colossal 2 ^ 24 ( 16 million addresses)
They still have these addresses and have not used all of their available host addresses internally -
Duncan Maidens made a comment
So in a 192.168.1.0 network, the address go from 192.168.1.1 to 192.168.1.255.
192.168.1.0 is reserved to refer to the network itself, not a specific device.
So it seems like you can have 255 usable addresses. - Right ?
BUT.... the last address (the all 1's in binary) 192.168.1.255 is also reserved as a special address and is a way to broadcast to all... -
How would you know where to send the message to say to resend the data ?
-
Thanks for pointing this out. We will get the course content updated.
-
Let's hope we change your mind. networks are amazing. They are the glue that holds the Internet together. The more you understand the more amazing it is that this 'thing' created out of the human mind has expanded to be the most important network the world has ever known and it is expanding and improving every day.
-
Duncan Maidens replied to Jo Jo
I love unplugged activities for Networking. It's very difficult to visualise these frames and packets whizzing around networks.
-
We are in the process of developing online resources for GCSE (14-16 years old) on the Isaac CS site alongside the current A level resources.
https://isaaccomputerscience.org/ -
Have you seen the Teach Computing Curricula ? https://teachcomputing.org/curriculum
-
Duncan Maidens made a comment
Has anyone had their phone hop onto a wireless network, but then not been able to connect to the Internet because it requires separate authentication?
-
Duncan Maidens replied to Aleks Johansen
Yes distance and thus the loss (voltage drop) are 2 factors which can affect the speed at which we can send data. However electrical interference also plays a big part.
-
Duncan Maidens replied to Natasha Reeves
Yes 2 errors cancel each other out an not picked up by a parity bit.
-
Sorry for your experience of a previous course here. It may have been that you were accessing the course outside of the facilitation window.
-
Duncan Maidens made a comment
Hi I am Duncan Maidens and one of the facilitators for this course. During November I will be on hand to feed into the discussion after each of the steps. However please feel free to respond to each other comments and discuss / debate or generally share experiences.
-
Duncan Maidens replied to Sam Roberts
Thanks for helping each other out
-
Duncan Maidens replied to Sophie Hunt
This is great @SophieHunt . We used to do something similar with KS2 children and get them to make bracelets with their initials in binary, using beads with 1 and 0s on them.
-
Duncan Maidens replied to Chris G
Ah @ChrisG I see your point.
The way to think about it is we are building a general circuit that MUST work for all possible inputs. Within a CPU an adder unit will just need to add two numbers. (Other specialist circuits may need to add more than 2 numbers, but we are not going to consider those here).Thus when adding binary numbers starting from the...
-
Duncan Maidens made a comment
~~~
1110
0001
~~~ -
Duncan Maidens replied to Stephen Newton
Thanks for your feedback Stephen
It is always difficult to decide what else to put in, which inevitable means leaving something out. We will however take your comments into consideration when we revise the course. -
Duncan Maidens replied to Stephen Newton
I wouldn't say complexity is redundant. The level of complexity is still there in every electronic device right down to the individual transistors that make up the logic gates.
The clever bit is how much detail we need in our heads as we build up from this. Someone designing a program would not worry about the detail of the logic gates in the CPU or the... -
Duncan Maidens replied to Chris G
If you feel up to it you can have a go at creating the truth table and the logic circuit for the 7 segment display, where the drive to each segment is an output.
You need to work out for each number input, which segments you want to display to show the number.
So for the possible numbers 0 - 9 you need a 4 bit input.(ABCD)
0000, 0001, 0010, .... 1000,... -
Duncan Maidens replied to Chris G
When you add 2 numbers together in binary (as you did in an earlier step), there are the two digits from the column you are adding, plus the possibility of a carry bit from the previous column.
eg
110
+ 011
You add the 0 and 1 in the left-most column first to give 1 and 0 to carry
You then add the 1 and 1 in the middle column to give 0 and 1 to... -
Duncan Maidens replied to Fleur Hardman
Chris - You are right. A =1 B = 1 and C = 0
D = A or B. 1 or 1 = 1
E = D NAND C = NOT (D and C) = NOT ( 1 and 0) = 1 -
Duncan Maidens replied to Lindy Leslie
The convention for the inputs is to list all the possibilities as if you were counting in binary.
AB
00
01
10
11ABC
000
001
010
011
100
101
110
111Just noticed in our example above we didn't follow this, but if you switch there A and B columns, then it does.
-
Duncan Maidens replied to Photo Fan
As you will discover, the added is the heart of the ALU - the arithmetic logic unit which is the core component of a CPU.
-
Duncan Maidens replied to Stephen Newton
Ah . Yes . But here we are looking into how the adder is built internally.
-
Did you get the binary addition in the earlier step?
When you were adding two bits in a column, there were 4 possibilities
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0 and 1 to carry.
The logic circuit above has just built this and it is called a half adder. -
Duncan Maidens replied to Lili Zhou
looks good
-
Duncan Maidens replied to Photo Fan
roll back we are not on hex yet :-)
-
Duncan Maidens made a comment
If you write out the truth table for the three inputs you should have 8 possible states that start from 000 and end up with 111.
Look to any input condition (such as 000) and make the output a 1 (or 0) . Then look at all the other input states where only 1 bit has changed. (001, 010 and 100). They need the opposite output state from 000. -
Duncan Maidens made a comment
For those examples with 2 inputs there are 4 possible input states. ((A= 0,B=0) or (A= 0,B=1) or (A= 1,B=0) or (A= 1,B=1)).
Where there are 3 inputs, there are 8 possible input states. -
Duncan Maidens replied to Stephen Newton
We have shown the construction for each of the gates from NAND gates, because a NAND gate is one of the simplest gates to build from transistors. So NAND gates are the building blocks of all other gates. So to actually make an AND gate we use 3 NAND gates.
-
Duncan Maidens replied to Chris G
Very interesting. Not come across that before. I can see how this could look like binary with 'no counter' being a 0 and 'a counter being a '1'. The column headings (representing the 4 squares) would be 4,3,2 and 1.
-
Hi. It's great to have you on the course no matter what the reason. All you need is an interest and a willingness to learn.
-
Great to hear. With those combined skills you should be spotting many cross overs between maths and CS, and certainly where the power of computing, such as running simulations, can really help in understanding maths.
-
Great. Clearly, computing plays an important part in many other disciplines, so understanding computing and how it relates to say, industrial control processes in Chemical engineering, will be most useful.
-
The course is free. You only pay if you want a certificate or want access beyond the end of the course dates.
-
Duncan Maidens replied to Samantha Adams
@SamanthaAdams See my example in the reply above to Denise. Does that help ?