Wednesday, May 12, 2010

careers in opensource

With the deepening economic slowdown enterprises have started looking hard at optimizing their IT budgets, in some cases even resorting to free and Open Source solutions and softwares to address to their needs. The adoption of Open Source in enterprises will automatically imply a need for employees having familiarity with Open Source technologies. Here we look at what all opportunities that you can look at to start a career in the Open Source domain

Today, many applications are being developed in the Open Source environment and are gaining wider acceptance. Open Source is no longer synonymous to Linux and Java, but has matured to several middle-ware, ERP, BI and other enterprise applications. A recent survey by Gartner suggests an increasing role for Open Source as part of business strategies in the coming years. Numerous developers from around the world are contributing to Open Source software and the ratio of contributing developers is witnessing a higher growth. Sun Microsystems, Google, SourceForge, Apache and many other organizations have several Open Source projects hosted and supported by them. It's not only the developer community that has been actively collaborating to build Open Source solutions all the while, but even enterprises are showing interest in the business viability of Open Source solutions. Hearing all the buzz about the Open Source model and its adoption by organizations, and looking at the number of organizations that are initiating their own Open Source projects, one is tempted to wonder how to make a career in this wide arena.

How to start a career in Open Source
Open Source is a wide domain and there isn't any fixed path that one can tread to make a career. There are two ways in which one can kick-start a career in Open Source technologies. The first will pay you while the second will cost you. You can get trained in one of the Open Source technologies and subsequently be hired by an enterprise where it is used. The other way encompasses the true essence of the Open Source, of not just being a user but a contributor. Contributing to Open Source doesn't pay you unless you are working for an organization that distributes under the BSD license, like Red Hat or Sun. Contributing to Open Source doesn't cost you a dime, but you need to devote time and effort, and this pays you in form of recognition in the Open Source arena.

Not everyone is lucky enough to get hired by an IT enterprise where he or she could get involved in a high-profile project of their interest that would also help them in career growth. In fact, people with the necessary skills and knowledge strive hard but are not able to get the work or project where their interest lies. Open Source on the other hand, gives you that opportunity where you can choose the project of your choice; the project that matches your skills and also your area of interest. Open Source projects are typically created as collaborative efforts where programmers improve upon the code and share the changes within the community. The kind of contribution you make for an Open Source project is visible and can land you job offers from enterprises that want pros in that domain. Certifications do acknowledge your skills and are generally accepted by the industry, but your work for an Open Source project is visible and gives instant proof of your knowledge to a prospective employer.

(Adapted from various sources from the internet)

Saturday, March 27, 2010

NANO COMPUTING TECHNOLOGY

Nano-Computing

The history of computer technology has involved a sequence of changes from gears to relays to valves to transistors to integrated circuits and so on. Today's techniques can fit logic gates and wires a fraction of a micron wide onto a silicon chip. Soon the parts will become smaller and smaller until they are made up of only a handful of atoms. At this point the laws of classical physics break down and the rules of quantum mechanics take over, so the new quantum technology must replace and/or supplement what we presently have. It will support an entirely new kind of computation with new algorithms based on quantum principles.

Presently our digital computers rely on bits, which, when charged, represent on, true, or 1. When not charged they become off, false, or 0. A register of 3 bits can represent at a given moment in time one of eight numbers (000,001,010,...,111). In the quantum state, an atom (one bit) can be in two places at once according to the laws of quantum physics, so 3 atoms (quantum bits or qubits) can represent all eight numbers at any given time. So for x number of qubits, there can be 2x numbers stored. (I will not go into the logic of all this or this paper would turn into a book!). Parallel processing can take place on the 2x input numbers, performing the same task that a classical computer would have to repeat 2x times or use 2x processors working in parallel. In other words a quantum computer offers an enormous gain in the use of computational resources such as time and memory. This becomes mind boggling when you think of what 32 qubits can accomplish.
This all sounds like another purely technological process. Classical computers can do the same computations as quantum computers, only needing more time and more memory. The catch is that they need exponentially more time and memory to match the power of a quantum computer. An exponential increase is really fast, and available time and memory run out very quickly.

Quantum computers can be programed in a qualitatively new way using new algorithms. For example, we can construct new algorithms for solving problems, some of which can turn difficult mathematical problems, such as factorization, into easy ones. The difficulty of factorization of large numbers is the basis for the security of many common methods of encryption. RSA, the most popular public key cryptosystem used to protect electronic bank accounts gets its security from the difficulty of factoring very large numbers. This was one of the first potential uses for a quantum computer.

