100 ways your iPod can up your IQ

Posted in Tech Tips / Tech Tricks / Tech Hacks by Gautam on Mar 5th, 2008

Creatures of habit that we are, we sometimes get into a gadget rut, forgetting that our iPods are probably capable of a lot more than what we do with them. So far, I’ve used mine for listening to music and podcasts, watching movies (which isn’t my idea of film appreciation), and receiving RSS feeds. But I didn’t know what I was missing until I stumbled across “100 Ways to Use Your iPod to Learn and Study Better” from the Online Education Database (OEDb).Many of the suggestions are free, while some have a low-cost fee. There’s not a loser in the bunch, and they come from some far-flung places on the Web.

Some are tutorials:

  • Learning Podcasting: If you want to create your own podcast to share your skills or expertise on a particular subject, read this in-depth introduction to podcasting from Wise-Women.org.
  • Podtender 3.0: This software program will teach you how to make all kinds of tasty cocktails for your next party.

Some are applications that make learning easier:

  • iGadget: Make your class notes, presentations, study guides and other materials iPod-friendly by using iGadget. You’ll be able to move documents and files back and forth between your iPod and your computer easily and securely.
  • YouTube to iPod Converter 2.6: This free converter lets you watch educational videos, TV clips and more on your iPod so that you can review for tests, contribute to class discussions or add them to a presentation.

Some are for lifelong learners:

  • iJourneys: Take walking tours in cities like Salzburg, Vienna, Amsterdam, Paris and ancient Rome by downloading iPod-compatible guides from this site.
  • Free Classic Audiobooks: Find books like Herman Melville’s Typee, Huckleberry Finn and Swiss Family Robinson in iPod-friendly formats here.

And some are meant to augment other studies:

Get through those 100 and you’ll find another 50 at kottke.org

Seven Principles of Software Development

The First Principle: The Reason It All Exists

A software system exists for one reason: to provide value to its users. All decisions should be made with this in mind. Before specifying a system requirement, before noting a piece of system functionality, before determining the hardware platforms or development processes, ask yourself questions such as: “Does this add real VALUE to the system?” If the answer is “no”, don’t do it. All other principles support this one.

The Second Principle: Keep It Simple

Software design is not a haphazard process. There are many factors to consider in any design effort. All design should be as simple as possible, but no simpler. This facilitates having a more easily understood, and easily maintained system. This is not to say that features, even internal features, should be discarded in the name of simplicity. Indeed, the more elegant designs are usually the more simple ones. Simple also does not mean “quick and dirty.” In fact, it often takes a lot of thought and work over multiple iterations to simplify. The payoff is software that is more maintainable and less error-prone.

The Third Principle: Maintain the Vision

A clear vision is essential to the success of a software project. Without one, a project almost unfailingly ends up being “of two [or more] minds” about itself. Without conceptual integrity, a system threatens to become a patchwork of incompatible designs, held together by the wrong kind of screws. As Brooks states:

Conceptual integrity is the most important consideration in system design.

Having a clean internal structure is essential to constructing a system that is understandable, can be extended and reorganized, and is maintainable and testable.

It is only through having a clear sense of systems architecture that it becomes possible to discover common abstractions and mechanisms. Exploiting this commonality ultimately leads to systems that are simpler, and therefore smaller and more reliable.

Compromising the architectural vision of a software system weakens and will eventually break even the most well designed systems. Having an empowered Architect who can hold the vision and enforce compliance helps ensure a very successful software project.

The Fourth Principle: What You Produce, Others Will Consume

Seldom is an industrial-strength software system constructed and used in a vacuum. In some way or other, someone else will use, maintain, document, or otherwise depend on being able to understand your system. So, always specify, design, and implement knowing someone else will have to understand what you are doing. The audience for any product of software development is potentially large. Specify with an eye to the users. Design, keeping the implementers in mind. Code with concern for those that must maintain and extend the system. Someone may have to debug the code you write, and that makes them a user of your code. Making their job easier adds value to the system.

The Fifth Principle: Be Open to the Future

