This was not meant to be a debate about software development, so let me
end this thread by:
1 - thanking all
2 - saying that aside from one "small" point, I agree with all Guy wrote
in his last post about security, curriculum, develpment, etc -
especially about "software developers that insist on not solving their
customer's needs"

The one small point is about "the practice of blocking ICMP traffic" in
the context of my original question. 
I certainly know that this is often the case and as part of the
assignment, the student must deal with hops (routers) that do not
respond along the way. 
But this is NOT what my ISP is doing since his servers DO respond to
ICMP messages. Somehow (I still don't know how or why) they are
blocking successful ICMP responses from other routers along the way but
NOT blocking ICMP error messages. Again, I am not blaming the ISP
(middle man) since there may be a reason for this - just saying that it
seems strange, especially since in the last few day, my
**non-conclusive** experiments have found no other ISPs who do this.




On Mon, 20 May 2024 22:57:26 +0300
guy keren <guy.choo.ke...@gmail.com> wrote:

> 
> 
> On 5/20/24 09:25, Shlomo Solomon wrote:
> > On Sun, 19 May 2024 23:17:13 +0300
> > guy keren <guy.choo.ke...@gmail.com> wrote:
> > 
> >>
> >> the fact that traceroute works in this case while your python code
> >> doesn't work in this case, suggests there is some at least one
> >> scenario that your code doesn't handle, even though it could.
> > 
> > Thank you again.
> > I agree, but see the rest of my reply below
> 
> ...
> 
> >>
> >> your refusal to look at the code of traceroute, and instead
> >> insisting of "blaming the middle-man" and fixing the problem at
> >> their side, strikes me as a bad example for your students. as a
> >> developer, i will first try to verify i didn't miss some scenario
> >> or use-case, before trying to pass the blame.
> > 
> > I asked for help and REALLY appreciate all the answers I got, but
> > maybe I was not clear enough so let me explain why your answer is
> > CORRECT, but in this case NOT helpful.
> > 
> > 1 - As a teacher, I must follow the curriculum and in this case I am
> > teaching Python and Scapy and specifically ICMP, so looking at the
> > code of traceroute which is completely different does not help.
> > 2 - I did not intend to blame the middle-man. I just wrote that the
> > code has worked for several years that I have been teaching and also
> > works when connecting via a different ISP (at school or a cell phone
> > hotspot). So the "logical" conclusion is that my ISP is blocking
> > something that was not blocked before and is not blocked by other
> > ISPs. 3 - As I wrote a few minute ago, I found a virtual cloud
> > solution and this ALSO runs my code without any problem, so more
> > evidence that my ISP is blocking something that is usually not
> > blocked.
> 
> 
> i don't think you have a way to know what is "the usual" today, and
> what is not. as far as i know, the practice of blocking ICMP traffic
> for security purposes (as a means of avoiding some variants of DDOS 
> attackes) by ISPs, is not that rare in the world. until today - you
> were simply lucky.
> 
> > 4 - I always make it clear to my students that the code they are
> > writing is not a replacement for traceroute - only a learning
> > excercise.
> 
> so here you are, having a chance to teach your students a really 
> important lesson about what makes a software product robust, that 
> conventions in the world change every few years, and that they have a 
> way of writing this code that'll be actually working - and you want
> to throw the opportunity away "because of the curriculum" - and
> instead indirectly teach your students that "the mechanism is
> important, not achieving the requirements of the software".
> 
> > 
> > 
> >>
> >> for the sake of your students, please re-consider this approach...
> > 
> > For the above reasons, I cannot change anything, but I do agree that
> > some students could potentially draw incorrect conclusions, so in my
> > next lesso, I will again explain that this was a learning exercise
> > about ICMP and not intened to be a fully working
> > solution/replacement for traceroute.
> 
> in your next lesson, you should open up the entire story, and tell
> them that when they will become real software developers in the
> future, they should learn it as a lesson about the importance of
> requirements over design choices. you have a chance to broaden their
> minds or to bog them down with procedures and curriculum. please
> don't chose the easy path - that way lie software developers that
> insist on not solving their customer's needs..
> 
> --guy
> 
> 



-- 
Shlomo Solomon
http://the-solomons.net
Claws Mail 4.0.0 - KDE Plasma 5.24.7 - Kubuntu 22.04
_______________________________________________
Linux-il mailing list -- linux-il@cs.huji.ac.il
To unsubscribe send an email to linux-il-le...@cs.huji.ac.il

Reply via email to