Friday, May 21, 2010

Motivate team to work on legacy products...

In every company, we have situations where some legacy products. Legacy can be in sense of programming language OR platform OR UI OR features OR anything else you think 'legacy'! But still we need to work on it because we have clients using it and we need to provide maintainability/support for them.


Only cash can not make the developers happy. You should provide them good environment so that they can pay attention to their work.

Another thing is no technology is bad OR legacy OR older. Thing is if your company needs to maintain it, then you must keep it going. But keep all standards for designing, coding, testing, code review, interactive sessions etc...

Also you can motivate them to convert your legacy code to some new platform for better performance and maintainability. Every company does that even once. Why?I think, because they want to compete with other market products.

Also provide them some cool sessions for other technologies which are used in your company but they don't know or use. Let them be deeply in the things, give them proper time and support and be problem solving. Main goal is to deliver on time with less rework and bugs.

Provide some rewards towards their work and keep them happy about their work. After all work is what we do together. If the team feels right, they will do right and develop right.

Until your product works fine without any problem and client is happy then you can think to add new feature to it. Today technology is better and we can integrate different applications without any programming language bar. You can do new development in new-age languages and integrate them with your product, which will keep your product ready for today's competition.

Wednesday, July 2, 2008

Best jabber clients for Windows...


Hi friends, many of you will think that i am addicted to IMing.Yeah,may be but i like to discuss about different IMs.It is one way through which the world is connected.


Mostly we all use different jabber clients for different purposes.Some having it for personal private office network to avoid heavy bandwidth usage,some uses gmail and other jabber based services.

There are many jabber clients listed on jabber.org, but recently they have changed the way to represent it.Now they allows users to rate their favorite client which are arranged on OS bases.


I am talking about windows based IMs.And no others would be of interest because of less nice options for other OS. Say, for Linux pidgin and for MAC adium is there.

On windows, i have used pidgin,Gajim,Psi,spark and Tkabber. And as per me, first three are better.Currently i am using Gajim.

Check the list in attached image.You can see how Gajim got ahead of Spark.May be because spark is heavy java based thing which just sits in your memory eating lots of memory and create every other program you run!

But my surprise is Psi.It is on top!And yeah it is not so good as compared to Gajim.But though many people have rated it better.Yeah,everyone has his choice.Psi 0.12 RC release is there,but its not having such great improvements to rate 5 star!And i am waiting since a long time for newer and better version of Gajim,but i think its development is on shelf!But still its usable, with older GTK+.Newer GTK+ is creating problems.

Lets see where this competition goes.Its based on if any new IMs will be added or these will be improved.And what new thing will be introduced?Like video/Audio chat,Phone calling or something new we can't thing right now? :)

share your idea what new can be introduces in jabber clients which you want or you think can be of our benefit.

For more on jabber, jabber.org

Wednesday, June 11, 2008

Don't use safari on windows: Research says

We all know about safari on windows since the last release of it. Many articles has been written on that and apple has done patches also. But still something remains :). Read this, and you will surely not use safari on windows.

A researcher has created a proof-of-concept site that graphically demonstrates the risk Windows users face when using Apple's Safari browser. Microsoft's security team already warned that a "blended threat" was so serious that Windows users should curtail their use of Safari until a security patch is available. Blog post from researcher Liu Die Yu makes it clear the warning was by no means overstated.

Clicking on this link with Safari using default settings automatically downloads a booby-trapped file onto a Windows user's desktop with no prompting. The next time the user opens Internet Explorer, the force-fed file automatically causes the notepad.exe application to launch and open a non-existent file. Of course, miscreants could choose far more nefarious code.

When informed that its browser downloads files with no prompting, Apple said it may get around to changing this behavior at some point. In other words, this is no big deal from a security perspective, so let's all move on.

The Register

Thursday, June 5, 2008

Firefox tweaking for Broadband

By default, Firefox is optimized for dial up connection. You can change the browser settings so that it can be used to browse with DSL or cable or other broadband links. In order to change the settings, first you need to edit config file. Type about:config in the address bar and press enter. Then enter network.http in the filter field and enter the following changes.


  1. Double click on ‘network.http.pipelining’ and set the value to true.
  2. Double click on 'network.http.pipelining.maxrequests’ and in the dialog box enter a higher value than the default value 4. 15 is an ideal value.
  3. Double click on ‘network.http.proxy.pipelining’ and set the value to true.
  4. Right click on the page and select New->Integer. Enter nglayout.initialpaint.delay and then click ok. Set the integer value of this to 0 and click ok.