A system with a long lifetime has more value. In today’s computing environments, where specifications change on a moment’s notice and hardware platforms are obsolete when just a few months old, software lifetimes are typically measured in months instead of years. However, true “industrial-strength” software systems must endure far longer. To do this successfully, these systems must be ready to adapt to these and other changes. Systems that do this successfully are those that have been designed this way from the start. Never design yourself into a corner. Always ask “what if “, and prepare for all possible answers by creating systems that solve the general problem, not just the specific one. This could very possibly lead to the reuse of an entire system.

The Sixth Principle: Plan Ahead for Reuse

Reuse saves time and effort. Achieving a high level of reuse is arguably the hardest goal to accomplish in developing a software system. The reuse of code and designs has been proclaimed as a major benefit of using object-oriented technologies. However, the return on this investment is not automatic. To leverage the reuse possibilities that OO programming provides requires forethought and planning. There are many techniques to realize reuse at every level of the system development process. Those at the detailed design and code level are well known and documented. New literature is addressing the reuse of design in the form of software patterns. However, this is just part of the battle. Communicating opportunities for reuse to others in the organization is paramount. How can you reuse something that you don’t know exists? Planning ahead for reuse reduces the cost and increases the value of both the reusable components and the systems into which they are incorporated.

The Seventh Principle: Think!

This last Principle is probably the most overlooked. Placing clear, complete thought before action almost always produces better results. When you think about something, you are more likely to do it right. You also gain knowledge about how to do it right again. If you do think about something and still do it wrong, it becomes valuable experience. A side effect of thinking is learning to recognize when you don t know something, at which point you can research the answer. When clear thought has gone into a system, value comes out. Applying the first six Principles requires intense thought, for which the potential rewards are enormous.

Remote control software – The 6 security-pitfalls you should avoid

Posted in Tech Tips / Tech Tricks / Tech Hacks by Gautam on Dec 15th, 2007

There are numerous ways for an individual to gain access to your confidential information and business data on your computer when you employ remote control software. In spite of the risks it is not necessarily a risky business to invest and implement remote control software. If you make sure that your provider can supply a satisfactory solution to the presented 6 risk areas you will be able to enjoy all the advantages of remote control software without hesitation.

A remote control system consists of two primary agents: the host and the guest. You are the host and you should have completely control over who you invite. The best overall method to avoid unwelcome guests is to make sure that your software has the top of the line encryption and a strong overall focus on the pending security issues.

We have pinned the security pitfalls out in six risk areas and we recommend that you consider all six risk areas when you research your possible purchase of remote control software. The six areas are:

1. Unauthorized access across the wire. Popularly known as “high jacking”. We have identified the following key parameters to avoid high jacking:
• MAC/IP address check
• Closed user group
• Authentication
• Callback
• User controlled access
• Authorization

2. Eavesdropping and alteration. Protect the traffic between guest and host modules against eavesdropping and unauthorized alteration of data. Make sure your system has strong features in Encryption (only you and your guest should be able to read the information transmitted). Integrity and message authentication (verify the encrypted data). Key exchange (exchange the right encryption keys for the data transmissions).

3. Security context. It is imperative that the Host components run in proper security contexts on the operating system.

4. Unauthorized change of the Host. Make sure that all maintenance is only accessed through a password and thus prevent unauthorized change of the Host configuration.

5. Adequate range of alerts and security options. An example: The Host must be able to disconnect the Guest user or even restart Windows after reception of a pre-defined number of invalid logon attempts in order to reduce the number of invalid attempts per hour. And you would want a neat range of alert types when someone is trying to access your computer.

6. Adequate event logging. Your system should offer extensive event logging to document a possible attack. All session activity and log on attempts should be logged, preferably in a central database

It is absolutely essential in remote control software that you can ensure that access to data is protected from unauthorized users. Hackers can and will use foot printing, such as port scans, ping sweeps, and NetBIOS enumeration that can be used to glean valuable system-level information to help prepare for more significant attacks. Finally, hackers can attempt to hijack a session, that is, they can try to takeover one end of an already established session.

