Technology

Setting Up the Canon iP1700 printer for use on Fedora Linux

After much trials and tribunals, I finally got my Canon iP1700 to work with Fedora 11. Canon doesn't provide Linux drivers for this particular model so it wont work out of the box, but it is more than willing to print along happily with borrowed drivers.

I used the official Canon drivers for the iP2200. You can grab them from here: http://software.canon-europe.com/products/0010231.asp. In the OS selection pick “Linux”, choose your language and hit submit. Download the "Canon Print Filter for Linux (2.60 rev 3)" (or newer) package. Its a 22MB “.tgz” file.

Double click it to bring up “File Roller” (or use the terminal if you are feeling frisky). Extract the file “ip2200_Linux_260.tag.gz” to the Desktop. Extract the “guideip2200_2.60-1.tar.gz” if you want a manual. (Yeah, right.)

Fedora 11 Canon ip1700 setup

You will need to re-extract “ip2200_Linux_260.tag.gz” to a sub-folder on the Desktop (I call it ip2200), since it is also a compressed file. It contains these RPMs:

Fedora 11 Canon ip1700 setup

Go to the sub-folder ip2200 on the Desktop, double click on “cnijfilter-common-2.60-1.i386.rpm” to install it. You may have to supply the administrator password and choose “Force Install”. Do the same with “cnijfilter-ip2200-2.60-1.i386.rpm”. This should install all the necessary drivers.

Note: If you have attempted to install these drivers before (and have been unsuccessful), the packages will conflict and you will need to completely remove them. The command is:
su -c 'yum erase [name-of-package]'
For example:
su -c 'yum erase cnijfilter-common-2.60*'

Once the drivers are installed, restart CUPS by typing the following at the terminal:
/etc/init.d/cups restart.

Now to setup the printer through the CUPS server.

  • From you browser go to this URL: http://localhost:631
  • Choose the “Administration” Menu
  • You may be prompted for a password. The username is usually “root” and the password is you system's root password.
  • Hit the “Add Printer” button and select “Canon iP1700 (Canon iP1700)” from the list.
  • Add a name, description and location or simply accept the defaults.
  • In the model selection list hunt for “Canon iP2200 Ver.2.60”
  • Choose a few configuration options and you are done!

At this point you may want to print a test page. You can do it through CUPS. To do this go to the “Printers” section, click on “Canon ip1700” (or what ever you called it) and from the drop down menu choose “Print a Test page”.

Fedora 11 Canon ip1700 setup Fedora 11 Canon ip1700 setup