Wednesday, May 21, 2008

Basic Search Engine Optimization

Well many of my friends both personal and professional are now building up blogs and websites and one thing they complain about is their website is not indexed. Why? Here's something that may be useful to them. Its not overnight work but takes time.

Search engines are the single best source of free website traffic. But getting to the top of the rankings takes alot of time and effort. Starting off on the right foot is important to be successful.
The two single most important factor of basic search engine optimization (SEO) is your TITLE and META Description tags. Now some people will argue that building backlinks and blogging are more important and I do agree with them, but I feel those are more advanced stages of SEO. Your website title tag, which defines the content displayed in a browser's address bar when displaying a Web page, is one of the most important elements in the search engine optimization process for a Web page. Well-composed Title tags should contain clear, concise, coherent, and keyword-rich content. Because space for your title tag is limited do not waste that prime real estate by including your domain name or name of your business. Your Meta Description tag determines what some search engines will show on their search results pages when listing your page. Consequently, the tags content should be descriptive, enticing and brief. Because search engines do scan this tag for keyword usage, Meta Description tags should include all of the keywords for which the Web page is being optimized. However, the main purpose of this tag is to be a description of what content is on your entire web page. By having a precise Meta Description tag can ensure that your website is being seen by the correct audience.

Perfecting the combo or Title and Meta description tags can take some time and research, but it is well worth it. Free target website traffic from search engines starts with basic Search Engine Optimization.

Tuesday, May 20, 2008

Javalibs: Controlling Module Dependencies in Eclipse

Jay has written a nice article on Module dependency for J2EE module in Eclipse on Javalib, our java ground.

J2EE Module Dependencies is a critical issue in an enterprise application. You need your one web module to access some resources while prohibiting others. Similar is the case with EJB modules.

The full article shows images of eclipse for configuration.

I am not writing it whole here, so check it on javalibs.

Monday, May 19, 2008

Writing XML - learn some good habits.

You love XML and the flexibility and interoperability that it offers, but you can do some things to make your interaction with XML and the tools that you use to work with it significantly easier. Picking up some basic good habits when you work with XML will ensure that you get the most efficient use out of your XML documentations and applications.

Here are the top 10 good XML habits to adopt:

1. Define your XML and encoding

2. Use a DTD or XSD

3. Remember to validate

4. Validation isn't always the answer

5. XML structure versus attributes

6. Use XPath to find information
7. You don't always need a parser to extract information
8. When to use SAX over DOM parsing

9. When to DOM over SAX parsing

10. Use a good XML editor


For more detail see
here

Thursday, May 15, 2008

Strong password - Here's how you do it !

It is very a simple question how do you create a strong password to improve security and the answer is very simple. Before choosing a password, you should always remember these terms.

Passwords should
* Never use a common word that you might find in a dictionary.
* Never use a numeric series, either forwards or backwards, i.e., 123456 or 654321.
* Never use a string of all identical letters or numbers, i.e., AAAAAA or 111111.
* Never use a common keyboard shortcut, i.e., ASDFG or QWERTY.
* Never use a word(s) that can be easily associated with you, such as the name of your child, pet, spouse and so on.
* Never use an alphabetic series either forwards or backwards, i.e., ABCDEF or FEDCBA.

Passwords should/must have following terms
* Always combined your password including numbers, characters, special characters i.e @#$%^&*.
* Should have minimum length of 12 character.
* Should be changed in every 30 to 45 day.

The above mentioned points should always be remembered while choosing your password.

For gods sake do not use the same password for all your logins..

Using proxies (the basics for noobs)

1. Introduction:

This is intended as a summary of proxy basics. A reminder as to why its required. Anonymity is needed because there are people who surf the net looking for other people's ip address or url name so they can then publicly malign them by finding their "true" identity and telling the world this person eats spam or likes to watch the grass grow, or in the case of an Advertising Corporation which will sell your identity to some retailer like WalMart. So some basic precautions that you need to take to avoid this are: using a proxy, disabling all cookie options, java, active-x, and all scripting options in your internet browser, print and file sharing in NetBios, and also installing a firewall. The following text attempts to be a summary of those basic methods by which you can anonymously communicate with other like minded persons.

