i disagree about the choices being equivalent. having sampled from several, but not all of those options, i can say with near certainty that the choice is not like that of choosing what flavor of jam you like. the choice is really which major surgery you'd like to undergo without benefit of anesthetic.
on the one hand, you have things like openmp which uses special comments to give hints how to essentially vectorize code on a shared memory machine (and likely a UMA machine at that). on the other extreme, you have things like MPI which is not a language, but an API (several, actually, there are C, C++, Fortran, Java and Matlab bindings) which is designed to solve a very different problem (think SIMD v. MIMD), i.e. parallelism on a distributed memory, distributed processor machine (i.e. a cluster). it happens that MPI is general enough that vendor supplied MPI implementations may do very clever things so that when you run your MPI code on your cray or zomgsomanyprocessors! smp box your program doesn't force all the data through the loopback device. the remaining approaches are basically Qt's moc for parallel programming -- they ingest a dialect of C or Fortran and spit out C or Fortran that's been augmented with the appropriate calls to MPI, PVM, pthreads, etc.
there's something about the premise of your argument that seems utterly implausible... i'm not sure if it's the jock with the calculator or me being at a party with lots of girls. well, girls that aren't lesbians.
while the ad hominem attacks, failed sarcasm, misquotations, quasi random capitalization, etc. have been fun, you still haven't answered my question: what benefit do slide rules bring? you've identified two possibilities: they have different failure modes than calculators do, and they require that the user have a good intuition for the size of the answer. however, this "number sense" is something that everybody_ who does significant amounts of calculations needs to have, so i hardly view this as being a unique benefit of slide rules. this leaves failure modes. i agree, they have different failure modes than calculators do. if you're worried about FP hardware issues, there are several packages (see http://www.oonumerics.org/oon/) that provide arbitrary precision numerics. if you're paranoid, implementing your own arbitrary precision data types is fairly straight forward. mathematica and maple both offer a way to symbolically check answers and, in the case of maple at least, you can have it do the calculations for you using its own arbitrary precision floating point types. so a single machine can perform the same calculations both with and without the FPU and at speeds far greater than any human being could. so again, what benefits do slide rules bring?
slide rules offer no insight into how to approach problems: they serve only as a calculation tool. same is true of my computer, the difference being that my computer is vastly superior, when it comes to performing the actual calculations. the slide rules themselves are, at best, an approximation based on what we know about analysis (taylor series, the projection theorem), trigonometry (those billion and one identities plus the small angle approximations), linear algebra, and so on. oddly enough, in order to do anything useful with a slide rule, one must have already applied those exact same principles of analysis, linear algebra, trigonometry, etc. to actually solving the problem. so what, exactly, do slide rules bring to the table that isn't already present given a solid understanding of mathematics and a decent engineering reference?
such as using a frequentist interpretation of a bayesian analysis?
btw, this is a very common problem in pattern recognition --- trying to detect relatively rare (but not unexpected) events, and there are several techniques to deal with the fact that the naive bayes approach is totally dominated by the priors (e.g: importance sampling).
people still listen to what this guy has to say? simple solution: by his logic, surely real lawyers can sue for an injunction against jack thomspon ever speaking again since he is clearly a representation of them...
first off, i don't envy you --- i found myself in a somewhat similar situation recently where i suddenly became responsible for squeezing useful results out of three different subcontractors.
as for resources, first, and most important: it's been mentioned elsewhere, but finding a good mentor (preferably more than one) is going to be crucial. think of them as "man pages" for people.
second: i don't know what your personal organizational style is, but you're about to start juggling not just your own personal assignments, but all tasks of your entire team, plus all the "overhead" tasks of tracking progress, planning, etc. if you're not used to juggling about 5000 balls at once, get yourself the tools you need to help keep yourself organized. in my case, this meant a giant whiteboard with a matrix of tasks cross referenced to people and due-dates which i updated once a week after a brief status meeting.
third: start looking at your local community college's certificate / continuing education programs in business development / leadership development. in addition to more "standard" management classes, i would strongly encourage you to take a class on interpersonal communication, because you're going to discover quickly (if you haven't already) that people communicate very differently with management than they do with their peers. similarly, more junior employees have different communication styles and attitudes about communication than more senior / seasoned employees do.
before you go much farther, i would strongly encourage you to become familiar with itar (international trade in arms) restrictions. there are extremely stiff penalties for any unauthorized export, which includes even discussions of the technical details. (at least that's the way my company's itar representative spins it). as always, your mileage will vary: i am neither a lawyer, d.o.d. or d.o.t. auditor, nor do i play any of those on tv.
they have only tested with japanese and english. (see ars technica's coverage here). while they do present some intriguing results, the authors themselves admit that their methodology is flawed.
btw, when did slashdot become ars redux?
the browser is the target environment, so all that ajax-y web 2.0 tastiness that i hear is all the rage with the kids these days is there. so 'no sdk' really means 'no native sdk' and we've all seen how much that's hurt sites like flickr, picasa, etc.
exactly --- i was quite shocked that the guy would have disclosed anything (although maybe the fact that he was trying to pressure me into buying a blackberry 8800 might have had something to do with it...)
well, you know what they say --- once is luck, twice is a coincidence, three times is a trend...
i can't speak for c# or java, but i'm fairly certain that what you're describing are non-issues for c++. in the first case, the solution is to call remove_if(...) with an appropriately bound functor. adds would be done by calling copy_if with an appropriately bound functor and the right kind of insert iterators.
"for example, iterating through a collection prevents you from modifying that collection".
have you stopped to ponder, for a moment, what modifying a collection does / should do to any iterators over that container? on the one hand, you can declare them invalid (like c++ does), on the other hand, you can stop the container from being modified (like you say the CLR does). what other low overhead, constant time options do you have?
i was just going to ask "who cares, openmp does this already" now i know that i don't care. it's not nearly as interesting as the work done out of nasa greenbelt on a project called ace (which actually is a genuinely automatic parallel compiler that targets clusters rather than cpus --- really kickass concept). my very limited experience with openmp is that i prefer the mpi approach. that said, i don't think mpi or openmp are really the right answer -- it takes a language that was designed from the ground up to do parallel execution "right". in this case, i think things like HP fortran actually hurt rather than help because they're very familiar which ends up being a bad thing because they're most like something that doesn't solve the problem.
or find out what other people are willing to pay for the same job, which is what i did in my case. that said, do not underestimate the value of perks like annual budgets for books, ongoing education, etc.
i disagree about the choices being equivalent. having sampled from several, but not all of those options, i can say with near certainty that the choice is not like that of choosing what flavor of jam you like. the choice is really which major surgery you'd like to undergo without benefit of anesthetic.
on the one hand, you have things like openmp which uses special comments to give hints how to essentially vectorize code on a shared memory machine (and likely a UMA machine at that). on the other extreme, you have things like MPI which is not a language, but an API (several, actually, there are C, C++, Fortran, Java and Matlab bindings) which is designed to solve a very different problem (think SIMD v. MIMD), i.e. parallelism on a distributed memory, distributed processor machine (i.e. a cluster). it happens that MPI is general enough that vendor supplied MPI implementations may do very clever things so that when you run your MPI code on your cray or zomgsomanyprocessors! smp box your program doesn't force all the data through the loopback device. the remaining approaches are basically Qt's moc for parallel programming -- they ingest a dialect of C or Fortran and spit out C or Fortran that's been augmented with the appropriate calls to MPI, PVM, pthreads, etc.
there's something about the premise of your argument that seems utterly implausible... i'm not sure if it's the jock with the calculator or me being at a party with lots of girls. well, girls that aren't lesbians.
while the ad hominem attacks, failed sarcasm, misquotations, quasi random capitalization, etc. have been fun, you still haven't answered my question: what benefit do slide rules bring? you've identified two possibilities: they have different failure modes than calculators do, and they require that the user have a good intuition for the size of the answer. however, this "number sense" is something that everybody_ who does significant amounts of calculations needs to have, so i hardly view this as being a unique benefit of slide rules. this leaves failure modes. i agree, they have different failure modes than calculators do. if you're worried about FP hardware issues, there are several packages (see http://www.oonumerics.org/oon/) that provide arbitrary precision numerics. if you're paranoid, implementing your own arbitrary precision data types is fairly straight forward. mathematica and maple both offer a way to symbolically check answers and, in the case of maple at least, you can have it do the calculations for you using its own arbitrary precision floating point types. so a single machine can perform the same calculations both with and without the FPU and at speeds far greater than any human being could. so again, what benefits do slide rules bring?
slide rules offer no insight into how to approach problems: they serve only as a calculation tool. same is true of my computer, the difference being that my computer is vastly superior, when it comes to performing the actual calculations. the slide rules themselves are, at best, an approximation based on what we know about analysis (taylor series, the projection theorem), trigonometry (those billion and one identities plus the small angle approximations), linear algebra, and so on. oddly enough, in order to do anything useful with a slide rule, one must have already applied those exact same principles of analysis, linear algebra, trigonometry, etc. to actually solving the problem. so what, exactly, do slide rules bring to the table that isn't already present given a solid understanding of mathematics and a decent engineering reference?
i live in a time when there are things called computers running software packages like maple, mathematica, matlab, etc.
text messages are sent via the data network, aren't there similar common carrier requirements for data as there are for voice?
such as using a frequentist interpretation of a bayesian analysis?
btw, this is a very common problem in pattern recognition --- trying to detect relatively rare (but not unexpected) events, and there are several techniques to deal with the fact that the naive bayes approach is totally dominated by the priors (e.g: importance sampling).
people still listen to what this guy has to say? simple solution: by his logic, surely real lawyers can sue for an injunction against jack thomspon ever speaking again since he is clearly a representation of them...
call me when pcc does something useful, like, say, working.
first off, i don't envy you --- i found myself in a somewhat similar situation recently where i suddenly became responsible for squeezing useful results out of three different subcontractors.
as for resources, first, and most important: it's been mentioned elsewhere, but finding a good mentor (preferably more than one) is going to be crucial. think of them as "man pages" for people.
second: i don't know what your personal organizational style is, but you're about to start juggling not just your own personal assignments, but all tasks of your entire team, plus all the "overhead" tasks of tracking progress, planning, etc. if you're not used to juggling about 5000 balls at once, get yourself the tools you need to help keep yourself organized. in my case, this meant a giant whiteboard with a matrix of tasks cross referenced to people and due-dates which i updated once a week after a brief status meeting.
third: start looking at your local community college's certificate / continuing education programs in business development / leadership development. in addition to more "standard" management classes, i would strongly encourage you to take a class on interpersonal communication, because you're going to discover quickly (if you haven't already) that people communicate very differently with management than they do with their peers. similarly, more junior employees have different communication styles and attitudes about communication than more senior / seasoned employees do.
i think you mean people moving more slowly relative to the causes of their death die sooner.
before you go much farther, i would strongly encourage you to become familiar with itar (international trade in arms) restrictions. there are extremely stiff penalties for any unauthorized export, which includes even discussions of the technical details. (at least that's the way my company's itar representative spins it). as always, your mileage will vary: i am neither a lawyer, d.o.d. or d.o.t. auditor, nor do i play any of those on tv.
quad band gsm works just fine in both europe and the us.
they have only tested with japanese and english. (see ars technica's coverage here). while they do present some intriguing results, the authors themselves admit that their methodology is flawed. btw, when did slashdot become ars redux?
how is that a problem with boost rather than a crap compiler / linker implementation issue?
the browser is the target environment, so all that ajax-y web 2.0 tastiness that i hear is all the rage with the kids these days is there. so 'no sdk' really means 'no native sdk' and we've all seen how much that's hurt sites like flickr, picasa, etc.
exactly --- i was quite shocked that the guy would have disclosed anything (although maybe the fact that he was trying to pressure me into buying a blackberry 8800 might have had something to do with it...)
well, you know what they say --- once is luck, twice is a coincidence, three times is a trend...
because i heard the same story about delaying the iphone till october from a cingular rep two weeks ago. i wonder if this is the same leak...
i can't speak for c# or java, but i'm fairly certain that what you're describing are non-issues for c++. in the first case, the solution is to call remove_if(...) with an appropriately bound functor. adds would be done by calling copy_if with an appropriately bound functor and the right kind of insert iterators.
"for example, iterating through a collection prevents you from modifying that collection".
have you stopped to ponder, for a moment, what modifying a collection does / should do to any iterators over that container? on the one hand, you can declare them invalid (like c++ does), on the other hand, you can stop the container from being modified (like you say the CLR does). what other low overhead, constant time options do you have?
it's not so much pretexting as government sanctioned fraud as far as i can tell.
the beauty of ace is that it didn't need any of that stuff. it just worked (tm).
i was just going to ask "who cares, openmp does this already" now i know that i don't care. it's not nearly as interesting as the work done out of nasa greenbelt on a project called ace (which actually is a genuinely automatic parallel compiler that targets clusters rather than cpus --- really kickass concept). my very limited experience with openmp is that i prefer the mpi approach. that said, i don't think mpi or openmp are really the right answer -- it takes a language that was designed from the ground up to do parallel execution "right". in this case, i think things like HP fortran actually hurt rather than help because they're very familiar which ends up being a bad thing because they're most like something that doesn't solve the problem.
or find out what other people are willing to pay for the same job, which is what i did in my case. that said, do not underestimate the value of perks like annual budgets for books, ongoing education, etc.
surely if he's employed "at will" (as is the case in many states), then this all becomes that much more surreal?