Grad school for math can be a bit scary. If you've been out of math for that long, you'll need to do some review. All of the people I know in my graduate program are experts at at a large swathe of undergraduate topics: calculus, differential equations, linear algebra, combinatorics, probability, etc. And of course, they know even more about the topics they really like. If you have the chops to do it, though, math only gets more interesting from there: Real Analysis, Topology, Modern Algebra, Galois Theory, Knot Theory, Convex Geometry...
Someone has to use Googlebot though. Google is therefore liable for what it does. Just because a machine or a piece of software is the main actor does not mean there is no culpability.
Google is trying to index as much of the web as possible so that it can provide a better service, attract more customers, and make more money from its advertisements. Therefore, the use of a program that scans the web and accesses documents which Google does not have permission to view makes Google responsible for routinely and intentionaly breaking the law.
Also, that your tool cannot filter content particularly well does not mean you get a free pass. It means you were negligent.
...or at least that is one way to interpret the law. The law is bad. You can't just say it's illegal when its illegal. It should be as cut-and-dry as possible (e.g. killing someone is always illegal, even when it is an accident a la accidental manslaughter).
It is still trespassing. It doesn't have to be difficult to do something for it to be illegal.
I think the bigger issue is that trespassing is usually handled with a warning and, if it does go to court, is usually a misdemeanor or a low-grade felony. For this, it seems that accessing a server that you do not have permission to use is seen as much more serious than merely trespassing.
I can't see an argument that supports that position. Certainly, if you do anything to vandalize or disrupt the server, then you have crossed a line and should be prosecuted. Anything less should be handled more reasonably.
Seeing stuff like this always makes me giddy. Why aren't Americans more involved in the demoscene? I always wanted to find a way into it, but never found people willing to give it a shot.
I agree with this answer, but I suspect that this is also why Lisp isn't often a first choice. Meta-programming doesn't figure into language choice discussions as often as it probably should.
I distinctly recall wishing for macros in Java a few months ago while working on an Android project -- so much boiler plate for doing so little. I came to the realization that Java uses XML augmented libraries so much simply because Java boilerplate is such a pain to write. It's often easier to build a mini-language on top of XML and use Java to parse and compile it than it is to write the equivalent Java code. I think that alone says something about the efficacy of Java and the benefit of using a language with a more malleable AST.
Often, the initial distributor of a torrent has purchased it as well. At least one person downloading or uploading a media file has usually paid for it. Your first point seems to not condemn pirating wholesale.
The latter is more interesting: does one need to be capable of suffering a loss of an object in order to share it? Does access have to have a bandwidth limit for sharing to be reasonable? An interesting example are ebooks at libraries. My university offers a number of these. They are not able to be stolen like regular books and they have no limit on simultaneous borrowers. Even if there were some artificially imposed limit, what purpose would it serve? Do extra restrictions on use make a product more valuable? Does it create more profit for content creators?
I think the argument is valid. Even some libraries have movies and video games. I fail to see how downloading media has a fundamental different effect than merely borrowing it.
Even arguing that borrowing is temporary seems a poor argument at best. Most people only play games or watch movies a small number of times and then rarely pick them up again. And, even so, there is nothing stopping borrowing again.
If the library paradigm is okay, why is the downloading content paradigm not okay?
Of course they aren't looking for originality. It can't be expected. When you give students a really difficult test, you don't expect everyone to make an "A". You expect some to fail ("D") and many to be just average ("C"). Some select few, however, will defy the norm and manage an "A".
The situation with assigned writing is the same. Some will elegantly write many droll, boring statements and back them up with some personal anecdotes or stories they came across while doing research. Those will stand out against the poorly written droll, boring statements. They'll get higher scores.
The few that break the mold and do something completely unexpected will definitely stand out. If they can back up their originality with half decent ability, they'll stand out even more than the "standard excellence". Those people will definitely get an A.
The conclusion is sound. If you beat the expectations people have of you, good things will likely happen.
The word-choice is really a minute issue. The more appalling one is that the "entrepreneur" potentially wins half the prize while his "resources" split the other half. This seems grossly unfair given that the entrepreneur doesn't seem to bring any value other than his/her idea to the event.
All the serious D2 gamers knew all of the best items and finding them was a big part of the game for them (or perhaps it WAS the game?)
Diablo was always about the exploration and the loot hunt. That was the game. Diablo 3 is a deviation. The loot hunt kept you playing. It let you set defined goals: "I want to obtain a perfect Skin of the Vipermagi and then use the quest reward to socket it with a perfect topaz." D3 does not let you do that. You don't set item goals, you set achievement goals: "I want to beat inferno."
I'm sure a lot of people will prefer this, but the effect is much different. In particular, without the excitement of the item hunt, there is no reason to keep playing after you complete the game a few times; No surprises.
I concur. Hard life lessons should not be taught in the context of learning a new skill. Those can wait until after a degree of proficiency has been attained lest we undermine their efforts completely.
For me, algebra is easy, but writing out steps is very difficult, and sometimes I prefer to use a process other than the one taught in class. Should the goal of math education be to solve problems or to learn processes?
That is a false dichotomy. The goal of math education is to "learn processes" to "solve problems". You can't skip the processes and jump straight to solving. Before you can pick a proper algorithm, you have to already know a few -- that's the learning processes part in programming. This holds for any skill you choose to learn; before you can do something well, you have to be able to do it in the first place.
Combinatorics deals with discrete structures, the kind encountered in programming, while probability concerns itself with determining the likelihood of a given event. The former is clearly more relevant to general programming.
Probability does use some tools from combinatorics and vice versa, but the two subjects have vastly different goals.
The best resources for learning math are textbooks. Learning math from pages on the internet is difficult. Mathematicians don't have quite the strong online presence that programmers do so the online literature suffers.
Textbooks are fantastic, though. They are written to be self contained and will start at the beginning (usually with an introduction to fundamental subjects such as set theory). If you're serious about learning math, they are the way to go.
I spend a lot of my time writing Python, especially for Django powered sites, and writing client side javascript. Periodically, I'll get stuck maintaining large projects written entirely in PHP and miss the nice features from other languages. Javascript has its bug-a-boos, but with its dynamic design and jQuery, its easy to write clean code. Python is also much cleaner and usually just works.
On the other hand, all of my programming horror stories and terrible hacks have been written in PHP. I remember having to use an older version of PHP that failed to support closures when it was needed in some legacy code. The code was passing functions as arguments, but because the functions were not bound in the local scope, there were issues with namespace collisions. I had to resort to global variables for a situation that should not have needed it because rewriting everything properly required a non-trivial refactoring that I did not have the time to complete. Granted, this has been addressed in more recent versions of PHP, but there are always old versions floating around where "gotcha's" like this show up.
More recently, I ran into an issue porting PHP 5 code across different linux distributions where, for some strange reason, libraries on the include path failed to be found. Debugging something like that is ridiculously frustrating. Problems like this are bound to show up with any technology you use frequently, but my work involves using many languages and technologies and, of them, PHP is the only one that leads to these sorts of problems with such regularity.
When I first started doing web programming at my first real programming job, everyone there used Dreamweaver as the IDE of choice. I used it for a few months before I could no longer deal with its idiosyncrasies. Now, I absolutely hate the program. It got to the point that I would only use Dreamweaver for remote file management (silly, I know, but I was still learning) and would open the files in emacs for actual editing. Eventually, I stopped using it all together and forced myself to find other ways to retrieve remote files.
In retrospect, I should have set up a source control repository and left the programming team a little better than I found it. Hindsight is 20-20.
I think the impact of a text editor depends on your daily workflow. I do a lot of system administration and use emacs nearly daily to edit configuration files and write shell scripts. Since almost everything I do involves terminal sessions, a GUI-driven editor is simply unfeasible. I simply could not do my job as efficiently without being a knowledgeable emacs (or vi) user.