Wednesday, December 12, 2007

My Stock Trading Experience

Well off late I started share trading from November, 07. Here I would like to share my experience for all those novice people who want to know the basics. I am not an expert and I am still in the process of learning lot of things so don’t take my words blindly.

These all are my personal views and thoughts which may differ person to person..

What you need to get started?

  • Capital – 20 to 30 thousand to start with (it depends on your appetite)
  • Guts – share trading is not for faint hearted people
  • Vision – ability to think and analyze
  • Patience – power to go through ups and downs
  • Honesty – stick to your original game plan
  • Demat and Online trading account – off course it’s needed.

Now before you start checklist..

  • Your need for investment – First of all you need to know that why you want to invest, what’s your need and for what time frame you want to invest. You should be clear about these things like is it for short term or for long term etc.
  • Have a clear target like how much you want to earn – You should have a clear plan before buying the stock like what kind of profits you are looking for and it should be realistic. For example you may except to earn 50% in 3 months from that particular stock.
  • Gather information about the company in which you want to invest – Do the small research on the company’s past and present performance. Go through their website and read recent news about the company and if you feel positive about it then only buy that stock.
  • Get the information about the sector to which that company belongs – Yes it’s very important to know about the sector that company belongs. If the sector itself is performing badly then no point in expecting a good return from the company. For example nowadays the whole IT sector is down so the all IT companies shares are down and nobody is interested in them.
  • Check the market and economy conditions – You should also see the market conditions before buying. You should look whether the market is over valued or is there any negative trend etc.

Need more … go through these links and get familiar with common terms and basics.

  • Moneycontrol.com – Great site to learn about market and to get any sort of information about any stock or any sector. Do create a user id for yourself and you can also track your investment in their portfolio tools free of cost.
  • Pehla Kadam (First step) – This provides a basic tutorial about share market and related topics. Very basic and very nicely written. A must read before you kick off.
  • And do read The Economics Times regularly and watch CNBC TV18 or NDTV profit.

Some of the good sectors to invest in (at present)…

  • Construction & Contracting
  • Infrastructure
  • Power generation and distribution
  • Financial and Banks
  • Iron and Steel
  • Oil and gas

Tuesday, December 11, 2007

Joy Ride

So finally after 11 long years, the Bangalore-Mangalore train started chugging on December 8, connecting Bangalore to the coastal region (Mangalore).i still remember December of 2006 when me and my friends went for the trekking of Yedakumeri through Donigal. It was just amazing to go through all the tunnels and bridges in the entire route. I think railways have finally done a good work to start a train in this route after a long gap. So now people will be able to travel between Bangalore and Mangalore with ease. See the complete time table for the train below.

Time Table

Train No

Train Name

Date

Runs From Source

Runs On

6517

MANGALORE EXP

11/12/2007

YESVANTPUR JN

MON

TUE

WED

THU

FRI

SAT

SUN

SNo

Stn Code

Stn Name

Route No.

Arrival Time

Dep. Time

Distance

Day

Remark

1

YPR

YESVANTPUR JN

1

Source

20:35

0

1

2

SBC

BANGALORE CY JN

1

20:50

20:55

6

1

3

MYA

MANDYA

1

22:43

22:45

99

1

4

MYS

MYSORE JN

1

23:55

00:10

144

2

5

KRNR

KRISHANRAJANAGA

1

00:43

00:45

179

2

6

HLN

HOLE NARSIPUR

1

01:33

01:35

233

2

7

HAS

HASSAN

1

02:15

02:25

265

2

8

SKLR

SAKLESHPUR

1

03:20

03:25

307

2

9

SBHR

SUBRAHMANYA ROA

1

05:30

05:35

417

2

10

KBPR

KABAKAPUTTUR

1

06:23

06:25

459

2

11

BNTL

BANTAWALA

1

06:48

06:50

484

2

12

KNKD

KANKANADI

1

07:40

07:42

503

2

13

MAQ

MANGALORE

1

08:05

Destination

508

2

You can see the joy among the people in this snap which was published in TOI dated 10th Dec,07.