2. Just a number? :
Before you can understand how best to protect your privacy, it's helpful to know just what information you're generating when you connect to the net, and how easy this is to trace.

At the very lowest level, when you connect to a website it will receive a record of your IP address - the unique number that indicates which computer you're using. If you use an ISP like Demon, that gives you a fixed address, that's enough to pinpoint your account. With a dynamic address, it'll pinpoint the modem line you connected to. Finding out which customer was using that line means matching up a time with the records from the computers that handle your login. On a busy system, that could mean finding one from tens of thousands of entries, but it can be done. This is how the police were able to track the source of the Love Bug virus to a dialup account used by a group of students in the Philippines. Some systems, such as AOL, might share an IP address between more than one user. The same is true of some corporate gateways to the net; but even so, there will usually be a way to work back to a specific system, even if it involves trawling through pages of log files. One way of hiding these sites is to go via a proxy, making the address that appears in the web server's logs that of the proxy server. Of course, all that's really doing is adding another link to the chain, since the proxy server will have a record of what you're asking it to do. But with the Proxy Server resident in a foreign country this is time consuming, probably not practicable and faced with proxy chaining, most will just give up. This is also what makes proxy servers a useful tool for those who want to see what you're up to. Even though you may not think your web requests are going through one, many internet service providers (ISPs) use so-called 'forced proxying'. This means that all web requests are routed via a transparent proxy. You don't need to change any settings in your browser, but the effect is the same. For an organization or country that wants to control and monitor what people are seeing on the web, it's ideal.

Thoughts regarding the use of system logs as evidence: Log files make crap evidence, for a start they're easily forged, and you're reliant upon computer generated evidence. What jury will believe a computer over a human? At best log files are supporting evidence, in most cases they only show logins, connections and other impersonal evidence, no log can say BEYOND REASONABLE DOUBT that someone did something, they only say this machine number connected at this time, it don't say anything about the identity of the person. If in doubt, deny everything, after all its the job of the prosecution to prove you are guilty of some misdemeanor.

3. What is a proxy server:-
A Proxy Server is a firewall and cache server. It can allow an entire network of computers to access the internet(http or ftp) with a single IP. it can act as a kind of filter for that network. Let's say you have 3 computers in some small network in japan going through a proxy server, schematically it looks like this.

1. ------->|
2. ------->|Proxy Server ----> The Web Site
3. ------->|

If you are at home with internet access through your ISP, this is what your connection looks like :
(PC)------>Your ISP ----> The Web Site
If the proxy server in the network above allows other users to use it we can do this :
(PC)------->Your ISP ---->Proxy Server ----> The Web Site
From the above diagram we can go through the proxy server and hide our real ip address or url name! The Web Site will only see the ip address or url name of the proxy server and NOT that of your isp, thereby making you anonymous!

4. Why Use One:-

* To act as a security firewall or ip filter.
* To reduce the network load by caching commonly requested pages.
* To translate the material into another language.
* To improve access speed for users, achieved by caching.

Our interest lies in the first option i.e. becoming anonymous and Surfing Safe It isn't guaranteed that simply by using a proxy you will be anonymous. Some proxy servers will forward your real ip at random intervals others do it by default, others do by request from the web site that you visit. This makes it necessary to test your proxy for anonymous status at a Proxy Checking site. These sites will allow you to test the information or headers that are passed from the proxy server to the web site, careful inspection of these will allow you to decide just how anonymous you really are. An example header is:
HTTP_USER_AGENT: IE5 WIN2000which tells the site your browser and operating system type. So once you enter a website, and click any one of the files on the webserver, the website owners can find out these items of information about you, and much more:

1. Your IP Address.
2. Your hostname.
3. Your continent.
4. Your country.
5. Your city.
6. Your web browser.
7. Your Operating System.
8. Your screen resolution.
9. Your screen colors.
10. The previous URL you visited.
11. Your ISP.

5. Proxy Types:-
The two most commonly used proxy types are http and socks each uses the common ports 8080, 1080 respectively. http proxies are for use with your browser. Socks which is a valid proxy alternative allows you sockisfy http, ftp, telnet, nntp, and common chat protocols similar to icq, hotline.

For more information visit Proxy Server

Servicemix PollingComponentSupport - stuck if lower period and higher threadPoolSize

Again i got one issue with servicemix Poller components.

