Jump to content

PhDP

Senior Members
  • Posts

    763
  • Joined

  • Last visited

Posts posted by PhDP

  1. "Clever" bot ?

     

    User: Hi.

     

    Cleverbot: Hey.

     

    User: How are you ?

     

    Cleverbot: Ok you?

     

    User: Veeery well ;).

     

    Cleverbot: That's just great.

     

    User: How old are you cleverbot, if that's your real name !

     

    Cleverbot: 123 colors.

     

    User: Colors ?

     

    Cleverbot: Do you get lonely?

     

    User: No. Are you a republican ?

     

    Cleverbot: Are you?!

     

    User: No, but I want to know about you.

     

    Cleverbot: What would you like to know?

     

    User: If you are a republican.

     

    Cleverbot: Ok fine I'm a republican.

  2. I'm still looking for the holy grail, a portable language supporting functional/imperative/OO styles. And of course it has to produce fast programs, which is quite important when you're writing Monte Carlo simulations.

     

    Anyway for now I'll stick with C/C++/Python. C++ has to be one of the most inelegant programming language, but building a class in C++ to deal with tridiagonal stochastic matrices is easy and it leads to a very clean syntax (and it's fast, too).

  3. (at least in some form, if not exactly Darwin's original version)

     

    To be fair, nobody really believe in Darwin's theory of evolution. At best, scientists accept a modified form of Darwin's theory of natural selection.

     

    In any case, very few people actually believe in evolution, they either accept a caricature of it, or are not willing to accept all the consequences.

  4. If I were in charge of PETA, my message would be clear and simple: stop eating red meat (i.e. mammals). Red meat is both the most unhealthy and in general eating mammals is the most morally reprehensible as mammals generally possess a higher degree of consciousness than most other animals, especially fish.

     

    ohh, that debate again ;)

  5. First of all, I think that if you suck at maths, you shouldn't study science. Especially if you're interested in evolution, you just wouldn't be able to follow many (most?) articles in journals such as "Evolution". There is a strong trend towards greater use of quantitative tools, Yule's speciation model (a continuous-time Markov chain) even made it into an article about patterns of frog diversification in last month's issue of "Evolution".

     

    So I strongly agree with Mokele's point that the best thing you can do is take a fair bit of math, stats and programming..

     

    The kind of math really depend on what you're interested in (I know, what a cheap answer). Is there a particular subject you're passionate about ?

     

    In any case, it's best to have at least some basic understanding of all the major branches of mathematics. That being said, there aren't many good courses to teach undergrad students in biology and geology how to use maths and computers...

  6. My suspicion is that the "new" languages make programming faster (to an extent) but program speed slower, unless you're sufficiently clever. But I'd have to try it.

     

    But that's beside the point, again it has very little to do with the actual value of the languages. The languages bascule named might be great but nobody use them in science. Scientists have to work in groups, they have to publish articles, and they very often have to rely on librairies. Who cares if your Haskell program is better than my C++ program, you'll probably need to write a version in C for publication or to cooperate with other people. It's already annoying when scientists publish articles filled with words nobody used in decades, at least they don't write their program in some obscur language.

     

    In my field (population genetics/molecular evolution), programs are written in C, C++, and minority are written in Java. Theoretical scientists very often use CPython for simple programs... and I encounter R a lot when I have to deal with phylogenetics and statistics. That's about it. With the exception of R, all theses languages are derived from C.

     

    That's the crushing force of inertia bascule talked about, which isn't so bad in truth. Communication is very important in science, and it would be messy if we were to follow all the fashions in computer science. I wish more was done with managed languages (Java & C#), they're fast enough for everything that you don't need to run on a supercomputer. And honestly, there's much hype surrounding functional languages these days, and I personally like the concepts, but I doubt we're going to see a truly functional languages in top 10 of TIOBE in the next few years.

     

    Landau wrote an article for computational physics, but I think it's useful for other scientists as well;

     

    In my view, Java's attention to precision, useful error messages, and object-orientation make it good for scientific computing, while its universality, free compilers, and use in the commercial sector make it popular with students. However, it is not as efficient or as well supported for HPC and parallel processing as are FORTRAN and C, the latter two having highly developed compilers and many more scientific subroutine libraries available. FORTRAN, in turn, is still the dominant language for HPC, with FORTRAN 90/95 being a surprisingly nice, modern, and effective language; but alas, it is hardly taught by any CS departments, and compilers can be expensive. C, and its object-oriented brother C++, are good for HPC, have good free compilers and libraries available, but may be too flexible with precision and memory access for beginners to learn good scientific programming practices. Python, a new, interpreted language that has garnered a small but devoted following, is free, user friendly, good for beginning programming, and has a nice 3D graphics library.

     

    Link to the complete article; http://physics.orst.edu/~rubin/Papers/CP-2.pdf

  7. It's all about sets;

     

    As an example, consider the open interval (0, 1) consisting of all real numbers x with 0 < x < 1. Here, the topology is the usual topology on the real line. We can look at this in two ways. Since any point in the interval is different from 0 and 1, the distance from that point to the edge is always non-zero. Or equivalently, for any point in the interval we can move by a small enough amount in any direction without touching the edge and still be inside the set. Therefore, the interval (0, 1) is open. However, the interval (0, 1] consisting of all numbers x with 0 < x ≤ 1 is not open in the topology induced from the real line; if one takes x = 1 and moves an arbitrarily small amount in the positive direction, one will be outside of (0, 1'].
  8. D H,

     

    I'm on linux (openSUSE) 90% of the time and I still use C# a lot with MonoDevelop, it has many of the features Java lack to be a great language (operator overloading, struct; light 'classes' created on the stack, good generics). It's actually my favorite language, it's very fast on windows and is getting faster with Mono on Linux/Mac. Still... I'm sure I'll spend most of my Ph.D. with C/C++/Fortran (hopefully Fortran).

     

    Except for GUI, from my experience, Java is never an order of magnitude slower than C++ but it certainly depend on what you're doing. For example the Wright-Fisher simulation I tried with several languages ran much faster on Java than with MatLab, which is optimized for array operation but tend to suck with loops.

     

    Fortran, C, and C++ SUCK. Why on earth would you ever argue these languages are easier for scientists to understand?

     

    Simple: because we'll all using these languages. ecoli asked an advice and I think he would be disappointed if he learned a functional language. He would be stuck with a language very few fellow scientists would understand, and he wouldn't have the programming skills so many supervisors like (i.e.: being able to deal with C/C++). I think Java is just fine to start in computer science and it's quite easy to get from Java to C++, while OCaml and Haskell are completely different language based on a radically different paradigm which isn't widely used in science. He would be even more disappointed by Ruby, because nobody uses that in science, and it's slow as hell. We're talking about the best language to learn for a scientist, not the best general purpose language, and I think the two most important thing for a scientists are speed and popularity within the field.

     

    Python is just pathetic.

     

    In terms of speed, yes it is. It's still a nice language for exploration and graphics. I doubt any scientist can get away with Python 100% of the time.

     

    I personally do not like FORTRAN

     

    Can I know why ? I don't know that much about Fortran but it seems to have a nice syntax for array manipulations (much better than C/C++).

  9. Eventually, I want to be able to do some computationally-heavy modeling work, which obviously requires programming knowledge.

     

    Is there a specific language that would be good for this type of interest. Where can a newb start learning about building the tools to develop skills to develop stochastic-type models?

     

    Thanks!

     

    Most computationally-heavy modeling is done in C, C++, or Fortran. Now... both C and C++ are quite messy language, but ultimately, if you're interested in scientific computing, you'll have to deal with them. C++ isn't that bad with good libraries such as Blitz++, and since Fortran95, Fortran is actually quite a nice language with a perfect syntax for array manipulations... on the other hand it's nearly dead as a general purpose programming language. Yet, to be honest, I prefer managed language such as Java or C#, they're just much safe and much more fun to use. For most tasks Java is doing just fine. From my experience Java and C# are between 0 and 200% slower than C++, which isn't a problem.

     

    Also, once you understand the basic concepts of C++, you'll easily understand Java and C# and many other languages. The opposite is also true to some extend, with some basic knowledge in C (which is quite a minimalistic language) and Java, you'll be able to read the code of most projects.

     

    Personally, I think the best deal in science is; Python + an object-oriented C-like language (either C++, Java or C#). Python 2.x is very elegant, very simple, and with librairies such as matplotlib and numpy/scipy you'll be able to do a lot; including publication-quality graphics with a few lines of code. Also with SciPy, Python has a very MatLabish syntax for arrays, a syntax which is both very simple and is going to be recognized by many.

     

    But ! Even CPython (the fastest implementation of Python as far I as know) is ridiculously slow compared to C/C++/Java/C#. For example I wrote a simple Wright-Fisher simulation which need 1 000 000 000 random numbers generated by the Mersenne Twister. Very simple; it takes a few lines of code. With Java, C++ or C# it takes about 20-40 s, it takes about 20 minutes with Python !

     

    I like the Python + C++/Java/C# approach because you have both a simple language for exploration and to generate graphics (Python), and a language for the heavy stuff. Another thing; popularity. If you look at TIOBE index, you'll see how dominant the language I named are. It matters for a scientist, it matters a lot. I would be seriously annoyed if I had to review an article with code written in Ruby, OCaml, Haskel or Lisp = because nobody use these languages in science. I think Lisp is common in AI and Haskel is some area of math, just as R is widely used in statistics/phylogenetics, but outside their niche the C++ beast dominate.

     

    They might be great languages, I was actually impressed by Haskell and F# (basically an implementation of OCaml), but how many scientists will be able to understand the code ?

  10. I have no problem with your arguments, or with you, but I'm seriously annoyed by the method and tactic you often use. Like the one you just used; repeating my argument instead of providing an answer.

     

    It's certainly not a personal attack, I never speculated about your motives or used negative labels against you, I only argue against your methods.

     

    ...beside, it has a lot to do with the topic. Partisanship is not only a true phenomenon (and problem, IMO), but it's also a concept which is being used to commit a fallacy; an appeal to motives.

  11. So it's okay that they don't rely on reason and evidence? Because I (in your opinion) threw an accusation I couldn't justify?.

     

    That must be a joke, I said it was OK if someone didn't rely on reason ?

     

    Where ?

     

    You perfectly know what I mean; no matter how wrong an argument is, throwing accusation is not very constructive, especially if you're only doing that; throwing an accusation with no argument.

     

    You talk about reason, then try to answer this; what's the purpose of answering to a claim, or an opinion, by an accusation of the type "it's partisan" or "it's political correctness" ? Even if you're answering to an irrational, partisan, politically correct liberal, what on earth can be achieved by labeling his/her opinions instead of confronting them ?

     

    Well, I don't know for sure if you can or can't justify the accusations you throw, but you certainly used the easy road (i.e: accusation + no argument) in a number of occasions. If you can justify your accusations, then justify them with counterarguments instead of playing the "PC" or "partisan" cards.

     

    Still, I can't believe we have to discuss the validity of personal accusations on a science forum, it should be obvious for everyone how sterile this kind of tactic is. We're not in kindergarten for jebus' sake.

  12. What about unfounded accusations of unfounded accusations of partisanship? (grin)

     

    But seriously, you say that people here are expected to rely on reason and evidence, yet you often answered opinions (even evidences) by throwing accusations you could never justify with either reason or evidences.

     

    It's ironic, because it's actually quite hard to know if someone has formed his opinion independently, or is just being politically correct/partisan. But when you get an accusation instead of a counterargument, I think it is fair to question the motivations.

     

    Just as you'll likely get a lot of "you're racist" if you discuss intelligence and "race", you will also get a lot of "you're guilty of political correctness" if you try to argue against Philippe Rushton (in fact, he accuses his opponents of political correctness on his website). Fair to say, the former are truly guilty of political correctness, and the latter is a racist (for real), but in both cases I think we have serious evidences.

  13. ParanoiA, it's a science forum here, you can't expect a positive response for a fundamentalist christian. Palin has very little education (I know; McCain's not better), she prefers religion to reason on many issues, and I'm sure many people are not impressed by her intellect (I'm not anyway, and I could list the reasons).

     

    I'm not a big fan of Obama, and to me his religion is a problem. Yet, he might talk all he wants about religion, it doesn't seem to have a huge impact on his political belief.

  14. If you can what sort of mathematics would you require to do so?

    (sorry, if this belong to the maths forum,I thought it would involve more ecology)

     

    Systems of differential equations, qualitative theory of differential equations, complex systems, stochastic processes... It depends what exactly you're interested in, but if you want to make a career in theoretical/mathematical ecology, it's really a good place to be right now.

  15. No, it's not productive. Well, I should add; it's not productive on an intellectual level, but it's probably inevitable, and maybe even productive on an organizational level.

     

    But unfounded accusations of partisanship and political correctness are much worse.

     

    Speaking of evidence, both political correctness and partisanship implies the person making the statement hasn't formed his opinions on his own, but copied something from a party/society. This kind of accusations require evidences, otherwise it's just another way to answer an opinion by a personal attack.

     

    Answering a claim/opinion by accusations and speculation on motivations, certainly, that has nothing to do with science and reason.

  16. I must admit that I'll a little pissed off by the GOP convention. They can say that democrats are wrong, and even stupid, weak, whatever, but the fact that republicans continue to imply they are the party that loves America, and of course, Obama just loves himself. It's childish. It's in part how they got America into Iraq, it's in part how they won against Kerry, and they're at it again... I think it's a good idea for Obama to talk about this, too often, Democrats have retreated instead of fighting back to the point where they are even scared to say they are liberals. I also think many American are tired of this "Ï love America more than you" argument.

     

    About Palin; honestly I cannot think of a worst candidate for the VP spot, from my perspective at least (and I guess republicans have given up hopes of winning the votes of scientists a long, long time ago). I can see McCain as PotUS, or Romney, or even Giuliani. But Palin, no. It's not a question of experience, it's a question of judgment and competence. I like to think that a person must be pretty smart to be the #1 of the world's most powerful country.

     

    But I guess it makes sense to pick a women, that is; not Palin, she has so many skeletons in her closet that it's confusing. The republican have played the victim cards very often lately, it's just absurd to hear McCain talk about his experience as a POW when asked about how many houses of got (who cares about houses he got anyway). He was a POW, he's a war hero, big deal, it's not an excuse to lie, it's not even a qualification to be president.

     

    Anyway... The point is that it's going to be hard for the democrats to attack Palin, as soon as they're going to criticize her, they're going to play the "they did the same thing to Clinton" card, in addition to the usual "the media is against us" card. Yet, McCain is old and I'm not sure Palin will be that popular on the national level, she's obviously there to please the religious fundamentalists, it would be a good idea for democrats to focus on her. I'm not a political stategist, but I think a good VP candidate gives a little boost for the ticket in an important state (she doesn't) or helps to convince a certain group (she does). But the most important thing for the VP is not to steal the spotlight from the number one on the ticket, especially if it's to excite the news media about abuse-of-power scandals and extremist views.

     

    It seems to me that McCain made a terrible mistake.

     

    About her daughter's pregnancy. I agree that it's not really our business, still I think it will matter for two reasons;

     

    First, I'm certainly not the first to note that Christians fundamentalists oppose sex ed... and this is the result. Of course, it's an anecdote, it could have happened to Chelsea Clinton, it's still a powerful image for the pro-sex-ed people like me.

     

    But there is also another aspect that nobody wants to discuss. Aside from all the crazy things she believes (or did, like trying to fire a women because she refused to ban books), the thing that struck me the most is how unpresidential Palin looks (...I'm not talking about her body). Sports reporter, mayor of a very small town, beauty queen contestant, married to a blue-collar... I know anti-elitism is pretty strong in the U.S., it seems that democrats try to hide the fact that Obama was editor of the Harvard law review, but I still think Americans are looking for people with more stature. The fact is; teenage pregnancies are associated with poor, uneducated families. Not always the case, but often is, and the statistics on both the mothers and the children are not pretty.

     

    My feeling is that her daughter's pregnancy might hurt her image as a vice-president in the imagination of the Americans. Politics is a lot about perceptions.

  17. I found this interesting debate: http://www.arn.org/docs/orpages/or161/161main.htm Provine is very anti God - I wonder why this is such a hot issue.

     

    Provine is indeed an atheist, and he seems to like debates (god, ID, freedom, the importance of natural selection, ...). But many, if not most evolutionary biologists are atheists (me included), so it's not really a surprise. But obviously, some very important evolutionary scientists were christians, Fisher & Dobzhansky are good examples.

     

    About Darwin and his ideas I just want to add a little note: Darwin discovered very little, if anything. The principle of natural was discovered before him, by many people. Yet, as noted in Evolution: The History of an Idea; Simple priority is not enough to earn a thinker a place in the history of science: one has to develop the idea and convince others of its value to make a real contribution.

     

    And that's what Darwin did, he convinced the world that evolution was real. Although he extended the idea of natural selection much further than anyone before him, he was much less successful when he tried to convinced people that natural selection was the mechanism of evolution. In fact, he downplayed natural selection in later version of his book, the truth is that natural selection without Mendelian genetics doesn't work very well. It is easy to show that, with blending inheritance, variations is halved each generation. That means trouble for natural selection.

     

    A truly coherent theory of evolution was developed later by Fisher, Wright & Haldane (I could add Yule and Morgan). I say this because, IMO, all this Darwin-worshiping opens to door to all sort of criticism. By focusing only on Darwin we forget the complexity of the theory, we also forget all the other scientists who contributed the theory. It would really be great if you could stop focusing on just a few scientist in a field (Darwin in biology, Newton & Einstein in physics...). Darwin did a lot, but not as much as some people like to think.

  18. You might check out this article. The problem with D's compilers isn't the performance, but more compiler bugs. Speed is nothing without correctness:

     

    http://timburrell.net/blog/programming/2008-06-22/d-postmortem/

     

    I read the article, it was quite interesting. But v1 was only released in 2007. In fact the author wrote; In fairness, given how new D is, the overall stability and quality of the available compilers is actually quite impressive.

     

    So what's your performance qualms surrounding OCaml? As you can see it does quite well on the alioth benchmarks, coming in at #6 overall (beating out Java). It's also a very high level language, certainly more so than D, and also a more mature one.

     

    I have no problem with the performance of OCaml. I have a problem with the fact that it's not based on C :)

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.