I am planning to book tickets for Mangalore soon and I wish they will soon start a day train so that passengers will have an opportunity to enjoy the serenity and beauty of Shiradi Ghat.

Monday, July 09, 2007

BarCamp, Bangalore 4.0 is on 28th and 29th July @IIMB.. Drop in and get collective..

BarCamp, Bangalore is back again and it’s slatted for 28th and 29th July @IIMB campus. What’s new this time is the concept of collectives. The idea is to have various small groups on different topics of interest. List of some of the collectives is listed below.. The good thing is that anyone can suggest or form a new collective and people can register for it and discuss further at the event.

List of some of the collectives ..

Open Source Software Collective
BangPypers Collective
Photo Collective
Mobile Collective
Internet Collective
SocialTech Collective
Ruby Collective
BangAJAX Collective
Bloggers Collective
UnBand Collective
Invester$ Collective

I would like to be part of Ajax, Ruby, Blogger, Internet and Investors collectives.Guys do visit the main BarCamp site and register for various collectives there.Anybody interested in sponsorship or volunteering then please go ahead here.if you are new to BarCamp or wanna know history of BarCamp then follow the link.

Click here for venue details..


Hope to see you guys there at the event :-)

Tuesday, June 05, 2007

What is Sun Java Studio Enterprise 8.1

Sun Java Studio Enterprise 8.1 is the enterprise development platform from Sun for the Java Enterprise System 5, which are also used for deploying Sun's SOA-enabled Web services. Sun claims that Java Studio Enterprise 8.1 is ideal tool for developing, debugging, testing, deploying, and tuning enterprise applications, Web services, and portal components.

Java Studio Enterprise 8.1 supports Java 2 Platform, Enterprise Edition (J2EE platform) 1.4 and integrates the NetBeans 5.0 IDE. NetBeans 5.0 offers a rich set of features with which you can create state-of-the-art Java applications, including stand-alone, Web-tier, mobile, and J2EE applications. To learn the advantages of NetBeans 5.0 and higher versions visit NetBeans website.

Also, NetBeans 5.0 supports application development on the J2EE 1.4 Platform and deployment to Sun Java System Application Server Platform Edition 8.2, as well as deployment to the WebLogic 9 and JBoss 4 containers. Note that Application Server 8.2 comes bundled with the Derby database.

Java Studio Enterprise 8.1 delivers the following capabilities over Netbeans 5.0:

  • Integrated modeling with Unified Modeling Language (UML)
  • Instant developer collaboration
  • Enterprise Application Profiler
  • Portlet Builder
  • Java Application Verification Kit
  • Sample blueprints for J2EE applications
  • Deployment to WebSphere 6.0

The complete detail of above feaure about Java Studio Enterprise 8.1 can be read at Sun’s website.

Also visit this link to see a visual demo of these features online and if you are a SDN member then you can download java studio for free..

Monday, May 21, 2007

Sun Technology Summit,07 ,Bangalore

Well Fridays are always charming and full of enthusiasm. It was Sun technology summit in Bangalore at Hotel Taj. Thought it was a working day but I thought to better attend this event. The main reason why I went there is my love for Java and web technologies and Mr. Scott McNealy (one of the co-founder of Sun) was coming to address the event. It was great to listen to people like him who really changed the business model of software industry. He talked about how India’s growing developer workforce and how they can contribute to sun’s overall API development as communities. He also explained how Java will earn profit for Sun after making it open source (Free), similar to the way Google is earning its pie. The whole aim of the event was to showcase the Sun’s complete technology suit and new arrivals for developers.

Apart from business and technology McNealy also discussed the concept of providing education material or tutorials for students over the net for free, and the initiative is already up and available called as Curriki”. I feel this is really noble cause and education should be given 1st priority for any child. I request everyone to register at Curriki website and contribute as many learning material as they can to it. They have wide range of topics to choose from and membership is again free and a ClickAway (I think in his whole talk he used this word “ClickAway” most number of times)