Your remote control program should contain security features that counteract the methods described to hack into a computer. If you engage with a supplier who is covered in the six risk areas then you’re on your way to improve business efficiency, help system administrators and reduce cost of IT and enjoy many more inherent features with remote control software.

How To Prevent Accidental Clicks On Your Own Google Ads

Posted in Blogging, Tech Tips / Tech Tricks / Tech Hacks by Gautam on Nov 10th, 2007

Most adsense publishers fear that they might click on their own ads, which will result in termination of their contract with Google. Accidental clicks ere a real problem for me too initially, until I found out some simple, cool tricks, which made my life more easier.

To start with, Michael Hampton from Homeland Stupidity has developed a script, which will prevent publishers from accidentally clicking on their own ads. If you decide to go this route, you need to have Firefox with Greasemonkey extension installed. Once you have Firefox and Greasemonky insalled, you’ll have to download the script and install it.

Once done with the installation of the script, visit your website which has AdSense ads in it. A popup box will bounce up asking for your AdSense Publishers Code (You can find your publisher code at the bottom of ‘My Account’ in your AdSense Account’s Dashboard, which looks something like pub-xxxxxxxxxxxxxxxx).

If this sounds too complicated then you can also block Adsense ads using the Hosts file. Open “lmhosts” file with any text editor and add the loopback address, as shown below:

127.0.0.1 localhost

You can find the “HOSTs” file in is located in c:\\windows\\system32\\drivers in Windows NT and XP. In Windows 9x, the HOSTS file is located in c:\\windows.

If you still feel you clicked on your own ad by mistake you can report it to Google at this page.

How To Run Dual Monitors For Laptops.

Posted in Tech Tips / Tech Tricks / Tech Hacks by Gautam on Oct 31st, 2007

Laptop these days are dead cheap and almost every other guy owns one. It’s almost replacing the desktops in all respects and offers more value than a laptop. It’s as powerful and efficient as a desktop and offers you more which desktops can’t.

If you own a desktop, by now you probably would be using two monitors instead of one, which also happens to increase your productivity. For more info read : Multiple Monitors Increase Productivity. Now those who own a laptop too can use a second monitor in conjunction with their laptops :).

By setting up two monitors you can typically have one application running on the laptop screen and any other application running on the additional second monitor. In addition to the current setup, you will need a few other hardware like dual video card, dual processing card to have the dual monitor feature up and running on your laptop. As I’ve already mentioned above, have dual/multiple monitors definitely increases your productivity, but it’s much harder to get this set up for a laptop when compared to a desktop.

Lets look into the basic essentials to get started:

Find what most laptops have, a VGA port or depending on your laptop it might also be a DYI port, plugin the external monitor to which ever port your laptop has and try to configure the Display Control panel to simultaneously handle both the monitors, side by side. (Just position the boxes labeled 1 and 2 and click “Extend my Windows desktop onto this monitor.” (See screenshot for detail.) That’s all it takes… It is this simple, provided your laptop’s Video Graphic Acess card supports multiple monitors.
Dual Monitor For Laptops

But how will you know if your Graphics Card is geared up to handle such a situation? Technically speaking it should be able to as the Graphic Card Manufacturers do their home work and research and know the dual monitors are in much need. If you have any of the most recent ATI and Nvidia graphics cards,  or even the Intel GMA 945G integrated graphics chip you can be assured that your Graphic Cards support Double display. If you have ATI or Nvidia graphics on your laptop, download the latest drivers from either the appropriate website or from your laptop manufacturer’s drivers page. Occasionally you can do a Windows Update for new drivers from Microsoft, but I personally am not a bit fan of Microsoft drivers and I prefer the drivers provided by the manufacturers… who else can know the product better :).

Once you have installed the new driver, follow the steps mentioned above and you should be able to get the dual monitors running. If you still fail to get the two displays to show up, don’t be disheartened as it just means that your PC cannot support dual display. But that’s not the end of the world, there are other ways to get this working.

Every laptop will have PC card slots. There are a number of VGA adapter PC cards available in the market. You can buy one of the best and fix it onto your laptop. These VGA adapters will work as the interface connectors for the second monitor to go up with your laptop. They can be a bit pricey, some cards can even support up to 3 or 4 monitors at the same time, but if you are a tech freak who wants to try out these cool stuff with your PC, go ahead don’t look at the price, just get them and get your lappie fixed.

