mirror of
https://github.com/not-kennethreitz/convore.json.git
synced 2026-06-21 23:50:58 +00:00
1 line
6.8 KiB
JSON
1 line
6.8 KiB
JSON
[{"user_id": 11246, "stars": [], "topic_id": 17063, "date_created": 1301857234.673033, "message": "Version control? Visualization techniques? Statistical methods? Programming languages (which ones?)? Debugging techniques? Behavior of basic data types? Documentation techniques? Unix? LaTeX?", "group_id": 3435, "id": 516133}, {"user_id": 11246, "stars": [], "topic_id": 17063, "date_created": 1302555990.4123981, "message": "Some proposed questions:", "group_id": 3435, "id": 630037}, {"user_id": 11246, "stars": [], "topic_id": 17063, "date_created": 1302555995.9388421, "message": "What topics do you think are important? Documentation, programming,\nvisualization, databases, version control, unix, linear algebra?\n\nDo you teach a specific programming language/ software package? Teach to\nspecific hardware (CUDA?) Teach specific version control system? If so, which\nspecific tools should be taught?\n\nHow should it be decided which topics should be taught? Polls of interest?\nShould students be taught topics that they may not be aware of or that they may not\nunderstand, but have critical value, e.g. version control and unit testing?\n", "group_id": 3435, "id": 630039}, {"user_id": 11246, "stars": [], "topic_id": 17063, "date_created": 1302560420.786649, "message": "In what way are these subjects taught? Embedded into course content? Homework?\nLectures? Labs? Separate courses? Extracurricular groups like THW?\n", "group_id": 3435, "id": 631157}, {"user_id": 21370, "stars": [], "topic_id": 17063, "date_created": 1302605940.9219561, "message": "You already cited the key points, but let me repeat them to show my support: (1) Version control, and preferably a distributed one (git, git...) (2) Statistical methods : (R), (3) Make (to drive reproducible reports. (4) Linux: Yes. The top supercomputers run in Linux, down to the 512Mb old machine forgotten in the corner of the lab. (5) LaTeX : certainly. It is compatible with version control, and with the generation of reproducible reports. It is perfect for equations, and fully supported for publications. (6) TESTING: Testing should be a \"natural\" skill for researchers. Testing is \"running an experiment every day to see if it still works\". A researcher who doesn't embrace daily testing, must be sent back to retake a course in Epistemology, because she/he has not yet understood the scientific method (7) CLEAN CODE : (clearly described in a book by the same name), Source is intended for humans, and it must be maintainable. Somebody must be able to ready 10 years later. Almost none \"research code\" pases this test. (8) Visualization : Yes. ALL OF THIS SHOULD BE PRACTICAL COURSES DONE BOOTCAMP Style. That is, one or two weeks of total immersion in the subject, with hands on exercise.", "group_id": 3435, "id": 640112}, {"user_id": 21310, "stars": [], "topic_id": 17063, "date_created": 1302634588.7903039, "message": "Then to build skills in an integrated way... I'm not sure I like the bootcamp approach -- for students, where do you manage to fit it into already bloated curricula? And for researchers, forget it. Besides, lots of people will quickly reach saturation/overdose on the coding stuff. There's only so much of new concepts that people can take in at a time. I prefer a regularly paced, reasonably proportioned approach, like a couple of hours every few days. With a project-based angle, so that people can apply what they learn and see how they're gradually building up to produce actual functional programs.", "group_id": 3435, "id": 647585}, {"user_id": 21310, "stars": [], "topic_id": 17063, "date_created": 1302634148.4823029, "message": "All this is very useful but I think there is one initial step that no one is discussing: before you can attempt to do any of that, you need to teach people (students, working scientists, whatever) to NOT FEAR THE COMMAND LINE. A major reason that my biologist colleagues cite for not using computational tools that could save them a lot of time and effort is a sort of diffuse fear born of not understanding what the heck is this CLI thing -- it's like a monster they think they have to fight. So before anything else, demystify the command line. Teach people to use the Unix layer of their Mac (let's be real, everyone in college or research has a Mac now, no?). I did a workshop at my lab and people got a lot more confident after just learning some basics, because they realized it was not some monstrously complex arcane alchemy of incantations. Just a line where you type a command using a simple and predictable grammar/vocabulary.", "group_id": 3435, "id": 647542}, {"user_id": 21310, "stars": [], "topic_id": 17063, "date_created": 1302634667.1424489, "message": "Also, include things like testing and documentation right from the start. Don't even let them think they can get away without doing those.", "group_id": 3435, "id": 647593}, {"user_id": 11246, "stars": [], "topic_id": 17063, "date_created": 1302664895.421824, "message": "@luisibanez All really great points, and also some key ones that were left out. Statistical methods are ubiquitous. For scientific computing, I think numerical methods are also very helpful. Linux is the most powerful platform, IMHO. LaTeX is also huge. I also like ReStructured Text, but it has a ways to go in equation and citation support. Testing is probably the biggest, being the key to the scientific method and repeatability. In terms of clean code, simply enlightening some to the possibility that variable names can have more than three characters would be an improvement.", "group_id": 3435, "id": 656489}, {"user_id": 11246, "stars": [], "topic_id": 17063, "date_created": 1302665960.0489509, "message": "@gglobster, very good point on the CLI. It allows one to work smart, not like a monkey, and get a lot more done. It also often prevents the most common cause of error in science: transcription errors.", "group_id": 3435, "id": 656816}, {"user_id": 11246, "stars": [], "topic_id": 17063, "date_created": 1302666070.9352341, "message": "Fitting into the curricula is of course a big issue. The Hacker Within (hackerwithin.org) has had success hosting bootcamps at the end of winter break. I think we may try to make the entire topic into another episode, though.", "group_id": 3435, "id": 656852}, {"user_id": 11246, "stars": [], "topic_id": 17063, "date_created": 1303168635.902909, "message": "http://jobs.phds.org/ All PhD fields: 1373 jobs found. Engineering/ Computer Science: 802 jobs found.\n\nAnd look at the descriptions. Most require programming skills.", "group_id": 3435, "id": 733017}, {"user_id": 10411, "stars": [], "topic_id": 17063, "date_created": 1303175097.9526031, "message": "@spidr They have 36 jobs too many.", "group_id": 3435, "id": 734365}, {"user_id": 10421, "stars": [], "topic_id": 17063, "date_created": 1303333322.0376191, "message": "@scopatz @spidr hah! 1337 . It took me a while to catch that joke.", "group_id": 3435, "id": 761418}] |