We have two FilePoller components here and we kept the period to 10 minutes. Which means the instance of FilePoller will run at every 10 minutes. Now say if I have two instances, each run at 10 minutes, and 5 minutes gap between them. So it means after every five minutes, files will be picked by one of them. And the WorkManager, which is given to FilePoller as property, has threadPoolSize of 30.

All was working fine with this configuration.30 threads in pool, every five minutes any of two pullers will pick files. But now we have to change it. When we changed the period from 10 minutes to 1 minute, we got strange errors. Yes even you won't believe it. While testing concurrency we got, FileNotFound exception even though the file exists there, and many other concurrency issues. We looked into the logs and found that sometimes the load goes only on one server and the other is always idle doing nothing. Because when it comes, the first one is doing task.

Full article @ javalibs

Wednesday, May 14, 2008

10 Alternatives for Microsoft Word on Windows

How many times have you felt that is MS Word the only word processor that I have for Windows. Well can't blame you because most of the times me too have felt the same. So i browsed and browsed and browsed till i can browse no more and have come up with list of 10 alternative. I am sure you will love it.

  1. OpenOffice.org Writer: This is arguably the most commonly used alternative to Microsoft Word. OpenOffice is a complete suite of applications similar to those found in the Microsoft Office suite; Writer is the word processing program in that suite. It is very similar in style to Word and also has functions that allow it to create and edit web pages as well as to export PDF files. The functionality of this program is comparable to Word and its eighteen-year history points to the viability of this product as a true Word alternative. The best part about it is that it's free. Notably, this product can also be used with Linux and with Mac OS X computers that have the X Window System installed on them.
  2. KWord: Although it's fallen out of popularity in recent years due to the proliferation of word processing programs, KWord has historically been a fairly well-established alternative to Microsoft Word. It is based on frames which means that it's convenient for moving and editing large amounts of text as well as for incorporating images into documents. It is designed to be easy-to-use and flexible enough to meet the needs of a diverse group of people (from student to professional).
  3. Microsoft Works: This is the Microsoft Word alternative that most people are familiar with as it comes on many computers as a standard free version of Microsoft Word. It has a lot of the same basic functions but also has some flaws and isn't considered a favoured alternative by most people. For the person who only needs to write basic documents that don't need to be widely shared, it can be a useful program.
  4. StarWriter: This affordable software allows users to have all of the same basic features as Microsoft Word without having to actually use Word. It's great for people who are seeking an alternative primarily on the principle of a dislike of Microsoft or a desire to see this word processing giant face more competition. It is compatible with Word so that collaboration with others who use Word isn't made difficult by using this program. This software is also commonly used by Linux users.
  5. TechDigm Office: This application suite includes a word processing program which is comparable to StarWriter and can be easily used as an alternative-but-compatible Word program.
  6. AbilityWrite: Yet another alternative that is similar to StarWriter and TechDigm is AbilityWrite, the word processing program that is part of the Ability Office application suite. The benefit here is that Ability Office comes in five different versions which each include AbilityWrite along with different combinations of other programs (such as a spreadsheet program) which means you can pick and choose what you need in an application suite.
  7. Atlantis: Take a look at the home page of this Microsoft Word alternative and you'll see that it looks a little messy. That's deterred a lot of people from taking a test run of this product even though it's available for a free 30-day trial before purchase is required. Those who have tried it, though, say that it's an easy-to-use alternative to Microsoft Word which has many of the advanced features that Word users enjoy at a lower cost than what Word typically runs.
  8. Evermore Integrated Office: This is a useful but complicated alternative to Microsoft Word due to the fact that it's more than just a word processing program. Instead of opening up separate programs (for example, Word and Excel), you open everything up in one place. That makes it a great alternative for people who are seeking a really streamlined system but not so great for those people who are just going to want a word processor without all of the extras.
  9. yWriter: This is a niche word processing program designed specifically for writers who are working on novels or other book-length works. It has features which make it great for these long works include organizational methods that make it easy to move chapters around and tools that allow you to track your progress on the work. It can be used on its own or file can be saved as .rtf files and opened with other word processing programs.
  10. Nota Bene: This is another niche word processing program but this one is designed for academics and researchers. It has specific academic functions such as automatic bibliography and citation assistance. It also has advanced search functions that allow users to find their own quotes and documents using a search engine style method of searching. It's pricey software ($100+ depending on the version you want) but those who regularly write academic papers that need to be in tip top form may find that the cost is worth it.