Other alternatives are USB adapters but, they are no match to the VGA adapters, so I personally will not advice you to go with USB adapters, but if money is the constraint, then you should compromise with the quality and go with USB adapters.

Keep Your Online Instant Messaging Private By Encrypting It

Instant messaging encryption, can be a serious problem if you have no idea what you are dealing with. It’s worse if you do not have the slightest idea that your messages over IM are being intercepted. Any common man, who has an idea how dangerous it can be if the instant messages are intercepted, will definitely be worried, but what can a commoner do as most of them won’t be very experienced with computers? Well this post is targeted to the mass who have little or no knowledge/experience with computers. In this article, I’ll try to guard you’ll from all those packet sniffers who can be sitting on your system and reading everything you type on your Instant Messengers.

If you think your messages are being intercepted and worried then don’t worry you aren’t paranoid. This can be quite common in your workplaces also, where the employer wishes to keeps track of what’s happening within the organization. And if you are on Wi-Fi signal anywhere in public wireless hotspot or even in your house your Instant Messages can be intercepted.

Firstly, even before fixing this issue, you should never discuss any sensitive material/sensitive information like your bank details or credit card details via IM. You definitely can, provided you have encrypted your IM traffic, if not better consider IM encryption to be your top priority task.

Technology, and it’s rapid growth ensures that you have encryption readily available for almost all, if not most IM platforms, that are available either commercially or freely in the market. If you use Yahoo Instant Messenger or MSN Live Messenger,  then Secway is a good option. For those who use AIM, Aim-Encrypt is a good solution.
Though these are free, there is a small catch, the encryption software should be present on both/all the systems that are involved in the IM session. If the encryption software is not installed and activated on both/all the machines involved in the chat, then the encrypt channel won’t be activated.

These software gives you the encryption necessary, but you should know that these software won’t give you any kind of protection against the spyware or malware applications like “keylogger” if any are present directly on your computer. The above mentioned software gives you protection against the data that are transfered through channels and not that is typed itself.

So you should know about spyware and malware before you worry about encryption. I’ll talk about this in detail sometime soon.

Plain Text Emails Vs HTML-Rendered Emails.. Which One Is Better?

These days we get a lot of emails that are HTML rendered, which allows the sender to color the fonts, style the text as per their will and also allows them to embed images. This makes the emails very attractive and frankly, it does make it more easier to read the mail, after all that’s what HTML was built for, (Hyper Text Mark-up Language ;) ).

But had you ever wondered that behind all these glitz and glamor of the colored fonts, images and styled texts, a security threat always lurks around… unbelievable right ? Read on to figure how spammers try to make use of this glitz and glitter to take over your computer to make it their host…

It starts with all those HTML rendered emails hiding the specially formed links or scripts, hidden anchor words or image, which track your every action performed within the mail.

Now you might be wondering how one profits from figuring out if you read the mail or not, but there are commercial companies that make these software to track email, providing a means for the sender to know whether an email was read, when it was read, and even follow its tracks if it is forwarded to others. Well this software may not be famous amongst every regular user, but for  spammers are trying to figure whether an email address found randomly on net is valid, or whether the recipient has a tendency to open spam, sounds like a perfect gift :). Once they study the behavior of the user, they send more such similar mails and make their intentions quite obvious, which is to SPAM!Plain text email does not support embedded images. Plain text email squashes web bugs.

Some of the other common problems a user might face because of these HTML-rendered mails are that these mails can cause the email attachments to open automatically, or even forcefully download files on to the system. One such famous example is that Winevar virus, contained active content in its email that first modified the System Registry to specify .CEO files as executable, and then automatically opened the attached - and infected - .CEO file it had smuggled past the scanners. This was done in order to bypass content filters that prohibited EXE files in email.
Plain text email does not support active content. Plain text email prevents email attachments from opening automatically.