After McNealy’s talk there were sessions on New features in J2SE 5 and 6 , SOA and Glassfish project , NetBeans Extreme, Open Solaris 10, DTrace , ZFS file system and Java Persistence API . I was really amazed to see the capabilities of NetBeans 5.5 for developing web apps so smoothly and I realized that it’s a serious kill for MS Dot NET . Now NetBeans gives you a Drop n Drag features to build complex application in no time with all framework support and Derby database is inbuilt in it.. Loads of features to explore. Another session I liked was about Java Persistence API. Sun has come up with new release of EJB that is EJB 3.0 and it has got lot of new features and few changes in old concepts of Entity Beans. They have extensively used Annotation in persistence API. They also gave free DVD of NetBeans and Open Solaris to all the participants.

All together it was a nice experience being at the event and I hope more companies will come forward and organize such kind of talks /sessions for developer and let the world what’s really happening out there.

Tuesday, May 08, 2007

Apache Software Foundation

I saw this complete Apache Software Foundation stack on Apache website. It’s good to see all the projects from Apache in a single table with various categories. I was amazed to know that apache is really contributing big time to open source arena. Click on the image to have a bigger and clear view.


Thursday, May 03, 2007

Welcome to Maven

It seems Apache is putting all efforts for making a project build a smooth task. Earlier Ant and now the new buzz is Maven.. Well I got some info from Apache’s web site ,the main points are listed below ..

Def:
Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.

If you think that Maven could help your project, you can find out more information at Apache

Introduction

Maven was originally started as an attempt to simplify the build processes in the Jakarta Turbine project. There were several projects each with their own Ant build files that were all slightly different and JARs were checked into CVS. We wanted a standard way to build the projects, a clear definition of what the project consisted of, an easy way to publish project information and a way to share JARs across several projects.

The result is a tool that can now be used for building and managing any Java-based project. We hope that we have created something that will make the day-to-day work of Java developers easier and generally help with the comprehension of any Java-based project.

Maven's Objectives

Maven's primary goal is to allow a developer to comprehend the complete state of a development effort in the shortest period of time. In order to attain this goal there are several areas of concern that Maven attempts to deal with:

  • Making the build process easy
  • Providing a uniform build system
  • Providing quality project information
  • Providing guidelines for best practices development
  • Allowing transparent migration to new features

What is Maven Not?

You may have heard some of the following things about Maven:

  • Maven is a site and documentation tool
  • Maven extends Ant to let you download dependencies
  • Maven is a set of reusable Ant scriptlets


Friday, April 27, 2007

CSC takes over Covansys for $1.3b to ramp up its Indian operation

Interesting week for M&A. Week started with Merger of Barclays and ABN Amro and ending with the CSC acquisition of Covansys.looks like it’s the season of mergers and acquisitions. Day in day out the bigger IT companies are picking up small and growing companies and ramping up their operations in India..Last year EDS had acquired majority stake in Mphasis and added some 11,000 India-based employees to their total head count. In February, 06, Capgemini sealed a $1.25-billion deal for Kanbay, adding about 6,000 India staffers. And now it’s CSC taking over Covansys. Is there anyone who can predict this fast growing M&A trend? One clear trend is that western IT services providers are increasingly aggressive about using M&A activity as a way to grow their resource bases in India, as intense competition in the country's labor market makes it increasingly difficult to recruit the right quantity and skills. In the last three years, CSC, EDS, Capgemini, IBM, Perot Systems, have all executed takeovers designed to boost offshore numbers, and more will follow.
Can we really see a merger of Oracle and SAP or Google and Microsoft in future? Well you never know bcoz IT industry is really unpredictable. Any Comments??

Read the complete story at Economics times..

Tuesday, April 24, 2007

Wow - Barclays and ABN Amro merger to bring 10,800 jobs to India

London-based bank Barclays PLC will move 10,800 jobs to India following a giant merger announced on Monday with ABN Amro bank as part of an effort to generate billions of euros in annual savings.

The bank announced on Monday that it planned to buy Amsterdam-based ABN Amro for about $91 billion, creating a European banking giant with more than 47 million customers, including 1.4 million businesses.

The banks hope to boost their profits by slashing annual costs by an estimated $3.81 billion, or 10%, by 2010, mostly through job reductions, outsourcing and IT savings, they said.

More than half the savings, or 57%, will come from combining some of the banks' service operations and moving them to India and other low-cost locations, Barclays said.

