Technology and Open Source Update

Latest information about new technology and open source.

Posts Tagged ‘Open Source’

Java Thread Program Using Runnable Interface

Posted by megahacker136 on October 19, 2008

public class soalan4 {

public static void main(String[] args) {
try {
Thread thread1 = new Thread(new runThread(“Parent Thread”));
Thread thread2 = new Thread(new runThread(“Child Thread”));
thread1.start();
thread2.start();
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}

class runThread implements Runnable {

String threadName;

runThread(String nama) {
threadName = nama;
}

public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println(threadName + ” “ + i);
}
}
}

Download source code:

>>>DOWNLOAD<<<

Solution 2:

public class soalan4 implements Runnable{

public soalan4(){

try{

Thread thread2 = new Thread(new runThread(“Child Thread”));

thread2.start();

}catch(Exception e){

System.out.println(e.getMessage());

}

}

public static void main(String[] args) {

try {

Thread thread1 = new Thread(new soalan4());

thread1.start();

} catch (Exception e) {

System.out.println(e.getMessage());

}

}

public void run(){

for (int i = 1; i <= 5; i++) {

System.out.println(“Parent Thread ” + i);

}

}

}

class runThread implements Runnable {

String threadName;

runThread(String nama) {

threadName = nama;

}

public void run() {

for (int i = 1; i <= 5; i++) {

System.out.println(threadName + ” ” + i);

}

}

}

Posted in Open Source, Programing | Tagged: , , | 21 Comments »

Solaris is Drowning?

Posted by megahacker136 on October 7, 2008

Linux is enjoying growth, with a contingent of devotees too large to be called a cult following at this point. Solaris, meanwhile, has thrived as a longstanding, primary Unix platform geared to enterprises. But with Linux the object of all the buzz in the industry, can Sun’s rival Solaris Unix OS hang on, or is it destined to be displaced by Linux altogether?

Solaris, he said, has almost no new deployments and is a legacy operating environment offered by a company with financial difficulties. Original equipment manufacturers also do not see a bright future for Solaris, he claims.

By contrast, Linux is the overwhelming choice for new deployments on x86 systems, Zemlin says.  Sun has had its strength in applications such as ERP systems with a seven- to 20-year life cycle, he adds. “What’s starting to happen is those life cycles are starting to be completed,” and those customers are moving to Linux.

That move to Linux is accelerated by Linux’s strength in Web applications, where developers today are focused, Zemlin adds. “You can’t really talk to any Web-based application company these days that’s not using Linux,” he says.

Linux also is less costly to run, Zemlin claims. Sun, he declared, should just move over to Linux. Zemlin also held out little hope for other IBM’s AIX and Hewlett-Packard’s HP-UX Unix platforms. “It’s certainly true that Unix is on the decline,” he says.

“Customers are pretty aware that Unix is a more expensive legacy architecture. They continue to support it because they don’t want to change their legacy apps over to a new platform because of the costs,” Zemlin said. “But they know now they eventually need to do it because Unix just doesn’t have the combined might of all the different organizations and individuals that are developing [for] Linux.”

Thanks to its strong support of the x86 hardware architecture, “in terms of overall volume, Linux is just a much higher volume product than Solaris ever was,” says Al Gillen, an IDC analyst. IDC data show that worldwide Linux shipments in 2006 were about 2.4 million in 2006 and nearly 2.7 million in 2007. By contrast, Solaris shipments totaled 376,000 in 2006 and 371,000 last year.

Solaris, Zemlin says, is losing market share because it does not have a good price performance or value proposition.

