There is a big change coming to the Internet which has the potential to radically shift the nature of the Internet itself and how all of the nodes which participate in it collectively will be able to interact. If we were smart, we should be pushing for this change to occur, because the shift is so significant it has the possibility to open up completely new realms of informational hierarchic interchange and organization.
The change has sweeping implications not just technologically, but also socially and certainly politically as well.
The present way the Internet works is that there are essentially two separate classes of nodes which participate on the Internet – servers and regular users. One fundamental difference between the two is that servers are addressable machines which have public addresses that can be accessed by all other systems, whereas most regular user’s machines sit behind routing devices which essentially buffer their computers from the public space, on the one hand potentially protecting them from attack, but also cutting them off from public accessibility.
This problem with regular Internet users’ systems is exacerbated by the fact that Internet service providers typically do not provide permanent addresses to home accounts. Imagine how it would be in the real world if only certain organizations had the privilege of a thing called a mailing address, and everyone else had to use collective addresses that did not belong to just their own residence, but possibly to pools of many residences. And imagine if the home users’ addresses were not even allowed to stay the same, but changed periodically, often at least once every 24 hours. It would be insane, would it not?
The fundamental problem is that there are privileged nodes on the Internet – such as the big sites Google, Yahoo, Craigslist, Facebook, etc. – and unprivileged ones, such as (more than likely) yours and mine. Private organizations invest hundreds of millions of dollars on infrastructure designed to capitalize on cornering niches of routine Internet usage and functionality.
For example, to have the “privilege” of having an actual permanent address for your computer, Internet service providers charge extra money. And even when you have such an address, you must go through still more hoops if you want the privilege to participate as an equal peer amongst other servers.
As another example, your computer and mine cannot actually participate as equal peers in the sending of email (via the SMTP protocol) via the Internet because, due to security fears and other issues, only privileged systems are designated as being valid mail senders and will not accept mail from non-privileged systems. You and I are forced to use the systems of the privileged nodes (i.e. gmail, Yahoo mail, etc.) because our own systems are not deemed worthy of participating equally with others.
Of course this has been done mostly to eliminate spam, yet even still, it is estimated that around 95% of all email traffic in the world consists of spam. Clearly that system, even with its massive inconvenience, is not working very well. There has to be a better way. The entire protocol and mode in which interoperation for Internet mail occurs needs to be re-thought out from the beginning, and things like identity and verifiability of sender and addressee need to be implemented at the protocol level. (I have long been aware that one of the fundamental things lacking with the present Internet is the lack of strict identity. I would like to address this in more detail in another post, yet essentially because of weak identity and verifiability there are all sorts of problems that occur, from scams on eBay to mail spam and phishing attacks. There needs to be a solid infrastructure for identity to exist. Many people will decry this as being a loss – a loss of freedom and anonymity, yet I would also argue that the price that must necessarily be paid to participate in a fully functional system that does not break down requires the concept of strong identity. Things like email and eBay are essentially community interoperations which, as long as there exists no strong system of identity, fundamentally break down. Also, the other side to anonymity is the idea of reputation, and reputation, just as in the real world, is a true asset for any individual or company. Reputation provides a way to build trust and, instead of the cludgy implementations of security designed to protect us and filter out garbage, as circles of reputation are built it would become easy to simply filter out low reputation sources of information. For example, in forums where there are trolls, you can simply choose to filter out these sources because they are coupled with actual, verifiable identities. Filtering is one of the most basic empowerments not just in the real world but in the virtual world as well, but filtering requires identification. I imagine a future in which all humans essentially are assigned their own unique address or identification credentials which can stay with them for life. They can also chose to create new credentials, with the disadvantage being that they will therefore have to establish a new reputation from scratch.)
This is one of those things where you have to get your mind out of the narrow thinking which seems to govern much innovation in Internet entrepreneurship today, where companies basically look for empty niches to exploit in order to get there first and establish themselves before others do in order to corner some aspect of functionality which eventually they hope becomes an indispensable component of the routines of interchange and functionality of the Internet.
You have to go back to the types of thinking that went on in the very early days of the Internet, when the original protocols were developed which laid the ground for open participation of all nodes across the Internet based on open standards and maximum interoperability. Today it is taken as given that all of these groundwork technologies that are necessary for the Internet to operate the way it does just work, yet there are people who work behind the scenes of the Internet to ensure that this all keeps working and that all interoperating systems are in compliance with the standards.
All organizations and providers must dedicate staff to keeping their systems operational with these standards. It is accepted as given and necessary that this is what has to be done to make the Internet work. So we are already paying homage to this higher organization although it typically tends to not be as glorious and appealing as the exploitation of the little niches is with its potentially huge monetary rewards for cornering markets.
The big change that is set to occur is the fundamental changing of the addressing system of the entire Internet from the present protocol IPv4 to the new one, IPv6. IPv6 should make every single node which participates on the Internet its own, unique, addressable system. Any two computers on the Internet, no matter where they are, should be able to immediately address each other and share data. Every node should then have its own address and be accessible to all other nodes.
If this happens the way it is supposed to, hierarchies might start to topple as the once privileged status of major content providers dissipates and the privilege is shared equally amongst all nodes of the Internet.
I actually believe that the privilege of having a publicly accessible node on the Internet for all users is perhaps more important even than having mailing addresses, because the potential for interchange and participation is that much greater via the Internet.
To give some examples of this type of thinking, let’s say you want to post something for sale on Craigslist. In my world, when you want to post something for sale among your community, you would not go to the server of a private organization which has strict control over the operation of that service, instead your computer would know how to interoperate with the Community Bulletin Board Protocol, which would be a defined standard developed and maintained by technical experts that is designed for maximum interoperability, robustness, security, and features. On your computer you would run a program which knows how to interoperate with the Community Bulletin Board Protocol. It could be one of many programs, because anyone in the world could write their own program which uses that protocol. Of course programs which had the best features and the greatest usability would naturally become the most popular ones. All nodes on the Internet which have programs which use the Community Bulletin Board Protocol would be equally responsible for maintaining the actual community bulletin boards for their communities.
Or think that every computer could run programs which speak the Social Networking Protocol and, similarly, rather than the social network being managed and controlled by one entity, it would instead be defined by a protocol, the Social Networking Protocol, which would implement all of the features and requirements necessary to make it work. On your computer then, you would run one (or several if that makes you happy) of potentially many possible applications which are able to speak the Social Networking Protocol. Each computer, each node on the Internet, is equally responsible for maintaining the actual social network(s) which they choose to participate in.
Instead of resources being devoted to private companies trying to find the best ways to make profit, resources would be devoted to technical experts whose overriding interest is in developing the best, most interoperable, secure, and functional system available.
Of course this does not mean that all private enterprise on the Internet would disappear, but in fact it would lead to a much, much greater benefit which would eventually be far more valuable economically, socially, and politically. Rather than constrain free enterprise, it would simply focus it where it can be most useful and allow for a new hierarchical and informational organization which would lead to a more fundamental flourishing.
Finally, coupled with the above changes, perhaps the most fundamental change that must occur is the recognition that the data transmission infrastructure around the globe for *all* types of data belongs to the people to Earth and can never be privately controlled. We need to dethrone the privileged entities which control the airwaves and cables. We are the ones who have paid for that infrastructure – infrastructure that runs through every community of virtually every nation on Earth. Nothing could be more public than that.
Ultimately there should be one Earth public body that stewards the global information infrastructure and perhaps, as peoples of the world learn to cooperate in this regard, they can eventually cooperate in more areas of policy and resource management, leading to a true one world government.
I wonder how many millions of open-source developers’ and administrators’ unconscious minds have negative associations with sourceforge.net because it never lets you just download a .tar.gz file directly? Download links always go to a stupid download page which, when you’re just trying to wget the file, is a major PITA. You have to break out lynx or links to get the file from when under CLI on a remote system.
I was just thinking of what fascinating areas the sociology and psychology of linguistics are. This came to mind when thinking about idiomatic expressions and not just the implications but implicit assumptions that are made on the part of speakers regarding who is being communicated with.
For example, when a native speaker of a tongue is speaking with a non-native speaker, they may disdain from employing idiomatic expressions. But it would be interesting to research how this occurs and why, and what attributes or characteristics of the speaker may temper or affect his or her modes of communicating.
Another interesting situation would be when there are two native speakers of a language but who speak different dialects of that language. Depending upon how different those dialects may be, the speakers may choose to comfortably employ idiomatic expressions with an explicit understanding that, even if the other speaker might not be familiar with a particular idiom, they might be able to quickly grasp it. It would be interesting to study situations in which these types of interactions occur and what influences formation of implicit assumptions about the other speaker that get employed when communicating.
I was searching the Internet for a definition of the idiom “to wire something” or “to have something wired”, yet could not find it listed anywhere. I did find one site which was an ESL test supposedly about idioms, yet the “idioms” it was using were things like “to pick on (someone)”, “to pick (something) off”, “(something’s) being picked over”, etc. In my opinion, these are not actually idioms but actual valid definitions of the verb “pick” which, when combined with specific prepositions, have specific meanings. In German this is the regular case as with many if not most verbs which accompany a preposition, for example the verb “aufheben”, auf (up) + heben (to lift), i.e. “to lift up”. That is given as a separate definition in German and is not considered part of the verb “heben”.
To me a true idiom is a phrase of speech in which the grammatic elements could never reasonably be defined in a dictionary with the given meaning that is implied in the phrase. For example, “to have the hots for (someone)” – I don’t think that the idiomatic meaning of that phrase could ever reasonably be expected to be included in a formal definition of the verb “to have” (although now that I think about it it could be listed as “hot for (someone)”). This leads to a general case of idiomatic expressions which appear to usually consist of the verb “to have” coupled with a noun and adjectival clause or prepositional phrase with a noun object.
Now I want to create a list of idioms. One of my favorite that this poet guy from New York I met years ago used and which has always stuck in my mind for some reason was “to give someone the fuzzy end of the lollipop”, which basically means to dis someone… This guy was like a walking, talking repository of the most colorful idioms I’ve ever heard in my life if also a bit crazy. Just listening to this guy even if he was ranting about someone or something just left me feeling awe and amazement, wanting to note down everything he said.
Windows 7 has a new feature called “libraries” which is basically a location in the file system where you can link different files and folders from different locations together into one place. So for example if you have photos stored in different locations and on different drives, you can list these all together under one master “Pictures” folder in your library. Now when you want to access some pictures instead of having to wander through all the various locations that you might have them stored on different drives, you can see them all listed together in one place.
One serious flaw with this idea has been that Windows 7 doesn’t let you add folders on network drives to libraries. As users are increasingly using network file storage and are likely to store things like pictures, music, or movies on these network drives, the inability to link them into libraries is a glaring omission. Fortunately someone has created a fix which is free and Open-Source: Win7 Library Tool by Zorn Software. This simple to use tool allows you to add items on network drives to libraries.
Because over time I end up having data scattered across different locations and on different storage devices, I’m starting to see the benefit of using libraries. I tend to make mirror copies of systems which, when I upgrade systems, end up laying around on storage drives. When I set up a new system I sometimes do not just mirror all the data back as I tend to accumulate a lot of junk and like to start fresh, copying only the data to the new system that I really want. Its like cleaning out an old closet by basically taking everything out and putting it in storage, and then taking back only what you really need (isn’t there an axiom about cleaning to the effect that if you don’t use something you should basically toss it?). The problem is that the “junk” still exists on the backup drives, and oftentimes I will at some point or other down the road need to access that information.
A way to start solving this is to link all these locations back together in one master location and then sort through them, index them, and remove duplicates. So now all those old storage units where I’ve stuffed my junk, much of which is duplicate, can be symbolically put back together in one location where I can more easily sort through it and throw out more stuff. Using libraries is a way to do this.
According to an article(1) that just appeared today on Alternet.org:
Over 200 studies since the early 1980s have now documented that people living in societies where wealth has concentrated at the top of the economic ladder live significantly shorter, less healthy lives than people who live in societies that spread their wealth more evenly.
The Gini coefficient is an index of a country’s economic disparity that was created in the early 1900’s by italian statistician Corrado Gini. I have always been concerned about the direction the USA is heading in in terms of economic disparity.
Beyond this though is the emotional impact it has – its truly sad to live in a society where “the dream” or whatever you call it is an illusion, something that can only be had by those who grew up in the right neighborhood, attended the right school, had the right kind of parents, did all the correct things that one is supposed to do to be “successful”, etc.
Societies which throw away human lives are at the deepest level heart breaking. When I think of college graduation ceremonies with all their pomp and mind-programming, I am always deeply saddened because all that the system of “higher” education does in the USA is reinforce inequality. Those who have paid the price and jumped through all the required hoops find reason to celebrate, yet to me it is truly a moment of sadness because it is a moment of separation and estrangement.
I think that the USA is broken and has to learn how to not throw away human life. The answer involves many things that affect the basic dignity of a person. Even basic things like enforcement of housing codes for sub-standard housing can have a massive impact upon the health and well-being of a person. Things like environmental toxins and noise are also serious assaults against a person. There are multiple types of assaults that one can experience just being out in the world – physical, psychological, chemical, audial, visual, etc.
I even notice when walking along the sidewalk how people unconsciously tend to start the engines of their vehicles at the exact moment that a stranger passes by. Its actually uncanny if you pay attention to it and notice that it almost always happens. Its subconscious fear. Yet many car companies play directly upon people’s unconscious fears and need for security in marketing and designing car brands. Its essentially a suicidal type of practice that is engaged in for the sake of “profit”.
Starting a vehicle engine at the exact moment that a passing stranger is in proximity is total sickness. Perhaps the sickest thing about it is that the sickness is not recognized. I’m not talking about anything symbolic or metaphorical here either. I mean the actual act of what is occurring, if you simply look at it, is insane. One human being is blasting the auditory system of a passerby with the horrific assault of sound coming from the ignition process of an internal combustion engine and all the concomitant mechanical clashing and screeching noises that are at a decibel level sufficiently high to cause trauma and stress to the nervous and endocrine systems of the passerby, whose only crime was to think that they could go outdoors freely and walk in peace without being molested.
Of course, 99% of passer’s by won’t realize that this is even happening to their body, so sickened and tuned out are they already. Yet when they notice unresolvable, ongoing health problems like obesity that they for one reason or another are incapable of healing, they never connect it with the damage being done to them. And if one were to actually propose doing something about for example excessive vehicle noise, these same, ill people might actually become indignant at the proposal and want to defend the “right” to make noise! In essence, we have conditioned ourselves into a suicidal race that enforces its own “right” to kill itself.
There are many suicidal tendencies that american culture is currently locked into. For all the things that money gets wasted on at universities conducing research sometimes into the most ridiculous things, you would think that the science of life, of being human, would be better understood. You would think that the need to have fundamental protections of our health and well-being would be overwhelmingly apparent, that the disastrous consequences of violating health would be so well understood that there would be no question as to the overriding priority of protecting it at all costs.
To look at it on a bigger scale, the air, the soil, and the rivers and lakes are our nourishment. To poison our source of nourishment is prime insanity. We live in a society which is addicted to sticking a syringe of poison into its veins out of some warped delusion about what it means to be well.
(1) Pizzigati, Sam; Radical Inequality Is Literally Killing Us; Alternet.org; 27 January 2010
The last major freakout of the Earth environment, I have just read, was in 1816, which was called the “Year Without a Summer”.
What happens during a period of unusually low solar output and then a string of massive volcanoes spewing hundreds of tons of dust into the atmosphere? Read this article at Wikipedia.
A quote from one small section of the article:
In July and August, lake and river ice were observed as far south as Pennsylvania. Rapid, dramatic temperature swings were common, with temperatures sometimes reverting from normal or above-normal summer temperatures as high as 95 °F (35 °C) to near-freezing within hours.
An article in ScienceDaily.com discusses a new technology that involves using low-temperature plasma to disinfect decayed teeth instead of the current process of drilling. This new process does not require mechanical/physical contact with the tooth!
Article: Painless Plasma Jets Could Replace Dentist’s Drill
I was recently reading through the forums at the excellent Windows 7 forum site sevenforums.com and one of the posts mentioned an amazing, open-source app called Classic Shell which “fixes” several changes in Windows 7. From the project’s main page:
Classic Shell is a collection of features that were available in older versions of Windows but not anymore. It brings back the classic start menu that Windows 7 doesn’t support, adds a toolbar for Windows Explorer in Vista and Windows 7 like the one in Windows XP and adds couple more smaller features.
The new Start Menu in Windows 7 really got to the point that it was annoying to me. I like to have a customized Start Menu with exactly the options I want. I normally create my own folders for various categories of applications and then copy shortcuts for the applications into them, leaving the original menu intact. I guess this is a carryover from my heavy use of Linux, which usually groups applications in menus based on category. This really makes much more sense if you think about it. Here is how I do it.
First, I make sure than there are no pinned icons in the Start Menu. Then, I create the following folders and subfolders under:
10 System & Security
After this, I move all the icons which are in the Start Menu white area above the All Programs submenu into these various folders based upon category. This clears up the Start Menu. Then install Classic Shell and you should see the new Start Menu and the custom folders above will be at the very top which is very convenient. You can also put shortcuts directly under AppData->Roaming->Microsoft->Windows-Start Menu (I do this for a couple of frequently-used apps) and they will appear directly under the folders you created.
A couple of days ago I noticed that my samba server running under Linux was listening on all interfaces, including the wireless interface for the public network that I share where I am, which is something I don’t want. Why? Because this server contains file shares for a large amount of my data. This is not stuff I want publicly accessible.
Actually, the shares can only be accessed if a remote user authenticates against samba, which would require their credentials having been added to the samba password database with the command smbpasswd, therefore even though the server was visible, it was not actually accessible. For security purposes however, it is better to simply not even have the server listening via the wireless interface, since I only need to access it locally through an Ethernet connection here.
Once I told samba to only listen to the Ethernet interface I noticed however that there was a large number of log files that it created since, for every host that tries to access the server, it creates a unique log file for that host in /var/log/samba. Having sat exposed on the public network here meant that every machine that automatically browsed the network for available shares had tried to communicate with my samba server (I don’t think any of the connections were malicious attempts to access my data). These log files for all these hosts did not get automatically cleaned up by logrotate. I was actually looking through these logs to check on some issues I was having, and it was annoying having all these old, pretty much irrelevant log files laying around since they only contained irrelevant info about failed connection attempts.
In order to get rid of all these useless log files laying around I broke out one of the most useful command-line utilities ever made: the venerable GNU find command which is part of the findutils suite of tools. find can usually do in one terse line what would normally take several commands patched together to do, if not more. It has the ability to recurse through a directory and look for patterns and then perform actions on whatever matches that pattern. This is one of those things in Information Technology which, no matter how advanced things seem to get, no matter how many great things get developed and fancy applications, it will always be useful to have because ultimately information gets stored in recursive directories which have attributes, the contents of which need to be processed in one way or another. It simply does not get more essential than this*.
To perform my task, I simply had to run:
find . -type f ! -mtime -2 -print0 | xargs -0 rm -f
To translate this command into the English language, I simply told it to find everything in the current directory and lower (find .) that is a file (-type f) (this was a safety precaution, because it could have been possible that there were also directories under this one which met the criteria, and I did not want these deleted, only files. As it turns out there were actually no directories.)
The next part is part of what is really cool about find, why I love it. You can craft these cool expressions to match exactly what you want. In this case, I wanted to match all files that had not been modified within the last three days. Anything that samba had not needed to log within the past three days was probably irrelevant to me. Here is the expression that did it: ! -mtime -2 Its so simple that its elegant! In Unix filesystems mtime means modification time, which is the most recent time that a file was changed in some way. Any time a log file is created or written to its mtime is naturally updated. For what its worth, there are also ctime which is creation time, and atime which is accessed time. mtime is usually the most important one for administrative purposes.
To explain this expression, the value after mtime is a number n which is a multiple of 24 hours. Therefore -mtime 0 means anything modified within the last 24 hours. -mtime 1 means anything modified between 24 and 48 hours ago, -mtime 2 anything modifed between 48 and 72 hours ago, and so on. Note that -mtime 2 does not mean anything within the last 72 hours, only within the 24 hour time period of n*24! The expression syntax is very strict about this! Since I wanted everything from now until 72 hours ago (n = 2), I put a – sign in front of n, therefore -2, which means everything from -2 and less. If I had put +2 instead that would have meant everything from 72 hours ago and later.
But wait a minute. Now I have -mtime -2 to indicate everything that has been modified within the previous 72 hours. But I actually want to delete everything that is NOT that. Easy, just put a ! in front of the expression: ! -mtime -2 Now I have matched everything that has not been modified within the past 72 hours.
To get an idea of how useful this is, imagine if you had to perform this same task with Windows Explorer, and the directory contained hundreds of files, some of which matched, some of which didn’t. Yes, you could manually go through and select all the candidates you want to delete, hopefully not making any mistakes, but it would be a tedious, arduous process at best. Now imagine you have to do this on 5 different machines! With the eminent find command we have reduced a potentially very arduous task that would be error prone and tedious to something very simple and fast.
The remainder of the command relates to the actual processing the files that match and deleting them: –print0 | xargs -0 rm -f The print0 | xargs -0 basically get the output of find – all the files that matched ! -mtime -2 and prepares them for the action we want to perform in them, in this case deletion, which is accomplished with rm -f at the end. Note that instead of deleting them with rm -f we could have performed any number of other actions, such as renaming them, moving them to a different location, etc.
Why print0 | xargs -0 is required is a little esoteric and not necessary for purposes of discussion now so I will let the reader find out more about this by consulting the excellent manual page for find (type man find) in a console window.
The GNU find command is so useful that I think it would be a good idea for every child to learn it in gradeschool because we are always going to have to process information and knowing how to do so efficiently is a skill that will always be valuable.
* This is also interesting from a philosophical viewpoint. The fact that the archival and access of data electronically involves the maintaining and management of certain attributes with respect to that data almost reminds me of certain a priori types of knowledge which exist – for example in mathematics the fact that the sum of the internal angles of a triangle always equals 180 degrees. There seem to be certain a priori aspects of information technology: no matter how certain problems are addressed or reduced, there always seems to be certain aspects associated with them which ultimately must be accounted for in order to facilitate the actual process of things like archival and access of data.