Google: Publishers Making Adsense Invisible (Please dont do it)

Blogger’s and website publishers are go for Google Adsense because it’s very easy to signup and within few days you will start earning money. Whenever publisher uses the Google Adsense code it uses a JS file that will create an IFrame and that IFrame will display the Google ads on your website. Google uses the IFrame method because it prevents website publisher to create same text and background that matches their website. So in this way Google makes very hard to hide Google Adsense ads, but here is the method that will hide the complete Google Adsense ads in your website or blog.

Google should look this issue really seriously because this can be used by publishers to make any Google Adsense invisible and that ad may look like any image or URL.
Showing you the working example will violate the Google’s TOS and this article is not meant to do that. Here is that code that can be added to your Stylesheet or directly the place where you want to show Google Adsense ad.

#adsense{
Filter:alpha(opacity=00);
-moz-opacity:.00;
Opacity:.00;}

This method works on all browsers. If you are planning to test this code in your blog or website please think that you are violating the Google’s TOS and no matter how much revenue you generate from tricking users into clicking something, once you are reported and your website is investigated your account will be gone forever and so will all the money that you generated fraudulently.

Via ReadersZone

Don’t submit to Google


Just digging around when I found this. Thought this might help you.

A lot of people think that in order to be listed in Google’s search results, you need to first submit your site to them. This is a complete lie. In order for Google to list your site, you need them to find you naturally through links from other websites on the web.

Google actually values sites that you submit to them lower than they value sites that they naturally find.

Google believes that if they have to be told how to find your site that the online visitors also cannot find your site. If other people can’t find your site, why should Google?

Via Getting more visitors

Discuss It: Linux is faster then windows...



I was just surfing net and i found this long but cool article which talks about speeds of Linux and windows.

It talks about how Linux is optimized that it can run on even lower configurations also which win XP can't. Windows applications are good and fast on Linux compared to windows itself! Isn't its strange? Yeah and also windows based games runs faster with wine on Linux. It shows some benchmarks also for results of comparisons.

Main reasons which can be the main cause of windows slowness are,
-Linux use preemptive multitasking which means 'processes are forced to share CPU rather they want to or not'. And windows use Cooperative Multitasking which means 'process currently controlling the CPU must offer control to other processes'.

-windows is based on registry so while booting, it will load registry in memory. This is not the case with Linux.

-Windows has only one desktop which uses more resources and on the other side, Linux has many desktops which are configurable and many new are coming for different distributions.
The best lines said on source,
So, it seems to me the primary reason why Linux runs faster than Windows is because it is better designed to work with hardware, in the context that it handles operations in a more efficient manner than Windows.

In my opinion, I also get the perception, that perhaps the development of Linux is guided by people who seek to maximize performance. It does not appear to be developed predominantly by those who seek to maximize profits.
Full article @ ubuntuLinuxHelp

Blogger: Most visited posts widget script...

This script finds your most visited posts and gives you back theresult in html.I found this from bloggerbuster and it uses pipes.yahoo.com to get the ratings.
So now you don't need to put your features post links.Just put the script in new widget,change the url,change the number of posts you want to show, and done!
<script type="text/javascript">
function pipeCallback(obj) {
document.write('<font ><ol style="text-transform: capitalize;">');
var i;
for (i = 0; i < obj.count ; i++)
{
var href = "'" + obj.value.items[i].link + "'";
var item = "<li>" + "<a href=" + href + ">" + obj.value.items[i].title + "</a> </li>";
document.write(item);
}
document.write('</ol></font>');
}
</script>
<script src="http://pipes.yahoo.com/pipes/pipe.run?_render=json&_callback=pipeCallback
&_id=1cf38ae68efbe859c4ba1ee239cec099&url=http%3A%2F%2Fwww.techlads.com&num=10" type="text/javascript"></script>

In the url, only below part is important. Change the url to your one and change the num param to what you want.I made it only top 10 posts.
url=http://www.techlads.com&num=10

Tuesday, May 13, 2008

Java optimization and performance

No new Exception if not needed

Many of us do this when we want to throw an error. But if you are throwing exception from another catch, then don't make new exception object. Keep throwing the same exception which you caught if possible. This will be better for performance. And also in new exception usually we change the description only to reflect the perfect error cause, but other ways are there to track it.

