Live data from Hacker News

Why Astronomers Love Python [video]

youtube.com

21–27 of 27 posts

Re: Why Astronomers Love Python [video]

#21
post #20
post #19

Earlier quoted context omitted.

The other part of not reusing code is that you tend to be pretty casual about edge cases/testing. If I know the params will be valid and the data set well formed (I made them) then I don't need to write 100 lines of checking. My test is two simple test runs, did they give me the answer I expected? Yes! Winner. Set off long running job and go home

This is precisely the difference from regular programming: Our code is typically going to be used by a very small number of people, and the inputs are typically very well constrained. It's typically faster to just call up the new prospective user and explain the code than to triple your development time making it rock solid. For instance, I'm currently working on a project where I have to process 110 GB/s of radio da…

Portable, certainly not. Verifiable and replicable, certainly yes. Otherwise that's not the work of scientist.

Programs are mathematical proofs. If the mathematical proofs are a weak link in a scientific work, then this is a serious problem.

Re: Why Astronomers Love Python [video]

#22
post #13

Earlier quoted context omitted.

Isn't it fair to say a prepper is a "terrible trauma surgeon" in context of whether or not a professional should be brought in or not?

No, because his "terrible-ness" has to do with priorities. A scientist's priority is usually to make a fast prototype or model of her theory. I see it at least in my own field (biomedicine). IF you need a real software developer for some extended work, you hire one. But to call scientists lousy programmers is like calling every driver on this earth lousy driver (in respect to Formula 1 drivers, for example).

> A scientist's priority is..

Don't you mean a programmer? A fine scientist can still be a terrible programmer.

> to call scientists lousy programmers is like calling every driver on this earth lousy driver

Why? Most drivers on earth are fine drivers, terrible F1 drivers.

Maybe most scientists are fine scientists, terrible programmers?

Re: Why Astronomers Love Python [video]

#23

Earlier quoted context omitted.

I don't really understand this persistent "carpentry/craftsman" analogy - it seems to me software dev isn't really like a craft at all. I'd sooner stick to "software engineering".

But it isn't engineering. Not really. The number of things you can measure and plan for in advance of implementation are much, much smaller than the number of things you need to build every day. Engineering is a discipline with thousands of years of practice and study behind it, and the traditional 'best practice' is far more likely to work than ones from the programming world. What's more, once the plans have been w…

It's true that software differs from many Physical Engineering practices too, but why does this automatically make "craft" appropriate? Are Mathematicians called craftsmen because there is no physical output to their efforts?

> We create programs custom built for a purpose, using rules of thumb and our own aesthetic instincts

Software can be general too, it's not the same as, say, making a small stool or chair. Plus, craftsmen are tied to physical constraints too, much like engineers. I'm not sure I agree with how much s/w depends on "rules of thumb and our own aesthetic instincts" though.

Re: Why Astronomers Love Python [video]

#24
post #5
post #2

Astronomers are, for the most part, terrible programmers. This is true of the general population too, but unfortunately almost every astronomer has to actually write programs. Python and co. are probably more of a help than a hindrance as it replaces things like old-school Fortran, IDL, gnuplot and Matlab. Clever groups are starting to wise up to this and have dedicated programmers supporting astronomers, rather than…

I don't exactly agree with this. As a scientist myself, the term "terrible programmer" is a little bit harsh. Scientists (and the general population) are not professional programmers. If the need arises, they hire one. Scientists usually need to jot down a prototype and a model in order to see if their theory works. It's like comparing a physician with a prepper. A prepper might know how to use some first-aid methods…

As a scientist, astronomer and professional software engineer, I have to say the grandparent is spot on. I've untangled a lot of really, really bad science code. I've seen the gamut too, having worked in high powered computing on many different models across many different fields. In general the code is just terrible, but it gets the job done. Just not efficiently or sometimes accurately (bugs abound).

Re: Why Astronomers Love Python [video]

#25
post #2

Astronomers are, for the most part, terrible programmers. This is true of the general population too, but unfortunately almost every astronomer has to actually write programs. Python and co. are probably more of a help than a hindrance as it replaces things like old-school Fortran, IDL, gnuplot and Matlab. Clever groups are starting to wise up to this and have dedicated programmers supporting astronomers, rather than…

Humans are, for the most part, terrible programmers.

I was just setting up https://github.com/karpathy/arxiv-sanity-preserver (By Andrej Karpathy no less) and the whole experience from spinning up a VM to deploying the code made me realize how pathetic computers are for casual use.

Computers are a hot mess.

Re: Why Astronomers Love Python [video]

#26
post #13

Earlier quoted context omitted.

No, because his "terrible-ness" has to do with priorities. A scientist's priority is usually to make a fast prototype or model of her theory. I see it at least in my own field (biomedicine). IF you need a real software developer for some extended work, you hire one. But to call scientists lousy programmers is like calling every driver on this earth lousy driver (in respect to Formula 1 drivers, for example).

> A scientist's priority is.. Don't you mean a programmer? A fine scientist can still be a terrible programmer. > to call scientists lousy programmers is like calling every driver on this earth lousy driver Why? Most drivers on earth are fine drivers, terrible F1 drivers. Maybe most scientists are fine scientists, terrible programmers?

Most drivers on earth are terrible drivers.
Post reply on HN