"Experimental and theoretical research in quantum computation is accelerating world-wide. New technologies for realising quantum computers are being proposed, and new types of quantum computation with various advantages over classical computation are continually being discovered and analysed and we believe some of them will bear technological fruit. From a fundamental standpoint, however, it does not matter how useful quantum computation turns out to be, nor does it matter whether we build the first quantum computer tomorrow, next year or centuries from now. The quantum theory of computation must in any case be an integral part of the world view of anyone who seeks a fundamental understanding of the quantum theory and the processing of information."


In 1995 there was a $100 bet made to create the impossible within 16 years, the world's first nanometer supercomputer. This resulted in the NanoComputer Dream Team, and utilizes the internet to gather talent from every scientific field and from all over the world, amateur and professional. Their deadline: November 1, 2011. Watch for it! Are you ready for a computer that is billions of times faster than our present PC's?

Monday, March 8, 2010

RSS (Really Simple Syndication) feeds are a relatively new way to collect information from many different sources and have it delivered to your computer via an RSS reader. If you enjoy reading the news with your morning coffee, then setting up an RSS feed is the perfect way to do it. You can use the mouse and munch on a snack at the same time. No more reading the paper with both hands!  
Internet explorer 7 & above, Chrome,opera, Firefox, almost all the browsers all include many new features for setting up a RSS feed, however to make things simple, we'll describe a web based RSS feed that is compatible with all browsers.
You can use the free RSS reader from google to build a custom web page loaded with all your favorite news feeds. There are also groups of categories to choose from including News, Sports, Fun, and Geeky topics. You may also search for other topics. Your RSS reader will always keep you up to date because the technology is designed to continually look for news updates and download them.
Almost every website has a RSS feed that you can subscribe to, and easily added to your RSS reader. There are no limitations on topics either. Pick a topic, search for a RSS feed on it chances are you'll find a feed for it. RSS feeds are designed by individuals and by businesses. A common method to promote a blog is to add it to an RSS feed. Many RSS feeds are simply a collection of blogs aggregated into one page.
If you prefer an RSS reader that is not web based, you may try your favorite search engine for RSS software.

Open Source : What do we get?

Open source software (OSS for short) is a great ideal. It is where the sharing of the source code could accelerate enhancement of software and made freely to the public. Sadly, this ideal will never be realized in this imperfect world. Like all great ideals, it is riddled with many cons as much as the pros that are expected.

Therefore, this article will discuss the pros and cons by exploring the characteristics of OSS. All software can be characterized with cost, functionalities, usability and sustainability. Cost is about the amount of development involved and how much the consumer is willing to pay for it. Functionalities describe the features and how the software would work. Last of all, sustainability looks at the backward compatibility and projected development of the software.

{Cost}
Pros: Source codes are like keys to programmers. By exposing the source codes, programmers can improve, modify and tweak any part of the software. This could reduce development time that translates into lower costs. As OSS is freely distributed, programmers are also able to use this software for their benefits. From this aspect, OSS is free to the extent of having the source codes.

Cons: Although the source codes are provided, there are hidden costs that do not come with the software. Programmers will have to be familiar with integrating open source with other proprietary software. Middleware might be needed in many instances. This gives additional cost. Novice users are also unfamiliar with the bugs and fixes that often occur in OSS. They also need to pay for customer support service or even documentation and manuals.

{Functionalities}
Pros: The functionalities of OSS are beginning to rival that to commercial software. This is because the global community of programmers and users have a hand in improving the software. In some cases, the OSS offers more functionality.

Cons: Being free comes with hidden cost. In similar fashion, functionalities bring about bugs and usability issues. Users will find the software patches a hassle in OSS. Those who are familiar with commercial software like Microsoft may not get used to the user interface of Open Office. This involves re-learning new software and incurring switching cost.

{Sustainability}
Pros: One of the greatest things in OSS is the continuous contribution and effort from programmers. Bear in mind that these programmers are improving the software at their own time and cost. They are not being paid in anyway. It is their passion that drives the growth of the software like parents watching their children. Thus, the development of software will be moving at an amazing pace with a large community as compared to commercial software.

Cons: On the other hand, OSS faces major issues in backward compatibility, project management and customer support. Can OSS sustain and compete against commercial software? As most OSS grows from contributions from online community, resources are limited. There is also a need to manage the long-term vision of the software. Customers would demand support and help in using OSS.

OSS is a great threat to commercial software. Commercial software companies never expect that source codes would be freely distributed. Although OSS is "free", users expect more than just the source codes. Documentations, manuals and customer support could incur the additional cost. Switching cost will also comes in the form of training as most users are used to the functionalities of commercial software. Hence, new way has been introduced in the form of commercial open source to address the cons from OSS. In this way, consumers could have the best of both worlds.