Avoid excessive synchronization

Yah threading can be a bit complex situation sometimes in java. And we all use synchronization to avoid dead locks. But it needs a more attention then we give it. Try to make a block of code synchronized rather then making the whole method synched. The whole method will stop all other threads, waiting to go inside it. It will generate more overhead. So keep the design like we need less sync code.

Read Full @ javaLibs

Friday, May 9, 2008

Spring Framework problem : SqlReturnResultSet() not returned

One more problem with servicemix and spring is in DAO classes, when you make any private static class of StoreProcedure, then in its constructor you must declare SqlReturnResultSet before you declare SqlParameter.Otherwise you will not be able to find return data from StoredProcedure execution.Check the code below,
public MySp(JdbcTemplate jdbcTemplate){
super(jdbcTemplate,"sp_mysp");
declareParameter(new SqlReturnResultSet("strRs",rsMyResultSet));
declareParameter(new SqlReturnResultSet("strRs1",rsMyResultSet1));
declareParameter(new SqlParameter("myId", Types.INTEGER));
compile();
}
so keep in mind while using Spring DAO support.Must declare resultsets first.

servicemix problems: NormalizedMessage getContent,copyPropertiesAndAttachments()

Though servicemix is widely used and very nice ESB framework, it has some basic problems.The one i am talking about here is very little thing but it can be annoying if you forget this or don't know this.

While creating and sending NormalizedMessage object from any data, after doing that if you read data using NormalizedMessage.getContent() method and send the message object with exhchange to deliveryChannel, using DeliveryChannelImpl.send(MessageExchange) method, then you will get null exception in DeliveryChannelImpl class.

Yes this is true.I don't know why, but it removes content from the message object.Only the content is removed and the properties are still there.

You can read properties from it in same component as many times as you want.If you are forwarding same message to next component, properties will automatically goes.But if you read content once, you must set it again :(.

Also remember that if you need to make new MessageExchange, then you must copy all properties and attachments using TransformComponentSupport.copyPropertiesAndAttachments(outExchange,inMsg,outMsg) method.Then all your data from one message will be copied to another message.

So keep checking this if you getting null Exceptions while sending message through DeliveryChannel.

Sunday, May 4, 2008

Design the Firefox Logo in Photoshop

This tutorial is going to tell you how you can make firefox logo in photoshop in some easy steps.

very nice tutorial and shows simple steps making the hard logo! :)
after checking you will think, "ah!its very easy,may i have done this before firefox!".But then also, a cool tutorial.

The final output is attached here. but see the source for details.

Full thing @
henryhoffman.com

Saturday, May 3, 2008

want easy linux? try Ubuntu...

I know this is not the first one to use but i am a newbie to Ubuntu and also installing Linux after about 4 to 5 years.I like you to use Linux and forget windows because Linux is free,open,simple,learning station.It doesn't hides anything from you.


Are you a windows user like me who dont qwant troubles of installing linux?Reason can be any but its a trouble i know.

We need to format the disk, remove windows ,install linux with great care and then again install windows over it becasue you can't leave without it.

Actually i want to get rid of windows and want to move on linux.But its not easy as my development and aother things are to be set on linux.

Then i seen site of wubi, the installer which installs linux on windows like any other software you do.i found it too easy.I just downloaded the latest ubuntu 8.04 LTS (long term service) ISO file from internet.When i loaded it into virtual drive, wubi popped up.

And your task done. Just give it a Drive having 8 to 10 GB space, give 8 to 10 GB space for installation,choose your username & pass. and click 'install'! simple!

It will install ubuntu in the drive,backup the ISO file,and asks for reboot.When you reboot, it will show you 'ubuntu' with windows XP in windows MBR!its great.And after choosing ubuntu from the OS choice menu, it will install it in 15 minutes.

Loing and enjoy linux of you know it.Learn new things,try to used to terminal!And you can simply unistall it from windows' add/remove menu.Isn't its great?

best thing about latest Ubuntu 8.04 is,
-easy install/unistall from windows.
-network configuration for internet is autodetect in most cases.
-easily you can add/remove programs from system.It will download new packages from internet to install.
-includes most needed programs pre-installed.(Firefox,pidgin etc.)
And i suggest you to get below listed packages from add/remove first to get your multimedia on,
-restricted media formats
-VLC
suggest me if you know better things about ubuntu as i am also newbie to it. :)