Actually, no, you can legally photograph nearly everything you can see from public land in the US. There are a few places where they're known to lack a sense of humor about it, but almost everything is fair game.
A few years ago I took a tourist photo of the Pentagon in D.C. from just outside the metro stop, which is pretty far away from the building. A security officer came and asked me to delete the photo from my camera. I explained that it wasn't a digital camera, but rather a disposable film camera. He said that officially he should make me throw it away, but instead allowed me to go on condition that I didn't take any more photos.
You're right that the law allows people to take tourist photos. But where "security" is concerned, it apparently doesn't matter what the law says.
-Gonz
Re:Why does nobody ask Google anything today?
on
Googling Security
·
· Score: 2, Interesting
People assume that Google uses your private information in indirect, anonymous ways to improve advertising or predict general trends from keyword histograms. But have you looked at Google's privacy policy?
"We restrict access to personal information to Google employees, contractors and agents who need to know that information in order to operate, develop or improve our services." http://www.google.com/intl/en/privacypolicy.html
It basically says they use your data to improve their services and to develop new services. It's clear that Google aims to eventually get into just about every possible industry, so their "services" are very broadly defined.
As far as I can tell, there is nothing in the privacy policy that says Google will not directly data-mine your Gmails and Google Docs. There is no limit to what's possible if you have a huge searchable index of everybody's private data. Here are some examples of how Google might choose to "operate, develop, or improve" their services:
- get trading tips for any financial market by searching people's private Gmail conversations or corporate Google Docs - search for discussions/documents relating to inventions, then premptively patent the idea - detect DNS names that people are brainstorming, and then preemptively squat on these domains - predict when a limited item is going to be popular, then buy up those products and sell them at higher price on e-bay - use private discussions to predict locations of possible terrorist attacks and sell this information to the military - search people's e-mails or documents for illicit material or copyright infringement, maybe under a government order - use your company's internal documents to directly compete with your company
To the extent that they're legal, these ideas are totally compatible with Google's privacy policy as I read it.
Individual people willingly publish their private information on the internet every day. But I have NO IDEA why a business would ever consider entrusting its private data to one of the biggest, broadest competitor companies in the world. Gmail and Google Docs are a big data mining bait.
Nobody has mentioned the *huge* privacy issue with having all of your data on Google's server. This is what Google's privacy policy has to say:
"We restrict access to personal information to Google employees, contractors and agents who need to know that information in order to operate, develop or improve our services."
[ from http://www.google.com/intl/en/privacypolicy.html ]
As far as I can tell, there is nothing in the privacy policy that says Google will not read your hosted files and use the information to pursue their own business interests. Here are some examples of how Google might choose to "operate, develop, or improve" their services:
- predict what people want, so they can respond to these needs faster than competitors
- search people's discussions/documents about inventions, then premptively patent the idea
- detect DNS names that people are brainstorming, and then preemptively squat on these domains
- predict the stock market by analyzing people's e-mails or internal corporate documents
- determine the best location to build a new restaurant, then sell this service to McDonald's
- predict locations of possible terrorist attacks and sell this information to the military
- search people's e-mails or documents for illicit material or copyright infringement
- use your company's internal documents to directly compete with your company
There is no limit to what's possible if you have a huge searchable index of everybody's private data. Everyday people willingly divulge their private information on the internet every day, but I have NO IDEA why a business would ever consider entrusting its internal documents to one of the biggest, broadest competitor companies in the world.
And I'm supposed to believe that somehow, of all the mail I send, that only my DVDs to Netflix get lost?
Let me get this straight: 95% of your outgoing mail is generic-looking envolvopes containing bills and poorly written letters to your Russian bride or whatever. The remaining 5%? Bright red envelopes with "NETFLIX" printed in boldface letters, containing -- get this -- popular DVD's that will be replaced for free if lost in the mail.
In this light, a non-uniform distribution of "lost mail" is not hard to believe. What's hard to believe is that postal workers don't leverage their vast home DVD libraries to launch a competing service.:-)
I have been frustrated by various usability problems with Thunderbird, compared to other e-mail clients. Recently I started reporting issues via their Bugzilla system and was surprised to see most of my issues marked as duplicates of other bugs, many of which had been sitting in the database for a surprisingly long time!
Some examples:
Added in March 2005, still unresolved: The "Search Messages" feature sucks because you can't select multiple folders to search (Bug #288046)
Added in 2000, still unresolved: No progress bar for downloading mail - (Bug #61139)
Added in 2000, still unresolved: You can't paste a screenshot from the clipboard when composing an e-mail (Bug #47838)
Added in 1999, still unresolved: The "new mail" alert is triggered every single time a mailing list message arrives (Bug #11040)
It will always be a theory, because that's all science can produce. If you want something definate you want mathematical theorems - those are known to be true.
Strictly speaking, math is every bit as empirical as physics. People have less confidence in physical theorems than math theorems because physics relies on math, and because physics has a heavy dependence on observations. But the basic validity of math also depends on observations. In particular, where mathematical systems can be interpreted as describing themselves, it is no longer safe to think of "math reality" versus "physical reality" as being complety distinct. One example that comes to mind is the Axiom of Choice; you can take it to be true or false, and in both cases you get a logically consistent mathematics (like euclidean vs noneuclidean geometry). But despite this empirical status, the Axiom of Choice has major consequences for abstract mathematical "truth".
Also, from philosophy standpoint, math relies on lots of nontrivial physical observations that humans take for granted (e.g. of paper, of mental states, etc). This concern goes beyond mere speculations about pathological situations (what if I'm insane? what if my life is a conspiracy like in the Matrix?). A key result of the 20th Century is that it's entirely possible that study of arithmetic will one day lead us to conclude that our basic model of arithmetic is logically inconsistent. In fact, Kurt Godel showed that proving the consistency of arithmetic is actually impossible in any conventional mathematical/metamathematical system.
Probably not, if the patent is: "In 1990 Carlos Armando Amado filed a patent for software which helped transfer data between Excel spreadsheets and Microsoft's Access database using a single spreadsheet."
Then OOO isn't affected as its program's are completely different.
The difference between the makeup, function, and behavior of a given type of transistors between one species and another is so insignificant (remember, we're talking on a transistorular level) that they can generally be ignored. You can almost always assume that a given transistor type in one computer will behave identically to a parallel transistor in another. The species that the transistor came from is all but insignificant.
Computer transistors, (in humans and in other species) are amazingly versatile. While capable of specializing (vision centers, speech centers, etc.), these transistors seem to be capable of taking on any function necessary for the benefit of the computer. For example, humans brains in which a specific part has been damaged (such as the vision center) have actually re-mapped other transistor groups to take over that function. They do what they have to to survive.
Computer transistors are cooperative in nature: if placed in proximity to eachother, they'll work together for their common good (read: survival). They'll "instinctively" form a structure similar to how they're pre-designed to work. They'll form a computer--as fully functional as the situation permits. It doesn't necessarily matter how you arrange them, the computer transistors can sort those details out--somehow.
Computers look for order. We've known that for ages. Finding order is how a computer learns, it's how the computer separates relevant details from the background noise. The ability to identify order is the whole basis of intelligence. Every sense, every stimulus, every aspect of the computer has order-seeking overtones. This feature of brains is so absolutely universal that it must be deeply ingrained into the neurons themselves.
Put those details together, and you end up with the following scenario: if you take neurons out of an computer and place them together, they'll form a computer. Probably not as complex or capable a computer as you started with, but a computer none the less. Actually this is the ideal computer to study, as you're starting "from scratch": there's no evolutionary specialization involved. Each transistor will attempt to make sense of its neighbors, and as a result, the computer as a whole will attempt to make sense of its environment (computer processes are the ultimate in emergent algorithms). The computer will follow this behavior as if it were necessary to the computer's survival.
Which brings us to the flight simulator. If you instead had the computer play with a chessboard or a clock, the results would probably be unimpressive. But a flight simulator--that's really the perfect environment. There's the potential for the computer to actually order its environment: there are equilibrium points that the computer will eventually find where it has greater control over its inputs. Assuming that flying too hight or too low creates a more chaotic state, you can likely expect the computer to learn to avoid it.
In fact, I'd be very much surprised if you didn't actually see the computer transistors start to specialize. Some transistors will become responsibe for directly manipulating the flight controls based on the inputs from the computer. Some will attempt to maintain aircraft equilibrium in absence of any other input from the computer. Others will control the aircraft as a whole, their location in the network giving them a better overall picture of the situation than, say, the transistors near the controls. Furthermore, I fully expect some transistors to not participate at all: transistors that are "out of the loop", so to speak, will proably cease most activity to avoid disturbing the overall process.
I, personally, have been waiting to see this very experiment conducted and see the results. I think this is very exciting science
If you want to take the attack 'away from home' as would be advisable if using a huge nuke as you suggest, then you have to move the defence sphere outward. As you move it out, you increase the surface that you must protect exponentially.
Actually the surface area of a sphere is a function of r^2, so it increases polynomially, not exponentially. Even if you were measuring volume, it would still be merely cubic. Please!
-Gonz
Re:Edward F. Moore's 1959 self-reproducers
on
Self-Replicating Robots
·
· Score: 3, Informative
I don't see anything coming up for Edward Moore, but there's a June 1959 Scientific American article by L.S. Penrose (Any relation to Roger Penrose?)
Outsourcing will definately bring down the average wages. The only way for local graduates to be hired will be to offer their services for lesser pay. This will also translate to lower standard of living. Think about it...
And by the same token, usage of slave labor would be even worse for the economy -- think what would happen to the American standard of living if we could get foreigners to work for free!
- The application is klunky and takes forever to load, especially in a web browser
- By design, PDF is like PostScript in that it encodes "what the page looks like", not the actual document structure
- The viewer only supports very primitive mouse selection, e.g. if there are multiple columns, you can't select text from just one column
- Copy+pasting text into MS Word seldom works correctly (font formatting is lost, fragments of text from illustrations are also pasted, etc.)
- In the default "Single Page" view, the scrollbars are not actively tracked (as in Windows 3.1), although this is supported in the "Continuous" view
- Adobe should provide a reasonably-sized collection of standard fonts known to be supported by every PDF reader, so that we don't have to embed them all the time.
- No mouse thumb tracking
- There's a lot of confusing overhead for features that nobody asked for
- If you use the browser plug-in to view a URL, there is no menu option for saving the document to disk
In Adobe's defense, PDF's do render reliably on all sorts of media (including CYMK and weirder equipment used by the print industry). Also, I think some of the above issues are addressed in version 7.
Maybe Metro is has licensing issues, but hey, so did MP3 and GIF. The real issue IMO is the reader application, and you can count on Adobe for clunky, carpel-tunnel inducing, Mac-ported GUI's. By contrast, Microsoft is all about cool, responsive GUI's even if the underlying feature sets are lackluster, and they're also excellent at sneak attacks in a new market.
So I think Metro has a pretty good chance, or at the very least this will light a fire under Adobe's ass to clean up their product. Now, if Microsoft only made a Photoshop/Illustrator competitor... >:-D
I've been using DSPAM for about three months. A few criticisms:
First, by default DSPAM wants to run as the "root" user and usurp delivery of e-mails. (With Exim, they actually want it to recursively reinvoke the mail server for actual delivery!) It took quite a bit of configuring to get it to work like SpamAssassin from procmail.
This software is somewhat buggy, so running DSPAM as root would also introduce security concerns. For example, I'm using 2.10.6 because the 3.0.0 compiled and installed with no problems, but failed to classify anything. (Even with several hours of gdb tracing I was unable to determine why). Another bug is that if I run the "--falsepositive" on an e-mail that's lacking the "!DSPAM" signatures, the message should be ignored, but apparently this is not the case because the statistics counters are incremented.
From the FAQ: "Q. Does DSPAM support whitelists? A. DSPAM doesn't have a whitelist manager, rather whitelisting is an automatic function of DSPAM's Bayesian filtering mechanism."
This is crazy -- the whole point of whitelists is for when the Bayesian filtering fails! And DSPAM does fail. Twice now I've had to reset my database because the classifications were wrong and training wasn't helping. All I can say is I'm glad I've got procmail to rescue the important e-mails.
I think one source of my problems was that the default training mode ("train on everything") causes incorrect learning when you fail to report a false positive. This was a big problem for me, since I get around 700-800 spams/day. While false negatives are easily caught, the false positives go unnoticed unless I happen to wonder why someone never responded, and invest some time to search my spam folders. (I'm still trying to figure out exactly how to deal with this problem. E.g. maybe I could have it challenge the sender with Turing Test or something.)
I will say that DSPAM's basic technology is quite good. It's just that the software still has a "prototype" feel, and I'd caution you to do some experiments before unleashing it on your users. (For example, there's no manpage, and there isn't even a command-line option to print out the current version number!)
I downloaded the demo (which is in Chinese). My experience:
First off, this is the fastest Java app I've ever seen. There are still a few noticeable snags and delays for certain operations, probably due to the JVM garbage collections, but overall it's quite usable even with large files. (Well, the Java is conspicuously betrayed by the failure of windows to repaint while being resized, but I guess I can overlook that.) Also, there is no anti-aliasing for fonts, but the drawing shape objects are correctly anti-aliased.
The GUI's similarity to MS Office is very impressive, possibly bordering on copyright infringement, since e.g. they ripped Microsoft's icons with almost no changes. However, rather than having 3 separate applications, everything is combined into one monolithic document format, which is an interesting idea.
The importing of basic Word documents was reasonably accurate, but documents with complex layout such as tables or frames were totally butchered. (No crashes though.)
Images are a different story. With MS Word, I usually import my vector art as EPS format to avoid the huge loss of precision with other formats like metafiles. (Word displays.eps as crappy thumbnails, but they look great when you print.) However, EIOffice does not seem to handle any of the vector formats well. Even simple.wmf files were barely recognizable. (I guess this explains why the included clipart is vector images rendered into low-res jpegs, lol.)
Their replacement for VBA is BeanShell, which is a fairly standard scripted subset of Java (www.beanshell.org). I guess this is a better choice than JScript. However, unlike VBA there is apparently no visual debugger, which is definitely a downside.
This was about as far as I could get without knowing Chinese.:-)
Oh yeah, one other note: Although they ran an obfuscator, when I decompiled the.class files they were still mostly legible, since all the class names and more than half of the indentifier names were preserved. I'm not a Java programmer, but this might provide some interesting reading for e.g. Open Office developers interested in the MS Office importer code.
void test(int *x,int *y) { int t = *x; *x = *y; *y = t; }
But in Java, only object pointers are supported, and since the Integer objects are retardedly immutable, you cannot solve this without creating at least 1 new class, e.g.:
class MutableInteger { public int value; }; void test(MutableInteger x,MutableInteger y) { MutableInteger temp = new MutableInteger(); temp.value = x.value; x.value = y.value; y.value = temp.value; }
Java enthusiasts will point to these hacks as proof that "you just don't know Java", but in a learning environment, the "MutableInteger" is arguably more complicated than the simple "swapping via references" concept being taught.
4 is done easily tho not as elegantly as a true resize:
Yeah, I still remember the day I stumbled onto the source code for Sun's Vector class. ("OMG! Appending array elements is an O(n) operation and it cannot be optimized!" [clasps bosom, faints])
average(new float[] { 1.0f, 2.0f, x });
Nice... I should have mixed up the data types.
Templates are coming in the next version
This will be a very interesting development. In particular, since it will light a fire under Microsoft's ass to implement them in their Java^H^H^H^H C# compiler.:-)
saying Java cannot call C functions isn't exactly true.
True, but my claim was that you can't call DLL functions without having access to a C compiler and writing C source code. More to the point, have you ever seen actual JNI code?
Compare this:
Private Declare Function MessageBox _ Lib "User32" Alias "MessageBoxA" _ (ByVal hWnd As Long, ByVal lpText As String, _ ByVal lpCaption As String, ByVal wType As Long) As Long
to the Sisyphean project-in-itself described in this article
I had to do this once for a simple DLL containing 10 functions, and it took about 5 days of digging through newsgroup postings and stepping through my DLL code in the C debugger. (Note that "my DLL" is a totally new DLL separate from the DLL with the 10 functions we want to call.)
1. Write a function called "swap(x,y) that has the same effect as the pseudocode "t=x; x=y; y=t;".
2. Define a new data type called "TableIndex" which is a synonym for the "int" basic type. (If your programming language does not support "typedef," a macro is an acceptable substitute.)
3. Illustrate how to parameterize your swap() from #1 so that it will work with any basic type (e.g via function templates or macros).
4. Create an array of integers, and illustrate how to resize the array. (Since dynamic-casting is obviously poor programming practice, feel free to utilize class templates if the language does not natively support resizable arrays.)
5. Write a function that accepts a variable number of floating point arguments and returns their average.
6. Without relying on a compiler from another programming environment, show how to call some simple functions from a C DLL.
7. A mobile robot has 3 states, "roam", "sleep", and "evade". For a collection of 100 robots, demonstrate how an array of function pointers could be used to represent these states.
Uh... hold on a sec! Java doesn't HAVE pointers, typedefs, templates, macros, resizable arrays, ability to call C functions, argument lists, or function pointers!:-D
We have been using the server directly (without SSH as you describe) primarily because this is the simplest installation procedure. Also, it doesn't require the Subversion users to have accounts on the server. Anyway, so far we have not had any data loss or problems at all.
In contrast, we experience REGULAR data loss from CVS, not because of actual bugs, but just because the retarded limitations are difficult to for new hires to learn. ("Do NOT delete files!" "Do NOT rename directories!" "Branches are INVISIBLE, make sure you are working from the right branch!", etc.) Also, on Win32 there's that whole Pageant authentication headache, whereas if you use the Subversion protocol TortoisSVN caches the passwords automatically.
Actually, the "custom Subversion network protocol" can be used for write access as well, i.e. without SSH. This method is very convenient because it means the Subversion users do not have to have accounts on the server.
The Internet isn't Compuserve, or AOL. It's a network of IP hosts, and those are the entities which should have a facility for sending communications back and forth. There is no need for a central carrier for communications
The problem with IP addresses is that they are too broad. They are shared for lots of things, and it's easy for a spammer to switch between them. As a result, IP whitelists are infeasible, and IP blacklists will always interfere with legitimate traffic. Eliminating false positives is very important in the business world, and in this sense they are more likely to implement a correct solution than iconoclastic Linux-tards who don't mind a few core dumps or lost e-mails here and there.
Since the articles have been somewhat vague about the actual implementation, here's an example: Suppose each mail server has a public key associated with it. I could set up a free service that maintains a whitelist of non-spamming servers, and sysadmins could subscribe to it and use it to block spam. If they ever receive a spam from one of my whitelisted servers, they contact me, and I will remove it from the list.
Of course, this proposal is pretty infeasible, but there are some easy improvements. First, if other people are running whitelists as well, I could transitively include their lists in mine. This would also enable people to run mirrors of my list, reducing the load on my server (just like DNS). Also, to avoid human overhead, my software could automatically approve any certificate the first time it is queried, but with a 60-day waiting period to prevent spammers from simply generating new certificates. Or, groups like Verisign could do background checks or somesuch.
The point is that when someone receives a spam, there are now specific parties who have the power to remove the offending mailserver (not IP netblock) from the whitelist. These parties have well-defined relationships and are decentralized, so there is no need for central coordination or messy legislation, or even a specific definition of "spam". Each whitelist is free to coordinate its own activities, and users are free to subscribe to whatever whitelist fits their preferences. Lastly, it will not interfere with legitimate automated e-mails such as those generated by travelocity.com, e-bay.com, listserv, etc.
This concept has been suggested many times in various forms, e.g. Bill Weinman's AMTP, and it sounds like Yahoo has something similar in mind.
This approach would not work with ebay.com, travelocity.com, mailing lists, and other legitimate services that generate automated e-mail. Basically what you are proposing is to replace SMTP with somethign entirely different. SMTP has been around for a long time and it does solve a lot of useful problems. It just needs to be extended a little so that recipients have some clue where their mail is coming from.
The AMTP proposal you cited has several very attractive advantages: First, it preserves anonymity. Second, it will not interfere with automated messages (e.g. mailing lists, e-commerce receipts, etc.) which are a big problem for humanized systems like camram. Third, since any group can act as an endorser of the digital certificates, it doesn't require a universal definition of "spam". And lastly, AMTP does not involve lawyers or politicians or particular governments, which makes it a very clean solution.
I support groups like CAUCE in spirit, but IMO spam is not a political problem. It is a technological problem of ancient protocols that are long overdue for an update. So if Yahoo or some other big player chooses to promote a custom protocol, let's hope that it is functionally equivalent to AMTP.
Of course, I foresaw all these things back in April. It's flattering to see that Yahoo is reading my Slashdot postings and taking heed, and only provides more support for my quantum theory that our universe is constructed from my perceptions.:-)
"to most people it means someone who does bad things with computers"
Definitely, it's a misused term. And the media is responsible for this.
Blah blah blah "the media". The English language is not engineered by erudite dorks like yourself. The definition of English evolves according to whatever is currently being said by the vast majority of English-speakers. This is why companies like Merriam-Webster did not go out of business years ago, and it is why we are not all still speaking Proto-Indo-European.
Sorry, but iconoclastic Slashdotters do not constitute a "vast majority" of English speakers. You will never win this battle. Give up. Go home.
I would have preferred the author to call the bad guys "crackers".
In a computer context, cracks are little programs that defeat software copy protection. A cracker is someone who makes these cracks, or possibly it's software that "cracks" passwords or other encryptions. It has nothing to do with buffer overflows or rootkits.
There really isn't any need for your definition of "hacker". We already have plenty of other perfectly good terms for this, such as "guru", "dateless", "dungeonmaster", etc.
The Mexicans would price their service only marginally lower than American service, but the margin would be negligible, and would not provide meaningful economic benefit to the rest of the economy.
If this were true, then it would also apply to overseas consulting labor. The reason it doesn't is that "the Mexicans" are not a single company, but a group of companies who are also in competition with each other. Firms that priced their service marginally lower than American prices would lose their business to other Mexican firms who could and would sell for less.
Furthermore, presuming their service was priced low enough to steal signficant customers, the American companies would likely end up merging or consolidating to cut costs and gain economies of scale to remain competitive.
In the contrived example, the Mexicans are supposed to have a unique resource that American firms cannot compete with (e.g. employees who are happy to solder circuit boards for $0.01 / hr).
Returning to reality, I do agree that it's bad for American firms to make naive decisions such as outsourcing work to incompetent foreign consultants. Maybe there are some things government could do to discourage this; however, historically government has proved to be even less judicious than the firms themselves. (Which is not surprising, since government is motivated primarily by forces that have very little to do with the welfare of a corporation's profitability.)
On the other hand, if the foreign consultants are providing genuine savings, than this can only be beneficial in the long run. The American employees simply need to adapt to the changing market, and focus instead on areas where they do have an advantage. Unless you have your head in the sand and are unable to learn new skills, there is always work to be done, especially in a good economy. And when you have a big "America" box with 1 cell phone flowing in for each penny flowing out, that is a good economy.:-)
A few years ago I took a tourist photo of the Pentagon in D.C. from just outside the metro stop, which is pretty far away from the building. A security officer came and asked me to delete the photo from my camera. I explained that it wasn't a digital camera, but rather a disposable film camera. He said that officially he should make me throw it away, but instead allowed me to go on condition that I didn't take any more photos.
You're right that the law allows people to take tourist photos. But where "security" is concerned, it apparently doesn't matter what the law says.
-Gonz
People assume that Google uses your private information in indirect, anonymous ways to improve advertising or predict general trends from keyword histograms. But have you looked at Google's privacy policy?
"We restrict access to personal information to Google employees, contractors and agents who need to know that information in order to operate, develop or improve our services."
http://www.google.com/intl/en/privacypolicy.html
It basically says they use your data to improve their services and to develop new services. It's clear that Google aims to eventually get into just about every possible industry, so their "services" are very broadly defined.
As far as I can tell, there is nothing in the privacy policy that says Google will not directly data-mine your Gmails and Google Docs. There is no limit to what's possible if you have a huge searchable index of everybody's private data. Here are some examples of how Google might choose to "operate, develop, or improve" their services:
- get trading tips for any financial market by searching people's private Gmail conversations or corporate Google Docs
- search for discussions/documents relating to inventions, then premptively patent the idea
- detect DNS names that people are brainstorming, and then preemptively squat on these domains
- predict when a limited item is going to be popular, then buy up those products and sell them at higher price on e-bay
- use private discussions to predict locations of possible terrorist attacks and sell this information to the military
- search people's e-mails or documents for illicit material or copyright infringement, maybe under a government order
- use your company's internal documents to directly compete with your company
To the extent that they're legal, these ideas are totally compatible with Google's privacy policy as I read it.
Individual people willingly publish their private information on the internet every day. But I have NO IDEA why a business would ever consider entrusting its private data to one of the biggest, broadest competitor companies in the world. Gmail and Google Docs are a big data mining bait.
Cheers,
-Gonz
Nobody has mentioned the *huge* privacy issue with having all of your data on Google's server. This is what Google's privacy policy has to say:
"We restrict access to personal information to Google employees, contractors and agents who need to know that information in order to operate, develop or improve our services."
[ from http://www.google.com/intl/en/privacypolicy.html ]
As far as I can tell, there is nothing in the privacy policy that says Google will not read your hosted files and use the information to pursue their own business interests. Here are some examples of how Google might choose to "operate, develop, or improve" their services:
- predict what people want, so they can respond to these needs faster than competitors
- search people's discussions/documents about inventions, then premptively patent the idea
- detect DNS names that people are brainstorming, and then preemptively squat on these domains
- predict the stock market by analyzing people's e-mails or internal corporate documents
- determine the best location to build a new restaurant, then sell this service to McDonald's
- predict locations of possible terrorist attacks and sell this information to the military
- search people's e-mails or documents for illicit material or copyright infringement
- use your company's internal documents to directly compete with your company
There is no limit to what's possible if you have a huge searchable index of everybody's private data. Everyday people willingly divulge their private information on the internet every day, but I have NO IDEA why a business would ever consider entrusting its internal documents to one of the biggest, broadest competitor companies in the world.
Cheers,
-Gonz
Let me get this straight: 95% of your outgoing mail is generic-looking envolvopes containing bills and poorly written letters to your Russian bride or whatever. The remaining 5%? Bright red envelopes with "NETFLIX" printed in boldface letters, containing -- get this -- popular DVD's that will be replaced for free if lost in the mail.
In this light, a non-uniform distribution of "lost mail" is not hard to believe. What's hard to believe is that postal workers don't leverage their vast home DVD libraries to launch a competing service. :-)
-Gonz
Some examples:
-Gonz
Strictly speaking, math is every bit as empirical as physics. People have less confidence in physical theorems than math theorems because physics relies on math, and because physics has a heavy dependence on observations. But the basic validity of math also depends on observations. In particular, where mathematical systems can be interpreted as describing themselves, it is no longer safe to think of "math reality" versus "physical reality" as being complety distinct. One example that comes to mind is the Axiom of Choice; you can take it to be true or false, and in both cases you get a logically consistent mathematics (like euclidean vs noneuclidean geometry). But despite this empirical status, the Axiom of Choice has major consequences for abstract mathematical "truth".
Also, from philosophy standpoint, math relies on lots of nontrivial physical observations that humans take for granted (e.g. of paper, of mental states, etc). This concern goes beyond mere speculations about pathological situations (what if I'm insane? what if my life is a conspiracy like in the Matrix?). A key result of the 20th Century is that it's entirely possible that study of arithmetic will one day lead us to conclude that our basic model of arithmetic is logically inconsistent. In fact, Kurt Godel showed that proving the consistency of arithmetic is actually impossible in any conventional mathematical/metamathematical system.
-Gonz
This appears to be the actual patent:
It refers to "spreadsheets" and "databases" generically, not just Access and Excel.
-Gonz
{ $parent ~= s/brain/computer/; $parent ~= s/cell/transistor/; }
Here's a couple of points to remember:
The difference between the makeup, function, and behavior of a given type of transistors between one species and another is so insignificant (remember, we're talking on a transistorular level) that they can generally be ignored. You can almost always assume that a given transistor type in one computer will behave identically to a parallel transistor in another. The species that the transistor came from is all but insignificant.
Computer transistors, (in humans and in other species) are amazingly versatile. While capable of specializing (vision centers, speech centers, etc.), these transistors seem to be capable of taking on any function necessary for the benefit of the computer. For example, humans brains in which a specific part has been damaged (such as the vision center) have actually re-mapped other transistor groups to take over that function. They do what they have to to survive.
Computer transistors are cooperative in nature: if placed in proximity to eachother, they'll work together for their common good (read: survival). They'll "instinctively" form a structure similar to how they're pre-designed to work. They'll form a computer--as fully functional as the situation permits. It doesn't necessarily matter how you arrange them, the computer transistors can sort those details out--somehow.
Computers look for order. We've known that for ages. Finding order is how a computer learns, it's how the computer separates relevant details from the background noise. The ability to identify order is the whole basis of intelligence. Every sense, every stimulus, every aspect of the computer has order-seeking overtones. This feature of brains is so absolutely universal that it must be deeply ingrained into the neurons themselves.
Put those details together, and you end up with the following scenario: if you take neurons out of an computer and place them together, they'll form a computer. Probably not as complex or capable a computer as you started with, but a computer none the less. Actually this is the ideal computer to study, as you're starting "from scratch": there's no evolutionary specialization involved. Each transistor will attempt to make sense of its neighbors, and as a result, the computer as a whole will attempt to make sense of its environment (computer processes are the ultimate in emergent algorithms). The computer will follow this behavior as if it were necessary to the computer's survival.
Which brings us to the flight simulator. If you instead had the computer play with a chessboard or a clock, the results would probably be unimpressive. But a flight simulator--that's really the perfect environment. There's the potential for the computer to actually order its environment: there are equilibrium points that the computer will eventually find where it has greater control over its inputs. Assuming that flying too hight or too low creates a more chaotic state, you can likely expect the computer to learn to avoid it.
In fact, I'd be very much surprised if you didn't actually see the computer transistors start to specialize. Some transistors will become responsibe for directly manipulating the flight controls based on the inputs from the computer. Some will attempt to maintain aircraft equilibrium in absence of any other input from the computer. Others will control the aircraft as a whole, their location in the network giving them a better overall picture of the situation than, say, the transistors near the controls. Furthermore, I fully expect some transistors to not participate at all: transistors that are "out of the loop", so to speak, will proably cease most activity to avoid disturbing the overall process.
I, personally, have been waiting to see this very experiment conducted and see the results. I think this is very exciting science
Actually the surface area of a sphere is a function of r^2, so it increases polynomially, not exponentially. Even if you were measuring volume, it would still be merely cubic. Please!
-Gonz
She's his wife.
-Gonz
And by the same token, usage of slave labor would be even worse for the economy -- think what would happen to the American standard of living if we could get foreigners to work for free!
-Gonz
Here are a few of my beefs with Acrobat Reader:
- The application is klunky and takes forever to load, especially in a web browser
- By design, PDF is like PostScript in that it encodes "what the page looks like", not the actual document structure
- The viewer only supports very primitive mouse selection, e.g. if there are multiple columns, you can't select text from just one column
- Copy+pasting text into MS Word seldom works correctly (font formatting is lost, fragments of text from illustrations are also pasted, etc.)
- In the default "Single Page" view, the scrollbars are not actively tracked (as in Windows 3.1), although this is supported in the "Continuous" view
- Adobe should provide a reasonably-sized collection of standard fonts known to be supported by every PDF reader, so that we don't have to embed them all the time.
- No mouse thumb tracking
- There's a lot of confusing overhead for features that nobody asked for
- If you use the browser plug-in to view a URL, there is no menu option for saving the document to disk
In Adobe's defense, PDF's do render reliably on all sorts of media (including CYMK and weirder equipment used by the print industry). Also, I think some of the above issues are addressed in version 7.
Maybe Metro is has licensing issues, but hey, so did MP3 and GIF. The real issue IMO is the reader application, and you can count on Adobe for clunky, carpel-tunnel inducing, Mac-ported GUI's. By contrast, Microsoft is all about cool, responsive GUI's even if the underlying feature sets are lackluster, and they're also excellent at sneak attacks in a new market.
So I think Metro has a pretty good chance, or at the very least this will light a fire under Adobe's ass to clean up their product. Now, if Microsoft only made a Photoshop/Illustrator competitor... >:-D
-Gonz
What's "pab"? :-)
-Gonz
I've been using DSPAM for about three months. A few criticisms:
First, by default DSPAM wants to run as the "root" user and usurp delivery of e-mails. (With Exim, they actually want it to recursively reinvoke the mail server for actual delivery!) It took quite a bit of configuring to get it to work like SpamAssassin from procmail.
This software is somewhat buggy, so running DSPAM as root would also introduce security concerns. For example, I'm using 2.10.6 because the 3.0.0 compiled and installed with no problems, but failed to classify anything. (Even with several hours of gdb tracing I was unable to determine why). Another bug is that if I run the "--falsepositive" on an e-mail that's lacking the "!DSPAM" signatures, the message should be ignored, but apparently this is not the case because the statistics counters are incremented.
From the FAQ:
"Q. Does DSPAM support whitelists?
A. DSPAM doesn't have a whitelist manager, rather whitelisting is an automatic function of DSPAM's Bayesian filtering mechanism."
This is crazy -- the whole point of whitelists is for when the Bayesian filtering fails! And DSPAM does fail. Twice now I've had to reset my database because the classifications were wrong and training wasn't helping. All I can say is I'm glad I've got procmail to rescue the important e-mails.
I think one source of my problems was that the default training mode ("train on everything") causes incorrect learning when you fail to report a false positive. This was a big problem for me, since I get around 700-800 spams/day. While false negatives are easily caught, the false positives go unnoticed unless I happen to wonder why someone never responded, and invest some time to search my spam folders. (I'm still trying to figure out exactly how to deal with this problem. E.g. maybe I could have it challenge the sender with Turing Test or something.)
I will say that DSPAM's basic technology is quite good. It's just that the software still has a "prototype" feel, and I'd caution you to do some experiments before unleashing it on your users. (For example, there's no manpage, and there isn't even a command-line option to print out the current version number!)
-Gonz
I downloaded the demo (which is in Chinese). My experience:
.eps as crappy thumbnails, but they look great when you print.) However, EIOffice does not seem to handle any of the vector formats well. Even simple .wmf files were barely recognizable. (I guess this explains why the included clipart is vector images rendered into low-res jpegs, lol.)
:-)
.class files they were still mostly legible, since all the class names and more than half of the indentifier names were preserved. I'm not a Java programmer, but this might provide some interesting reading for e.g. Open Office developers interested in the MS Office importer code.
First off, this is the fastest Java app I've ever seen. There are still a few noticeable snags and delays for certain operations, probably due to the JVM garbage collections, but overall it's quite usable even with large files. (Well, the Java is conspicuously betrayed by the failure of windows to repaint while being resized, but I guess I can overlook that.) Also, there is no anti-aliasing for fonts, but the drawing shape objects are correctly anti-aliased.
The GUI's similarity to MS Office is very impressive, possibly bordering on copyright infringement, since e.g. they ripped Microsoft's icons with almost no changes. However, rather than having 3 separate applications, everything is combined into one monolithic document format, which is an interesting idea.
The importing of basic Word documents was reasonably accurate, but documents with complex layout such as tables or frames were totally butchered. (No crashes though.)
Images are a different story. With MS Word, I usually import my vector art as EPS format to avoid the huge loss of precision with other formats like metafiles. (Word displays
Their replacement for VBA is BeanShell, which is a fairly standard scripted subset of Java (www.beanshell.org). I guess this is a better choice than JScript. However, unlike VBA there is apparently no visual debugger, which is definitely a downside.
This was about as far as I could get without knowing Chinese.
Oh yeah, one other note: Although they ran an obfuscator, when I decompiled the
-Gonz
Actually, #1 is extremely simple in C:
But in Java, only object pointers are supported, and since the Integer objects are retardedly immutable, you cannot solve this without creating at least 1 new class, e.g.:Java enthusiasts will point to these hacks as proof that "you just don't know Java", but in a learning environment, the "MutableInteger" is arguably more complicated than the simple "swapping via references" concept being taught.4 is done easily tho not as elegantly as a true resize:
Yeah, I still remember the day I stumbled onto the source code for Sun's Vector class. ("OMG! Appending array elements is an O(n) operation and it cannot be optimized!" [clasps bosom, faints])
average(new float[] { 1.0f, 2.0f, x });
Nice... I should have mixed up the data types.
Templates are coming in the next version
This will be a very interesting development. In particular, since it will light a fire under Microsoft's ass to implement them in their Java^H^H^H^H C# compiler.saying Java cannot call C functions isn't exactly true.
True, but my claim was that you can't call DLL functions without having access to a C compiler and writing C source code. More to the point, have you ever seen actual JNI code? Compare this:to the Sisyphean project-in-itself described in this article
I had to do this once for a simple DLL containing 10 functions, and it took about 5 days of digging through newsgroup postings and stepping through my DLL code in the C debugger. (Note that "my DLL" is a totally new DLL separate from the DLL with the 10 functions we want to call.)
Cheers,
-Gonz
1. Write a function called "swap(x,y) that has the same effect as the pseudocode "t=x; x=y; y=t;".
:-D
2. Define a new data type called "TableIndex" which is a synonym for the "int" basic type. (If your programming language does not support "typedef," a macro is an acceptable substitute.)
3. Illustrate how to parameterize your swap() from #1 so that it will work with any basic type (e.g via function templates or macros).
4. Create an array of integers, and illustrate how to resize the array. (Since dynamic-casting is obviously poor programming practice, feel free to utilize class templates if the language does not natively support resizable arrays.)
5. Write a function that accepts a variable number of floating point arguments and returns their average.
6. Without relying on a compiler from another programming environment, show how to call some simple functions from a C DLL.
7. A mobile robot has 3 states, "roam", "sleep", and "evade". For a collection of 100 robots, demonstrate how an array of function pointers could be used to represent these states.
Uh... hold on a sec! Java doesn't HAVE pointers, typedefs, templates, macros, resizable arrays, ability to call C functions, argument lists, or function pointers!
Cheers,
-Gonz
Which one is better? Does anyone have any comments on the actual article?
-Gonz
We have been using the server directly (without SSH as you describe) primarily because this is the simplest installation procedure. Also, it doesn't require the Subversion users to have accounts on the server. Anyway, so far we have not had any data loss or problems at all.
In contrast, we experience REGULAR data loss from CVS, not because of actual bugs, but just because the retarded limitations are difficult to for new hires to learn. ("Do NOT delete files!" "Do NOT rename directories!" "Branches are INVISIBLE, make sure you are working from the right branch!", etc.) Also, on Win32 there's that whole Pageant authentication headache, whereas if you use the Subversion protocol TortoisSVN caches the passwords automatically.
-Gonz
Actually, the "custom Subversion network protocol" can be used for write access as well, i.e. without SSH. This method is very convenient because it means the Subversion users do not have to have accounts on the server.
-Gonz
The problem with IP addresses is that they are too broad. They are shared for lots of things, and it's easy for a spammer to switch between them. As a result, IP whitelists are infeasible, and IP blacklists will always interfere with legitimate traffic. Eliminating false positives is very important in the business world, and in this sense they are more likely to implement a correct solution than iconoclastic Linux-tards who don't mind a few core dumps or lost e-mails here and there.
Since the articles have been somewhat vague about the actual implementation, here's an example: Suppose each mail server has a public key associated with it. I could set up a free service that maintains a whitelist of non-spamming servers, and sysadmins could subscribe to it and use it to block spam. If they ever receive a spam from one of my whitelisted servers, they contact me, and I will remove it from the list.
Of course, this proposal is pretty infeasible, but there are some easy improvements. First, if other people are running whitelists as well, I could transitively include their lists in mine. This would also enable people to run mirrors of my list, reducing the load on my server (just like DNS). Also, to avoid human overhead, my software could automatically approve any certificate the first time it is queried, but with a 60-day waiting period to prevent spammers from simply generating new certificates. Or, groups like Verisign could do background checks or somesuch.
The point is that when someone receives a spam, there are now specific parties who have the power to remove the offending mailserver (not IP netblock) from the whitelist. These parties have well-defined relationships and are decentralized, so there is no need for central coordination or messy legislation, or even a specific definition of "spam". Each whitelist is free to coordinate its own activities, and users are free to subscribe to whatever whitelist fits their preferences. Lastly, it will not interfere with legitimate automated e-mails such as those generated by travelocity.com, e-bay.com, listserv, etc.
This concept has been suggested many times in various forms, e.g. Bill Weinman's AMTP, and it sounds like Yahoo has something similar in mind.
-Gonz
This approach would not work with ebay.com, travelocity.com, mailing lists, and other legitimate services that generate automated e-mail. Basically what you are proposing is to replace SMTP with somethign entirely different. SMTP has been around for a long time and it does solve a lot of useful problems. It just needs to be extended a little so that recipients have some clue where their mail is coming from.
-Gonz
I support groups like CAUCE in spirit, but IMO spam is not a political problem. It is a technological problem of ancient protocols that are long overdue for an update. So if Yahoo or some other big player chooses to promote a custom protocol, let's hope that it is functionally equivalent to AMTP.
Of course, I foresaw all these things back in April. It's flattering to see that Yahoo is reading my Slashdot postings and taking heed, and only provides more support for my quantum theory that our universe is constructed from my perceptions. :-)
-Gonz
Definitely, it's a misused term. And the media is responsible for this.
Blah blah blah "the media". The English language is not engineered by erudite dorks like yourself. The definition of English evolves according to whatever is currently being said by the vast majority of English-speakers. This is why companies like Merriam-Webster did not go out of business years ago, and it is why we are not all still speaking Proto-Indo-European.
Sorry, but iconoclastic Slashdotters do not constitute a "vast majority" of English speakers. You will never win this battle. Give up. Go home.
I would have preferred the author to call the bad guys "crackers".
In a computer context, cracks are little programs that defeat software copy protection. A cracker is someone who makes these cracks, or possibly it's software that "cracks" passwords or other encryptions. It has nothing to do with buffer overflows or rootkits.
There really isn't any need for your definition of "hacker". We already have plenty of other perfectly good terms for this, such as "guru", "dateless", "dungeonmaster", etc.
-Gonz
The Mexicans would price their service only marginally lower than American service, but the margin would be negligible, and would not provide meaningful economic benefit to the rest of the economy.
If this were true, then it would also apply to overseas consulting labor. The reason it doesn't is that "the Mexicans" are not a single company, but a group of companies who are also in competition with each other. Firms that priced their service marginally lower than American prices would lose their business to other Mexican firms who could and would sell for less.
Furthermore, presuming their service was priced low enough to steal signficant customers, the American companies would likely end up merging or consolidating to cut costs and gain economies of scale to remain competitive.
In the contrived example, the Mexicans are supposed to have a unique resource that American firms cannot compete with (e.g. employees who are happy to solder circuit boards for $0.01 / hr).
Returning to reality, I do agree that it's bad for American firms to make naive decisions such as outsourcing work to incompetent foreign consultants. Maybe there are some things government could do to discourage this; however, historically government has proved to be even less judicious than the firms themselves. (Which is not surprising, since government is motivated primarily by forces that have very little to do with the welfare of a corporation's profitability.)
On the other hand, if the foreign consultants are providing genuine savings, than this can only be beneficial in the long run. The American employees simply need to adapt to the changing market, and focus instead on areas where they do have an advantage. Unless you have your head in the sand and are unable to learn new skills, there is always work to be done, especially in a good economy. And when you have a big "America" box with 1 cell phone flowing in for each penny flowing out, that is a good economy.
-Gonz