Today’s attention is directed at one of the less well known and certainly one of the least understood and used areas of perl. Although direct manipulation of bits is the only thing that a computer really does, programmatic manipulation thereof has been abstracted out for all but the tasks that can only be solved by its use. Still, there are situations and times when it becomes necessary and proper for one bit to dissolve the logical bonds which hold them to the byte and to assume, amongst the operators and variables of the language, an equal station.
Brett mentioned Cuil, the next big “google killer”, yesterday and I applaud him for keeping a straight face while typing up his review. I’ll sum up ‘Cuil’, in my opinion, quite shortly: over-hyped failure. These days it’s almost ‘fightin words’ to go against the mighty google and there’s a reason for that. Google is, hands down, the best search engine currently available. It’s dependable enough to trust when your in-laws call saying they’re on their way over for thanksgiving dinner and you need a turkey recipe that will knock their socks off because you were just going to order a pizza. Don’t believe me? The proof is in the pudding:
Ok, so I broke a few ‘search engine rules’ while doing that, but google still got me what I wanted; point made, game set. Now, don’t get me wrong – I’m not against someone doing a better search engine. In fact, I’d welcome it. It would keep the industry fresh and full of new and better ideas. At the very least it’d revitalize the industry even if it were just for a brief moment. Cuil failed to deliver.
I understand that almost everyone is ripping on Cuil today, myself included, and the reason is probably a simple one: We’re disappointed. Google does, indeed, have the search engine market cornered and that makes a great deal of us just a little worried (*tinfoil hat on* if they can censor searches in china, what else can they censor *tinfoil hat off*) . I’d actually like to see Cuil get up, dust itself off, and keep at it. Who knows, maybe one day they will topple google – or at the very least match them.
Well there is a new search engine on the block. It’s name is Cuil and its built by ex-Google engineers. Similar to Google the initial search page is simplistic and very reminiscent of early Google. I wanted to compare the two though to see what kind of results they return, and that is when the most obvious differences come to light.
The other day, one of my tech friends who is more familiar with linux then I, was talking about being unable to tail log files in windows. A command to do so didn’t immediately come to mind so I got to poking around on the inter tubes for a solution. As it turns out the tail command isn’t installed by default with windows but is available for download. The Microsoft downloads site offers the tail command with the Windows 2003 Resource Kit along with many other tools for administrating Active Directory, cleaning memory, raid configuration and lots more. I installed this kit and immediately noticed that when I typed tail /? at the command prompt I got an error. This error was due to windows not knowing where to find that particular command, so I had to add its location to my path. I right clicked my computer and then clicked properties. then I clicked advanced, then I clicked the button labeled “Environment Variables”. In the section labled “user variable for myusername ” I first clicked path and then clicked edit. I already had a variable in my path statement so I simply added the path to the resource kit install directory with this
;%SystemRoot%C:Program FilesWindows Resource KitsTools
then I clicked ok all the way back out, and then tested by typing tail /? which gave me the syntax to use when tailing a file.
There comes a time in every perl programmers life when they have to master the hash. Anyone who has programmed in Perl for very long has run into problems such as subroutine arguments getting confusing, lagging programs due to hash tables being copied over and over, and searched for a simpler way to maintain and access data. All this and more can be achieved by the simple use of anonymous hash tables and the passing of hash table references to subroutines for processing.
The good people over at ars technica are reporting a rather neat (or horribly awful, depending on your view) team-up between Amazon and Tivo. Soon you’ll be able to buy those product placements from your favorite TV shows without even doing an amazon search. I could see this going one of two ways: TiVo customers (and impulse buyers) will love it OR it will be the most annoying piece of integrated technology since Microsoft gave us “clippy” the ever-so-annoying paper clip ‘helper’.
In other, non-related news, the times online is reporting the Webocalypse. Ok, ok, so it’s not really the end of the web, but it’s a start. Basically google has to give up 12 TB of YouTube user data to Viacom. Somehow Viacom thinks this will stop people from posting clips and shows on YouTube. It won’t. It will, however, give them more information than any possible ‘focus group’ could ever get on the viewing habits of young people. I’m assuming I don’t even need to mention the privacy issues this action brings up. Also The European Parliament added a law so each member state’s authorities could determine what software is appropriate for use on the internet. The article itself is a tad alarmist, but there are some very good points. I’m wondering how this might influence those of us across the pond.
This weeks PowerShell tutorial covers how to create pipelines and output management. Powershell pipelines are a series of cmdlets that pass objects from one to another. Each cmdlet generates an object and passes it to the next cmdlet via the pipeline. The receiving cmdlet uses that object as input and generates its own object as output. Connecting pipelines is done by using the pipe character (|).
Last week, we started making the web interaction class and did the self-signed compatibility functions as well as some setup ones. You can see all that here. Today we get into the meat and potatoes and get started on the functions that will actually send and receive the data we care about. So here we go!
Net Neutrality is a pretty basic concept – keep the net open, and unrestricted to any content. Google does a pretty nice job of summing this up a little more in depth: “Network neutrality is the principle that Internet users should be in control of what content they view and what applications they use on the Internet. The Internet has operated according to this neutrality principle since its earliest days… Fundamentally, net neutrality is about equal access to the Internet.”
Late last week, the Federal Communications Commission Chairman Kevin Martin seemed to share this thought by “moving to prohibit ComCast from throttling BitTorrent traffic”. In fact, he is also wanting to reprimand ComCast for choking down on the BitTorrent protocol – a blow that would leave any NN enthusiast pretty happy. Not so fast, though: the rest of the FCC still needs to decide, which could still take a few weeks. This is definitely something to pay attention to.
Having purchased an Asus 701 (4G) netbook a couple of months ago, I was very surprised to learn this week that novice PC users, like students and housewives, tend to buy the Linux version of the Eee PC701. My choice of the Eee PC701 was dictated by the fact it came with Linux pre-installed, my personal preferance for any computer, but to see the general public warming up, and actually prefering this hottest selling device in the PC market with Linux was refreshing. Weighing in well under 2lbs, and with built in wifi and webcam, these little machines are perfect for email, chat, web browsing, and music. If you’d like a more advanced experiance, the EeeUser site is filled with tips and tricks to get your mini laptop doing nearly anything you could imagine, and a few things you never thought of.