Zemlin also disputes Sun’s notion that Solaris technology gives it an edge over Linux. “The only people I hear talk about DTrace [Solaris's technology for assessing program and OS behaviours] and ZFS [the Zettabyte File System] as competitive features [are] Sun Microsystems sales representatives. It’s not something I believe is impacting the market in any way,” he says.

That Solaris has some superior features is not really in question; Sun’s OS has received numerous accolades, including InfoWorld’s Technology of the Year award. But with capabilities such as ZFS and DTrace, Sun is trying to compete based on minor features, Zemlin says. “That’s literally like noticing the view from a third-story building as it burns to the ground.” And the Linux community is working on rival technology, Zemlin adds.

Given Sun’s own Linux support on its Sparc and x86 servers, Zemlin suggests that it should make ZFS and DTrace available under a Linux-compatible license. Sun instead uses its Common Development and Distribution License (CDDL), which is not compatible with the Linux GNU General Public License. (Sun says CDDL provides licensing support for a greater universe of systems than GPL does.)

One company that is moving from Solaris  to Linux is Sesame Workshop, famous for TV shows such as Sesame Street. A key reason is that more people are available to support Linux than Solaris, says Noah Broadwater, vice president of information services at Sesame Workshop. “I honestly have one person who is certified on Solaris. I have four people who are certified on Linux,” Broadwater said.

The other key issue with Solaris boils down to one word: cost. Sesame is saving about $20,000 a year in support costs by moving to Linux, Broadwater says.

One fear that Broadwater had in moving to Linux was degradation in performance, but he has been pleasantly surprised such degradation has not occurred. For example, the company’s IBM Cognos BI application runs faster on x86 Linux boxes than it did on Sparc Solaris, he says.

The case for Solaris’s existence
Sun stands behind Solaris. “For customers who’d chosen Linux in the past, we’re seeing some of those same customers come back to Solaris,” says Charlie Boyle, director of Solaris product marketing at Sun.

Solaris boasts features such as ZFS for simplified storage management and Solaris containers for virtualization, Boyle says. He cites a recent partnership in which Dell will make Solaris available on its computers; Dell would not do this if there was not customer demand. Sun is seeing brand new customers for Solaris; “I think we’ve got a great future,” Boyle says.

“I think Solaris is absolutely a great OS,” says Neil Wilson, a former Sun employee who later left the OpenDS project. Solaris is “absolutely far superior to Linux for the cases where the hardware support is there,” he adds.

Gracenote, which provides a media recognition and metadata service for MP3 users (the CDDB database familiar to iTunes users), agrees. “We found the threading model in Linux was problematic. You get to a certain number of concurrent threads and the OS just slows way down,” says Matthew Leeds, vice president of operations at Gracenote.  Solaris “just works for us.”

The debate over Solaris’s open source future
As part of its plans to give Solaris a longer life, Sun has developed an open source effort based on Solaris, called OpenSolaris, featuring a binary release of Solaris through Project Indiana.

The Linux Foundation’s Zemlin, though, dismisses Sun’s open-source Solaris as “too little, too late.” His foundation has also charged that there is no real open source community around OpenSolaris, arguing that Sun still controls development. To back up its point, the foundation points to blogs detailing disputes over control of OpenSolaris and the Sun-driven OpenDS directory projects, from February 2008 and November 2007. Sun declined to comment on the specifics of these issues and noted they both happened several months ago. Zemlin claims Open Solaris is no more than an attempt to expand the Solaris user base to drive customers to commercial Sun technology.

Sun’s Boyle acknowledges that Sun employees participate in OpenSolaris development, but says they do so along with individual and corporate contributors such as Intel. Community registrations in the OpenSolaris community exceed 160,000, far in excess of Sun’s total employee account of 34,000 people, he notes.

“I’d say we’ve got a great community around OpenSolaris.” Boyle said. “People are free to come and go as they want, and the community’s been growing every month,” he says. “To say that Sun is controlling all this, I don’t think is a fair and accurate statement.”

Source from InfoWorld.com

Posted in Open Source, Unix | Tagged: , , | Leave a Comment »

Transparent JFrame Background

Posted by megahacker136 on September 19, 2008

JFrame not come with the transparent window functionality, but you can try making it by using Java graphics class. The code below is the demo for the transparent frame background. Try the code below if you want to see it.

import javax.swing.*;
import java.awt.*;
import java.awt.event.ComponentEvent;
import java.awt.event.ComponentListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowFocusListener;
import java.awt.image.BufferedImage;
import java.awt.image.ConvolveOp;
import java.awt.image.Kernel;

public class TransparentBackground extends JComponent
implements ComponentListener, WindowFocusListener, Runnable {

// constants —————————————————————

// instance —————————————————————-
private JFrame _frame;
private BufferedImage _background;
private long _lastUpdate = 0;
private boolean _refreshRequested = true;
private Robot _robot;
private Rectangle _screenRect;
private ConvolveOp _blurOp;

// constructor ————————————————————-
public TransparentBackground(JFrame frame) {

_frame = frame;

try {

_robot = new Robot();

} catch (AWTException e) {

e.printStackTrace();

return;

}

Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();

_screenRect = new Rectangle(dim.width, dim.height);

float[] my_kernel = {
0.10f, 0.10f, 0.10f,
0.10f, 0.20f, 0.10f,
0.10f, 0.10f, 0.10f
};

_blurOp = new ConvolveOp(new Kernel(3, 3, my_kernel));

updateBackground();

_frame.addComponentListener(this);

_frame.addWindowFocusListener(this);

new Thread(this).start();

}

// protected —————————————————————
protected void updateBackground() {

_background = _robot.createScreenCapture(_screenRect);

}

protected void refresh() {

if (_frame.isVisible() && this.isVisible()) {

repaint();

_refreshRequested = true;

_lastUpdate = System.currentTimeMillis();

}

}

// JComponent ————————————————————–
@Override
protected void paintComponent(Graphics g) {

Graphics2D g2 = (Graphics2D) g;

Point pos = this.getLocationOnScreen();

BufferedImage buf = new BufferedImage(getWidth(), getHeight(), BufferedImage.TYPE_INT_RGB);

buf.getGraphics().drawImage(_background, -pos.x, -pos.y, null);

Image img = _blurOp.filter(buf, null);

g2.drawImage(img, 0, 0, null);

g2.setColor(new Color(255, 255, 255, 192));

g2.fillRect(0, 0, getWidth(), getHeight());

}

// ComponentListener ——————————————————-
@Override
public void componentHidden(ComponentEvent e) {
}

@Override
public void componentMoved(ComponentEvent e) {

repaint();

}

@Override
public void componentResized(ComponentEvent e) {

repaint();

}

@Override
public void componentShown(ComponentEvent e) {

repaint();

}

// WindowFocusListener —————————————————–
@Override
public void windowGainedFocus(WindowEvent e) {

refresh();

}

@Override
public void windowLostFocus(WindowEvent e) {

refresh();

}

// Runnable —————————————————————-
@Override
public void run() {

try {

while (true) {

Thread.sleep(100);

long now = System.currentTimeMillis();

if (_refreshRequested && ((now – _lastUpdate) > 1000)) {

if (_frame.isVisible()) {

Point location = _frame.getLocation();

_frame.setLocation(-_frame.getWidth(), -_frame.getHeight());

updateBackground();

_frame.setLocation(location);

refresh();

}

_lastUpdate = now;

_refreshRequested = false;

}

}

} catch (InterruptedException e) {

e.printStackTrace();

}

}

public static void main(String[] args) {

JFrame frame = new JFrame();

TransparentBackground bg = new TransparentBackground(frame);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.getContentPane().add(bg);

frame.pack();

frame.setSize(500, 500);

frame.setLocation(500, 500);

frame.setVisible(true);

}
}

Posted in Open Source, Programing | Tagged: , , | 3 Comments »

Conway’s Game of Life…

Posted by megahacker136 on September 19, 2008

The Game of Life is not your typical computer game. It is a ‘cellular automaton’, and was invented by Cambridge mathematician John Conway.

This game became widely known when it was mentioned in an article published by Scientific American in 1970. It consists of a collection of cells which, based on a few mathematical rules, can live, die or multiply. Depending on the initial conditions, the cells form various patterns throughout the course of the game.

The popular Conway’s Game of Life that we seen all over the internet today mostly written in java applet. But the program below is written in JFrame class. I hope you enjoy it…

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.*;

public class ConwayGUI extends JFrame {

int gen;

int[][] conway = new int[50][50];

String[] speed = {“Slow”, “Fast”, “Hyper”};

javax.swing.Timer timerslow = new javax.swing.Timer(900, new startConway());

javax.swing.Timer timerfast = new javax.swing.Timer(100, new startConway());

javax.swing.Timer timerhyper = new javax.swing.Timer(1, new startConway());

javax.swing.Timer timerStart = new javax.swing.Timer(1, new mula());

public ConwayGUI () {

GUIComponent();

}

private void GUIComponent() {

this.setLayout(new BorderLayout());

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

this.setTitle(“Game Of Life”);

this.setResizable(false);

JP1 = new JPanel();

JP1.setLayout(new GridLayout(50, 50));

arrButton = new JButton[50][50];

for (int i = 0; i < 50; i++) {

for (int j = 0; j < 50; j++) {

final int m = i;

final int n = j;

JP1.add(arrButton[i][j] = new JButton(“”));

arrButton[i][j].setPreferredSize(new java.awt.Dimension(12, 12));

arrButton[i][j].setBackground(new java.awt.Color(128, 128, 128));

arrButton[i][j].addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

arrBtnActionPerformed(evt, arrButton[m][n]);

}

});

}

}

