thebestaquaman

joined 1 year ago
[–] [email protected] 13 points 5 days ago (1 children)

The whitespace doesn't bother me at all, but holy hell! Any time I'm trying to understand a Python program/library that's anything above a couple thousand lines of code, I instantly feel a burning hate for dynamic typing.

I love Python for scripting- in large part because of dynamic typing. IMO it's just not a language made for building large infrastructures.

[–] [email protected] 2 points 1 month ago (1 children)

I would say "debunked" in the sense that quantum mechanics correctly predicts phenomena that don't exist in classical physics, and relies on the idea that quantum particles obey a probability distribution, rather than deterministic mechanics.

Quantum mechanics appears to work so well for these phenomena compared to deterministic mechanics that it's tempting to say that the actual universe is in fact governed by probabilities rather than determinism.

I would argue that all physical models of the universe are just that: Models. We can get asymptotically closer to a perfect description of the universe, but no model can ever tell us the true nature of the underlying system it is describing, just be an arbitrarily good description of it.

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago)

While peat regenerates, it does so slowly, so they might actually have burned off some measurable elevation (on average)

[–] [email protected] 2 points 1 month ago

That's what major versions are for - breaking changes. Regardless, you should probably be able to fix this with some regex hackery. Something along the lines of

new_file_content = re.sub(r'(?<=\bprint)(\s+)(?!\()', '(', old_file_content)
new_file_content = re.sub(r'(print\(.*?)(\n|$)', r'\1)', new_file_content)

should do the trick.

[–] [email protected] 2 points 1 month ago (1 children)

For someone starting out, I would say that a major advantage of Python over any compiled language is that you can just create a file and start writing/running code. With C++ (which I'm also a heavy user of) you need to get over the hurdle of setting up a build system, which is simple enough when you know it, but can quickly be a high bar for an absolute beginner. That's before you start looking at things like including/linking other libraries, which in Python is done with a simple import, but where you have to set up your build system properly to get things working in C++.

Honestly, I'm still kind of confused that the beginner course at my old university still insists on giving out a pre-written makefile and vscode config files for everyone instead of spending the first week just showing people how to actually write and compile hello world using cmake. I remember my major hurdle when leaving that course was that I knew how to write basic C++, I just had no idea how to compile and link it when I could no longer use the makefile that we were explicitly told to never touch...

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago)

Yes, it's a field. Specifically, a field containing human-readable information about what is going on in adjacent fields, much like a comment. I see no issue with putting such information in a json file.

As for "you don't comment by putting information in variables": In Python, your objects have the __doc__ attribute, which is specifically used for this purpose.

[–] [email protected] 10 points 2 months ago (3 children)

I never understood that. Apparently they use it as a primary way of messaging each other? At least that's what younger relatives have told me. I've tried to have them explain what makes the app designed to hide/delete stuff after it's been read better for communication, but so far haven't gotten an explanation I could make any sense of.

[–] [email protected] 83 points 2 months ago (2 children)

"Enshittification will continue until revenue improves"

[–] [email protected] 1 points 2 months ago

I've found that regex is maybe the programming-related thing GPT is best at, which makes sense given that it's a language model, and regex is just a compact language with weird syntax for describing patterns. Translating between a description of a pattern in English and Regex shouldn't be harder for that kind of model than any other translation so to speak.

[–] [email protected] 2 points 2 months ago (2 children)

In general I agree: ChatGPT sucks at writing code. However, when I want to throw together some simple stuff in a language I rarely write, I find it can save me quite some time. Typical examples would be something like

"Write a bash script to rename all the files in the current directory according to ", "Give me a regex pattern for <...>", or "write a JavaScript function to do <stupid simple thing, but I never bothered to learn JS>"

Especially using it as a regex pattern generator is nice. It can also be nice when learning a new language and you just need to check the syntax for something- often quicker than swimming though some Geeks4Geeks blog about why you should know how to do what you're trying to do.

[–] [email protected] 2 points 2 months ago

My test suite takes quite a bit of time, not because the code base is huge, but because it consists of a variety of mathematical models that should work under a range of conditions.

This makes it very quick to write a test that's basically "check that every pair of models gives the same output for the same conditions" or "check that re-ordering the inputs in a certain way does not change the output".

If you have 10 models, with three inputs that can be ordered 6 ways, you now suddenly have 60 tests that take maybe 2-3 sec each.

Scaling up: It becomes very easy to write automated testing for a lot of stuff, so even if each individual test is relatively quick, they suddenly take 10-15 min to run total.

The test suite now is ≈2000 unit/integration tests, and I have experienced uncovering an obscure bug because a single one of them failed.

[–] [email protected] 2 points 2 months ago

Ngl you had me until the 1772 bit

 

Inspired by the linked XKCD. Using 60% instead of 50% because that's an easy filter to apply on rottentomatoes.

I'll go first: I think "Sherlock Holmes: A game of Shadows" was awesome, from the plot to the characters ,and especially how they used screen-play to highlight how Sherlocks head works in these absurd ways.

 
 

view more: next ›