That will mean a net reduction of 12,800 jobs, with 10,800 positions moved elsewhere, from a combined workforce of 217,000. The cuts will be made over three years through redundancies and attrition, Barclays said. It acknowledged the "difficult consequences" for affected workers and said it will need to negotiate the layoffs with local unions and regulators.

Savings from telecommunications companies and IT will amount to about 29% of the total, or $1.1 billion, including hardware, software and development, the banks said. They plan to consolidate their data centers and IT support networks and use ABN Amro's trade and payments back-office system.

Both companies use financial software from SAP AG, according to SAP's Web site, which could make the integration process less complicated. So good days for SAP as well..

It's the latest of several outsourcing projects by European banks. ABN Amro had already announced in 2005 that it would cut 1,500 jobs and outsource its IT operations through deals worth $2.2 billion over five years. Most of the business went to IBM, with smaller deals for Infosys Technologies Ltd., Tata Consultancy Services Ltd.,Patni Computer Systems Ltd. and Accenture Ltd.

As part of this latest deal, ABN Amro will sell its Chicago-based LaSalle Bank Corp. to Bank of America Corp. for $21 billion, the companies said. The combined company will be called Barclays and have headquarters in Amsterdam. The deal must be approved by ABN Amro shareholders and is expected to close in the fourth quarter, the companies said.

Saturday, April 14, 2007

What's Hot, What's Not: IT Skills You'll Need in 2010

I happen to read this report on computerworld about IT Skills we'll need in 2010. Quite interesting topics covered here.. have a look..

Hot Skills, Cold Skills

The IT worker of 2010 won't be a technology guru but rather a 'versatilist.'

Line Between Business and IT Blurs

The IT department will still exist, but the sharpest tech workers will move effortlessly between IT and business units.

The World Gets Smaller Still

Savvy IT workers will turn globalization and an increased demand for IT skills to their advantage.

H-1B Remains a Hot-Button Issue

New bills and congressional wrangling will decide the limits of temporary work visas.

There's a Merger in Your Future

Industry consolidation won't slow down. The IT survivors will be skilled in systems integration and business analysis.

New Recruits Still Scarce

Experts hope to reverse the trend with smart ideas to entice fresh talent to the field.

Boomers Bid Farewell

Smart companies will negotiate flexible schedules to keep older workers on board.

IT Sweet Spots: 2010

Research Insights


Tuesday, April 10, 2007

Ten Technology Trends for 2007

I read this article in Developeriq and found it interisting to share.In this article they take a look at the biggest developer technology predictions for 2007. These are trends that they feel will most likely lead to the way we develop software in the New Year. Read on?.

>> Ruby on Rails and Django will move mainstream
The dynamic language pack is hot! And they are moving mainstream very fast. PHP is already there. But it is not yet recommended for cutting edge stuff. Ruby is the hottest programming language around. Every developer who wants to make name for himself, is learning Ruby or at least following the language. There are more than thirty Ruby books being written or is already hit the bookstores.

Last time a language gained mind share so fast was a decade back when Java was launched. And this time around Sun is already doing their share, by pushing JRuby.

But not everyone is going Ruby way. Django, a little know Python framework is catching up and is regarded better of the two for 90% of web applications. There are already a few thousand web sites including your own Developeriq.com running Django.

The next year will see serious application development on both Ruby and Django. Already Google has one project ported on Django which may go live in 2007. This will mean that Django will slowly get recognition.

>> Flex -Ajax tango
The Ajax hype reached a zenith in mid 2006. Everyone was talking Ajax, whether they had a reason to use it. Or for that matter they know how to use it! However the hype will now be replaced with one brewing on Flex. It is just that open source community has not yet got into the Flex mode yet, but it is slowly happening.

Problem with Ajax is that it has peaked too early. There are some nice applications about but at the end of the day it's a Web page with some very fancy JavaScript. And there are too many toolkits around. Moreover, JavaScript is not yet standardized.

However the very fact that it is built on the very fabric that drives Internet, is a reason enough for Ajax to succeed. At the client side you need not install anything new.

