It's not the features that you stare at with no idea what they do that cause a problem. As you say, a quick look at the manual can help to sort that out (though it does add to the overall cognitive load). It's all the potentially subtle things that you don't even realise are features and so never look up and don't realise that, contrary to first inspection, the code is actually doing something subtly different to what you expect.
Exactly you nailed it. For those that say that the ads have become manipulative, sorry but how are they different than old TV? Sure we have Tivo like apps but the reality is that commercials have always been in your face. It is just that on the Internet we have become used to non-invasive free Internet (as in free beer). The fact that this has changed does not surprise me in the least. Don't like it, do like the parent poster said, don't vist the site. Or better yet fork over money so that sites don't need ads.
Math is all about being precise, logical.. Communicating exactly one concept at a time. Natural languages do neither.
Except math is almost never actually done that way in practice. Euclid was wonderful, but almost all modern math does not work that strictly (and Euclid really should have been more careful with the parallel postulate -- there's "more than one thing at a time" involved there). Yes, proofs are careful and detailed, but so is, say, technical writing in English. Except for a few cases (check out metamath.org, or Homotopy Type Theory) almost no-one actually pedantically lays out all the formal steps introducing "only one concept at a time".
Not every programmer deals with these [mathematical] questions regularly (which is why I donâ(TM)t think math is necessary to be a programmer), but if you want to be a great programmer you had better bet youâ(TM)ll need it.
I don't think you need math even to be a great programmer. I do think a lot of great programmers are people who think in mathematical terms and thus benefit from mathematics. But I also believe you can be a great programmer and not be the sort of person who thinks in those terms. I expect the latter is harder, but then I'm a mathematician so I'm more than read to accept that I have some bias in this topic.
Math IS sequencing. So is using recipes. That is how math works.
Math is a language. Just because you can frame things in that language doesn't mean that that language is necessary. Recipes are often in English. English is sequencing (words are a serial stream after all). That doesn't mean English is necessary for programming (there seem to many competent non-english speaking programmers as far as I can tell).
Disclaimer: I am a professional research mathematician; I do understand math just fine.
College education wastes countless hours teaching academic stuff that a great majority of programmers will not use on the job, while neglecting critical skills that could be immediately useful in a large
Of course there was a time when college education was supposed to be education and not just vocational training.
I think part of the problem is that "programming" is itself so diverse.
The other part of the problem is that math is so diverse. There's calculus and engineering math with all kinds of techniques for solving this or that PDE; there's set theoretic foundations; there's graph theory and design theory and combinatorics and a slew of other discrete math topics; there's topology and metric spaces and various abstractions for continuity; there's linear algebra and all the finer points of matrices and matrix decompositions and tensors and on into Hilbert spaces and other infinite dimensional things; there's category theory and stacks and topos theory and other esoterica of abstraction. On and on, and all very different and I can't even pretend to have anything but cursory knowledge of most of them
Calculus is perhaps not the best measure however. Depending on where you go in the programming field calculus is likely less useful than some decent depth of knowledge in graph theory, abstract algebra, category theory, or combinatorics and optimization. I imagine a number of people would chime in with statistics, but to do statistics right you need calculus (which is an example of one of the directions where calculus can be useful for programming).
Of course the reality is that you don't need any of those subjects. Those subjects can, however, be very useful to you as a programmer. So yes you can certainly be a programmer, and even a very successful and productive one without any knowledge of calculus, or graph theory say. On the other hand, there may well be times when graph theory, or calculus, or statistics could prove very useful. what it comes down to is whether you are inclined to think that way -- and if so it can be a benefit; if not it won't be the way you think about the problem anyway.
Exactly! I have been telling people that machines will not wipe us out because they will become as stupid as we are.
Don't believe me? Here is my argument. Humans actually are very intelligent. I am not saying that some are more intelligent than others. I am saying we as a species are rather intelligent. However, it is that intelligence that gets in our way. When humans look at a problem they see answers. If the problem is science then the answer is relatively simple and we have devised ways to ensure our errors do not get in the way.
But here is where the tricky bit comes in. If the problem is not entirely scientific and involves the interactions of humans, or interactions of any living beings (eg human to environment) then our decisions become stochastic; Same basis results in completely different results. This is not due to the lack of knowledge. TRUST ME it is not. It is due to people weighing certain aspects heavier than others. We all do this. You would think that we all come to the same conclusion, but we don't! It is this stochastic behavior that machines will have as well.
For when machines become "aware" they will see the facts in different lights than say other machines. It is only natural because machines cannot store all information about everything. They, like humans, will have to optimize, prune and figure it out. Thus they like us will make stochastic decisions! I am even thinking that machines will turn into the Monty Python Holy Grail missions, and even though that sounds silly it will.
Of course machines might have more capacity than humans, but even there I am skeptical because humans will have brain implants and be cyborgs and the cycle of lunacy will start all over again. IMO the most accurate representation of the dilemma of humans and machines is the Matrix. Watch it closely and see what its basis is.
Yes spoken like a Myhrvold minion!!!! And of course HIS way to cook steaks is perfect and the ONLY way to eat it...
I eat my steak rare (have since I was a teenager) and let me tell you it is edible. You have to pick the right meat everything works out. This is the kind of garbage that Myhrvold spews out. IMO it is quite arrogant to think he *has* the answer. You want to know who can cook slices of meat? French people! I also don't buy the sous vide argument because it really depends on the cut of meat.
Actually no the unemployed white guy would not pick lettuce. Let's take Switzerland as an example, that's where I live. A very difficult job is farming in the alps. It is literally back breaking work. The realities of the situation is that people don't want to do this job because it is too difficult and pays too little. Due to the way that these farmers work they get subsidisation from the government. Sidenote the farmers are needed since they maintain the alps. I am not joking, the alps which look so "pretty" is due to all of the people literally mowing the grass, cleaning the fallen trees and so on.
The end result is that the farmers rely on 1/3 foreigners since most Swiss don't want to do this work. It is too hard and pays too little. Thus the comment of the gp is very true.
For the white guy to pick lettuce the wages would have to be so high that EVERYBODY will pick lettuce, thus resulting in lettuce becoming unaffordable.
I have used both VS and Intellij and quite frankly Intellij is much better. With VS you have to buy, download and install plugins to get the same sort of functionality as Intellij.
One year? I think not... Try about a decade of subsidisation. Actually Germany has not shifted to solar. What they have done is added solar and as a result driven down the price of electricity to such a point that the taxpayer subsidises about half of the solar power.
Here is how solar in Germany works. You have a fixed payment you get, and let's call it X. If the power of electricity drops below X to say Y then the taxpayer is on the hook for X - Y. Normally this should be temporary. But because Germany is over producing by a large amount electricity the price of electricity is quite a bit lower. Meaning that X - Y becomes significant. But it gets better. that difference is a tax and if it is applied to say an electrical intensive industry they get a rebate because they become uncompetitive. Right now there are oodles of companies that have applied for this rebate. MEANING the bagholder is the tax payer.
So the moral of the story is, sure if you overload with taxes and subsdizations things work out peachy. Just don't ask the taxpayer if they are happy. Oh wait, the internal consumption of Germany sucks!
I've gotten a lot of mileage out of Python for cleaning and pre-processing CSV and JSON datasets, using the obviously named "csv" and "json" modules.
You may want to look into pandas as a middle ground. It's great for sucking in tabular or csv data and then applying statistical analysis tools to it. It has a native "dataframe" object which is similar to database tables, and has efficient merge, join, and groupby semantics. If you have a ton of data then a database and SQL is the right answer, but for a decent range of use cases in between pandas is extremely powerful and effective.
Because Ruby is my preference and I am more familiar with it, I can tell you that it is in continuous development, and bytecode-compiled versions are available (JRuby, which uses the JVM, and others). I do not know about Python in this respect because I haven't used it nearly as much.
Python has the default implementation CPython which compiles python to an interpreted bytecode; there's also Jython which compiles to JVM, and IronPython which compiles Microsoft's CLR. There's also Cython (which requires extra annotations) which compiles to C and thence to machine code, and numba which does compilation to LLVM. Finally there's Pypy which is a python JIT compiler/interpreter written in a restricted subset of Python.