add(BorderLayout.CENTER, JP1);

java.awt.GridBagConstraints gridBagConstraints;

JP2 = new JPanel();

JP2.setLayout(new GridBagLayout());

clearBtn = new javax.swing.JButton();

nextBtn = new javax.swing.JButton();

stopBtn = new javax.swing.JButton();

startBtn = new javax.swing.JButton();

speedLabel = new javax.swing.JLabel();

speedCombo = new javax.swing.JComboBox();

genLabel = new javax.swing.JLabel();

genField = new javax.swing.JTextField();

clearBtn.setText(“Clear”);

clearBtn.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

clearBtnActionPerformed(evt);

}

});

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridwidth = 5;

gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 16);

JP2.add(clearBtn, gridBagConstraints);

nextBtn.setText(“Next”);

nextBtn.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

nextBtnActionPerformed(evt);

}

});

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 16);

JP2.add(nextBtn, gridBagConstraints);

startBtn.setText(“Start”);

startBtn.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

startBtnActionPerformed(evt);

}

});

JP2.add(startBtn, new java.awt.GridBagConstraints());

speedLabel.setText(“Speed:”);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridwidth = 3;

gridBagConstraints.insets = new java.awt.Insets(0, 21, 0, 0);

JP2.add(speedLabel, gridBagConstraints);