And the most common of all, phishing scams. Do a Google search for “paypal scams” and you’ll find tons of results and carefully investigating you’ll learn that these scammy mails are a hidden format of these HTML-rendered emails, where in there are cases that folks have given information about their bank details or credit card details!! Scary, isn’t it ?

Plain text email provides a true WYSIWYG (What You See Is What You Get) experience. In plain text email, there are no hidden commands - the link displayed is the actual link.

So all in all, if you get HTML rendered emails, then be cautious enough not to fall prey to all the scammers out there.

Zoho Writer - Does It Meet All Your Online Document Processing Needs ?

In my previous post we saw Google Docs and Google Spread sheets, today I wanted to review another online word processor or a what you can call an online ‘document’er : Zoho Writer. If you want to use Zoho as a regular user, then the features offered by Zoho is more than what you can ask for. It has a broad set of of editing features. But if you want to use it as a power user, then these features may not be enough, so we can say that Zoho is a mixed bag

If you have your files in the form of Microsoft Word documents, or OpenOffice files or even some snippets from  web, you can easily import them into Zoho. This along with the ability to view any of these documents in tabs (just like in Mozilla Firefox), is a neat touch to the look and feel of Zoho.

But once you start using it, you’ll notice that all the buttons in Zoho are designed very much like Microsoft Word’s, but the functionality handled by them does not equate to the same as that of Word. This, for me was a bit confusing as I’m used to Word and then was trying Zoho. May be for those who try Zoho Microsoft word, it might make sense, but I really doubt if we’ll find any soul who’s never come across Microsoft word ;).

Like all other online document processors, so called Zoho’s competitors (Google Spread sheets is definitely one), Zoho allows multiple people working on the same page at once and allows user to share the documents. Other users can read, edit or create new documents in your network.

One strong feature, which keeps Zoho different from most of its competitors is the fact that we can export the created document into number of formats. On the top of my list is I could export the document I created to PDF format. We can also achieve cross-platform support without looking for any other expensive software. Some of the other formats we can export the document as Word, HTML, RTF file or OpenOffice.

Some of the drawbacks of the Zoho Writer are:

1> The layout isn’t as appealing as some of its competitors. Its document menu isn’t intuitive. You’ll probably have to do some searching to find what you need.

2> Zoho’s failed miserably as they try to mimic Microsoft Word but most of the functionalities are not same.

Also, help features are somewhat lacking. You’ll have to learn how to use the program through experimenting, as a help menu is non-existent.

But one feature many will appreciate is the ability to customize menus. You can hide the buttons that you don’t use, leaving more room for working on your document!

Description

  • File Support: Word files, HTML, XML, plain text, RTF, and Word templates. Graphics also supported.
  • File Support (saving): Saves as Word files, HTML, RTF, PDF, and plain text.
  • Blogs: You can publish documents to your blog, although only limited blog types are supported.
  • Help: Support needs improvement. Instead of consulting a help menu, you’ll have to experiment.

Pros

  • Free online word processing software
  • Support for multiple document types
  • Export documents to PDF
  • Tabbed viewing of documents
  • Customizable

Cons

  • Limited help
  • Confusing buttons

What is Google Spreadsheets and Getting Started With Google SpreadSheets.

Recently,  I spoke about Google Docs, now it’s time to have a look at anothe Big G’s product - Google Spreadsheets.

Though Google docs and Google Spreadsheets are available under same login, they are two different services in reality, which cannot be merged or as people often misunderstand you cannot embed Google spreadsheets into Google docs.

If people are working in group setting and need to deal with spreadsheets, then Google Spreadsheets has the potential to be extremely useful, especially if the group is spread in different locations geographically.

You can access Google Spreadsheets at docs.google.com , the same URL where Google docs can be found :).

Import and Export

To import into and/or export from Excel or any other standard .xls or .csv file, one needs to be logged into the system. If you are not logged in, you’ll be prompted to create an user id and login, or if you have a gmail account, you can use the same login credentials to login and start using Google Spreadsheets. With Google spreadsheets you can create or edit a spreadsheet on the web, and download it as an .xls or .csv file. All this can be done online, from any part of the world and any time of the day.

