• 0 Posts
  • 45 Comments
Joined 1 year ago
cake
Cake day: September 9th, 2023

help-circle





  • Python is just glorified shell scripting

    Absolutely not, python is an actual programming language with sane error handling and arbitrarily nestable data structures.

    I don’t like the indentation crap

    Don’t be so superficial. When learning something, go with the flow and try to work with the design choices, not against them.

    Python simply writes a bit differently: you do e.g. more function definitions and list comprehensions.









  • You’re talking as if there weren’t pedagogic professionals who have solved this problem. If a child is that unwilling to conform even slightly, the child either has special needs and doesn’t belong there, or, more likely, there’s shit going down at the child’s home and CPS need to get involved.

    I’m thoroughly baffled that you think there’s any kind of argument to be made for corporeal punishment. The scientific world has solved and moved on a century ago. The backwater sticklers who still don’t get it are harmful Luddites, not people with opinions to take seriously.




  • Huh, I really like code like that. Having a multi-step process split up into sections like that is amazing to reason about actual dependencies of the individual sections. Granted, that only applies if the individual steps are kinda independently meaningful

    To adapt your example to what I mean:

    Baz do_stuff(int count, boolean cond) {
    	Foo part1 = function1(count);
    	Bar part2 = function2(cond);
    	return function3(part1, part2);
    }
    

    This allows you to immediately see that part1 and part2 are independently calculated, and what goes into calculating them.

    There are several benefits, e.g.:

    1. if there is a problem, you can more easily narrow down where it is (e.g. if part2 calculates as expected and part1 doesn’t, the problem is probably in function1, not function2 or function3). If you have to understand the whole do_stuff before you can effectively debug it, you waste time.
    2. if the function needs to be optimized, you know immediately that function1 and function 2 can probably run in parallel, and even if you don’t want to do that, the slow part will show up in a flame graph.