speedCombo.setModel(new javax.swing.DefaultComboBoxModel(speed));

speedCombo.setSelectedItem(speed[0]);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridwidth = 4;

gridBagConstraints.insets = new java.awt.Insets(0, 11, 0, 0);

JP2.add(speedCombo, gridBagConstraints);

genLabel.setText(“Generation:”);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.insets = new java.awt.Insets(0, 16, 0, 5);

JP2.add(genLabel, gridBagConstraints);

genField.setColumns(7);

genField.setEditable(false);

JP2.add(genField, new java.awt.GridBagConstraints());

add(BorderLayout.SOUTH, JP2);

pack();

}

private void clearBtnActionPerformed(java.awt.event.ActionEvent evt) {

genField.setText(“”);

gen = 0;

for (int i = 0; i < 50; i++) {

for (int j = 0; j < 50; j++) {

arrButton[i][j].setBackground(new java.awt.Color(128, 128, 128));

}

}

}

private void nextBtnActionPerformed(java.awt.event.ActionEvent evt) {

neighbor();

}

private void startBtnActionPerformed(java.awt.event.ActionEvent evt) {

String str = startBtn.getText();

if (str.equalsIgnoreCase(“Start”)) {

timerStart.start();

startBtn.setText(“Stop”);

clearBtn.setEnabled(false);

nextBtn.setEnabled(false);

} else {

timerStart.stop();

timerslow.stop();

timerfast.stop();

timerhyper.stop();

startBtn.setText(“Start”);

clearBtn.setEnabled(true);

nextBtn.setEnabled(true);

}

}

private void set_arr() {

String str = “java.awt.Color[r=255,g=255,b=0]“;

for (int i = 0; i < conway.length; i++) {

for (int j = 0; j < conway[i].length; j++) {

String s = “” + arrButton[i][j].getBackground();

if (s.equalsIgnoreCase(str)) {

conway[i][j] = 1;

} else {

conway[i][j] = 0;

}

}

}

}