Share the Wealth

This is the actual strength of Google Spreadsheets and this is where it is very useful. You can invite other users by email to either view or edit your spreadsheet. This means you could share a spreadsheet with coworkers in your office to get their input on a test project. You could share a spreadsheet with a classroom and let the students input data. You could share the spreadsheet with yourself, so you can view and edit it across more than one computer, from more than one place.

Anyone who wishes to edit a spreadsheet must register for a Google account or should already have an account with Google. For security purposes Google Spreadsheets doesn’t let you change your email address, which ensures that there are no possibilities that someone ending up having to create two Google accounts and tampering the data without the original owners consent.

Multiple Users, All at Once

I personally have used this and tested with a couple of folks working simultaneously, editing or creating spreadsheets. Google Spreadsheet had no problem letting many people edit cells. However, if two people were editing exactly the same cell at the same time, whoever saved their changes last would overwrite the cell. This is one of the catch around Google spreadsheets, which means you’d need to keep this in mind as you work.

Collaborate and Discuss

Google Spreadsheets offers a handy built-in chat tool on the right-hand side of the screen, so you can discuss changes with anyone else who is accessing that spreadsheet at the moment. This helps mitigate the impact of the simultaneous cell editing issue.

Charts

You can create charts from Google Spreadsheets data. You can pick from a few basic types of charts, such as pie, bar, and scatter. You have only basic control over the chart appearance. You can’t choose custom colors for each area. The charts feature is also very slow on the computers I’ve tested.

Once you’ve created a chart, it is embedded within your spreadsheet. You can edit the chart, and you can save the chart itself as a png image for importing into other programs.
Upload a New Version
Google Spreadsheets seems to be geared towards sharing a spreadsheet, but maintaining a backup copy on the desktop. This is a wise course of action with experimental new software, anyway, but Google offers a handy Upload new version option on the file menu to facilitate doing just that. Spreadsheets also now supports versions, so it isn’t as risky to simply leave a document on the Web for editing and publishing.

Limitations

Still being in experimental stages it is but quite obvious that Google Spreadsheets has a lot more to improve and incorporate into the system.

Some of must have like copy and paste a spreadsheet from Google into Excel, is not available as a full feature yet, although we can export and import some spreadsheets the copy function is what I felt was more handy. This may be cause of formatting problems users might face as they tend to be on different OS’s, but Big G can always come up with algorithms to break this through. Another draw back is that there’s no way to directly embed content from a spreadsheet into a Google Docs document.

But best of all it’s free, so we, the users cannot really demand a lot and have to sit and wait for Google to come up with better versions as time goes by. I’m sure they definitely will come up with a lot of new features in the near future.

Google Spreadsheets is relative new, but it’s a useful tool for sharing small spreadsheets, and it has promise of getting even better.

You can access Google spread sheets at : http://docs.google.com/

What is Google Docs And How To Use It?

If you are a member of a designated group and all the members want to use an online word processor, then you should have a look at Google Docs. It is an online word processor that is accessible by members of a particular designated group. Using Google Docs, you can group members into specific groups and set up projects for them so that each member of the ’specific group’ gets access to the paper which is created for their group. They can write and or edit the paper from anywhere in the world, all the need is internet connection. This gives all the group members the freedom to be where ever they want, do what they want and also at the same time work or keep track of what’s happening on the project with ease.

If you have used Microsoft word (desktop version), you’ll notice that Google Docs has many similar features as Microsoft Word. Some of the common features are you can select a font, center your title, create a title page, check your spelling, and write a paper exceeding 100 pages of text!

You’ll also be able to trace any changes made to your paper. The editing page shows you what changes have been made and it tells you who made the changes. This cuts down on the funny business!

Here’s how to get started:

1. Go to Google Docs and set up an account.
You can use any email address that you already have; you don’t have to set up a Gmail account.

2. When you sign in to Google Docs with your ID, you will arrive at the Welcome Page.

3. Look below the “Google Docs & Spreadsheets” log to find the New Document link and select it. This link takes you to the word processor. You can either begin writing a paper or you can choose to add group members from here.