If you found this page helpful, do consider sharing with others who may be looking for something similar. Digg, twitter and links on forums work great. Let me know if the method worked for worked for you. (or perhaps didn't!) Or if you find an error in what's described above. Use the comment form below, or mail me.

Facebook Founder's Open Letter to Users

Facebook's has grown to a user-base of about 350 million, making the it single most popular social network on the web. With an estimated 1734 million people connected to the Internet today, this effectively means that one in every five Internet users have a Facebook account.

In light of its massive global popularity, Facebook has decided to upgrade its 'regional network' based privacy control. In an open letter to users, founder Mark Zuckerberg has highlighted how the existing network based privacy control is proving to be ineffective and Facebook will now implement a new, simple privacy model that will allow the user greater control over his or her information.

The letter can be found here: http://bit.ly/7vMW87

Google Forces Hindi Down Your Throat

Its Saturday morning, and I settle down in front of my desktop with my morning mug of Mocha, and open my Gmail inbox, expecting to find a subscription update from Youtube. Sure enough, its there, but with one minor distortion. It was in Hindi.

Why do these companies decide, that since I am from India, I would be overjoyed at the sight of the devanagari scrawl mutating my subscription update? Now don't get me wrong here. I love my nation, I even speak fluent Hindi, but reading devanagari gets a little difficult, more so on a computer screen.

English is as natural to urban India as it is to the British. Granted, we do not speak it with the same vocalics, we are still nearly native English speakers, at-least this generation is. Some of us even do a brilliant job of donning a fake American accent.

Our education is imparted in the queen's language. All work transacts in English. Well, except for in depraved government offices, where work transacts in bribes. Around us, from newspapers, advertising hoardings, movies, music, television; all the information we are bombarded with, is in English.

This facile adaptation of the language is not necessarily a bad thing. It allows us to be the prime destination for outsourcing. It allows us to settle in every corner of the planet. A testament to the power this dexterous adaptation is the fact that there is a Non Resident Indian, NRI for short, present 180 of the 183 countries in the world.

Now lets reason a bit here. Most computer systems sold in India, are sold with English versions of operating systems. Pirated versions at that, but I am not driving there. Therefore, most people with access to a computer in India, and who know how to use it must be adept in English. Then why on earth does the Google management expect me to jump in joy at being greeted with Hindi, I will never figure out.

Now lets get to the second aspect, regional divide. The number of people from Tamil Nadu, Bengal, Andhra Pradesh etc. pleased with this bit of enthusiastic localization from Google is a purely imaginary number. Even a cretain Mr. Raj wouldn't be too pleased either.

Something similar happened with Microsoft's MSDN a sometime ago. Tempers and angry emails flew and today the language sets to India-English by default. The question remains. Why do these companies simply refuse to understand, that today, we Indians are more English than fish 'n' chips?

So, will Google please keep me out of its campaign of fervent localization? I do not need to type my email in Hindi, and I most definitely don't need my Saturday morning and my subscription updates to be ruined searching desperately for the change language link.

And yeah, I do not even like Youtube India, its filled with perverted videos of scantly clad B-grade models. The first thing I do on Youtube is set my Geo-filter to 'World'.

Here is a screen-shot of the email:
Youtube Subscription Email in Hindi
While we are at it lets poke fun at Google's transliteration. Subscription become 'ग्राहकी' which, if my Hindi serves me correct, is more to do with customer than subscriber. If you are like me and are looking for a way to quickly change back to English, click on the very first link, the one that says 'सहायता केंद्र' and follow the English instructions.

Provider Hopping with Mobile Number Portability

If you are unhappy with the quality of service of your current mobile service provider and want to shift service providers without having to change your phone number, you will now be able to do so seamlessly. All a matter of submitting an application and waiting for a couple of days.

The TRAI on Wednesday announced a framework for 'mobile number portability' which will allow subscribers, who fulfill TRAI's basic requirements to switch service providers without changing numbers.

You will be eligible to shift providers only if you have been a subscriber of your mobile operator for more than 90 days, and have no outstanding payments due towards the operator. The basic steps for changing service providers are:

  • You need to submit an application to both, the provider you are moving from and the provider you are moving to.
  • Once the application is submitted, your provider will validate your application within 24 hours.
  • If you meet all the basic requirements, your application will be approved and your provider will be shifted within 36 hours. For subscribers in Kashmir, Assam and North East service areas, this deadline is set to 10 days.
  • Providers may charge a fee for this service.
  • If you change your mind, you may revoke your application within 24 hours. The fee however will not be refunded.

A complete list of requirements and guidelines can be found in section 10 through section 12 of the TRAI press regulation. A word of warning though, it is not an easy read. Download it from here: http://bit.ly/14wVpz

Human Spambots

What do you get when you connect a country, with one billion people, with lots of free time, to the internet? Human generated spam.

If you have ever visited any major Indian web publisher, chances are you have run into it already. Sify, MSN India, Rediff, IndiaTimes, you name it. Any exposed comment form, potentially becomes a candidate for parasitic unsolicited advertisement.


It's a sure bet in Vegas that any visitor to one of these Indian web portals will be greeted to at-least one such comment:

“Dear Friends, Are you interested to make Rs.20,000 to Rs.1,20,000 A Day ? This is not a get rich quick scheme. This is a legal opportunity to make good money."


Dear Friends, Are you interested to make Rs.20,000 to Rs.1,20,000 A Day ? This is not a get rich quick scheme. This is a legal opportunity to make good money.
Fig: Human Generated Spam.



I do not wish to imply that this enthusiasm towards making easy money is limited to the Indian subcontinent alone. But the ratio of parasitic advertisement to genuine user feedback is alarmingly high in web sites targeted at audiences in India and her neighbors.

Humans, with lots of free-time, access to the internet and a desire to make easy money, become highly efficient spambots. Bots, capable of defeating most anti-spam measures with biological precision and flooding sites with 'piggy-back' advertisements and referral links, in hope of improving their bank balance.


What's The Harm?

The internet by nature depends and thrives on users and their generated content. If the very content that is to drive these sites turns out to be unsolicited advertorials, the very foundation is shaken. That coupled with the fact that these spam comments considerably subtract from user experience. They serve as a major annoyance to genuine traffic, driving it away faster than you can say Web 2.0. No genuine users, no good content, no advertisement, no dough. It a simple equation really.

Advertisers pay for advertisement on sites because they want to get a message to the site's traffic, who they view as potential customers. Now, if a large percentage of traffic comprises of 'micro-advertisers' themselves, who do not really form 'customer candidates', advertisers would definitely not like to pay for it. Gradually, but surely, advertisers are going to start recognize this 'undesired' traffic factor in Indian sites, if they already haven't, They would reluctant towards advertising on India-centric sites at the same rates they pay internationally.

Thus, while the regular Indian 'comment-to-comment salesman' may seem harmless, comic, and a integral part of the Indian way of life, they damage the prospect of Indian internet and new age businesses.

And lastly it leaves us to wonder, does anyone ever make any money this way?

Meme: Yahoo's microblogging application

Mimicry is said to be the best form of flattery. But you cant be too pleased with it if it causes you a loss of revenue. Riding on twitter's phenomenal success and their own recent lack of it, Yahoo has launched its 'adaptation' of it and christened it, Meme.

Meme does manage to strike a chord. Its fresh, well designed and smooth. It has its own set of innovations and is based on a tried and tested idea. Right from the name to the interface, everything is dynamic, fun and slick. Those familiar with twitter (who isn't?) will be right at home with Meme. The underlying concept is the same. You post short messages which show up in your followers time-line and vice-versa.


Yahoo Meme
Fig: Screenshot of the interface.

The primary variation from twitter is that Meme allows you to post four types of content. Text, Photo, Video and Audio. Photos can be uploaded from your hard drive but video and audio need to be hosted else where. This is for obvious storage space constraint reasons. Yes, computer storage has become cheap over the years, but it is still not cheap enough for Yahoo to allow users to upload a gazillion terabytes of audio and video content.

I found the concept of audio posting to be unique and thought provoking. All around us, internet media nonchalantly ignores the most basic form of human communication, speech. While videos and images are streamed around, the simple human voice is not paid too much attention. It will be really nice if Yahoo allows users to upload audio directly from their hard drives, or perhaps, capture from their microphones.


Meme Audio post interface
Fig: Audio posting interface.

Meme faces unrelenting competition it faces from the Goliath of micro-blogging, Twitter. That, added to Yahoo's recent spate of failure with social media, Meme's future is questionable. Full marks to yahoo for trying though.

Meme is currently in closed Alpha. I was sent an invite by Pallab [Thanks!] and now I do have a few invites to send out in turn. If you would like one please leave a comment here or message me on twitter.

My Meme is: http://meme.yahoo.com/shaunak

How to Record a Screencast on Linux

A video recording of your screen or desktop can be greatly useful when trying to explain some steps to someone, or showing off your Minesweeper skills. All you need is a screen capture tool like Istanbul. It can be downloaded from: The Istanbul homepage or its Linuxappfinder listing. Istanbul should be also be available on the repositories of all major distros. To install Istanbul on Fedora, open the terminal and type:

su -c 'yum install istanbul -y'

Or you can use the package manager [System » Administration » Add/Remove Software]. Ubuntu users might want to refer to the community documentation.

Install Istanbul on Fedora using packagekit
Fig: The Package Manager

Once installed, run it. It shows up as a red dot in the task-bar. Right clicking it brings up the options and configuration menu, and left clicking it starts the recording. You can select an area or window to record, or record your whole screen. Some basic scaling options are also available.

Istanbul Taskbar Icon
Fig: Taskbar Icon

Instanbul Options Menu
Fig: Options Menu

To stop recording, click the icon again. The application will then prompt you to save the screencast. Istanbul currently saves to Ogg Theora format only. The saved video can be played back on VLC media player.

Save Screencast Dialog box
Fig: Save Options


Sharing the Screencast

Dailymotion is the only major video sharing site that supports direct Ogg Theora upload and sharing. Youtube and the others transcode it to propitiatory formats. But that should hardly matter, since the end result achieved either way. There is also a HTML < video > tag. Ogg Therora video is supported via the Video tag in Firefox and Opera. Here is a short sample screen cast in which I use Linear's SPICE simulator to demonstrate a series positive clipper circuit.

Reformat the Node Meta Line in Drupal

One of the problems with writing a Drupal theme from scratch is the hugely cryptic output that the system generates and renders. Too much information, crammed into too little space. Some themes available for download do not address this as well.

For example, the post meta information is outputted as “Submitted by username on Sat, 09/12/2009 – 19:12”. Although the statement is rich in information, it is not visually appealing or effective and looks cryptic. The line would look much better if it were reformatted to “By username - April 15, 2009”.

Although it makes minimal difference to the general layout, these small details eventually make a world of difference to the final feel of the theme. We can override parts of Drupal's themable output to achieve this. Specifically, the node meta or submitted information. Here is a quick how-to on changing the The "Submitted by X on Y" line, or the node meta in Drupal.

The node meta, is generated by the function theme_node_submitted() and is available and the $submitted variable. We can override this by placing a node-submitted.tpl.php file.

Navigate to your theme's directory and create a file called node-submitted.tpl.php. This file now works as an override for the theme_node_submitted() function. (Edit it if it already exists.)
Paste the following code into the file:

<?php
$op = "By ";
$op .= theme(username,$node);
$op .=" on the ";
$op .= format_date($node->created, $type = 'custom', $format = 'jS of F Y', $timezone = NULL, $langcode = NULL);
echo $op; ?>

This code declares a variable $op, which will be used to build up the output line. We initialize the variable with the string “By ”. The “.=” operator is used to append to the end of the string. The function theme(username, $node) is a part of the Drupal API. We use it here to extract the username of the author of the node from the $node variable.

The format_date() function is also supplied via the API. It is used to format a UNIX timestamp into a more human readable pattern. $node->created supplies the UNIX timestamp of the creation date of the post. The parameter $type can be set to “small”, “medium”, “large” or “custom”. When set to any of the first three, Drupal will format the time the chosen inbuilt format and the parameter $format can be left blank. Choosing custom will require us to supply a proper PHP date format via the $format variable. In the example above we have set a “1st January 2009” format. The remaining variables can be set to null for most proposes.

Play around with the $op variable and format_date function to get the output you desire.

We went from here:
Cryptic Node Meta screen-shot Drupal

To here:
Refined Node meta screenshot Drupal

Links:

Note: Another method would be creating a phptemplate_node_submitted() function in our template.php

Cost of Upgrading to Windows 7

The good news first, its cheaper than the previous versions of Windows and you can update from Windows XP to Win 7 without having to buy a full retail version. Computers running a version of Windows that predates Windows XP will have to purchase a full version of Windows 7. All other versions will be eligible for Microsoft's rebated 'upgrade' prices.

Windows 7 Pricing
• Windows 7 Home Premium: $120 [INR 5760] for upgrade; $200 [INR 9600] for full version
• Windows 7 Professional: $200 [INR 9600] for upgrade; $300 [INR 14,400] for full version
• Windows 7 Ultimate: $220 [INR 10560] for upgrade; $320 [INR 15360] for full version

Vista users will be able to upgrade 'in-place' to a corresponding or higher version of Win 7. For example Vista “Home Basic” and “Home Premium” users will be able to upgrade to Win 7 “Home premium” or “Ultimate”. Moving down a tier, or upgrade from Windows XP will however require a 'Custom Install'.

An 'in-place' upgrade will install Win7 over the current windows install without having to delete user data and installed software, while a 'Custom Install' is basically a format and clean install of windows.

Microsoft official Upgrade chart cropped
A cropped version of Microsoft's official upgrade chart.

Basically it boils down to choosing between Home Premium, Business or Ultimate. For most home users, home premium should make sense. The additional features that Business offers over Home are Windows XP Mode, Domain Join and Network Backup. Ultimate adds 'Bitlocker' and support for 35 languages to the mix.
Microsoft's feature-list can be found here:Compare Win 7 editions.

Windows 7 does run on netbooks. However, your milage may vary. Netbook users really might want to wait for the netbook specific build or choose from a flavor of Linux (perhaps?).

Links:

Implement a Wordpress like WYSIWYG text input interface for Drupal

Wordpress comes with a intuitive What You See is What You Get [WYSIWYG] input area for creating posts. This makes it really easy for users to format their posts, with little or no knowledge of HTML. Current versions of Drupal unfortunately lack such an arrangement. However, with the wealth of modules available, a responsive rich text editor is not hard to implement in Drupal.

The Wysiwyg module is best suited for the task. It allows a whole range of front-ends, namely : FCKeditor, jWYSIWYG, markItUp, NicEdit, openWYSIWYG, TinyMCE, WYMeditor, and the YUI editor. I like TinyMCE and FCKeditor from among among these.

The Editor interface:
TinyMCE interface

To get started, upload the module to Drupal's Modules folder and enable the module from the administration interface. To use the module, you will need to obtain the front-end libraries and upload them to your server.

For example consider the TinyMCE library. The TinyMCE download library is available at: http://tinymce.moxiecode.com/download.php Upload it to the sites/all/libraries/ folder. You may need to create this folder if it does not exist. Once it is uploaded Wysiwyg should automatically detect it. You can use the drop down menus in the administration section to set the front-end for a particular input type.
Drupal WYSIWYG configuration

Its important to note here that, if the Wysiwyg is assigned to the “Filtered HTML” input type, then it will not work correctly. Images, headings (the <h1>, <h2> tags) and tables will not appear in the final published post, although they are seen in the editor and preview. This is because, the “Filtered HTML” type is designed to strip out all tags that are not included in its safe list. By default its safe list includes:
<a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>

You can modify this list of allowed tags by going to the Administration>”Input Formats” section. Click on “configure” and then on “Configure” again. Here in the alowed HTML tags sections you can add other tags. For all practical purposes, you might want to enable these tags:
<p> <a> <em> <strong> <b> <i> <u> <strike> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <table> <tbody> <tr> <td> <th> <h1> <h2> <h3> <h4> <h5> <h6> <blockquote> <hr> <span> <br> <font> <sup> <sub> <div>
Once these tags have been allowed, Wysiwyg should function correctly.
Graphically, the configuration steps are:
Drupal Input Formats
WYSIWYG configuration

You will notice from the screen-shots, that I have created a “Part HTML” input type. The site which I have used to illustrated the example, is a public site with general users uploading the content. From the point of view of security and not breaking the layout, I have disabled header, horizontal rule, table, font, and div tags, in addition to the ones listed above. However the moderators have been allowed the option of using these restricted tags through the “filtered HTML” input. Such a set-up can be implemented through user-roles and permissions.

There are some alternative rich-text modules available for Drupal as well. But the Wysiwyg module seems to be the best maintained among them.

Here is a screen-shot of the TinyMCE editor in action:
Drupal TinyMCE in action

And yes, TinyMCE does come with Emoticons!
Drupal TinyMCE emoticons

Syndicate content