private void neighbor() {

set_arr();

gen++;

genField.setText(“” + gen);

for (int i = 0; i < arrButton.length; i++) {

for (int j = 0; j < arrButton[i].length; j++) {

int bil = cal_Neighbor(conway, i, j);

String str = “java.awt.Color[r=255,g=255,b=0]“;

String kosong = “java.awt.Color[r=128,g=128,b=128]“;

String s = “” + arrButton[i][j].getBackground();

if (s.equalsIgnoreCase(str)) {

if (bil == 2 || bil == 3) {

arrButton[i][j].setBackground(new java.awt.Color(255, 255, 0));

} else if (bil < 2 || bil > 3) {

arrButton[i][j].setBackground(new java.awt.Color(128, 128, 128));

}

}

if (s.equalsIgnoreCase(kosong)) {

if (bil == 3) {

arrButton[i][j].setBackground(new java.awt.Color(255, 255, 0));

}

}

}

}

}

private int cal_Neighbor(int[][] arr, int num, int i) {

int total = 0;

if ((num – 1 != -1) && (i – 1 != -1)) {

if (arr[num - 1][i - 1] == 1) {

total += 1;

}

}

if (num – 1 != -1) {

if (arr[num - 1][i] == 1) {

total += 1;

}

}

if ((num – 1 != -1) && (i + 1 < arr[num].length)) {

if (arr[num - 1][i + 1] == 1) {

total += 1;

}

}

if (i – 1 != -1) {

if (arr[num][i - 1] == 1) {

total += 1;

}

}

if (i + 1 < arr[num].length) {

if (arr[num][i + 1] == 1) {

total += 1;

}

}

if ((num + 1 < arr.length) && (i – 1 != -1)) {

if (arr[num + 1][i - 1] == 1) {

total += 1;

}

}

if ((num + 1 < arr.length)) {

if (arr[num + 1][i] == 1) {

total += 1;

}

}

if ((num + 1 < arr.length) && (i + 1 < arr[num].length)) {

if (arr[num + 1][i + 1] == 1) {

total += 1;

}

}

return total;

}

private void arrBtnActionPerformed(java.awt.event.ActionEvent evt, JButton arrayBtn) {

String str = “java.awt.Color[r=255,g=255,b=0]“;

String s = “” + arrayBtn.getBackground();

if (s.equalsIgnoreCase(str)) {

arrayBtn.setBackground(new java.awt.Color(128, 128, 128));

} else {

arrayBtn.setBackground(new java.awt.Color(255, 255, 0));

}

}

class startConway implements ActionListener {

public void actionPerformed(ActionEvent e) {

neighbor();

}

}

class mula implements ActionListener {

public void actionPerformed(ActionEvent e) {

try {

if (speedCombo.getSelectedIndex() == 0) {

timerhyper.stop();

timerfast.stop();

timerslow.start();

} else if (speedCombo.getSelectedIndex() == 1) {

timerhyper.stop();

timerslow.stop();

timerfast.start();

} else if (speedCombo.getSelectedIndex() == 2) {

timerslow.stop();

timerfast.stop();

timerhyper.start();

}

} catch (Exception ew) {

}

}

}

public static void main(String[] args) {

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

ConwayGUI showWin = new ConwayGUI ();

showWin.setVisible(true);

}

});

}

private JButton[][] arrButton;

private JPanel JP1;

private JPanel JP2;

private JButton clearBtn;

private JButton nextBtn;

private JButton stopBtn;

private JButton startBtn;

private JComboBox speedCombo;

private JLabel speedLabel;

private JTextField genField;

private JLabel genLabel;

}

Posted in Open Source, Programing | Tagged: , , | Leave a Comment »

Dev-PHP Review

Posted by megahacker136 on September 12, 2008

Dev-PHP is a lightweight development environment for PHP. Dev-PHP is hardly comparable with the likes of Zend Studio or Nusphere but is more than adequate for the PHP novice not willing to part with $299.

Dev-PHP is however more than a syntax editor. It provides syntax highlighting for CSS, JavaScript, HTML, XML and even SQL. Currently in alpha release, Dev-PHP also supports development of PHP-GTK applications, an internal web browser, class browser and convenient access to your PHP documentation.

Download Link:

Dev-PHP Download

Posted in Open Source, Programing, Software, Windows | Tagged: , , , , | 1 Comment »

Open Source SOA Benifits

Posted by megahacker136 on September 11, 2008

The benefits of the service-oriented architecture are widely touted: reduced integration costs, greater asset reuse, and the ability for IT to respond more quickly to changing business and regulatory requirements. But what about the pitfalls?