Flex SDK though free is not Open Source. Many Open Source programmers do not like this fact. However, the vst majority who likes to get the work done their way, will look at Flex if it makes sense to them. And a huge per cent of web developers are currently moving to Mac or Linux, away from Windows, because of the advantages offered by these platforms - sleekness and freedom.

>> The impact of Java going Open Source will be low
There are (or were) two bipolar opinions about Java going open source. The positive one was that lots of Open Source developers will embrace Java. The negative point was Java losing its sheen and the large enterprises getting worried about Java being un-standardized.

Both are unlikely to happen. The number of Open Source developers launching Java projects during 2007 is likely to be low. At the same time, the enterprise customers will back Java to the hilt and continue investing in Java applications.

>> Internet Explorer 7 will be hot (i feel it will not bcoz Firefox Rocks !!)
The Internet Explorer 7.0 is definitely the best of the lot that Microsoft has shipped or will ship in the coming months. It might have a few bugs, but the product is robust and will wean away many users from going for FireFox. The adoption curve will be faster than previous versions of Internet Explorer.

>> Vista sales will be slow in the first half
As we write this Microsoft is gearing to release Vista worldwide. Unlike the super success of some of the previous platforms, Vista adoption curve will be slower in the first few months.

There is too much of a negative hype surrounding Vista that many large users will be putting off migration plans till they are absolutely sure that everything is OK with it. The bad press which Microsoft is receiving is not helping the cause.

However, the Microsoft marketing machine will win this war, and you will see slow but steady migration and adoption towards end of the year.

>> SOA hype will reduce
We are almost six years into SOA. The hype is died down and reality is stark naked. SOA implementation will be more RESTful. Meanwhile companies will look at some of the ideas from web 2.0 space and use that for implementing SOA projects.

>> Enterprise will look at hosted applications seriously
The ASP model will be back, but in new avatar. Enterprises will look at ASP model for hosting applications. They might not give it out to a third party unless it is a recognized player. But they might do so themselves. . The success of AJAX drives traditional software back to the drawing boards. With the ability to finally provide dynamic rich content and applications over the Web, traditional software vendors will find that they need new products to play in this new world. Indeed, as Google Mail is giving Microsoft fits, so will other more innovative Web-delivered applications leveraging rich client technology such as AJAX. Entire interfaces will have to be rewritten to support AJAX, and end users will demand that we move away from traditional pump-and-pull HTTP programming.

>> More Open Source products on the way
Open Source Everywhere - More and more companies will open source legacy products and launch new ones under open source licenses. Database vendor Ingres is going to set the standard that other more conservative infrastructure vendors will follow. Look for new open source initiatives from major infrastructure vendors like BMC, VMware, and even Microsoft.

>> Notebooks sales will cross 35% mark
PC buyers are buying more notebooks every quarter and sometime in 2007 the number of shipping notebooks will match the number of desktop PCs or come very close at least in North America and Europe. Forresterr predicts the numbers to be on a 35:65 ratio and we tend to agree with that observation.

>> AJAX enabled IDEs will exist
Soon you will have hosted IDEs build on Ajax. And it might be a lot cheaper for companies to host such IDEs on a few servers, rather than loading it up heavily on clients.A good start is www.devsquare.com or www.code4jobs.com.

>> Server Virtualization will happen sooner than later
Server virtualization is just getting started, and will really make itself known in the coming year. Once we start seeing the quad core CPU architectures as a part of standard infrastructure, it really starts making a lot of sense to start deploying and managing servers and applications as virtual entities rather than specific pieces of hardware. This helps manage the cost and pain of software configuration management, take advantage of being able to process many tasks simultaneously because of hardware support, as well as allows legacy hardware to be retired in favor of applications running on virtual servers.

>> Grid Computing will be a reality
Container-based hosting is the new kid on the block, and will also start making its presence known in the upcoming year. Commonly labeled as "grid" hosting (which is a technical misnomer if you understand distributed computing), it essentially claims to be an infinitely scalable hosting platform. This technology still seems to be half-baked at the moment, but you could have said the same thing about Linux ten years ago.

