Wow, those who could find their own research topic were lucky.
I've never seen anyone in my environment get that much freedom.
The supervisor sets the problem and the student must solve it.
Edit: I was under the impression that even the postdocs
are hired for a specific task.
I didn't expect to see Artemiev mentioned here.
Great soviet composer and his "Meditation" is a very fitting
track for the movie. Amazing blend of electronic and eastern traditional music. I didn't watch the whole video, but I
don't think he mentioned Jugalbandi.
The musician he asked to play for this track used to play mugams according to Eduard's words, perhaps that's why they say it resembles a certain mugam: Bayat Shiraz
https://www.youtube.com/watch?v=wrfGR70Y_YY
I think the author is missing a couple of important points:
1) How would one approach this task having a day job?
2) How do you compensate for not having a chance to work
in a suitable environment doing good research?
2a)Knowing and
understanding everything that has been done in the past
doesn't by itself make you a researcher. This (being a scientist) must be
taught by actual theoretical physicists. There are many
supervisors, but very few that can teach you to do research.
2b) Serious and worthwhile research is seldom done by one person. You need to collaborate or at least communicate with
other scientists in the field (and sometimes even out of the field). You have to be in the right
environment. Just reading arxiv won't quite cut it.
I don't work at home all the time, but I've been struggling
to find some metric to hold myself accountable for my own
quality and intensity of work. Do you mind sharing your experience?
Integrating a compiler into a text editor to speed it up is
a bit of an overkill imo. What if a lisp source changes and needs to be recompiled?
What if several lisp files change? Does it mean that it also
needs a sort of a build system? This brings the joke
about an "operating system that lacks a decent editor"
closer to reality (or reality closer to the joke).
On a side note:
having (semi)automatic parallelization with code generation
for GPGPU would be very nice.
> There is definitely code reuse, but it's in the form of the scientist collecting snippets of useful algorithm over the years and copy it to the project when they needed.
> The thing is, you can write a perfectly normal fortran code, and instantly gain speedup (CUDA, distributed computing with OpenMP, etc) just by enabling some compiler flags.
I'm not sure I understand you correctly. Can you give examples of such flags?
> Also, vector/matrix operations are first class in fortran and you don't need to rely on 3rd party libs.
It may be useful as long as you're hell-bent on not
using libraries (which is somewhat contrary to one of the
pro-FORTRAN arguments that FORTRAN has lots of libraries that are tested and ready to use).
This is a weak consolation though, since anything complex enough deals with custom matrix/vector types for sparse matrices or data types used in parallel computations.
Could be, at least C++ has tools to implement better design.
I've seen one guy's python code that looks worse than his FORTRAN code.
There's a russian saying: "A true FORTRAN programmer can write FORTRAN code in any language".
> Fortran has historically been noticeably faster than even C/C++ for numerical computations
Nowadays: faster - maybe, noticeably - I doubt it.
> supercomputers have better-optimized Fortran compilers than C compilers
I don't know about supercomputer compilers but mainstream compilers usually have the same backend for FORTRAN and C (as well as other implemented languages).
> created a great deal of high-quality legacy Fortran code that nobody feels an urgent need to port into C
Optimized and tested FORTRAN code - maybe, but not high-quality. I've seen some of it, FORTRAN makes it difficult to
write readable, maintainable code. For this reason
even scientist are rewriting their tools and libraries
(that also require good performance) in C++: for example see
Pythia, GEANT, cern root.
I wouldn't say that Linux maintenance is completely smooth
for me, but if something happens it's usually due to my own
poor attention.
OTOH Windows 10 is determined to force its updates on me at
the most inconvenient times. Once I left Windows 10 to update over night, to be greeted with grub rescue screen in the morning. Took me most of the next day to fix things.
Linux isn't perfect but at least it doesn't break everything and I'm the one in control of things.
Edit: I was under the impression that even the postdocs are hired for a specific task.