Day 2- September 6, 2008
Time to deliver, its my first ever workshop outside my campus, and this time I was representing NetBeans Dream Team, as well as JIIT University. I came back early on Day 1, to prepare for this event.
NetBeans Plugin Development Workshop
It got started in rather unusual way. I had my workshop from 2: 00 – 3: 00 PM, so I reached Amity at 1: 45 PM. I thought, its better to reach early and setup everything to get started on time, but this was not to happen, as I am told, that my event got postponed by an hour.
Well, I attended freed.in, another FOSS event last year, in JNU, New Delhi and they also had some re-scheduling of events at last moment. So, it seems to me, its normal in every such event. I am not generalizing, its just my observation, feel free to voice your opinion on such events, by commenting on my blog.
I was sitting in their Computer Lab, along with Saurabh and new CA’s. It was around 2: 20 PM and I am suddenly told to start with workshop, because the person who got his event postponed from Morning to 2: 00 PM, was not reachable.
For a moment, I couldn’t realise what was happening? Then, I took centrestage, and saw computer was yet to be configured with the projector. They had no microphone, maybe its not possible to have one in labs. Also, I haven’t seen such facility even in my univ. labs.
Ankit Srivastava, India Student Coordinator started asking some general questions on NetBeans to keep them busy, while Angad, CA Tech Lead was configuring the system. He’s indeed a tech guru, I was using his Laptop for my workshop, which he had won during Code For Freedom, last year.
Finally, at 2: 35 PM, workshop got started by Angad who introduced me to the new CA’s, they were nearly 20+ Then, I took over and asked them 2 questions-
- Why do we create Netbeans plug-in modules?
- Why is there Terminology confusion?
- RCP Book- The Benefits of Modular Programming
Followed by 2 exercises, I had planned to do with them.
- Lets go inside NetBeans IDE
- Now, lets go a bit deeper inside NetBeans IDE
Unfortunately, they had not installed NetBeans 6.5 Beta, instead I was told, the CA’s would be using NetBeans 6.0 in the labs. Anyways, the plug-in I had chosen for the workshop was flexible enough, that I could have used 5.5 release for delivering the workshop too!
Lets go inside NetBeans IDE
So, we started developing the plug-in, it took good amount of time, as it took a while for them to adapt to the NetBeans Platform, and when they did, it was a smooth sail afterwards.
After the plug-in was developed, and installed in Target Platform, they found it really amazing thing to have. Then, I told them, that whatever steps we took to develop the plug-in were existent in the IDE because of some plug-in modules.
Now, lets go a bit deeper inside NetBeans IDE
Now, to go a bit deeper, I thought of playing with XML layer. It was indeed a great idea, as they were surprised to see the power of this optional configuration file. As Geertjan once said, “Varun introduces you to the layer.xml file in NetBeans modules. He shows you how a few small tweaks can have very useful results”.
Pointers are back again…
We all know, there are nothing like pointers in Java, but XML layer in NetBeans Plugin Development does use it indirectly. The .shadow files, are pointers/symbolic links to the .instance files, which in my case, were used to register Actions in System Filesystem.
I explained them what System Filesystem is all about? Just a brief overview, as it was their first real experience with Plugin Development. So, I just wanted to touch every possible aspect, to get them started with development smoothly, rather than explain them FileObjects, DataObjects, etc.
Finally, the workshop got over. Really, it was an amazing experience barring minor hiccups and while preparing for the workshop, I do believe, I have developed a better understanding of concepts I just talked about.
Thank you, Amity and Sun for giving me the opportunity to conduct a workshop.
[ Day 1 | Event | Day 2 ]
Photos by Angad Singh, CA Tech Lead
[ Open Office | PDF | Power Point ]