SOA pioneers know all too well the challenges that can arise when a company service-enables critical applications. The SOA endeavor spans IT disciplines: It’s part systems design and architecture overhaul, part application development and business makeover. Here, early adopters and other experts give their best advice about avoiding the obstacles when building this New Data Center essential, the SOA.

SOA requires the integration of many varied processes, applications and technologies that are difficult to mesh seamlessly, meaning incompatibility, scalability and flexibility issues often arise. The license-fee structure of traditional software can also limit options and add cost. Turning to open source technology can help alleviate these issues and accelerate deployment, as well as business adoption.

Open source has become a staple of enterprise-class IT as concerns about stability, security and support fall away. Open source is as stable, secure and well supported as proprietary solutions, if not more so. In addition open source SOA solutions provide:

  • Simplicity – Open source solutions are easy to find and easy to implement, with many architects and developers being familiar with the core mechanics of the technology. Open source developers are motivated by their communities to deliver easy-to-use frameworks and platforms. It also enables enterprises to rapidly create solutions to deliver tangible, measurable benefits.

  • Openness – The flexibility inherent in open source allows for more freedom and personalization of the solution than proprietary offerings, and means that an organization will see more value relevant to its operations from the installation.

  • Affordability – The open source subscription model makes SOA products less expensive than proprietary tool sets.

The benefits of open source SOA solutions can be realized in each of the six stages of the SOA evolution:

1) business process understanding;

2) IT assessment;

3) SOA design/determination;

4) SOA service enablement;

5) SOA integration and governance infrastructure;

and

6) process orchestration/composition.

For the first three steps, work efforts are focused on the business processes, current IT design and SOA design, and the open source subscription model offers a more affordable and flexible pricing structure than traditional SOA solutions. That helps the SOA design work proceed more quickly without concern about per-CPU license fees.

The advantages of open source solutions are particularly evident during the final three steps in the process.

quickly without concern about per-CPU license fees.

The advantages of open source solutions are particularly evident during the final three steps in the process.

Posted in Open Source, Programing, Tech Industry | Tagged: , , , | Leave a Comment »

Debian Comes to Live

Posted by megahacker136 on September 8, 2008

Monday, September 01, 2008:  One of the oldest and most stable ‘free’ operating systems, Debian, has entered into a new phase of its life. The operating system is now available on live CDs as well. The current release of Debian’s Lenny (Lenny is the name of the version as Vista and XP are the names of the versions of Windows OS) is in beta stage and is available for users to download and try.

Windows and Mac users may not be much aware of what a Live CD is. The best thing about a Live CD is unlike Windows you don’t have to install it on your machine to use it; all you need to do is put the CD in the tray and restart the PC. Your PC will boot from the Live CD and you can use and test all the features of the operating system without installing anything on your hard drive. These Linux-based Live CDs are very helpful when your C drive of Windows gets corrupted and you have some critical data on it. You can simply put the Live CD and take back-up of your critical data, then do whatever you want to do with your C drive.

The GNU/Linux-based operating systems are gaining popularity these days as they are getting more and more user friendly and offering eye-candy looks. Another, or the major advantage of the GNU/Linux-based operating systems is they are virus-free. You will never have to install any anti-virus software or format your PC for removal of viruses. Another major advantage is that the Linux-based operating systems are available ‘free’ of cost as well; the GNU/Linux community defines the word free as in freedom, which implies you are free to do anything with the OS.

Now, coming back to Debian, it is one of the oldest and most stable operating systems. Many popular Linux-based operating systems are based on Debian — the most popular being Ubuntu. Till date, Debian did not have an option of Live CD, but last week, the Debian Live team announced the first beta of Debian Lenny’s Live images.

When you install a Linux-based system, you get most of the software along with it. For writing letters or word processing, there are OpenOffice.org and kOffice, free equivalents to MS Word, you get GIMP, an alternate to Photoshop, you get VLC and Amarok to watch movies and listen to song, you get PidGin, an awesome tool which allows you to log into Yahoo! Messenger, MSN, Gtalk and many more chat programmes simultaneously. In a nutshell, you will find almost everything you need for your day-to-day life in Linux. However, there are some commercial products which are not yet available for Linux.

Posted in Open Source, Software, Unix | Tagged: , , , , , | Leave a Comment »