>> Linux explorations will be high
People who normally wouldn't use Linux start to explore it and even replace Windows with it permanently. With Vista, Microsoft seems to be moving to a model in which the Windows operating system is a method to police users with DRM and other nonsense rather than provide developers with a good platform on which to use hardware, which is what operating systems are really supposed to be. A lot more consumers who haven't noticed this happening in the past will stand up and notice this year.

>> Better UIs will be in store
Declarative user interfaces will enable rich user experiences that can be easily modified or extended with simple mechanisms like XSLT. Familiar business applications like Office provide the user interface to back-end line-of-business systems. The line between AJAX-based UIs and rich desktop UIs will blur, enabling users to enjoy both connected and occasionally-connected experiences. Tools and guidance will make building, testing and deploying these composite UI experiences much easier.

>> BPM will get web enabled
BPM is about improving performance by optimizing key processes. Web 2.0 is about capturing the wisdom of crowds (or as O'Reilly puts it, the architecture of participation). The convergence of BPM and Web 2.0 enables collaborative development and tagging of sub-processes, establishing a "process folksonomy" where the best processes can evolve organically. Collaboration can occur over simple but highly scalable pub/sub mechanisms (like Atom or SSE). Lightweight tools will enable users to model or reuse sub-processes using a broad set of metadata. While this is an exciting opportunity, there are several technical and non-technical issues that must be addressed before this convergence becomes a reality.

>> Good developers will still be in demand
Skilled programmers and extremely skilled programmers will not come in cheaply and will continue to be `hard to find'. There may be an excess of unskilled labour. But skilled programmers will still be hard to find.

>> Outsourcing will continue to grow
Companies will continue to outsource software development and IT Services and there seems to be no sign of it stopping. See Gartner's prediction for more details.

Gartner, Inc. released 10 key predictions that showcase the trends and events that will change the nature of business and IT in 2007 and beyond.

These predictions are for general technology areas rather than specific to industries or roles within an organization. The predictions are intended to compel high-tech companies and IT professionals within enterprises to action and position themselves to take advantage of the coming changes, and not be damaged by them.


Through 2009, market share for the top 10 IT outsourcers will decline to 40.0% (from 43.5% now), equaling a revenue shift of $5.4 billion. As market share declines, some key outsourcing vendors will cease to exist in their current named form. The reduced number of large contracts, increased amount of competition and reduction in contract sizes have placed great pressure on outsourcers, which will have to "sink or swim" based on support for selective outsourcing and disciplined multisourcing competencies.

Only one Asia/Pacific-based service provider will make the global top 20 through 2010. The number of global players in consulting that come from Asia is relatively small. This will limit the ability of the Asian juggernaut to grow revenue streams rapidly and become global leaders.

Blogging and community contributors will peak in the first half of 2007. Given the trend in the average life span of a blogger and the current growth rate of blogs, there are already more than 200 million ex-bloggers. Consequently, the peak number of bloggers will be around 100 million at some point in the first half of 2007.

By 2009, corporate social responsibility (CSR) will be a higher board- and executive-level priority than regulatory compliance. Regulation has become a key issue for government and the corporate world, with the aim of ensuring more-responsible behavior. However, the need for companies to be socially responsible to their employees, customers and shareholders is growing as well. The future will see corporate boards and executives make this social dynamic a more-critical priority.

By the end of 2007, 75% of enterprises will be infected with undetected, financially motivated, targeted malware that evaded their traditional perimeter and host defenses. The threat environment is changing \u2014 financially motivated, targeted attacks are increasing, and automated malware-generation kits allow simple creation of thousands of variants quickly \u2014 but our security processes and technologies haven't kept up.

Vistawill be the last major release of Microsoft Windows. The next generation of operating environments will be more modular and will be updated incrementally. The era of monolithic deployments of software releases is nearing an end. Microsoft will be a visible player in this movement, and the result will be more-flexible updates to Windows and a new focus on quality overall.

By 2010, the average total cost of ownership (TCO) of new PCs will fall by 50%. The growing importance and focus on manageability, automation and reliability will provide a welcome means of differentiating PCs in a market that is increasingly commoditized. Many of the manageability and support tools will be broadly available across multiple vendors. However, vendors that can leverage these tools further and can graduate from claims of "goodness" to concrete examples of cost savings will have a market advantage.

By 2010, 60% of the worldwide cellular population will be "trackable" via an emerging "follow-me Internet." Local regulations have arisen to protect users' privacy, but growing demands for national safety and civil protection are relaxing some of the initial privacy limitations. Marketing incentives will also push users to forgo privacy concerns, and many other scenarios will enable outsiders to track their users.

Through 2011, enterprises will waste $100 billion buying the wrong networking technologies and services. Enterprises are missing out on opportunities to build a network that would put them at a competitive advantage. Instead, they follow outdated design practices and collectively will waste at least $100 billion in the next five years.

By 2008, nearly 50% of data centers worldwide will lack the necessary power and cooling capacity to support high-density equipment. With higher densities of processors proliferating, problems in this area continue to grow. Although the power and cooling challenge of high-density computer equipment will persist in the short term, a convergence of innovative technologies will begin to mitigate the problem by 2010.

Monday, April 09, 2007

TOP 10 Tips for New ECLIPSE Users

I’m gonna share my top 10 basic Eclipse tips. These are very simple tips, but I’ve noticed that for some reason many people using Eclipse for the first time end up learning these tips the hard way (through discovery). The following 10 tips should be known by anyone using Eclipse on a day to day basis.

1 Use Code Assist

Code assist (also known as auto-complete) is the kind of feature that becomes almost completely automatic after a very short time. Most modern IDEs have a similar feature – for instance, Visual Studio calls it Intellisense.

The concept is simple – just press the code assist key combination (by default ctrl-space) and the IDE will either fill in where you’ve started typing or display a menu to allow you to choose an auto-completion from several possibilities.

This is the feature you will use the most in Eclipse. I just noticed that I can type ctrl-space without moving my fingers from the home position at all :-).

2 Navigate Through Code By ctrl-Clicking

This is another feature that you stop consciously thinking about once you’ve gotten in the habit. While editing, you can move to a field, method, or class by holding down the ctrl key and clicking on the identifier you’re interested in. This makes navigation dead simple.

When looking through unfamiliar code, this feature is great. If you are wondering what a class is, or what the implementation of a method looks like, it’s as easy as ctrl-clicking it.

3 Quickly Open Classes and Resources by Name

There are two ways to open a class or resource in an editor: the slow way and the fast way :-). Don’t use the slow way – there’s no good reason to.

To open a Java class, press ctrl-shift-T. This will display a dialog box that allows you to type in a class name. To open a non-Java resource (a .txt file for instance) use the ctrl-shift-R shortcut. These open boxes support wildcards, partial names, and even camel case names (try typing ctrl-shift-T, AIOOBE to see camel case search in action).

There is hardly ever a reason to use the Package Explorer view to manually pick out a class to open if you know its name.

4 Know the Keyboard Shortcuts

Eclipse has extremely good keyboard shortcut support. Most of the common operations have an associated keyboard shortcut, and learning these keyboard shortcuts is the most effective productivity boost you can give your Eclipse experience.

There are too many keyboard shortcuts to enumerate them all here, and the previous tip already mentioned two of the most useful shortcuts. However, I will list the shortcuts I think are most useful:

ctrl-shift-G: searches for references to a highlighted class, method, field, or variable
ctrl-shift-F4: closes all open editor windows
ctrl-o: outline popup – very useful for quickly jumping to a method in a large class
F4: shows the hierarchy viewer for a class (ctrl-T shows similar data in a popup version)
ctrl-m: toggle maximize of the current editor or view
ctrl-F11: run the last launched configuration

There’s even a keyboard shortcut you can press that will show you all available keyboard shortcuts in the current context: that’s ctrl-shift-L.

It’s worth noting that the keyboard shortcuts can be customized. However, I don’t recommend you do this. It makes pair programming and team collaboration harder because each machine may have a different set of keyboard shortcuts. The shortcuts Eclipse ships with are good defaults – I recommend leaving them that way.

5 Set the Heap Size

Eclipse is a large, complex, Java-based IDE. It needs lots of memory to perform well. In fact, if you’re using Eclipse to do daily development, you should configure your machine so that Eclipse can use RAM in preference to any other processes.

When starting Eclipse, you should always specify a large maximum heap size. The default Eclipse uses is far too small for normal use. There are lots of ways to specify this when starting Eclipse (see Google). The easiest way is to use the –vmargs parameter with the Eclipse native launcher executable:

eclipse -vmargs –Xmx1024M

That syntax will work only on Sun’s JVMs, by the way. And, yes, I do give my IDE 1GB of RAM to work with. My development box has 4GBs so I have plenty to spare :-).

6 Configure Eclipse To Use a JDK, not a JRE

Eclipse comes with its own Java compiler, so technically you don’t need to install a Java Development Kit (JDK) from Sun to develop Java programs with Eclipse – a Java Runtime Environment (JRE) works just fine.

However, you’re going to want to install a JDK and configure Eclipse to use it. The reason is that this is the easiest way to get the Java source code into your development environment. Doing this will allow you do set browse into and set breakpoints in Java classes, as well as giving you Javadoc support in the IDE for all the standard library classes and methods.

To configure Eclipse to use a JDK, first make sure you’ve installed a JDK on your machine. Then in Eclipse, go to Window -> Preference -> Java -> Installed JREs, and make sure that the default (checked) JRE points to your JDK installation.

7 Use the Eclipse’s Refactoring Support and Code Generation

Eclipse originally became popular because of its support for various kinds of refactorings
of Java classes. These refactorings are still some of the best of any IDE available today.

Many of the refactorings are somewhat hidden and will show up when performing other operations, but you can get started with refactorings by right-clicking in the Package Explorer and looking at the Refactor and Source menus.

Eclipse also has extensive support for code generation. If you’re writing constructors, getters, or setters by hand then learning to use code generation for this will be a huge time saver. Looking at the Source menu mentioned above will get you started with code generation.

8 Use Multiple Workspaces Effectively

Eclipse supports a concept called workspaces. A workspace is a container of projects that has its own set of preferences and metadata. An installation of Eclipse can work with multiple workspaces – you can tell Eclipse which workspace to use when starting up.

Why are multiple workspaces useful? Many developers create an Eclipse workspace for each version of an application, so doing maintenance work and new development don’t conflict. This maps very naturally to branches in a source control system. Multiple workspaces are also good for separating different projects you may be working on at the same time.

The easiest way to specify which workspace Eclipse uses is to use the –data and –showlocation parameters with the launcher:

eclipse –data c:\myworkspace –showlocation

The –data parameter directs Eclipse to use the “c:\myworkspace” directory on the local machine as the workspace directory. The –showlocation parameter shows the workspace location in the Eclipse title bar – very helpful when running multiple Eclipse instances at the same time.

One note – don’t waste time setting your preferences in each workspace you create. Simply use the Import and Export options under the file menu to export preference from one workspace you’ve already set up into new workspaces you create.

9 Use Templates

Eclipse has two different concepts of templates. I’m not going to talk much about Code Templates, which control what generated code looks like. Instead, I’d like to point your attention to Editor Templates, which are a bit like macros.

For instance, open a Java class in an editor, type in “sysout” and press ctrl-space. An editor template automatically expands that to “System.out.println()” and positions your cursor in the right place. This is probably the simplest example of templates, but they can be much more complex than that.

Get comfortable with templates, and learn the template for each piece of boilerplate code like loops, casts, try/catch blocks, etc. You should never have to write these things by hand if you are comfortable with the templates. Even better, you can create your own parameterized templates for commonly used code constructs.

10 Set Type Filters

You can filter the types that Eclipse uses for auto-completion and when searching for classes. For example, there are two classes called List in Java’s standard library – java.util.List and java.awt.List. If you’re not a Swing, developer, you probably don’t care about java.awt.List and almost always want Eclipse to prefer java.util.List. To do this, you can filter out java.awt.List (even better, java.awt.*).

Filters are configured through Window -> Preferences -> Java -> Appearance -> Type Filters. If you’re seeing classes show up at the top of your search you know you’re not interested in, filter them out for faster searching.

Popular Posts